Interface StreamsApi


  • @Path("/")
    public interface StreamsApi
    Pod API

    This document refers to Symphony API calls that do not need encryption or decryption of content. - sessionToken can be obtained by calling the authenticationAPI on the symphony back end and the key manager respectively. Refer to the methods described in authenticatorAPI.yaml. - Actions are defined to be atomic, ie will succeed in their entirety or fail and have changed nothing. - If it returns a 40X status then it will have made no change to the system even if ome subset of the request would have succeeded. - If this contract cannot be met for any reason then this is an error and the response code will be 50X.

    • Method Detail

      • v1AdminImCreatePost

        @POST
        @Path("/v1/admin/im/create")
        @Consumes("application/json")
        @Produces("application/json")
        Stream v1AdminImCreatePost​(List<Long> body,
                                   @HeaderParam("sessionToken")
                                   String sessionToken)
        Create a new single or multi party instant message conversation At least two user IDs must be provided or an error response will be sent. The caller is not included in the members of the created chat. Duplicate users will be included in the membership of the chat but the duplication will be silently ignored. If there is an existing IM conversation with the same set of participants then the id of that existing stream will be returned.
      • v1AdminRoomIdSetActivePost

        @POST
        @Path("/v1/admin/room/{id}/setActive")
        @Produces("application/json")
        RoomDetail v1AdminRoomIdSetActivePost​(@PathParam("id")
                                              String id,
                                              @QueryParam("active")
                                              Boolean active,
                                              @HeaderParam("sessionToken")
                                              String sessionToken)
        Deactivate or reactivate a chatroom via AC Portal.
      • v1AdminStreamIdMembershipListGet

        @GET
        @Path("/v1/admin/stream/{id}/membership/list")
        @Produces("application/json")
        V2MembershipList v1AdminStreamIdMembershipListGet​(@PathParam("id")
                                                          String id,
                                                          @HeaderParam("sessionToken")
                                                          String sessionToken,
                                                          @QueryParam("skip")
                                                          Integer skip,
                                                          @QueryParam("limit")
                                                          Integer limit)
        List the current members of an existing stream. The stream can be of type IM, MIM, or ROOM
      • v1AdminStreamsListPost

        @POST
        @Path("/v1/admin/streams/list")
        @Consumes("application/json")
        @Produces("application/json")
        AdminStreamList v1AdminStreamsListPost​(@HeaderParam("sessionToken")
                                               String sessionToken,
                                               AdminStreamFilter body,
                                               @QueryParam("skip")
                                               Integer skip,
                                               @QueryParam("limit")
                                               Integer limit)
        Retrieve all the streams across the enterprise where the membership of the stream has been modified between a given time range
      • v1ImCreatePost

        @POST
        @Path("/v1/im/create")
        @Consumes("application/json")
        @Produces("application/json")
        Stream v1ImCreatePost​(List<Long> body,
                              @HeaderParam("sessionToken")
                              String sessionToken)
        Create a new single or multi party instant message conversation between the caller and specified users. At least one user ID must be provided or an error response will be sent. The caller is implicitly included in the members of the created chat. Duplicate users will be included in the membership of the chat but the duplication will be silently ignored. If there is an existing IM conversation with the same set of participants then the id of that existing stream will be returned. This method was incorrectly specified to take a query parameter in version 1.0 of this specification but now expects a JSON array of user IDs in the body of the request.
      • v1RoomCreatePost

        @POST
        @Path("/v1/room/create")
        @Consumes("application/json")
        @Produces("application/json")
        RoomDetail v1RoomCreatePost​(RoomCreate body,
                                    @HeaderParam("sessionToken")
                                    String sessionToken)
        Create a new chatroom. Create a new chatroom. If no attributes are specified, the room is created as a private chatroom.
      • v1RoomIdInfoGet

        @GET
        @Path("/v1/room/{id}/info")
        @Produces("application/json")
        RoomDetail v1RoomIdInfoGet​(@PathParam("id")
                                   String id,
                                   @HeaderParam("sessionToken")
                                   String sessionToken)
        Get information about a partcular chatroom.
      • v1RoomIdSetActivePost

        @POST
        @Path("/v1/room/{id}/setActive")
        @Produces("application/json")
        RoomDetail v1RoomIdSetActivePost​(@PathParam("id")
                                         String id,
                                         @QueryParam("active")
                                         Boolean active,
                                         @HeaderParam("sessionToken")
                                         String sessionToken)
        Deactivate or reactivate a chatroom. At creation, a new chatroom is active.
      • v1RoomIdUpdatePost

        @POST
        @Path("/v1/room/{id}/update")
        @Consumes("application/json")
        @Produces("application/json")
        RoomDetail v1RoomIdUpdatePost​(RoomAttributes body,
                                      @HeaderParam("sessionToken")
                                      String sessionToken,
                                      @PathParam("id")
                                      String id)
        Update the attributes of an existing chatroom.
      • v1StreamsListPost

        @POST
        @Path("/v1/streams/list")
        @Consumes("application/json")
        @Produces("application/json")
        StreamList v1StreamsListPost​(@HeaderParam("sessionToken")
                                     String sessionToken,
                                     StreamFilter body,
                                     @QueryParam("skip")
                                     Integer skip,
                                     @QueryParam("limit")
                                     Integer limit)
        Retrieve a list of all streams of which the requesting user is a member, sorted by creation date (ascending).
      • v1StreamsSidAttachmentsGet

        @GET
        @Path("/v1/streams/{sid}/attachments")
        @Produces("application/json")
        StreamAttachmentResponse v1StreamsSidAttachmentsGet​(@PathParam("sid")
                                                            String sid,
                                                            @HeaderParam("sessionToken")
                                                            String sessionToken,
                                                            @QueryParam("since")
                                                            Long since,
                                                            @QueryParam("to")
                                                            Long to,
                                                            @QueryParam("limit")
                                                            Integer limit,
                                                            @QueryParam("sortDir")
                                                            String sortDir)
        Get attachments in a particular stream.
      • v1StreamsSidInfoGet

        @GET
        @Path("/v1/streams/{sid}/info")
        @Produces("application/json")
        StreamAttributes v1StreamsSidInfoGet​(@PathParam("sid")
                                             String sid,
                                             @HeaderParam("sessionToken")
                                             String sessionToken)
        Get information about a partcular stream.
      • v2AdminStreamsListPost

        @POST
        @Path("/v2/admin/streams/list")
        @Consumes("application/json")
        @Produces("application/json")
        V2AdminStreamList v2AdminStreamsListPost​(@HeaderParam("sessionToken")
                                                 String sessionToken,
                                                 V2AdminStreamFilter body,
                                                 @QueryParam("skip")
                                                 Integer skip,
                                                 @QueryParam("limit")
                                                 Integer limit)
        Retrieve all the streams across the enterprise where the membership of the stream has been modified between a given time range
      • v2RoomCreatePost

        @POST
        @Path("/v2/room/create")
        @Consumes("application/json")
        @Produces("application/json")
        V2RoomDetail v2RoomCreatePost​(V2RoomAttributes body,
                                      @HeaderParam("sessionToken")
                                      String sessionToken)
        Create a new chatroom. Create a new chatroom. If no attributes are specified, the room is created as a private chatroom.
      • v2RoomIdInfoGet

        @GET
        @Path("/v2/room/{id}/info")
        @Produces("application/json")
        V2RoomDetail v2RoomIdInfoGet​(@PathParam("id")
                                     String id,
                                     @HeaderParam("sessionToken")
                                     String sessionToken)
        Get information about a partcular chatroom.
      • v2RoomIdUpdatePost

        @POST
        @Path("/v2/room/{id}/update")
        @Consumes("application/json")
        @Produces("application/json")
        V2RoomDetail v2RoomIdUpdatePost​(V2RoomAttributes body,
                                        @HeaderParam("sessionToken")
                                        String sessionToken,
                                        @PathParam("id")
                                        String id)
        Update the attributes of an existing chatroom.
      • v2RoomSearchPost

        @POST
        @Path("/v2/room/search")
        @Consumes("application/json")
        @Produces("application/json")
        RoomSearchResults v2RoomSearchPost​(RoomSearchCriteria body,
                                           @HeaderParam("sessionToken")
                                           String sessionToken,
                                           @QueryParam("skip")
                                           Integer skip,
                                           @QueryParam("limit")
                                           Integer limit)
        Search rooms according to the specified criteria.
      • v2StreamsSidInfoGet

        @GET
        @Path("/v2/streams/{sid}/info")
        @Produces("application/json")
        V2StreamAttributes v2StreamsSidInfoGet​(@PathParam("sid")
                                               String sid,
                                               @HeaderParam("sessionToken")
                                               String sessionToken)
        Get information about a partcular stream.
      • v3RoomCreatePost

        @POST
        @Path("/v3/room/create")
        @Consumes("application/json")
        @Produces("application/json")
        V3RoomDetail v3RoomCreatePost​(V3RoomAttributes body,
                                      @HeaderParam("sessionToken")
                                      String sessionToken)
        Create a new chatroom. Create a new chatroom. If no attributes are specified, the room is created as a private chatroom.
      • v3RoomIdInfoGet

        @GET
        @Path("/v3/room/{id}/info")
        @Produces("application/json")
        V3RoomDetail v3RoomIdInfoGet​(@PathParam("id")
                                     String id,
                                     @HeaderParam("sessionToken")
                                     String sessionToken)
        Get information about a partcular chatroom.
      • v3RoomIdUpdatePost

        @POST
        @Path("/v3/room/{id}/update")
        @Consumes("application/json")
        @Produces("application/json")
        V3RoomDetail v3RoomIdUpdatePost​(V3RoomAttributes body,
                                        @HeaderParam("sessionToken")
                                        String sessionToken,
                                        @PathParam("id")
                                        String id)
        Update the attributes of an existing chatroom.
      • v3RoomSearchPost

        @POST
        @Path("/v3/room/search")
        @Consumes("application/json")
        @Produces("application/json")
        V3RoomSearchResults v3RoomSearchPost​(V2RoomSearchCriteria body,
                                             @HeaderParam("sessionToken")
                                             String sessionToken,
                                             @QueryParam("skip")
                                             Integer skip,
                                             @QueryParam("limit")
                                             Integer limit)
        Search rooms according to the specified criteria.