diff --git a/agent/agent-api-public-deprecated.yaml b/agent/agent-api-public-deprecated.yaml index 1dfa458..5271f8f 100644 --- a/agent/agent-api-public-deprecated.yaml +++ b/agent/agent-api-public-deprecated.yaml @@ -1,147 +1,16 @@ -openapi: 3.0.1 -info: - title: Agent API - description: | - This document refers to Symphony API calls to send and receive messages - and content. They need the on-premise Agent installed to perform - decryption/encryption of content. - - - sessionToken and keyManagerToken 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 sent no message to any - stream even if a request to some subset of the requested streams - would have succeeded. - - If this contract cannot be met for any reason then this is an error - and the response code will be 50X. - - MessageML is a markup language for messages. See reference here: - https://rest-api.symphony.com/docs/messagemlv2 - - **Real Time Events**: The following events are returned when reading - from a real time messages and events stream ("datafeed"). These - events will be returned for datafeeds created with the v5 endpoints. - To know more about the endpoints, refer to Create Messages/Events - Stream and Read Messages/Events Stream. Unless otherwise specified, - all events were added in 1.46. - version: 25.8.1 -servers: - - url: 'youragentURL.symphony.com/agent' -paths: - /v3/health: - get: - tags: - - System - summary: Checks health status - description: | - _Available on Agent 2.57.0 and above._ - - Returns the connectivity status of your Agent server. If your Agent server is started and running, the status value will be `UP` - operationId: v3Health - responses: - 200: - description: Agent application is alive. - content: - application/json: - schema: - $ref: '#/components/schemas/V3Health' - example: { - "status": "UP" - } - /v3/health/extended: - get: - tags: - - System - summary: Checks health status of services and users - description: | - _Available on Agent 2.57.0 and above._ - - Returns the connectivity status of the Agent services (**pod**, **key manager** and **datafeed**) as well as users - connectivity (**agentservice** and **ceservice**). - - The global status will be set to `DOWN` if at least one of the sub-status is also `DOWN`. - operationId: v3ExtendedHealth - responses: - 200: - description: Agent is healthy, all components are `UP`. - content: - application/json: - schema: - $ref: '#/components/schemas/V3Health' - example: { - "services": { - "pod": { - "status": "UP", - "version": "24.1.1-411-36efd5b" - }, - "key_manager": { - "status": "UP", - "version": "24.1.1-411-36efd5b" - }, - "datafeed": { - "status": "UP", - "version": "2.11.6" - } - }, - "status": "UP", - "users": { - "agentservice": { - "authType": "RSA", - "status": "UP" - }, - "ceservice": { - "authType": "RSA", - "status": "UP" - } - }, - "version": "24.3.2-778" - } - 503: - description: Agent is unhealthy, some components are `DOWN`. - content: - application/json: - schema: - $ref: '#/components/schemas/V3Health' - example: { - "services": { - "pod": { - "status": "UP", - "version": "24.1.1-411-36efd5b" - }, - "key_manager": { - "status": "DOWN", - "version": "24.1.1-411-36efd5b" - }, - "datafeed": { - "status": "UP", - "version": "2.11.6" - } - }, - "status": "UP", - "users": { - "agentservice": { - "authType": "RSA", - "status": "UP" - }, - "ceservice": { - "authType": "RSA", - "status": "UP" - } - }, - "version": "24.3.2-778" - } - /v4/message/import: + # + # Deprecated paths + # + /v1/datafeed/create: post: tags: - - Messages - summary: Import messages from other systems into Symphony. + - Datafeed + summary: Create a new real time message event stream. description: | - Sends a message to be imported into the system. - Allows you to override the timestamp and author of the message with your desired values. - The requesting user must have the Content Management role. - The user that the message is intended to have come from must also be present in the conversation. - The intended message timestamp must be a valid time from the past. It cannot be a future timestamp. - Optionally the original message ID can be specified to identify the imported message for the purpose of repeat imports. + A datafeed provides the messages in all conversations that a user is in. + System messages like new users joining a chatroom are not part of the datafeed. + + A datafeed will expire after if it isn't read before its capacity is reached. parameters: - name: sessionToken in: header @@ -154,156 +23,74 @@ paths: description: Key Manager authentication token. schema: type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/V4MessageImportList' - required: true responses: 200: - description: Message sent. + description: OK + headers: + X-Warning: + description: This method is deprecated + schema: + type: string content: application/json: schema: - $ref: '#/components/schemas/V4ImportResponseList' + $ref: '#/components/schemas/Datafeed' 400: - description: Client error, see response body for further details. + description: Client error. content: application/json: schema: - $ref: '#/components/schemas/V2Error' + $ref: '#/components/schemas/Error' 401: description: 'Unauthorized: Session tokens invalid.' content: application/json: schema: - $ref: '#/components/schemas/V2Error' + $ref: '#/components/schemas/Error' 403: description: 'Forbidden: Caller lacks necessary entitlement.' content: application/json: schema: - $ref: '#/components/schemas/V2Error' + $ref: '#/components/schemas/Error' 500: description: Server error, see response body for further details. content: application/json: schema: - $ref: '#/components/schemas/V2Error' - x-codegen-request-body-name: messageList - /v4/message/blast: - post: + $ref: '#/components/schemas/Error' + 503: + description: Max number of data feeds reached. + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + deprecated: true + /v1/datafeed/{id}/read: + get: tags: - - Messages - summary: Post a message to multiple existing streams. + - Datafeed + summary: Read a given datafeed. description: | - Post a new message to the given list of streams. The stream can be a chatroom, - an IM or a multiparty IM. - - You may include an attachment on the message. - - The message can be provided as MessageMLV2 or PresentationML. Both formats support Freemarker templates. - - The optional parameter "data" can be used to provide a JSON payload containing entity data. - If the message contains explicit references to entity data (in "data-entity-id" element attributes), - this parameter is required. - - If the message is in MessageML and fails schema validation a client error results - - This endpoint is idempotent, it means that a 200 response will be returned even if the message has not been - delivered to some streams. Check the `errors` map from the response in order to see on which stream(s) the - message has not been delivered. - - The maximum number of streams where the message can be sent is limitted to 100. + Read messages from the given datafeed. If no more messages are available then this method will block. + It is intended that the client should re-call this method as soon as it has processed the messages + received in the previous call. If the client is able to consume messages more quickly than they become + available then each call will initially block, there is no need to delay before re-calling this method. - Regarding authentication, you must either use the sessionToken which was created for delegated app access - or both the sessionToken and keyManagerToken together. + A datafeed will expire if its unread capacity is reached. + A datafeed can only be consumed by one client thread at a time. E.g. polling the datafeed by two threads may lead to messages being delivered out of order. parameters: - - name: sessionToken - in: header - description: Authorization token used to make delegated calls. + - name: id + in: path + description: Datafeed ID required: true schema: type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. + - name: maxMessages + in: query + description: Max No. of messages to return. schema: - type: string - requestBody: - content: - multipart/form-data: - schema: - required: - - sids - properties: - sids: - type: array - description: A comma-separated list of Stream IDs - items: - type: string - message: - type: string - description: The message payload in MessageML. - data: - type: string - description: Optional message data in EntityJSON. - version: - type: string - description: | - Optional message version in the format "major.minor". If empty, defaults to the latest supported version. - attachment: - type: string - description: Optional file attachment. - format: binary - preview: - type: string - description: Optional attachment preview. - format: binary - responses: - 200: - description: Blast message sent. - content: - application/json: - schema: - $ref: '#/components/schemas/V4MessageBlastResponse' - 400: - description: Client error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/V2Error' - 401: - description: 'Unauthorized: Session tokens invalid.' - content: - application/json: - schema: - $ref: '#/components/schemas/V2Error' - 403: - description: 'Forbidden: Caller lacks necessary entitlement.' - content: - application/json: - schema: - $ref: '#/components/schemas/V2Error' - 451: - description: Compliance Issues found in message or file - content: - application/json: - schema: - $ref: '#/components/schemas/V2Error' - 500: - description: Server error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/V2Error' - /v1/message/{id}: - get: - tags: - - Messages - summary: Get a message by ID - parameters: + type: integer - name: sessionToken in: header description: Session authentication token. @@ -315,19 +102,20 @@ paths: description: Key Manager authentication token. schema: type: string - - name: id - in: path - description: Message ID as a URL-safe string - required: true - schema: - type: string responses: 200: - description: OK + description: List of messages that have occurred since last time this URL + was polled. If the list is empty, it means the request has reached its + timeout, and the client should poll again. + headers: + X-Warning: + description: This method is deprecated + schema: + type: string content: application/json: schema: - $ref: '#/components/schemas/V4Message' + $ref: '#/components/schemas/MessageList' 204: description: No Messages. content: {} @@ -336,78 +124,123 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/V2Error' + $ref: '#/components/schemas/Error' 401: description: 'Unauthorized: Session tokens invalid.' content: application/json: schema: - $ref: '#/components/schemas/V2Error' + $ref: '#/components/schemas/Error' 403: description: 'Forbidden: Caller lacks necessary entitlement.' content: application/json: schema: - $ref: '#/components/schemas/V2Error' + $ref: '#/components/schemas/Error' 500: description: Server error, see response body for further details. content: application/json: schema: - $ref: '#/components/schemas/V2Error' - /v1/message/search: + $ref: '#/components/schemas/Error' + deprecated: true + /v1/HealthCheck: get: tags: - - Messages - summary: Search messages + - System + summary: Checks the health of the Agent. + description: | + Used to validate the configuration of the agent. + Makes a request to the HealthCheck on the Symphony cloud. + Makes a request to the HealthCheck on the Key Manager service. + responses: + 200: + description: The Agent is functioning properly. + headers: + X-Warning: + description: This method is deprecated + schema: + type: string + content: + application/json: + schema: + $ref: '#/components/schemas/V1HealthCheckResponse' + deprecated: true + /v2/HealthCheck: + get: + tags: + - System + summary: Checks the health of the Agent. description: | - Search messages according to the specified criteria. The "query" parameter takes a search query defined as - "field:value" pairs combined by the operator "AND" (e.g. "text:foo AND autor:bar"). Supported fields are - (case-insensitive): "text", "author", "hashtag", "cashtag", "mention", "signal", "fromDate", "toDate", - "streamId", "streamType". - "text" search requires a "streamId" to be specified. - "streamType" accepts one of the following values: "chat" (IMs and MIMs), "im", "mim", "chatroom", "post". - "signal" queries can only be combined with "fromDate", "toDate", "skip" and "limit" parameters. + [deprecated] : This endpoint is deprecated. + The health check endpoint to be used instead is '/v3/health/extended'. + Unlike this deprecated endpoint, the extended health check endpoint provides status on external component such as pod, key manager, ceservice, agentservice... parameters: - - name: query + - name: showFirehoseErrors in: query - description: The search query. See above for the query syntax. - required: true + description: | + [deprecated] Firehose Service has never been deployed. However, this request parameter has been kept here + for specs backward compatibility. schema: - type: string - - name: skip + type: boolean + - name: failOnPodConnectivity in: query - description: No. of results to skip. + description: | + Defines the HealthCheck status code response whenever the Pod connectivity fails. When set to "true", + in case of Pod connectivity failure, the response status code will be 503; otherwise, it will be 200. + Default value is "false". schema: - type: integer - - name: limit + type: boolean + - name: failOnKeyManagerConnectivity in: query - description: Max no. of results to return. If no value is provided, 50 is the default. + description: | + Defines the HealthCheck status code response whenever the Key Manager connectivity fails. When set to "true", + in case of Key Manager connectivity failure, the response status code will be 503; otherwise, it will be 200. + Default value is "false". schema: - type: integer - - name: scope + type: boolean + - name: failOnAgentServiceUser in: query description: | - Describes where content should be searched for that query. - It can exclusively apply to Symphony content or to one Connector. + Defines the HealthCheck status code response whenever the Agent Service User connectivity fails. When set to "true", + in case of Agent Service connectivity failure, the response status code will be 503; otherwise, it will be 200. + Default value is "false". schema: - type: string - - name: sortDir + type: boolean + - name: failOnCeServiceUser in: query description: | - Messages sort direction : ASC or DESC (default to DESC) + This query parameter is not used as the ceservice is deprecated and it is kept for backward compatibility. + Default value is "false" but it will not change the response status code if set to true. schema: - type: string - - name: tier + type: boolean + - name: failOnEncryptDecryptSuccess in: query description: | - Target search tier : hot, warm or all (default to hot) - schema: - type: string - - name: sessionToken - in: header - description: Session authentication token. - required: true + Defines the status code response whenever the Encrypt/Decrypt message check fails. When set to "true", + in case of Encrypt or Decrypt failure, the response status code will be 503; otherwise, it will be 200. + Default value is "false". + schema: + type: boolean + - name: failOnAny + in: query + description: | + Defines the status code response whenever at least one of the checks fails. When set to "true", + in case of any failure, the response status code will be 503; otherwise, it will be 200. + Default value is "false". + schema: + type: boolean + - name: failOnDatafeedConnectivity + in: query + description: | + Defines the HealthCheck status code response whenever the Datafeed2 connectivity fails. When set to "true", + in case of Datafeed connectivity failure, the response status code will be 503; otherwise, it will be 200. + Default value is "false". + schema: + type: boolean + - name: sessionToken + in: header + description: Session authentication token. schema: type: string - name: keyManagerToken @@ -417,11 +250,67 @@ paths: type: string responses: 200: - description: OK + description: The Agent is functioning properly. + headers: + X-Warning: + description: This method is deprecated + schema: + type: string + content: + application/json: + schema: + $ref: '#/components/schemas/V2HealthCheckResponse' + deprecated: true + /v2/datafeed/{id}/read: + get: + tags: + - Datafeed + summary: Read a given datafeed. + description: | + Read messages from the given datafeed. If no more messages are available then this method will block. + It is intended that the client should re-call this method as soon as it has processed the messages + received in the previous call. If the client is able to consume messages more quickly than they become + available then each call will initially block, there is no need to delay before re-calling this method. + + A datafeed will expire if its unread capacity is reached. + A datafeed can only be consumed by one client thread at a time. E.g. polling the datafeed by two threads may lead to messages being delivered out of order. + parameters: + - name: id + in: path + description: Datafeed ID + required: true + schema: + type: string + - name: maxMessages + in: query + description: Max No. of messages to return. + schema: + type: integer + - name: sessionToken + in: header + description: Session authentication token. + required: true + schema: + type: string + - name: keyManagerToken + in: header + description: Key Manager authentication token. + schema: + type: string + responses: + 200: + description: List of messages that have occurred since last time this URL + was polled. If the list is empty, it means the request has reached its + timeout, and the client should poll again. + headers: + X-Warning: + description: This method is deprecated + schema: + type: string content: application/json: schema: - $ref: '#/components/schemas/V4MessageList' + $ref: '#/components/schemas/V2MessageList' 204: description: No Messages. content: {} @@ -430,60 +319,43 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/V2Error' + $ref: '#/components/schemas/Error' 401: description: 'Unauthorized: Session tokens invalid.' content: application/json: schema: - $ref: '#/components/schemas/V2Error' + $ref: '#/components/schemas/Error' 403: description: 'Forbidden: Caller lacks necessary entitlement.' content: application/json: schema: - $ref: '#/components/schemas/V2Error' + $ref: '#/components/schemas/Error' 500: description: Server error, see response body for further details. content: application/json: schema: - $ref: '#/components/schemas/V2Error' + $ref: '#/components/schemas/Error' + deprecated: true + /v4/datafeed/create: post: tags: - - Messages - summary: Search messages - description: Search messages according to the specified criteria. + - Datafeed + summary: | + (Deprecated - Datafeed v1 will be fully replaced by the datafeed 2 + service in the future. Please consider migrating over to datafeed 2 APIs + /agent/v5/datafeeds. For more information on the timeline as well as on + the benefits of datafeed 2, please reach out to your Technical Account Manager + or to our developer documentation https://docs.developers.symphony.com/building-bots-on-symphony/datafeed) + Create a new real time message event stream. + description: | + A datafeed provides the messages in all conversations that a user is in. + This also includes system messages like new users joining a chatroom. + + A datafeed will expire if it isn't read before its capacity is reached. parameters: - - name: skip - in: query - description: No. of results to skip. - schema: - type: integer - - name: limit - in: query - description: Max no. of results to return. If no value is provided, 50 is the default. - schema: - type: integer - - name: scope - in: query - description: | - Describes where content should be searched for that query. - It can exclusively apply to Symphony content or to one Connector. - schema: - type: string - - name: sortDir - in: query - description: | - Messages sort direction : ASC or DESC (default to DESC) - schema: - type: string - - name: tier - in: query - description: | - Target search tier : hot, warm or all (default to hot) - schema: - type: string - name: sessionToken in: header description: Session authentication token. @@ -495,73 +367,105 @@ paths: description: Key Manager authentication token. schema: type: string - requestBody: - description: The search query. See above for the query syntax. - content: - application/json: - schema: - $ref: '#/components/schemas/MessageSearchQuery' - required: true responses: 200: description: OK + headers: + X-Warning: + description: This method is deprecated + schema: + type: string content: application/json: schema: - $ref: '#/components/schemas/V4MessageList' - 204: - description: No Messages. - content: {} + $ref: '#/components/schemas/Datafeed' 400: - description: Client error, see response body for further details. + description: Client error. + headers: + X-Warning: + description: This method is deprecated + schema: + type: string content: application/json: schema: $ref: '#/components/schemas/V2Error' 401: description: 'Unauthorized: Session tokens invalid.' + headers: + X-Warning: + description: This method is deprecated + schema: + type: string content: application/json: schema: $ref: '#/components/schemas/V2Error' 403: description: 'Forbidden: Caller lacks necessary entitlement.' + headers: + X-Warning: + description: This method is deprecated + schema: + type: string content: application/json: schema: $ref: '#/components/schemas/V2Error' 500: description: Server error, see response body for further details. + headers: + X-Warning: + description: This method is deprecated + schema: + type: string + content: + application/json: + schema: + $ref: '#/components/schemas/V2Error' + 503: + description: Max number of data feeds reached. + headers: + X-Warning: + description: This method is deprecated + schema: + type: string content: application/json: schema: $ref: '#/components/schemas/V2Error' - x-codegen-request-body-name: query - /v1/stream/{sid}/attachment: + deprecated: true + /v4/datafeed/{id}/read: get: tags: - - Attachments - summary: Download an attachment. - description: Downloads the attachment body by the attachment ID, stream ID, and message ID. + - Datafeed + summary: | + (Deprecated - Datafeed v1 will be fully replaced by the datafeed 2 + service in the future. Please consider migrating over to datafeed 2 APIs + /agent/v5/datafeeds/{id}/read. For more information on the timeline as + well as on the benefits of datafeed 2, please reach out to your Technical + Account Manager or to our developer documentation https://docs.developers.symphony.com/building-bots-on-symphony/datafeed) + Read a given datafeed. + description: | + Read messages from the given datafeed. If no more messages are available then this method will block. + It is intended that the client should re-call this method as soon as it has processed the messages + received in the previous call. If the client is able to consume messages more quickly than they become + available then each call will initially block, there is no need to delay before re-calling this method. + + A datafeed will expire if its unread capacity is reached. + A datafeed can only be consumed by one client thread at a time. E.g. polling the datafeed by two threads may lead to messages being delivered out of order. parameters: - - name: sid + - name: id in: path - description: Stream ID - required: true - schema: - type: string - - name: fileId - in: query - description: The attachment ID (Base64-encoded) + description: Datafeed ID required: true schema: type: string - - name: messageId + - name: limit in: query - description: The ID of the message containing the attachment - required: true + description: Max No. of messages to return. schema: - type: string + type: integer - name: sessionToken in: header description: Session authentication token. @@ -575,82 +479,83 @@ paths: type: string responses: 200: - description: Attachment body as Base64 encoded string. + description: List of messages that have occurred since last time this URL + was polled. If the list is empty, it means the request has reached its + timeout, and the client should poll again. + headers: + X-Warning: + description: This method is deprecated + schema: + type: string content: - application/octet-stream: + application/json: + schema: + $ref: '#/components/schemas/V4EventList' + 204: + description: No Messages. + headers: + X-Warning: + description: This method is deprecated schema: type: string - format: byte + content: {} 400: description: Client error, see response body for further details. + headers: + X-Warning: + description: This method is deprecated + schema: + type: string content: - application/octet-stream: + application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/V2Error' 401: description: 'Unauthorized: Session tokens invalid.' + headers: + X-Warning: + description: This method is deprecated + schema: + type: string content: - application/octet-stream: + application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/V2Error' 403: description: 'Forbidden: Caller lacks necessary entitlement.' + headers: + X-Warning: + description: This method is deprecated + schema: + type: string content: - application/octet-stream: + application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/V2Error' 500: description: Server error, see response body for further details. + headers: + X-Warning: + description: This method is deprecated + schema: + type: string content: - application/octet-stream: + application/json: schema: - $ref: '#/components/schemas/Error' - /v4/stream/{sid}/message: - get: + $ref: '#/components/schemas/V2Error' + deprecated: true + /v1/message/import: + post: tags: - Messages - summary: Get messages from an existing stream. + summary: Import messages from other systems into Symphony. description: | - A caller can fetch all unseen messages by passing the timestamp of - the last message seen as the since parameter and the number of messages - with the same timestamp value already seen as the skip parameter. This - means that every message will be seen exactly once even in the case that - an additional message is processed with the same timestamp as the last - message returned by the previous call, and the case where there are - more than maxMessages with the same timestamp value. - - This method is intended for historic queries and is generally reliable - but if guaranteed delivery of every message in real time is required - then the equivilent firehose method should be called. + Sends a message to be imported into the system. + Allows you to override the timestamp and author of the message with your desired values. + The requesting user must have the Content Management role. + The user that the message is intended to have come from must also be present in the conversation. + The intended message timestamp must be a valid time from the past. It cannot be a future timestamp. parameters: - - name: sid - in: path - description: Stream ID - required: true - schema: - type: string - - name: since - in: query - description: | - Timestamp of first required message. - - This is a long integer value representing milliseconds since - Jan 1 1970 - required: true - schema: - type: integer - format: int64 - - name: skip - in: query - description: No. of messages to skip. - schema: - type: integer - - name: limit - in: query - description: | - Max No. of messages to return. If no value is provided, 50 is the default. The maximum supported value is 500. - schema: - type: integer - name: sessionToken in: header description: Session authentication token. @@ -662,72 +567,66 @@ paths: description: Key Manager authentication token. schema: type: string + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/MessageImportList' + required: true responses: 200: - description: OK + description: Message sent. + headers: + X-Warning: + description: This method is deprecated + schema: + type: string content: application/json: schema: - $ref: '#/components/schemas/V4MessageList' - 204: - description: No Messages. - content: {} + $ref: '#/components/schemas/ImportResponseList' 400: description: Client error, see response body for further details. content: application/json: schema: - $ref: '#/components/schemas/V2Error' + $ref: '#/components/schemas/Error' 401: description: 'Unauthorized: Session tokens invalid.' content: application/json: schema: - $ref: '#/components/schemas/V2Error' + $ref: '#/components/schemas/Error' 403: description: 'Forbidden: Caller lacks necessary entitlement.' content: application/json: schema: - $ref: '#/components/schemas/V2Error' + $ref: '#/components/schemas/Error' 500: description: Server error, see response body for further details. content: application/json: schema: - $ref: '#/components/schemas/V2Error' - /v4/stream/{sid}/message/create: + $ref: '#/components/schemas/Error' + deprecated: true + x-codegen-request-body-name: messageList + /v2/message/import: post: tags: - Messages - summary: Post a message to one existing stream. + summary: Import messages from other systems into Symphony. description: | - Post a new message to the given stream. The stream can be a chatroom,,an IM or a multiparty IM. - - You may include an attachment on the message. - - The message can be provided as MessageMLV2 or PresentationML. Both formats support Freemarker templates. - - The optional parameter "data" can be used to provide a JSON payload containing entity data. - If the message contains explicit references to entity data (in "data-entity-id" element attributes), - this parameter is required. - - If the message is in MessageML and fails schema validation a client error will be returned. - - If the message is sent then 200 is returned. - - Regarding authentication, you must either use the sessionToken which was created for delegated app access - or both the sessionToken and keyManagerToken together. + Sends a message to be imported into the system. + Allows you to override the timestamp and author of the message with your desired values. + The requesting user must have the Content Management role. + The user that the message is intended to have come from must also be present in the conversation. + The intended message timestamp must be a valid time from the past. It cannot be a future timestamp. + Optionally the original message ID can be specified to identify the imported message for the purpose of repeat imports. parameters: - - name: sid - in: path - description: Stream ID - required: true - schema: - type: string - name: sessionToken in: header - description: Authorization token used to make delegated calls. + description: Session authentication token. required: true schema: type: string @@ -738,82 +637,60 @@ paths: type: string requestBody: content: - multipart/form-data: + application/json: schema: - properties: - message: - type: string - description: The message payload in MessageML. - data: - type: string - description: Optional message data in EntityJSON. - version: - type: string - description: | - Optional message version in the format "major.minor". If empty, defaults to the latest supported version. - attachment: - type: string - description: Optional file attachment. - format: binary - preview: - type: string - description: Optional attachment preview. - format: binary + $ref: '#/components/schemas/V2MessageImportList' + required: true responses: 200: description: Message sent. + headers: + X-Warning: + description: This method is deprecated + schema: + type: string content: application/json: schema: - $ref: '#/components/schemas/V4Message' + $ref: '#/components/schemas/V2ImportResponseList' 400: description: Client error, see response body for further details. content: application/json: schema: - $ref: '#/components/schemas/V2Error' + $ref: '#/components/schemas/Error' 401: description: 'Unauthorized: Session tokens invalid.' content: application/json: schema: - $ref: '#/components/schemas/V2Error' + $ref: '#/components/schemas/Error' 403: description: 'Forbidden: Caller lacks necessary entitlement.' content: application/json: schema: - $ref: '#/components/schemas/V2Error' - 451: - description: Compliance Issues found in message or file - content: - application/json: - schema: - $ref: '#/components/schemas/V2Error' + $ref: '#/components/schemas/Error' 500: description: Server error, see response body for further details. content: application/json: schema: - $ref: '#/components/schemas/V2Error' - /v4/stream/{sid}/message/{mid}/update: + $ref: '#/components/schemas/Error' + deprecated: true + x-codegen-request-body-name: messageList + /v1/stream/{sid}/attachment/create: post: tags: - - Messages - summary: Update an existing message. + - Attachments + summary: Upload an attachment. description: | - Update an existing message. The existing message must be a valid social message, that has not been deleted. - - The message can be provided as MessageMLV2 or PresentationML. Both formats support Freemarker templates. - - The optional parameter "data" can be used to provide a JSON payload containing entity data. - If the message contains explicit references to entity data (in "data-entity-id" element attributes), - this parameter is required. + Upload an attachment to the given stream. The stream can be a chatroom, + an IM or a multiparty IM. - Regarding authentication, you must either use the sessionToken which was created for delegated app access - or both the sessionToken and keyManagerToken together. + Once uploaded, you can use this attachment on a message you send in that stream. - Starting with SBE v24.1, attachments are supported. + If the attachment is uploaded then 200 is returned. parameters: - name: sid in: path @@ -821,15 +698,9 @@ paths: required: true schema: type: string - - name: mid - in: path - description: ID of the message to be updated - required: true - schema: - type: string - name: sessionToken in: header - description: Authorization token used to make delegated calls. + description: Session authentication token. required: true schema: type: string @@ -842,74 +713,69 @@ paths: content: multipart/form-data: schema: + required: + - file properties: - message: - type: string - description: The message payload in MessageML. - data: - type: string - description: Optional message data in EntityJSON. - version: - type: string - description: | - Optional message version in the format "major.minor". If empty, defaults to the latest supported version. - attachment: - type: string - description: Optional file attachment. - format: binary - preview: + file: type: string - description: Optional attachment preview. + description: The attachment body. format: binary - silent: - type: string - description: | - Optional boolean field that will determine if the user/s should receive the message as read or not (true by default) + required: true responses: 200: - description: Message sent. + description: Upload successful, return the attachment ID. + headers: + X-Warning: + description: This method is deprecated + schema: + type: string content: application/json: schema: - $ref: '#/components/schemas/V4Message' + $ref: '#/components/schemas/AttachmentInfo' 400: description: Client error, see response body for further details. content: application/json: schema: - $ref: '#/components/schemas/V2Error' + $ref: '#/components/schemas/Error' 401: description: 'Unauthorized: Session tokens invalid.' content: application/json: schema: - $ref: '#/components/schemas/V2Error' + $ref: '#/components/schemas/Error' 403: description: 'Forbidden: Caller lacks necessary entitlement.' content: application/json: schema: - $ref: '#/components/schemas/V2Error' - 451: - description: Compliance Issues found in message or file + $ref: '#/components/schemas/Error' + 422: + description: 'Unprocessable entity: The submitted data could not be processed.' content: application/json: schema: - $ref: '#/components/schemas/V2Error' + $ref: '#/components/schemas/Error' 500: description: Server error, see response body for further details. content: application/json: schema: - $ref: '#/components/schemas/V2Error' - /v3/stream/{sid}/share: + $ref: '#/components/schemas/Error' + deprecated: true + /v3/stream/{sid}/attachment/create: post: tags: - - Share - summary: PROVISIONAL - Share a piece of content into Symphony + - Attachments + summary: PROVISIONAL - Upload an attachment. description: | - Given a 3rd party content (eg. news article), it can share to the given stream. - The stream can be a chatroom, an IM or a multiparty IM. + Upload an attachment to the given stream. The stream can be a chatroom, + an IM or a multiparty IM. + + Once uploaded, you can use this attachment on a message you send in that stream. + + If the attachment is uploaded then 200 is returned. parameters: - name: sid in: path @@ -930,17 +796,28 @@ paths: type: string requestBody: content: - application/json: + multipart/form-data: schema: - $ref: '#/components/schemas/ShareContent' + required: + - file + properties: + file: + type: string + description: The attachment body. + format: binary required: true responses: 200: - description: Success + description: Upload successful, return the attachment ID. + headers: + X-Warning: + description: This method is deprecated + schema: + type: string content: application/json: schema: - $ref: '#/components/schemas/V2Message' + $ref: '#/components/schemas/AttachmentInfo' 400: description: Client error, see response body for further details. content: @@ -959,44 +836,90 @@ paths: application/json: schema: $ref: '#/components/schemas/Error' + 422: + description: 'Unprocessable entity: The submitted data could not be processed.' + content: + application/json: + schema: + $ref: '#/components/schemas/Error' 500: description: Server error, see response body for further details. content: application/json: schema: $ref: '#/components/schemas/Error' - x-codegen-request-body-name: shareContent - /v1/util/echo: - post: + deprecated: true + /v1/stream/{sid}/message: + get: tags: - - Util - summary: Test endpoint, returns input. + - Messages + summary: Get messages from an existing stream. + description: | + A caller can fetch all unseen messages by passing the timestamp of + the last message seen as the since parameter and the number of messages + with the same timestamp value already seen as the skip parameter. This + means that every message will be seen exactly once even in the case that + an additional message is processed with the same timestamp as the last + message returned by the previous call, and the case where there are + more than maxMessages with the same timestamp value. + + This method is intended for historic queries and is generally reliable + but if guaranteed delivery of every message in real time is required + then the equivilent firehose method should be called. parameters: - - name: sessionToken - in: header - description: Session authentication token. + - name: sid + in: path + description: Stream ID required: true schema: type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. + - name: since + in: query + description: | + Timestamp of first required message. + + This is a long integer value representing milliseconds since + Jan 1 1970 + required: true schema: - type: string - requestBody: - description: Message in plain text - content: - application/json: - schema: - $ref: '#/components/schemas/SimpleMessage' - required: true + type: integer + format: int64 + - name: offset + in: query + description: No. of messages to skip. + schema: + type: integer + - name: maxMessages + in: query + description: Max No. of messages to return. If no value is provided, 50 is the default. + schema: + type: integer + - name: sessionToken + in: header + description: Session authentication token. + required: true + schema: + type: string + - name: keyManagerToken + in: header + description: Key Manager authentication token. + schema: + type: string responses: 200: - description: Message sent. + description: OK + headers: + X-Warning: + description: This method is deprecated + schema: + type: string content: application/json: schema: - $ref: '#/components/schemas/SimpleMessage' + $ref: '#/components/schemas/MessageList' + 204: + description: No Messages. + content: {} 400: description: Client error, see response body for further details. content: @@ -1021,74 +944,129 @@ paths: application/json: schema: $ref: '#/components/schemas/Error' - x-codegen-request-body-name: echoInput - /v1/signals/list: + deprecated: true + /v2/stream/{sid}/message: get: tags: - - Signals - summary: | - List signals for the requesting user. This includes signals that the user has created and public signals - to which they subscribed. + - Messages + summary: Get messages from an existing stream. + description: | + A caller can fetch all unseen messages by passing the timestamp of + the last message seen as the since parameter and the number of messages + with the same timestamp value already seen as the skip parameter. This + means that every message will be seen exactly once even in the case that + an additional message is processed with the same timestamp as the last + message returned by the previous call, and the case where there are + more than maxMessages with the same timestamp value. + + This method is intended for historic queries and is generally reliable + but if guaranteed delivery of every message in real time is required + then the equivilent firehose method should be called. parameters: - - name: sessionToken - in: header - description: Session authentication token. + - name: sid + in: path + description: Stream ID required: true schema: type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. + - name: since + in: query + description: | + Timestamp of first required message. + + This is a long integer value representing milliseconds since + Jan 1 1970 + required: true schema: - type: string - - name: skip + type: integer + format: int64 + - name: offset in: query - description: No. of signals to skip. + description: No. of messages to skip. schema: type: integer - name: limit in: query - description: | - Max no. of signals to return. If no value is provided, 50 is the default. The maximum supported value is 500. + description: Max No. of messages to return. If no value is provided, 50 is the default. schema: type: integer + - name: sessionToken + in: header + description: Session authentication token. + required: true + schema: + type: string + - name: keyManagerToken + in: header + description: Key Manager authentication token. + schema: + type: string responses: 200: - description: List of signals for the requesting user. + description: OK + headers: + X-Warning: + description: This method is deprecated + schema: + type: string content: application/json: schema: - $ref: '#/components/schemas/SignalList' + $ref: '#/components/schemas/V2MessageList' + 204: + description: No Messages. + content: {} 400: description: Client error, see response body for further details. content: application/json: schema: - $ref: '#/components/schemas/V2Error' + $ref: '#/components/schemas/Error' 401: description: 'Unauthorized: Session tokens invalid.' content: application/json: schema: - $ref: '#/components/schemas/V2Error' + $ref: '#/components/schemas/Error' 403: description: 'Forbidden: Caller lacks necessary entitlement.' content: application/json: schema: - $ref: '#/components/schemas/V2Error' + $ref: '#/components/schemas/Error' 500: description: Server error, see response body for further details. content: application/json: schema: - $ref: '#/components/schemas/V2Error' - /v1/signals/{id}/get: - get: + $ref: '#/components/schemas/Error' + deprecated: true + /v1/stream/{sid}/message/create: + post: tags: - - Signals - summary: Get details of the requested signal. + - Messages + summary: Post a message to one existing stream. + description: | + Post a new message to the given stream. The stream can be a chatroom, + an IM or a multiparty IM. + + If the message parameter type is TEXT then the message contains plain + text and cannot include formating, hash tags, mentions etc. + + If the message parameter type is MessageML then the message contains + MessageML which allows for these entities. + + If the message is in MessageML and fails schema validation + a client error results + + If the message is sent then 200 is returned. parameters: + - name: sid + in: path + description: Stream ID + required: true + schema: + type: string - name: sessionToken in: header description: Session authentication token. @@ -1100,49 +1078,78 @@ paths: description: Key Manager authentication token. schema: type: string - - name: id - in: path - description: The ID of the signal to display. - required: true - schema: - type: string + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/MessageSubmission' + required: true responses: 200: - description: List of signals for the requesting user. + description: Message sent. + headers: + X-Warning: + description: This method is deprecated + schema: + type: string content: application/json: schema: - $ref: '#/components/schemas/Signal' + $ref: '#/components/schemas/Message' 400: description: Client error, see response body for further details. content: application/json: schema: - $ref: '#/components/schemas/V2Error' + $ref: '#/components/schemas/Error' 401: description: 'Unauthorized: Session tokens invalid.' content: application/json: schema: - $ref: '#/components/schemas/V2Error' + $ref: '#/components/schemas/Error' 403: description: 'Forbidden: Caller lacks necessary entitlement.' content: application/json: schema: - $ref: '#/components/schemas/V2Error' + $ref: '#/components/schemas/Error' 500: description: Server error, see response body for further details. content: application/json: schema: - $ref: '#/components/schemas/V2Error' - /v1/signals/create: + $ref: '#/components/schemas/Error' + deprecated: true + x-codegen-request-body-name: message + /v2/stream/{sid}/message/create: post: tags: - - Signals - summary: Create a signal. + - Messages + summary: Post a message to one existing stream. + description: | + Post a new message to the given stream. The stream can be a chatroom, + an IM or a multiparty IM. + + You may include an attachment on the message (see the V2MessageSubmission parameter). + + If the message parameter type is TEXT then the message contains plain + text and cannot include formating, hash tags, mentions etc. + + If the message parameter type is MessageML then the message contains + MessageML which allows for these entities. + + If the message is in MessageML and fails schema validation + a client error results + + If the message is sent then 200 is returned. parameters: + - name: sid + in: path + description: Stream ID + required: true + schema: + type: string - name: sessionToken in: header description: Session authentication token. @@ -1155,59 +1162,83 @@ paths: schema: type: string requestBody: - description: Signal definition. content: application/json: schema: - $ref: '#/components/schemas/BaseSignal' + $ref: '#/components/schemas/V2MessageSubmission' required: true responses: 200: - description: Signal created. + description: Message sent. + headers: + X-Warning: + description: This method is deprecated + schema: + type: string content: application/json: schema: - $ref: '#/components/schemas/Signal' + $ref: '#/components/schemas/V2Message' 400: description: Client error, see response body for further details. content: application/json: schema: - $ref: '#/components/schemas/V2Error' + $ref: '#/components/schemas/Error' 401: description: 'Unauthorized: Session tokens invalid.' content: application/json: schema: - $ref: '#/components/schemas/V2Error' + $ref: '#/components/schemas/Error' 403: description: 'Forbidden: Caller lacks necessary entitlement.' content: application/json: schema: - $ref: '#/components/schemas/V2Error' - 451: - description: Compliance Issues found in signal - content: - application/json: - schema: - $ref: '#/components/schemas/V2Error' + $ref: '#/components/schemas/Error' 500: description: Server error, see response body for further details. content: application/json: schema: - $ref: '#/components/schemas/V2Error' - x-codegen-request-body-name: signal - /v1/signals/{id}/update: + $ref: '#/components/schemas/Error' + deprecated: true + x-codegen-request-body-name: message + /v3/stream/{sid}/message/create: post: tags: - - Signals - summary: Update a signal. + - Messages + summary: PROVISIONAL - Post a message to one existing stream. + description: | + Post a new message to the given stream. The stream can be a chatroom, + an IM or a multiparty IM. + + You may include an attachment on the message (see the V2MessageSubmission parameter). + + If the message parameter type is TEXT then the message contains plain + text and cannot include formating, hash tags, mentions etc. + + If the message parameter type is MessageML then the message contains + MessageML which allows for these entities. + + If the message is in MessageML and fails schema validation + a client error results + + If the message is sent then 200 is returned. + + Regarding authentication, you must either use the sessionToken which was created for delegated app access + or both the sessionToken and keyManagerToken together. parameters: + - name: sid + in: path + description: Stream ID + required: true + schema: + type: string - name: sessionToken in: header - description: Session authentication token. + description: Authorization token used to make delegated calls. required: true schema: type: string @@ -1216,117 +1247,65 @@ paths: description: Key Manager authentication token. schema: type: string - - name: id - in: path - description: The id of the signal. - required: true - schema: - type: string requestBody: - description: Signal definition. content: application/json: schema: - $ref: '#/components/schemas/BaseSignal' + $ref: '#/components/schemas/V2MessageSubmission' required: true responses: 200: - description: Signal updated. + description: Message sent. + headers: + X-Warning: + description: This method is deprecated + schema: + type: string content: application/json: schema: - $ref: '#/components/schemas/Signal' + $ref: '#/components/schemas/V2Message' 400: description: Client error, see response body for further details. content: application/json: schema: - $ref: '#/components/schemas/V2Error' + $ref: '#/components/schemas/Error' 401: description: 'Unauthorized: Session tokens invalid.' content: application/json: schema: - $ref: '#/components/schemas/V2Error' + $ref: '#/components/schemas/Error' 403: description: 'Forbidden: Caller lacks necessary entitlement.' content: application/json: schema: - $ref: '#/components/schemas/V2Error' - 451: - description: Compliance Issues found in signal - content: - application/json: - schema: - $ref: '#/components/schemas/V2Error' + $ref: '#/components/schemas/Error' 500: description: Server error, see response body for further details. content: application/json: schema: - $ref: '#/components/schemas/V2Error' - x-codegen-request-body-name: signal - /v1/signals/{id}/delete: + $ref: '#/components/schemas/Error' + deprecated: true + x-codegen-request-body-name: message + /v1/stream/{sid}/share: post: tags: - - Signals - summary: Delete a signal. + - Share + summary: Share a piece of content into Symphony + description: | + Given a 3rd party content (eg. news article), it can share to the given stream. + The stream can be a chatroom, an IM or a multiparty IM. parameters: - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - - name: id + - name: sid in: path - description: The id of the signal. + description: Stream ID required: true schema: type: string - responses: - 200: - description: Signal deleted. - content: - application/json: - schema: - $ref: '#/components/schemas/SuccessResponse' - 400: - description: Client error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/V2Error' - 401: - description: 'Unauthorized: Session tokens invalid.' - content: - application/json: - schema: - $ref: '#/components/schemas/V2Error' - 403: - description: 'Forbidden: Caller lacks necessary entitlement.' - content: - application/json: - schema: - $ref: '#/components/schemas/V2Error' - 500: - description: Server error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/V2Error' - /v1/signals/{id}/subscribe: - post: - tags: - - Signals - summary: Subscribe to a Signal. - parameters: - name: sessionToken in: header description: Session authentication token. @@ -1338,64 +1317,55 @@ paths: description: Key Manager authentication token. schema: type: string - - name: id - in: path - description: The id of the signal. - required: true - schema: - type: string - - name: pushed - in: query - description: Prevent the user to unsubscribe (only for bulk subscription) - schema: - type: boolean requestBody: - description: UserIds to subscribe (only for bulk subscription) content: application/json: schema: - type: array - items: - type: integer - format: int64 - required: false + $ref: '#/components/schemas/ShareContent' + required: true responses: 200: - description: Signal subscribed. + description: Success + headers: + X-Warning: + description: This method is deprecated + schema: + type: string content: application/json: schema: - $ref: '#/components/schemas/ChannelSubscriptionResponse' + $ref: '#/components/schemas/V2Message' 400: description: Client error, see response body for further details. content: application/json: schema: - $ref: '#/components/schemas/V2Error' + $ref: '#/components/schemas/Error' 401: description: 'Unauthorized: Session tokens invalid.' content: application/json: schema: - $ref: '#/components/schemas/V2Error' + $ref: '#/components/schemas/Error' 403: description: 'Forbidden: Caller lacks necessary entitlement.' content: application/json: schema: - $ref: '#/components/schemas/V2Error' + $ref: '#/components/schemas/Error' 500: description: Server error, see response body for further details. content: application/json: schema: - $ref: '#/components/schemas/V2Error' - x-codegen-request-body-name: users - /v1/signals/{id}/unsubscribe: + $ref: '#/components/schemas/Error' + deprecated: true + x-codegen-request-body-name: shareContent + /v1/util/obsolete: post: tags: - - Signals - summary: Unsubscribe to a Signal. + - Util + summary: Example of a deprecated endpoint, returns input. parameters: - name: sessionToken in: header @@ -1408,209 +1378,46 @@ paths: description: Key Manager authentication token. schema: type: string - - name: id - in: path - description: The id of the signal. - required: true - schema: - type: string requestBody: - description: UserIds to unsubscribe (only for bulk unsubscription) + description: Message in plain text content: application/json: schema: - type: array - items: - type: integer - format: int64 - required: false - responses: - 200: - description: Signal unsubscribed. - content: - application/json: - schema: - $ref: '#/components/schemas/ChannelSubscriptionResponse' - 400: - description: Client error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/V2Error' - 401: - description: 'Unauthorized: Session tokens invalid.' - content: - application/json: - schema: - $ref: '#/components/schemas/V2Error' - 403: - description: 'Forbidden: Caller lacks necessary entitlement.' - content: - application/json: - schema: - $ref: '#/components/schemas/V2Error' - 500: - description: Server error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/V2Error' - x-codegen-request-body-name: users - /v1/signals/{id}/subscribers: - get: - tags: - - Signals - summary: Get the subscribers of a signal - parameters: - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - - name: id - in: path - description: The id of the signal. - required: true - schema: - type: string - - name: skip - in: query - description: No. of results to skip. - schema: - type: integer - default: 0 - - name: limit - in: query - description: Max No. of subscribers to return. If no value is provided, 100 - is the default. - schema: - type: integer - default: 100 + $ref: '#/components/schemas/SimpleMessage' + required: true responses: 200: - description: Signal Subscribers. - content: - application/json: - schema: - $ref: '#/components/schemas/ChannelSubscriberResponse' - 400: - description: Client error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/V2Error' - 401: - description: 'Unauthorized: Session tokens invalid.' - content: - application/json: - schema: - $ref: '#/components/schemas/V2Error' - 403: - description: 'Forbidden: Caller lacks necessary entitlement.' - content: - application/json: - schema: - $ref: '#/components/schemas/V2Error' - 500: - description: Server error, see response body for further details. - content: - application/json: + description: Message sent. + headers: + X-Warning: + description: This method is deprecated schema: - $ref: '#/components/schemas/V2Error' - /v1/info: - get: - tags: - - Signals - summary: Get information about the Agent - responses: - 200: - description: Agent info. + type: string content: application/json: schema: - $ref: '#/components/schemas/AgentInfo' + $ref: '#/components/schemas/SimpleMessage' 400: description: Client error, see response body for further details. content: application/json: schema: - $ref: '#/components/schemas/V2Error' + $ref: '#/components/schemas/Error' 401: description: 'Unauthorized: Session tokens invalid.' content: application/json: schema: - $ref: '#/components/schemas/V2Error' + $ref: '#/components/schemas/Error' 403: description: 'Forbidden: Caller lacks necessary entitlement.' - content: - application/json: - schema: - $ref: '#/components/schemas/V2Error' - 500: - description: Server error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/V2Error' - /v1/dlp/policies: - get: - tags: - - DLP Policies and Dictionary Management - summary: Get all policies - description: Get all policies - parameters: - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - - name: page - in: query - description: Optional parameter to specify which page to return (default is 0) - schema: - type: integer - format: int32 - - name: limit - in: query - description: | - Optional parameter to specify the number of result to return per page, default is 50. Maximum is 50. - schema: - type: integer - format: int32 - responses: - 200: - description: Success - content: - application/json: - schema: - $ref: '#/components/schemas/V1DLPPoliciesCollectionResponse' - 400: - description: Client error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 401: - description: 'Unauthorized: Session tokens invalid.' content: application/json: schema: $ref: '#/components/schemas/Error' - 403: - description: 'Forbidden: Caller lacks necessary entitlement.' + 420: + description: Gone. Returned when the option to hard fail deprecated methods + is enabled content: application/json: schema: @@ -1621,5838 +1428,11 @@ paths: application/json: schema: $ref: '#/components/schemas/Error' - post: - tags: - - DLP Policies and Dictionary Management - summary: Creates a policy - description: | - Creates a new policy with dictionary references. - - At the time of policy creation, the caller should only provide - contentTypes, name, scopes and type. The rest of the information is populated automatically. - - Note - You need to enable the policy after creation to start enforcing the policy. - parameters: - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - requestBody: - description: Details about the policy that should be created. - content: - application/json: - schema: - $ref: '#/components/schemas/V1DLPPolicyRequest' - required: true - responses: - 200: - description: Success - content: - application/json: - schema: - $ref: '#/components/schemas/V1DLPPolicyResponse' - 400: - description: Client error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 401: - description: 'Unauthorized: Session tokens invalid.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 403: - description: 'Forbidden: Caller lacks necessary entitlement.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 500: - description: Server error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - x-codegen-request-body-name: body - /v1/dlp/policies/{policyId}: - get: - tags: - - DLP Policies and Dictionary Management - summary: Get a policy - description: Get a policy - parameters: - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - - name: policyId - in: path - description: Unique dictionary identifier. - required: true - schema: - type: string - - name: policyVersion - in: query - description: | - Optional parameter, if set to be valid policy version number, will return policy with specified policyVersion. - Otherwise, return the latest policy. - schema: - type: string - responses: - 200: - description: Success - content: - application/json: - schema: - $ref: '#/components/schemas/V1DLPPolicyResponse' - 400: - description: Client error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 401: - description: 'Unauthorized: Session tokens invalid.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 403: - description: 'Forbidden: Caller lacks necessary entitlement.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 500: - description: Server error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - put: - tags: - - DLP Policies and Dictionary Management - summary: Updates a policy. Cannot be used for creation. - description: | - Update the policy (name, type, contentTypes, scopes) and also the dictionaries for a policy. - Warning: If you send empty list of dictionaries during the update operation, then all the - dictionaries for this policy are deleted and policy is automatically disabled. - Note: The policy should already exist. - parameters: - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - - name: policyId - in: path - description: Unique dictionary identifier. - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/V1DLPPolicyRequest' - required: true - responses: - 200: - description: Success - content: - application/json: - schema: - $ref: '#/components/schemas/V1DLPPolicyResponse' - 400: - description: Client error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 401: - description: 'Unauthorized: Session tokens invalid.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 403: - description: 'Forbidden: Caller lacks necessary entitlement.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 500: - description: Server error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - x-codegen-request-body-name: body - delete: - tags: - - DLP Policies and Dictionary Management - summary: Delete a policy - description: | - Delete a policy. - Note: Only disabled policy can be deleted - parameters: - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - - name: policyId - in: path - description: Unique dictionary identifier. - required: true - schema: - type: string - responses: - 200: - description: Success - content: - application/json: - schema: - $ref: '#/components/schemas/V1DLPPolicyResponse' - 400: - description: Client error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 401: - description: 'Unauthorized: Session tokens invalid.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 403: - description: 'Forbidden: Caller lacks necessary entitlement.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 500: - description: Server error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - /v1/dlp/policies/{policyId}/enable: - post: - tags: - - DLP Policies and Dictionary Management - summary: Enables a policy. - description: Enables a policy. - parameters: - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - - name: policyId - in: path - required: true - schema: - type: string - responses: - 200: - description: Success - content: - application/json: - schema: - $ref: '#/components/schemas/V1DLPPolicyResponse' - 400: - description: Client error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 401: - description: 'Unauthorized: Session tokens invalid.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 403: - description: 'Forbidden: Caller lacks necessary entitlement.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 500: - description: Server error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - /v1/dlp/policies/{policyId}/disable: - post: - tags: - - DLP Policies and Dictionary Management - summary: Disables a policy. - description: Disables a policy. - parameters: - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - - name: policyId - in: path - required: true - schema: - type: string - responses: - 200: - description: Success - content: - application/json: - schema: - $ref: '#/components/schemas/V1DLPPolicyResponse' - 400: - description: Client error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 401: - description: 'Unauthorized: Session tokens invalid.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 403: - description: 'Forbidden: Caller lacks necessary entitlement.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 500: - description: Server error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - /v1/dlp/dictionaries: - get: - tags: - - DLP Policies and Dictionary Management - summary: Get all dictionary metadatas - description: | - Get all dictionary metadatas with the latest version. Each dictionary object will only contain meta data of the content. - parameters: - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - - name: page - in: query - description: Optional parameter to specify which page to return (default is 0) - schema: - type: integer - format: int32 - - name: limit - in: query - description: | - Optional parameter to specify the number of result to return per page, default is 50. Maximum is 50. - schema: - type: integer - format: int32 - responses: - 200: - description: Success - content: - application/json: - schema: - $ref: '#/components/schemas/V1DLPDictionaryMetadataCollectionResponse' - 400: - description: Client error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 401: - description: 'Unauthorized: Session tokens invalid.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 403: - description: 'Forbidden: Caller lacks necessary entitlement.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 500: - description: Server error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - post: - tags: - - DLP Policies and Dictionary Management - summary: Create a dictionary - description: | - Creates a dictionary with basic metadata and no content. Only "name" and "type" field is used to create a new dictionary entry. - parameters: - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/V1DLPDictionaryMetadataCreateRequest' - required: true - responses: - 200: - description: Success - content: - application/json: - schema: - $ref: '#/components/schemas/V1DLPDictionaryMetadataResponse' - 400: - description: Client error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 401: - description: 'Unauthorized: Session tokens invalid.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 403: - description: 'Forbidden: Caller lacks necessary entitlement.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 500: - description: Server error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - x-codegen-request-body-name: body - /v1/dlp/dictionaries/{dictId}: - get: - tags: - - DLP Policies and Dictionary Management - summary: Get dictionary metadata - description: Get basic information for a dictionary. - parameters: - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - - name: dictId - in: path - description: Unique dictionary identifier - required: true - schema: - type: string - - name: dictVersion - in: query - description: | - If set to be valid dictionary version number, will return dictionary metadata with specified version. - Otherwise, return the latest dictionary metadata. - schema: - type: string - responses: - 200: - description: Success - content: - application/json: - schema: - $ref: '#/components/schemas/V1DLPDictionaryMetadataResponse' - 400: - description: Client error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 401: - description: 'Unauthorized: Session tokens invalid.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 403: - description: 'Forbidden: Caller lacks necessary entitlement.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 500: - description: Server error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - put: - tags: - - DLP Policies and Dictionary Management - summary: Updates a dictionary - description: | - Updates the dictionary's basic metadata without content. - This API cannot be used for creating a new dictionary. - In case of update only "name" can be changed. - Note: All related policies will also have versions updated. - parameters: - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - - name: dictId - in: path - description: Unique dictionary identifier - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/V1DLPDictionaryMetadataUpdateRequest' - required: true - responses: - 200: - description: Success - content: - application/json: - schema: - $ref: '#/components/schemas/V1DLPDictionaryMetadataResponse' - 400: - description: Client error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 401: - description: 'Unauthorized: Session tokens invalid.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 403: - description: 'Forbidden: Caller lacks necessary entitlement.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 500: - description: Server error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - x-codegen-request-body-name: body - delete: - tags: - - DLP Policies and Dictionary Management - summary: Delete a dictionary - description: | - Deletes a dictionary. - Note: All related policies will be affected. - parameters: - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - - name: dictId - in: path - description: Unique dictionary identifier - required: true - schema: - type: string - responses: - 200: - description: Success - content: - application/json: - schema: - $ref: '#/components/schemas/V1DLPDictionaryMetadataResponse' - 400: - description: Client error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 401: - description: 'Unauthorized: Session tokens invalid.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 403: - description: 'Forbidden: Caller lacks necessary entitlement.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 500: - description: Server error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - /v1/dlp/dictionaries/{dictId}/data/download: - get: - tags: - - DLP Policies and Dictionary Management - summary: Downloads Base 64 encoded dictionary content. - description: Downloads Base 64 encoded dictionary content. - parameters: - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - - name: dictId - in: path - description: Unique dictionary identifier - required: true - schema: - type: string - - name: dictVersion - in: query - description: | - If set to be valid dictionary version number, will return dictionary with specified version. - Otherwise, return the latest dictionary. - schema: - type: string - responses: - 200: - description: Attachment body as Base64 encoded string. - content: - application/octet-stream: - schema: - type: string - format: byte - 400: - description: Client error, see response body for further details. - content: - application/octet-stream: - schema: - $ref: '#/components/schemas/Error' - 401: - description: 'Unauthorized: Session tokens invalid.' - content: - application/octet-stream: - schema: - $ref: '#/components/schemas/Error' - 403: - description: 'Forbidden: Caller lacks necessary entitlement.' - content: - application/octet-stream: - schema: - $ref: '#/components/schemas/Error' - 500: - description: Server error, see response body for further details. - content: - application/octet-stream: - schema: - $ref: '#/components/schemas/Error' - /v1/dlp/dictionaries/{dictId}/data/upload: - post: - tags: - - DLP Policies and Dictionary Management - summary: Override dictionary content with provided content. - description: Override dictionary content with provided content. - parameters: - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - - name: dictId - in: path - description: Unique dictionary identifier - required: true - schema: - type: string - requestBody: - content: - multipart/form-data: - schema: - required: - - data - properties: - data: - type: string - format: binary - required: true - responses: - 200: - description: Success - content: - application/json: - schema: - $ref: '#/components/schemas/V1DLPDictionaryMetadataResponse' - 400: - description: Client error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 401: - description: 'Unauthorized: Session tokens invalid.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 403: - description: 'Forbidden: Caller lacks necessary entitlement.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 500: - description: Server error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - /v1/dlp/violations/message: - get: - tags: - - Violations - summary: Get violations as a result of policy enforcement on messages. - parameters: - - name: startTime - in: query - description: | - Timestamp of the first required violation. - This is a long integer value representing milliseconds since Jan 1 1970 - required: true - schema: - type: integer - format: int64 - - name: endTime - in: query - description: | - Timestamp of the last required violation. - This is a long integer value representing milliseconds since Jan 1 1970 - If unspecified, it will default to current time of the request. - schema: - type: integer - format: int64 - - name: next - in: query - description: Offset of the next chunk of violations. Value is null for the first request. - schema: - type: string - - name: limit - in: query - description: | - Max No. of violations to return. If no value is provided, 50 is the default. The maximum supported value is 500. - schema: - type: integer - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - responses: - 200: - description: OK - content: - application/json: - schema: - $ref: '#/components/schemas/V1DLPViolationMessageResponse' - 204: - description: No Messages. - content: {} - 400: - description: Client error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 401: - description: 'Unauthorized: Session tokens invalid.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 403: - description: 'Forbidden: Caller lacks necessary entitlement.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 500: - description: Server error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - /v1/dlp/violations/stream: - get: - tags: - - Violations - summary: Get violations as a result of policy enforcement on streams. - parameters: - - name: startTime - in: query - description: | - Timestamp of the first required violation. - This is a long integer value representing milliseconds since Jan 1 1970 - required: true - schema: - type: integer - format: int64 - - name: endTime - in: query - description: | - Timestamp of the last required violation. - This is a long integer value representing milliseconds since Jan 1 1970 - If unspecified, it will default to current time of the request. - schema: - type: integer - format: int64 - - name: next - in: query - description: Offset of the next chunk of violations. Value is null for the first request. - schema: - type: string - - name: limit - in: query - description: | - Max No. of violations to return. If no value is provided, 50 is the default. The maximum supported value is 500. - schema: - type: integer - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - responses: - 200: - description: OK - content: - application/json: - schema: - $ref: '#/components/schemas/V1DLPViolationStreamResponse' - 204: - description: No Messages. - content: {} - 400: - description: Client error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 401: - description: 'Unauthorized: Session tokens invalid.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 403: - description: 'Forbidden: Caller lacks necessary entitlement.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 500: - description: Server error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - /v1/dlp/violations/signal: - get: - tags: - - Violations - summary: Get violations as a result of policy enforcement on signals. - parameters: - - name: startTime - in: query - description: | - Timestamp of the first required violation. - This is a long integer value representing milliseconds since Jan 1 1970 - required: true - schema: - type: integer - format: int64 - - name: endTime - in: query - description: | - Timestamp of the last required violation. - This is a long integer value representing milliseconds since Jan 1 1970 - If unspecified, it will default to current time of the request. - schema: - type: integer - format: int64 - - name: next - in: query - description: Offset of the next chunk of violations. Value is null for the first request. - schema: - type: string - - name: limit - in: query - description: | - Max No. of violations to return. If no value is provided, 50 is the default. The maximum supported value is 500. - schema: - type: integer - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - responses: - 200: - description: OK - content: - application/json: - schema: - $ref: '#/components/schemas/V1DLPViolationSignalResponse' - 204: - description: No Messages. - content: {} - 400: - description: Client error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 401: - description: 'Unauthorized: Session tokens invalid.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 403: - description: 'Forbidden: Caller lacks necessary entitlement.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 500: - description: Server error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - /v3/dlp/policies: - get: - tags: - - DLP Policies and Dictionary Management - summary: Get all policies - description: Get all policies - parameters: - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - - name: page - in: query - description: Optional parameter to specify which page to return (default is 0) - schema: - type: integer - format: int32 - - name: limit - in: query - description: | - Optional parameter to specify the number of result to return per page, default is 50. Maximum is 50. - schema: - type: integer - format: int32 - responses: - 200: - description: Success - content: - application/json: - schema: - $ref: '#/components/schemas/V3DLPPoliciesCollectionResponse' - 400: - description: Client error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 401: - description: 'Unauthorized: Session tokens invalid.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 403: - description: 'Forbidden: Caller lacks necessary entitlement.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 500: - description: Server error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - post: - tags: - - DLP Policies and Dictionary Management - summary: Creates a policy - description: | - Creates a new policy with dictionary references. - At the time of policy creation, the caller should only provide - contentTypes, name, scopes and type. - The rest of the information is populated automatically. - Note - You need to enable the policy after creation to start enforcing the policy. - parameters: - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - requestBody: - description: Details about the policy that should be created. - content: - application/json: - schema: - $ref: '#/components/schemas/V3DLPPolicyRequest' - required: true - responses: - 200: - description: Success - content: - application/json: - schema: - $ref: '#/components/schemas/V3DLPPolicyResponse' - 400: - description: Client error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 401: - description: 'Unauthorized: Session tokens invalid.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 403: - description: 'Forbidden: Caller lacks necessary entitlement.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 500: - description: Server error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - x-codegen-request-body-name: body - /v3/dlp/policies/{policyId}: - get: - tags: - - DLP Policies and Dictionary Management - summary: Get a policy - description: Get a policy - parameters: - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - - name: policyId - in: path - description: Unique dictionary identifier. - required: true - schema: - type: string - - name: policyVersion - in: query - description: | - Optional parameter, if set to be valid policy version number, will return policy with specified policyVersion. - Otherwise, return the latest policy. - schema: - type: string - responses: - 200: - description: Success - content: - application/json: - schema: - $ref: '#/components/schemas/V3DLPPolicyResponse' - 400: - description: Client error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 401: - description: 'Unauthorized: Session tokens invalid.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 403: - description: 'Forbidden: Caller lacks necessary entitlement.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 500: - description: Server error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - /v3/dlp/policies/{policyId}/update: - post: - tags: - - DLP Policies and Dictionary Management - summary: Updates a policy. Cannot be used for creation. - description: | - Update the policy (name, type, contentTypes, scopes) and also the dictionaries for a policy. - Warning: If you send empty list of dictionaries during the update operation, then all the - dictionaries for this policy are deleted and policy is automatically disabled. - Note: The policy should already exist. - parameters: - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - - name: policyId - in: path - description: Unique dictionary identifier. - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/V3DLPPolicyRequest' - required: true - responses: - 200: - description: Success - content: - application/json: - schema: - $ref: '#/components/schemas/V3DLPPolicyResponse' - 400: - description: Client error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 401: - description: 'Unauthorized: Session tokens invalid.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 403: - description: 'Forbidden: Caller lacks necessary entitlement.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 500: - description: Server error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - x-codegen-request-body-name: body - /v3/dlp/policies/{policyId}/delete: - post: - tags: - - DLP Policies and Dictionary Management - summary: Delete a policy - description: | - Delete a policy. - Note: Only disabled policy can be deleted - parameters: - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - - name: policyId - in: path - description: Unique dictionary identifier. - required: true - schema: - type: string - responses: - 200: - description: Success - content: - application/json: - schema: - $ref: '#/components/schemas/V3DLPPolicyResponse' - 400: - description: Client error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 401: - description: 'Unauthorized: Session tokens invalid.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 403: - description: 'Forbidden: Caller lacks necessary entitlement.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 500: - description: Server error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - /v3/dlp/policies/{policyId}/enable: - post: - tags: - - DLP Policies and Dictionary Management - summary: Enables a policy. - description: Enables a policy. - parameters: - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - - name: policyId - in: path - required: true - schema: - type: string - responses: - 200: - description: Success - content: - application/json: - schema: - $ref: '#/components/schemas/V3DLPPolicyResponse' - 400: - description: Client error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 401: - description: 'Unauthorized: Session tokens invalid.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 403: - description: 'Forbidden: Caller lacks necessary entitlement.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 500: - description: Server error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - /v3/dlp/policies/{policyId}/disable: - post: - tags: - - DLP Policies and Dictionary Management - summary: Disables a policy. - description: Disables a policy. - parameters: - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - - name: policyId - in: path - required: true - schema: - type: string - responses: - 200: - description: Success - content: - application/json: - schema: - $ref: '#/components/schemas/V3DLPPolicyResponse' - 400: - description: Client error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 401: - description: 'Unauthorized: Session tokens invalid.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 403: - description: 'Forbidden: Caller lacks necessary entitlement.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 500: - description: Server error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - /v3/dlp/violations/message: - get: - tags: - - Violations - summary: Get violations as a result of policy enforcement on messages. - description: Retrieves DLP v3 message related violations for a given time range - parameters: - - name: startTime - in: query - description: | - Timestamp of the first required violation. - This is a long integer value representing milliseconds since Jan 1 1970 - required: true - schema: - type: integer - format: int64 - - name: endTime - in: query - description: | - Timestamp of the last required violation. - This is a long integer value representing milliseconds since Jan 1 1970 - If unspecified, it will default to current time of the request. - schema: - type: integer - format: int64 - - name: next - in: query - description: Offset of the next chunk of violations. Value is null for the first request. - schema: - type: string - - name: limit - in: query - description: | - Max No. of violations to return. If no value is provided, 50 is the default. The maximum supported value is 500. - schema: - type: integer - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - responses: - 200: - description: OK - content: - application/json: - schema: - $ref: '#/components/schemas/V3DLPViolationMessageResponse' - 204: - description: No Messages. - content: {} - 400: - description: Client error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 401: - description: 'Unauthorized: Session tokens invalid.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 403: - description: 'Forbidden: Caller lacks necessary entitlement.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 500: - description: Server error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - /v3/dlp/violations/stream: - get: - tags: - - Violations - summary: Get violations as a result of policy enforcement on streams. - description: Retrieves DLP v3 signal related violations for a given time range - parameters: - - name: startTime - in: query - description: | - Timestamp of the first required violation. - This is a long integer value representing milliseconds since Jan 1 1970 - required: true - schema: - type: integer - format: int64 - - name: endTime - in: query - description: | - Timestamp of the last required violation. - This is a long integer value representing milliseconds since Jan 1 1970 - If unspecified, it will default to current time of the request. - schema: - type: integer - format: int64 - - name: next - in: query - description: Offset of the next chunk of violations. Value is null for the first request. - schema: - type: string - - name: limit - in: query - description: | - Max No. of violations to return. If no value is provided, 50 is the default. The maximum supported value is 500. - schema: - type: integer - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - responses: - 200: - description: OK - content: - application/json: - schema: - $ref: '#/components/schemas/V3DLPViolationStreamResponse' - 204: - description: No Messages. - content: {} - 400: - description: Client error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 401: - description: 'Unauthorized: Session tokens invalid.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 403: - description: 'Forbidden: Caller lacks necessary entitlement.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 500: - description: Server error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - /v3/dlp/violations/signal: - get: - tags: - - Violations - summary: Get violations as a result of policy enforcement on signals. - description: Retrieves DLP v3 signal related violations for a given time range - parameters: - - name: startTime - in: query - description: | - Timestamp of the first required violation. - This is a long integer value representing milliseconds since Jan 1 1970 - required: true - schema: - type: integer - format: int64 - - name: endTime - in: query - description: | - Timestamp of the last required violation. - This is a long integer value representing milliseconds since Jan 1 1970 - If unspecified, it will default to current time of the request. - schema: - type: integer - format: int64 - - name: next - in: query - description: Offset of the next chunk of violations. Value is null for the first request. - schema: - type: string - - name: limit - in: query - description: | - Max No. of violations to return. If no value is provided, 50 is the default. The maximum supported value is 500. - schema: - type: integer - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - responses: - 200: - description: OK - content: - application/json: - schema: - $ref: '#/components/schemas/V3DLPViolationSignalResponse' - 204: - description: No Messages. - content: {} - 400: - description: Client error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 401: - description: 'Unauthorized: Session tokens invalid.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 403: - description: 'Forbidden: Caller lacks necessary entitlement.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 500: - description: Server error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - /v3/dlp/violation/attachment: - get: - tags: - - Violations - summary: Get attachments that were sent as part of messages that were flagged by the DLP System. - description: Retrieves attachments from related message violations as a base64 encoded String. - parameters: - - name: fileId - in: query - description: ID of attachment that will be downloaded. - required: true - schema: - type: string - - name: violationId - in: query - description: ID of violation that corresponds to the flagged message that contains the attachment - required: true - schema: - type: string - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - responses: - 200: - description: Attachment body as Base64 encoded string. - content: - application/octet-stream: - schema: - type: string - format: byte - 400: - description: Client error, see response body for further details. - content: - application/octet-stream: - schema: - $ref: '#/components/schemas/Error' - 401: - description: 'Unauthorized: Session tokens invalid.' - content: - application/octet-stream: - schema: - $ref: '#/components/schemas/Error' - 403: - description: 'Forbidden: Caller lacks necessary entitlement.' - content: - application/octet-stream: - schema: - $ref: '#/components/schemas/Error' - 404: - description: Resource not found. - content: - application/octet-stream: - schema: - $ref: '#/components/schemas/Error' - 500: - description: Server error, see response body for further details. - content: - application/octet-stream: - schema: - $ref: '#/components/schemas/Error' - /v1/audittrail/privilegeduser: - get: - tags: - - AuditTrail - summary: Get a list of actions performed by a privileged account acting as - privileged user given a period of time. - description: Get a list of actions performed by a privileged account acting - as privileged user given a period of time. - parameters: - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - - name: startTimestamp - in: query - description: Start timestamp in unix timestamp in millseconds. - required: true - schema: - type: integer - format: int64 - - name: endTimestamp - in: query - description: End timestamp in unix timestamp in millseconds. If not specified, it assumes to be current time. - schema: - type: integer - format: int64 - - name: before - in: query - description: Return results from an opaque “before” cursor value as presented via a response cursor. - schema: - type: string - - name: after - in: query - description: Return results from an opaque “after” cursor value as presented via a response cursor. - schema: - type: string - - name: limit - in: query - description: | - Max No. of violations to return. If no value is provided, 50 is the default. - Some maximums for limit may be enforced for performance reasons. - The maximum supported value is 500. - schema: - type: integer - - name: initiatorId - in: query - description: If present, only the initiator with this initiator will be returned. - schema: - type: integer - format: int64 - - name: role - in: query - description: | - If present, only the audit trail initiated by s user with privileged role acting as - privileged user will be returned. - Privileged eliglible roles: - User Provisioning (USER_PROVISIONING), - Content Management (CONTENT_MANAGEMENT), - Expression Filter Policy Management (EF_POLICY_MANAGEMENT), - SCO (SUPER_COMPLIANCE_OFFICER), - CO (COMPLIANCE_OFFICER), - Super admin (SUPER_ADMINISTRATOR), - Admin (ADMINISTRATOR), - L1 (L1_SUPPORT), - L2 (L2_SUPPORT), - Scope Manager (SCOPE_MANAGEMENT) - schema: - type: string - responses: - 200: - description: OK - content: - application/json: - schema: - $ref: '#/components/schemas/V1AuditTrailInitiatorList' - 204: - description: No Messages. - content: {} - 400: - description: Client error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 401: - description: 'Unauthorized: Session tokens invalid.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 403: - description: 'Forbidden: Caller lacks necessary entitlement.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 500: - description: Server error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - /v5/datafeeds: - get: - tags: - - Datafeed - summary: Read list of real time messages / events stream ("datafeed"). - description: | - _Available on Agent 2.57.0 and above._ - - The datafeed provides messages and events from all conversations that the user - is in. The types of events surfaced in the datafeed can be found in the [Real Time Events](./docs/real-time-events.md) list. - In most cases, only one active datafeed per user is required at a time. - operationId: listDatafeed - parameters: - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - - name: tag - in: query - description: A unique identifier to ensure uniqueness of the datafeed. Used - to restrict search. - schema: - maxLength: 100 - type: string - responses: - 200: - description: Datafeed sucessfully created. - content: - application/json: - schema: - type: array - items: - $ref: '#/components/schemas/V5Datafeed' - 400: - description: Bad request. - content: - application/json: - schema: - $ref: '#/components/schemas/V2Error' - 401: - description: Unauthorized. - content: - application/json: - schema: - $ref: '#/components/schemas/V2Error' - 500: - description: Internal server error. - content: - application/json: - schema: - $ref: '#/components/schemas/V2Error' - post: - tags: - - Datafeed - summary: Create a new real time messages / events stream ("datafeed"). - description: | - _Available on Agent 2.57.0 and above._ - - The datafeed provides messages and events from all conversations that the user - is in. The types of events surfaced in the datafeed can be found in the Real Time Events list. - (see definition on top of the file) - - Returns the ID of the datafeed that has just been created. - This ID should then be used as input to the Read Messages/Events Stream v4 endpoint. - operationId: createDatafeed - parameters: - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/V5DatafeedCreateBody' - required: false - responses: - 201: - description: Datafeed sucessfully created. - content: - application/json: - schema: - $ref: '#/components/schemas/V5Datafeed' - 400: - description: Bad request. - content: - application/json: - schema: - $ref: '#/components/schemas/V2Error' - 401: - description: Unauthorized. - content: - application/json: - schema: - $ref: '#/components/schemas/V2Error' - 500: - description: Internal server error. - content: - application/json: - schema: - $ref: '#/components/schemas/V2Error' - x-codegen-request-body-name: body - /v5/datafeeds/{datafeedId}: - delete: - tags: - - Datafeed - summary: Delete the specified real time message / event stream ("datafeed"). - description: | - _Available on Agent 2.57.0 and above._ - - The datafeed provides messages and events from all conversations that the user - is in. The types of events surfaced in the datafeed can be found in the Real Time Events list. - (see definition on top of the file) - - Delete the specified datafeed. - operationId: deleteDatafeed - parameters: - - name: datafeedId - in: path - description: ID of the datafeed - required: true - schema: - type: string - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - responses: - 204: - description: Datafeed successfully deleted. - content: - application/json: - schema: - $ref: '#/components/schemas/V2Error' - 400: - description: Bad request. - content: - application/json: - schema: - $ref: '#/components/schemas/V2Error' - 401: - description: Unauthorized. - content: - application/json: - schema: - $ref: '#/components/schemas/V2Error' - 500: - description: Internal server error. - content: - application/json: - schema: - $ref: '#/components/schemas/V2Error' - /v5/datafeeds/{datafeedId}/read: - post: - tags: - - Datafeed - summary: Read messages and events from the real time feed identified by its {datafeedId}. - description: | - Available on Agent 2.57.0 and above. - - The datafeed provides messages and events from all conversations that the user - is in, in real time. The types of events surfaced in the datafeed can be found in the Real Time Events list. - (see definition on top of the file) - - Read the specified datafeed. - - The ackId sent as parameter must be null for the first call. In the response an ackId will be sent back and it must be used for - the next call: in this way you acknowledge that you have received the events that came with that ackId; datafeed will remove the events - associated with that ackId from your queue - operationId: readDatafeed - parameters: - - name: datafeedId - in: path - description: ID of the datafeed - required: true - schema: - type: string - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/AckId' - required: false - responses: - 200: - description: Datafeed successfully read. - content: - application/json: - schema: - $ref: '#/components/schemas/V5EventList' - 400: - description: "Do not retry: the feed no longer exists, please create a new feed. The datafeed has a 30 minutes ttl. Alternatively, the format of the provided ackId may be incorrect." - content: - application/json: - schema: - $ref: '#/components/schemas/V2Error' - 401: - description: Unauthorized. - content: - application/json: - schema: - $ref: '#/components/schemas/V2Error' - 403: - description: Too many feeds created. This happens when you reached 20 active feeds. Usually, only one active feed is required per service account. - content: - application/json: - schema: - $ref: '#/components/schemas/V2Error' - 500: - description: Internal server error. Please retry reading the datafeed with an exponential backoff. - content: - application/json: - schema: - $ref: '#/components/schemas/V2Error' - x-codegen-request-body-name: ackId - /v5/events/read: - post: - tags: - - Datahose - summary: Creates and Reads a real time feed of messages and events of your pod (Datahose) - description: | - Available on Agent 22.5.1 and above. - - This API provides a real time feed of all the messages and events in the pod, - even from conversations where the calling service account is not a member. The types of events surfaced - can be found in the Real Time Events list. - In case you retrieving SOCIALMESSAGE events, the credentials of the ceservice - account must be properly configured in the Agent. - - The types of events returned can be found in the Real Time - Events list (see definition on top of the file). - - The ackId sent as parameter must be empty for the first call. In the response an ackId will be sent back - and it can be used for the next call: in this way you acknowledge that - you have received the events that came with that ackId. - - If you have several instances of the same bot, they must share the same feed so - that events are spread across all bot instances. To do so, you must: share the same - service account provide the same "tag" and same "filters" values. - - The Datahose API is an add-on to the Symphony Services, and is subject to additional charges. - Prior to using Datahose in your Symphony environment(s), you will need to enter into a specific contract. - operationId: readEvents - parameters: - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/V5EventsReadBody' - example: - type: "datahose" - tag: "mybotusername" - eventTypes: ["MESSAGE_SENT"] - updatePresence: false - required: true - responses: - 200: - description: Datafeed successfully read. - content: - application/json: - schema: - $ref: '#/components/schemas/V5EventList' - 400: - description: Bad request. - content: - application/json: - schema: - $ref: '#/components/schemas/V2Error' - 401: - description: Unauthorized. - content: - application/json: - schema: - $ref: '#/components/schemas/V2Error' - 403: - description: Forbidden. - content: - application/json: - schema: - $ref: '#/components/schemas/V2Error' - 500: - description: Internal server error. - content: - application/json: - schema: - $ref: '#/components/schemas/V2Error' - x-codegen-request-body-name: body - # - # Deprecated paths - # - /v1/datafeed/create: - post: - tags: - - Datafeed - summary: Create a new real time message event stream. - description: | - A datafeed provides the messages in all conversations that a user is in. - System messages like new users joining a chatroom are not part of the datafeed. - - A datafeed will expire after if it isn't read before its capacity is reached. - parameters: - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - responses: - 200: - description: OK - headers: - X-Warning: - description: This method is deprecated - schema: - type: string - content: - application/json: - schema: - $ref: '#/components/schemas/Datafeed' - 400: - description: Client error. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 401: - description: 'Unauthorized: Session tokens invalid.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 403: - description: 'Forbidden: Caller lacks necessary entitlement.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 500: - description: Server error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 503: - description: Max number of data feeds reached. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - deprecated: true - /v1/datafeed/{id}/read: - get: - tags: - - Datafeed - summary: Read a given datafeed. - description: | - Read messages from the given datafeed. If no more messages are available then this method will block. - It is intended that the client should re-call this method as soon as it has processed the messages - received in the previous call. If the client is able to consume messages more quickly than they become - available then each call will initially block, there is no need to delay before re-calling this method. - - A datafeed will expire if its unread capacity is reached. - A datafeed can only be consumed by one client thread at a time. E.g. polling the datafeed by two threads may lead to messages being delivered out of order. - parameters: - - name: id - in: path - description: Datafeed ID - required: true - schema: - type: string - - name: maxMessages - in: query - description: Max No. of messages to return. - schema: - type: integer - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - responses: - 200: - description: List of messages that have occurred since last time this URL - was polled. If the list is empty, it means the request has reached its - timeout, and the client should poll again. - headers: - X-Warning: - description: This method is deprecated - schema: - type: string - content: - application/json: - schema: - $ref: '#/components/schemas/MessageList' - 204: - description: No Messages. - content: {} - 400: - description: Client error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 401: - description: 'Unauthorized: Session tokens invalid.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 403: - description: 'Forbidden: Caller lacks necessary entitlement.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 500: - description: Server error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - deprecated: true - /v1/HealthCheck: - get: - tags: - - System - summary: Checks the health of the Agent. - description: | - Used to validate the configuration of the agent. - Makes a request to the HealthCheck on the Symphony cloud. - Makes a request to the HealthCheck on the Key Manager service. - responses: - 200: - description: The Agent is functioning properly. - headers: - X-Warning: - description: This method is deprecated - schema: - type: string - content: - application/json: - schema: - $ref: '#/components/schemas/V1HealthCheckResponse' - deprecated: true - /v2/HealthCheck: - get: - tags: - - System - summary: Checks the health of the Agent. - description: | - [deprecated] : This endpoint is deprecated. - The health check endpoint to be used instead is '/v3/health/extended'. - Unlike this deprecated endpoint, the extended health check endpoint provides status on external component such as pod, key manager, ceservice, agentservice... - parameters: - - name: showFirehoseErrors - in: query - description: | - [deprecated] Firehose Service has never been deployed. However, this request parameter has been kept here - for specs backward compatibility. - schema: - type: boolean - - name: failOnPodConnectivity - in: query - description: | - Defines the HealthCheck status code response whenever the Pod connectivity fails. When set to "true", - in case of Pod connectivity failure, the response status code will be 503; otherwise, it will be 200. - Default value is "false". - schema: - type: boolean - - name: failOnKeyManagerConnectivity - in: query - description: | - Defines the HealthCheck status code response whenever the Key Manager connectivity fails. When set to "true", - in case of Key Manager connectivity failure, the response status code will be 503; otherwise, it will be 200. - Default value is "false". - schema: - type: boolean - - name: failOnAgentServiceUser - in: query - description: | - Defines the HealthCheck status code response whenever the Agent Service User connectivity fails. When set to "true", - in case of Agent Service connectivity failure, the response status code will be 503; otherwise, it will be 200. - Default value is "false". - schema: - type: boolean - - name: failOnCeServiceUser - in: query - description: | - This query parameter is not used as the ceservice is deprecated and it is kept for backward compatibility. - Default value is "false" but it will not change the response status code if set to true. - schema: - type: boolean - - name: failOnEncryptDecryptSuccess - in: query - description: | - Defines the status code response whenever the Encrypt/Decrypt message check fails. When set to "true", - in case of Encrypt or Decrypt failure, the response status code will be 503; otherwise, it will be 200. - Default value is "false". - schema: - type: boolean - - name: failOnAny - in: query - description: | - Defines the status code response whenever at least one of the checks fails. When set to "true", - in case of any failure, the response status code will be 503; otherwise, it will be 200. - Default value is "false". - schema: - type: boolean - - name: failOnDatafeedConnectivity - in: query - description: | - Defines the HealthCheck status code response whenever the Datafeed2 connectivity fails. When set to "true", - in case of Datafeed connectivity failure, the response status code will be 503; otherwise, it will be 200. - Default value is "false". - schema: - type: boolean - - name: sessionToken - in: header - description: Session authentication token. - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - responses: - 200: - description: The Agent is functioning properly. - headers: - X-Warning: - description: This method is deprecated - schema: - type: string - content: - application/json: - schema: - $ref: '#/components/schemas/V2HealthCheckResponse' - deprecated: true - /v2/datafeed/{id}/read: - get: - tags: - - Datafeed - summary: Read a given datafeed. - description: | - Read messages from the given datafeed. If no more messages are available then this method will block. - It is intended that the client should re-call this method as soon as it has processed the messages - received in the previous call. If the client is able to consume messages more quickly than they become - available then each call will initially block, there is no need to delay before re-calling this method. - - A datafeed will expire if its unread capacity is reached. - A datafeed can only be consumed by one client thread at a time. E.g. polling the datafeed by two threads may lead to messages being delivered out of order. - parameters: - - name: id - in: path - description: Datafeed ID - required: true - schema: - type: string - - name: maxMessages - in: query - description: Max No. of messages to return. - schema: - type: integer - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - responses: - 200: - description: List of messages that have occurred since last time this URL - was polled. If the list is empty, it means the request has reached its - timeout, and the client should poll again. - headers: - X-Warning: - description: This method is deprecated - schema: - type: string - content: - application/json: - schema: - $ref: '#/components/schemas/V2MessageList' - 204: - description: No Messages. - content: {} - 400: - description: Client error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 401: - description: 'Unauthorized: Session tokens invalid.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 403: - description: 'Forbidden: Caller lacks necessary entitlement.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 500: - description: Server error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - deprecated: true - /v4/datafeed/create: - post: - tags: - - Datafeed - summary: | - (Deprecated - Datafeed v1 will be fully replaced by the datafeed 2 - service in the future. Please consider migrating over to datafeed 2 APIs - /agent/v5/datafeeds. For more information on the timeline as well as on - the benefits of datafeed 2, please reach out to your Technical Account Manager - or to our developer documentation https://docs.developers.symphony.com/building-bots-on-symphony/datafeed) - Create a new real time message event stream. - description: | - A datafeed provides the messages in all conversations that a user is in. - This also includes system messages like new users joining a chatroom. - - A datafeed will expire if it isn't read before its capacity is reached. - parameters: - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - responses: - 200: - description: OK - headers: - X-Warning: - description: This method is deprecated - schema: - type: string - content: - application/json: - schema: - $ref: '#/components/schemas/Datafeed' - 400: - description: Client error. - headers: - X-Warning: - description: This method is deprecated - schema: - type: string - content: - application/json: - schema: - $ref: '#/components/schemas/V2Error' - 401: - description: 'Unauthorized: Session tokens invalid.' - headers: - X-Warning: - description: This method is deprecated - schema: - type: string - content: - application/json: - schema: - $ref: '#/components/schemas/V2Error' - 403: - description: 'Forbidden: Caller lacks necessary entitlement.' - headers: - X-Warning: - description: This method is deprecated - schema: - type: string - content: - application/json: - schema: - $ref: '#/components/schemas/V2Error' - 500: - description: Server error, see response body for further details. - headers: - X-Warning: - description: This method is deprecated - schema: - type: string - content: - application/json: - schema: - $ref: '#/components/schemas/V2Error' - 503: - description: Max number of data feeds reached. - headers: - X-Warning: - description: This method is deprecated - schema: - type: string - content: - application/json: - schema: - $ref: '#/components/schemas/V2Error' - deprecated: true - /v4/datafeed/{id}/read: - get: - tags: - - Datafeed - summary: | - (Deprecated - Datafeed v1 will be fully replaced by the datafeed 2 - service in the future. Please consider migrating over to datafeed 2 APIs - /agent/v5/datafeeds/{id}/read. For more information on the timeline as - well as on the benefits of datafeed 2, please reach out to your Technical - Account Manager or to our developer documentation https://docs.developers.symphony.com/building-bots-on-symphony/datafeed) - Read a given datafeed. - description: | - Read messages from the given datafeed. If no more messages are available then this method will block. - It is intended that the client should re-call this method as soon as it has processed the messages - received in the previous call. If the client is able to consume messages more quickly than they become - available then each call will initially block, there is no need to delay before re-calling this method. - - A datafeed will expire if its unread capacity is reached. - A datafeed can only be consumed by one client thread at a time. E.g. polling the datafeed by two threads may lead to messages being delivered out of order. - parameters: - - name: id - in: path - description: Datafeed ID - required: true - schema: - type: string - - name: limit - in: query - description: Max No. of messages to return. - schema: - type: integer - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - responses: - 200: - description: List of messages that have occurred since last time this URL - was polled. If the list is empty, it means the request has reached its - timeout, and the client should poll again. - headers: - X-Warning: - description: This method is deprecated - schema: - type: string - content: - application/json: - schema: - $ref: '#/components/schemas/V4EventList' - 204: - description: No Messages. - headers: - X-Warning: - description: This method is deprecated - schema: - type: string - content: {} - 400: - description: Client error, see response body for further details. - headers: - X-Warning: - description: This method is deprecated - schema: - type: string - content: - application/json: - schema: - $ref: '#/components/schemas/V2Error' - 401: - description: 'Unauthorized: Session tokens invalid.' - headers: - X-Warning: - description: This method is deprecated - schema: - type: string - content: - application/json: - schema: - $ref: '#/components/schemas/V2Error' - 403: - description: 'Forbidden: Caller lacks necessary entitlement.' - headers: - X-Warning: - description: This method is deprecated - schema: - type: string - content: - application/json: - schema: - $ref: '#/components/schemas/V2Error' - 500: - description: Server error, see response body for further details. - headers: - X-Warning: - description: This method is deprecated - schema: - type: string - content: - application/json: - schema: - $ref: '#/components/schemas/V2Error' - deprecated: true - /v1/message/import: - post: - tags: - - Messages - summary: Import messages from other systems into Symphony. - description: | - Sends a message to be imported into the system. - Allows you to override the timestamp and author of the message with your desired values. - The requesting user must have the Content Management role. - The user that the message is intended to have come from must also be present in the conversation. - The intended message timestamp must be a valid time from the past. It cannot be a future timestamp. - parameters: - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/MessageImportList' - required: true - responses: - 200: - description: Message sent. - headers: - X-Warning: - description: This method is deprecated - schema: - type: string - content: - application/json: - schema: - $ref: '#/components/schemas/ImportResponseList' - 400: - description: Client error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 401: - description: 'Unauthorized: Session tokens invalid.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 403: - description: 'Forbidden: Caller lacks necessary entitlement.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 500: - description: Server error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - deprecated: true - x-codegen-request-body-name: messageList - /v2/message/import: - post: - tags: - - Messages - summary: Import messages from other systems into Symphony. - description: | - Sends a message to be imported into the system. - Allows you to override the timestamp and author of the message with your desired values. - The requesting user must have the Content Management role. - The user that the message is intended to have come from must also be present in the conversation. - The intended message timestamp must be a valid time from the past. It cannot be a future timestamp. - Optionally the original message ID can be specified to identify the imported message for the purpose of repeat imports. - parameters: - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/V2MessageImportList' - required: true - responses: - 200: - description: Message sent. - headers: - X-Warning: - description: This method is deprecated - schema: - type: string - content: - application/json: - schema: - $ref: '#/components/schemas/V2ImportResponseList' - 400: - description: Client error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 401: - description: 'Unauthorized: Session tokens invalid.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 403: - description: 'Forbidden: Caller lacks necessary entitlement.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 500: - description: Server error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - deprecated: true - x-codegen-request-body-name: messageList - /v1/stream/{sid}/attachment/create: - post: - tags: - - Attachments - summary: Upload an attachment. - description: | - Upload an attachment to the given stream. The stream can be a chatroom, - an IM or a multiparty IM. - - Once uploaded, you can use this attachment on a message you send in that stream. - - If the attachment is uploaded then 200 is returned. - parameters: - - name: sid - in: path - description: Stream ID - required: true - schema: - type: string - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - requestBody: - content: - multipart/form-data: - schema: - required: - - file - properties: - file: - type: string - description: The attachment body. - format: binary - required: true - responses: - 200: - description: Upload successful, return the attachment ID. - headers: - X-Warning: - description: This method is deprecated - schema: - type: string - content: - application/json: - schema: - $ref: '#/components/schemas/AttachmentInfo' - 400: - description: Client error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 401: - description: 'Unauthorized: Session tokens invalid.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 403: - description: 'Forbidden: Caller lacks necessary entitlement.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 422: - description: 'Unprocessable entity: The submitted data could not be processed.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 500: - description: Server error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - deprecated: true - /v3/stream/{sid}/attachment/create: - post: - tags: - - Attachments - summary: PROVISIONAL - Upload an attachment. - description: | - Upload an attachment to the given stream. The stream can be a chatroom, - an IM or a multiparty IM. - - Once uploaded, you can use this attachment on a message you send in that stream. - - If the attachment is uploaded then 200 is returned. - parameters: - - name: sid - in: path - description: Stream ID - required: true - schema: - type: string - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - requestBody: - content: - multipart/form-data: - schema: - required: - - file - properties: - file: - type: string - description: The attachment body. - format: binary - required: true - responses: - 200: - description: Upload successful, return the attachment ID. - headers: - X-Warning: - description: This method is deprecated - schema: - type: string - content: - application/json: - schema: - $ref: '#/components/schemas/AttachmentInfo' - 400: - description: Client error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 401: - description: 'Unauthorized: Session tokens invalid.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 403: - description: 'Forbidden: Caller lacks necessary entitlement.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 422: - description: 'Unprocessable entity: The submitted data could not be processed.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 500: - description: Server error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - deprecated: true - /v1/stream/{sid}/message: - get: - tags: - - Messages - summary: Get messages from an existing stream. - description: | - A caller can fetch all unseen messages by passing the timestamp of - the last message seen as the since parameter and the number of messages - with the same timestamp value already seen as the skip parameter. This - means that every message will be seen exactly once even in the case that - an additional message is processed with the same timestamp as the last - message returned by the previous call, and the case where there are - more than maxMessages with the same timestamp value. - - This method is intended for historic queries and is generally reliable - but if guaranteed delivery of every message in real time is required - then the equivilent firehose method should be called. - parameters: - - name: sid - in: path - description: Stream ID - required: true - schema: - type: string - - name: since - in: query - description: | - Timestamp of first required message. - - This is a long integer value representing milliseconds since - Jan 1 1970 - required: true - schema: - type: integer - format: int64 - - name: offset - in: query - description: No. of messages to skip. - schema: - type: integer - - name: maxMessages - in: query - description: Max No. of messages to return. If no value is provided, 50 is the default. - schema: - type: integer - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - responses: - 200: - description: OK - headers: - X-Warning: - description: This method is deprecated - schema: - type: string - content: - application/json: - schema: - $ref: '#/components/schemas/MessageList' - 204: - description: No Messages. - content: {} - 400: - description: Client error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 401: - description: 'Unauthorized: Session tokens invalid.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 403: - description: 'Forbidden: Caller lacks necessary entitlement.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 500: - description: Server error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - deprecated: true - /v2/stream/{sid}/message: - get: - tags: - - Messages - summary: Get messages from an existing stream. - description: | - A caller can fetch all unseen messages by passing the timestamp of - the last message seen as the since parameter and the number of messages - with the same timestamp value already seen as the skip parameter. This - means that every message will be seen exactly once even in the case that - an additional message is processed with the same timestamp as the last - message returned by the previous call, and the case where there are - more than maxMessages with the same timestamp value. - - This method is intended for historic queries and is generally reliable - but if guaranteed delivery of every message in real time is required - then the equivilent firehose method should be called. - parameters: - - name: sid - in: path - description: Stream ID - required: true - schema: - type: string - - name: since - in: query - description: | - Timestamp of first required message. - - This is a long integer value representing milliseconds since - Jan 1 1970 - required: true - schema: - type: integer - format: int64 - - name: offset - in: query - description: No. of messages to skip. - schema: - type: integer - - name: limit - in: query - description: Max No. of messages to return. If no value is provided, 50 is the default. - schema: - type: integer - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - responses: - 200: - description: OK - headers: - X-Warning: - description: This method is deprecated - schema: - type: string - content: - application/json: - schema: - $ref: '#/components/schemas/V2MessageList' - 204: - description: No Messages. - content: {} - 400: - description: Client error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 401: - description: 'Unauthorized: Session tokens invalid.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 403: - description: 'Forbidden: Caller lacks necessary entitlement.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 500: - description: Server error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - deprecated: true - /v1/stream/{sid}/message/create: - post: - tags: - - Messages - summary: Post a message to one existing stream. - description: | - Post a new message to the given stream. The stream can be a chatroom, - an IM or a multiparty IM. - - If the message parameter type is TEXT then the message contains plain - text and cannot include formating, hash tags, mentions etc. - - If the message parameter type is MessageML then the message contains - MessageML which allows for these entities. - - If the message is in MessageML and fails schema validation - a client error results - - If the message is sent then 200 is returned. - parameters: - - name: sid - in: path - description: Stream ID - required: true - schema: - type: string - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/MessageSubmission' - required: true - responses: - 200: - description: Message sent. - headers: - X-Warning: - description: This method is deprecated - schema: - type: string - content: - application/json: - schema: - $ref: '#/components/schemas/Message' - 400: - description: Client error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 401: - description: 'Unauthorized: Session tokens invalid.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 403: - description: 'Forbidden: Caller lacks necessary entitlement.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 500: - description: Server error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - deprecated: true - x-codegen-request-body-name: message - /v2/stream/{sid}/message/create: - post: - tags: - - Messages - summary: Post a message to one existing stream. - description: | - Post a new message to the given stream. The stream can be a chatroom, - an IM or a multiparty IM. - - You may include an attachment on the message (see the V2MessageSubmission parameter). - - If the message parameter type is TEXT then the message contains plain - text and cannot include formating, hash tags, mentions etc. - - If the message parameter type is MessageML then the message contains - MessageML which allows for these entities. - - If the message is in MessageML and fails schema validation - a client error results - - If the message is sent then 200 is returned. - parameters: - - name: sid - in: path - description: Stream ID - required: true - schema: - type: string - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/V2MessageSubmission' - required: true - responses: - 200: - description: Message sent. - headers: - X-Warning: - description: This method is deprecated - schema: - type: string - content: - application/json: - schema: - $ref: '#/components/schemas/V2Message' - 400: - description: Client error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 401: - description: 'Unauthorized: Session tokens invalid.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 403: - description: 'Forbidden: Caller lacks necessary entitlement.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 500: - description: Server error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - deprecated: true - x-codegen-request-body-name: message - /v3/stream/{sid}/message/create: - post: - tags: - - Messages - summary: PROVISIONAL - Post a message to one existing stream. - description: | - Post a new message to the given stream. The stream can be a chatroom, - an IM or a multiparty IM. - - You may include an attachment on the message (see the V2MessageSubmission parameter). - - If the message parameter type is TEXT then the message contains plain - text and cannot include formating, hash tags, mentions etc. - - If the message parameter type is MessageML then the message contains - MessageML which allows for these entities. - - If the message is in MessageML and fails schema validation - a client error results - - If the message is sent then 200 is returned. - - Regarding authentication, you must either use the sessionToken which was created for delegated app access - or both the sessionToken and keyManagerToken together. - parameters: - - name: sid - in: path - description: Stream ID - required: true - schema: - type: string - - name: sessionToken - in: header - description: Authorization token used to make delegated calls. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/V2MessageSubmission' - required: true - responses: - 200: - description: Message sent. - headers: - X-Warning: - description: This method is deprecated - schema: - type: string - content: - application/json: - schema: - $ref: '#/components/schemas/V2Message' - 400: - description: Client error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 401: - description: 'Unauthorized: Session tokens invalid.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 403: - description: 'Forbidden: Caller lacks necessary entitlement.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 500: - description: Server error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - deprecated: true - x-codegen-request-body-name: message - /v1/stream/{sid}/share: - post: - tags: - - Share - summary: Share a piece of content into Symphony - description: | - Given a 3rd party content (eg. news article), it can share to the given stream. - The stream can be a chatroom, an IM or a multiparty IM. - parameters: - - name: sid - in: path - description: Stream ID - required: true - schema: - type: string - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ShareContent' - required: true - responses: - 200: - description: Success - headers: - X-Warning: - description: This method is deprecated - schema: - type: string - content: - application/json: - schema: - $ref: '#/components/schemas/V2Message' - 400: - description: Client error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 401: - description: 'Unauthorized: Session tokens invalid.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 403: - description: 'Forbidden: Caller lacks necessary entitlement.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 500: - description: Server error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - deprecated: true - x-codegen-request-body-name: shareContent - /v1/util/obsolete: - post: - tags: - - Util - summary: Example of a deprecated endpoint, returns input. - parameters: - - name: sessionToken - in: header - description: Session authentication token. - required: true - schema: - type: string - - name: keyManagerToken - in: header - description: Key Manager authentication token. - schema: - type: string - requestBody: - description: Message in plain text - content: - application/json: - schema: - $ref: '#/components/schemas/SimpleMessage' - required: true - responses: - 200: - description: Message sent. - headers: - X-Warning: - description: This method is deprecated - schema: - type: string - content: - application/json: - schema: - $ref: '#/components/schemas/SimpleMessage' - 400: - description: Client error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 401: - description: 'Unauthorized: Session tokens invalid.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 403: - description: 'Forbidden: Caller lacks necessary entitlement.' - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 420: - description: Gone. Returned when the option to hard fail deprecated methods - is enabled - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - 500: - description: Server error, see response body for further details. - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - deprecated: true - x-codegen-request-body-name: echoInput -components: - schemas: - Error: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - IngestionError: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - ingestionStatus: - type: string - V2Error: - required: - - code - - message - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: object - SuccessResponse: - type: object - properties: - format: - type: string - enum: - - TEXT - - XML - message: - type: string - V2BaseMessage: - required: - - streamId - - timestamp - - v2messageType - type: object - properties: - id: - type: string - description: The messageId is assigned by the ingestor service when a message is sent. - timestamp: - type: string - v2messageType: - type: string - streamId: - type: string - discriminator: - propertyName: v2messageType - V2Message: - description: A representation of a message sent by a user of Symphony. - allOf: - - $ref: '#/components/schemas/V2BaseMessage' - - required: - - fromUserId - - message - type: object - properties: - message: - type: string - description: Message text in MessageML - format: MessageML - fromUserId: - type: integer - description: the Symphony userId of the user who sent the message. This - will be populated by the server (and actually ignored if included when - sending a message). - format: int64 - attachments: - type: array - default: [] - items: - $ref: '#/components/schemas/AttachmentInfo' - RoomCreatedMessage: - description: Generated when a room is created. - allOf: - - $ref: '#/components/schemas/V2BaseMessage' - - type: object - properties: - creationDate: - type: integer - format: int64 - name: - type: string - keywords: - type: array - default: [] - items: - $ref: '#/components/schemas/RoomTag' - description: - type: string - createdByUserId: - type: integer - description: The Symphony userId of the user who created the room. - format: int64 - readOnly: - type: boolean - discoverable: - type: boolean - public: - type: boolean - membersCanInvite: - type: boolean - copyProtected: - type: boolean - RoomDeactivatedMessage: - description: Generated when a room is deactivated. - allOf: - - $ref: '#/components/schemas/V2BaseMessage' - - type: object - properties: - deactivatedByUserId: - type: integer - format: int64 - RoomReactivatedMessage: - description: Generated when a room is reactivated. - allOf: - - $ref: '#/components/schemas/V2BaseMessage' - - type: object - properties: - reactivatedByUserId: - type: integer - format: int64 - RoomUpdatedMessage: - description: Generated when a room is updated. - allOf: - - $ref: '#/components/schemas/V2BaseMessage' - - type: object - properties: - oldName: - type: string - newName: - type: string - keywords: - type: array - default: [] - items: - $ref: '#/components/schemas/RoomTag' - oldDescription: - type: string - newDescription: - type: string - membersCanInvite: - type: boolean - discoverable: - type: boolean - readOnly: - type: boolean - copyProtected: - type: boolean - UserJoinedRoomMessage: - description: Generated when a user joins a room. - allOf: - - $ref: '#/components/schemas/V2BaseMessage' - - type: object - properties: - addedByUserId: - type: integer - format: int64 - memberAddedUserId: - type: integer - format: int64 - UserLeftRoomMessage: - description: Generated when a user leaves a room. - allOf: - - $ref: '#/components/schemas/V2BaseMessage' - - type: object - properties: - removedByUserId: - type: integer - format: int64 - memberLeftUserId: - type: integer - format: int64 - informationBarrierRemediation: - type: boolean - RoomMemberPromotedToOwnerMessage: - description: Generated when a room member is promoted to owner. - allOf: - - $ref: '#/components/schemas/V2BaseMessage' - - type: object - properties: - promotedByUserId: - type: integer - format: int64 - promotedUserId: - type: integer - format: int64 - RoomMemberDemotedFromOwnerMessage: - description: Generated when a room member is promoted to owner. - allOf: - - $ref: '#/components/schemas/V2BaseMessage' - - type: object - properties: - demotedByUserId: - type: integer - format: int64 - demotedUserId: - type: integer - format: int64 - ConnectionRequestMessage: - description: Generated when a connection request is sent. - allOf: - - $ref: '#/components/schemas/V2BaseMessage' - - type: object - properties: - requestingUserId: - type: integer - format: int64 - targetUserId: - type: integer - format: int64 - firstRequestedAt: - type: integer - format: int64 - updatedAt: - type: integer - format: int64 - requestCounter: - type: integer - status: - type: string - AttachmentInfo: - required: - - id - - name - - size - type: object - properties: - id: - type: string - description: The attachment ID. - name: - type: string - description: The file name. - size: - type: integer - description: Size in bytes. - format: int64 - V2MessageList: - type: array - items: - $ref: '#/components/schemas/V2BaseMessage' - SimpleMessage: - type: object - properties: - message: - type: string - description: A string wrapped in a JSON object. - RoomTag: - required: - - key - - value - type: object - properties: - key: - type: string - description: A unique label of the Tag. - value: - type: string - description: The value of this Tag's label. - description: Room Tag object. A key:value pair describing additional properties - of the room. - ShareArticle: - required: - - appId - - author - - publisher - - title - type: object - properties: - articleId: - type: string - description: | - An ID for this article that should be unique to the calling application. - Either an articleId or an articleUrl is required. - title: - type: string - description: The title of the article - subTitle: - type: string - description: The subtitle of the article - message: - type: string - description: The message text that can be send along with the shared article - publisher: - type: string - description: Publisher of the article - publishDate: - type: integer - description: Article publish date in unix timestamp - format: int64 - thumbnailUrl: - type: string - description: Url to the thumbnail image - author: - type: string - description: Author of the article - articleUrl: - type: string - description: Url to the article - summary: - type: string - description: Preview summary of the article - appId: - type: string - description: App ID of the calling application - appName: - type: string - description: App name of the calling application - appIconUrl: - type: string - description: App icon url of the calling application - ShareContent: - type: object - properties: - type: - type: string - description: Type of content to be shared. Currently only support "com.symphony.sharing.article" - content: - $ref: '#/components/schemas/ShareArticle' - V2HealthCheckResponse: - type: object - properties: - podConnectivity: - type: boolean - description: Indicates whether the Agent server can connect to the Pod - podConnectivityError: - type: string - description: Error details in case of no Pod connectivity - keyManagerConnectivity: - type: boolean - description: Indicates whether the Agent server can connect to the Key Manager - keyManagerConnectivityError: - type: string - description: Error details in case of no Key Manager connectivity - firehoseConnectivity: - type: boolean - description: Indicates whether the Agent server can connect to Firehose Service - firehoseConnectivityError: - type: string - description: Error details in case of no Firehose connectivity - datafeedConnectivity: - type: boolean - description: Indicates whether the Agent server can connect to Datafeed V2 Service - datafeedConnectivityError: - type: string - description: Error details in case of no Datafeed V2 connectivity - datafeedVersion: - type: string - description: Indicates the Datafeed V2 version - encryptDecryptSuccess: - type: boolean - description: Indicates whether the Agent can successfully decrypt and encrypt messages - encryptDecryptError: - type: string - description: Error details in case of the encryption or decryption of the message fails - podVersion: - type: string - description: The version number of the pod - agentVersion: - type: string - description: The version number of the Agent server - agentServiceUser: - type: boolean - description: Indicates whether agent service user is setup correctly. - agentServiceUserError: - type: string - description: Error details in case agent service user is setup incorrectly. - ceServiceUser: - type: boolean - description: Indicates whether CEService user is setup correctly. - ceServiceUserError: - type: string - description: Error details in case CEService user is setup incorrectly. - MessageSearchQuery: - type: object - properties: - text: - type: string - description: Search for messages containing this text. Requires streamId - to be specified. - streamId: - type: string - description: Search for messages sent to this stream - streamType: - type: string - description: | - Search for messages sent to this type of streams. Accepted values are CHAT, IM, MIM, ROOM, POST. - author: - type: integer - description: Search for messages sent by this user ID - format: int64 - hashtag: - type: string - description: Search for messages containing this hashtag - cashtag: - type: string - description: Search for messages containing this cashtag - mention: - type: integer - description: Search for messages mentioning this user ID - format: int64 - signal: - type: string - description: | - Search for messages matching this signal. Can only be combined with date filtering and paging parameters. - fromDate: - type: integer - description: Search for messages sent on or after this timestamp - format: int64 - toDate: - type: integer - description: Search for messages sent before this timestamp - format: int64 - V4MessageImportList: - type: array - description: | - An ordered list of historic messages to be imported. - A list of import responses will be returned in the same order. - items: - $ref: '#/components/schemas/V4ImportedMessage' - V4ImportedMessage: - required: - - intendedMessageFromUserId - - intendedMessageTimestamp - - message - - originatingSystemId - - streamId - type: object - properties: - message: - type: string - description: Message text in MessageMLV2 - format: MessageML - data: - type: string - description: Entity data in EntityJSON - format: JSON - intendedMessageTimestamp: - type: integer - description: | - The timestamp representing the time when the message was sent in the original system - in milliseconds since Jan 1st 1970. - format: int64 - intendedMessageFromUserId: - type: integer - description: The long integer userid of the Symphony user who you intend to show sent the message. - format: int64 - originatingSystemId: - type: string - description: The ID of the system through which the message was originally sent. - originalMessageId: - type: string - description: The ID of the message in the original system. - streamId: - type: string - attachments: - type: array - description: List of message attachments. Since Agent 20.14. - items: - $ref: '#/components/schemas/V4ImportedMessageAttachment' - x-since: 20.14 - previews: - type: array - description: List of attachments previews. Since Agent 20.14. - items: - $ref: '#/components/schemas/V4ImportedMessageAttachment' - x-since: 20.14 - description: | - A historic message to be imported into the system. - The importing user must have the Content Management role. - Also, the importing user must be a member of the conversation it is importing into. - The user that the message is intended to have come from must also be present in the conversation. - The intended message timestamp must be a valid time from the past. It cannot be a future timestamp. - By design, imported messages do not stream to datafeed or firehose endpoints. - V4ImportedMessageAttachment: - type: object - properties: - filename: - type: string - description: Attachment filename - example: car.png - content: - type: string - description: Attachment content as Base64 encoded string - V4ImportResponseList: - type: array - items: - $ref: '#/components/schemas/V4ImportResponse' - V4ImportResponse: - type: object - properties: - messageId: - type: string - description: | - If the message was successfully imported then the message ID in the system - of the newly created message. - originatingSystemId: - type: string - description: The ID of the system through which the message was originally sent. - originalMessageId: - type: string - description: The ID of the message in the original system. - diagnostic: - type: string - description: | - A diagnostic message containing an error message in the event that the - message import failed. May also be present in the case of a successful - call if there is useful narrative to return. - V4AttachmentInfo: - required: - - id - - name - - size - - images - type: object - properties: - id: - type: string - description: The attachment ID. - name: - type: string - description: The file name. - size: - type: integer - description: Size in bytes. - format: int64 - images: - type: array - items: - $ref: '#/components/schemas/V4ThumbnailInfo' - V4ThumbnailInfo: - type: object - properties: - id: - type: string - description: The thumbnail ID. - dimension: - type: string - description: The thumbnail pixel size. - V4MessageList: - type: array - items: - $ref: '#/components/schemas/V4Message' - V4Message: - type: object - properties: - messageId: - type: string - description: Id of the message - parentMessageId: - type: string - description: Id of the parent message, set when the message is a reply to - another message or a forwarded message. Since Agent 20.14. - x-since: 20.14 - timestamp: - type: integer - description: Timestamp of the message in milliseconds since Jan 1 1970 - format: int64 - message: - type: string - description: Message content in MessageMLV2 - format: MessageMLV2 - sharedMessage: - $ref: '#/components/schemas/V4Message' - data: - type: string - description: Message data in EntityJSON - format: JSON - attachments: - type: array - default: [] - description: Message attachments - items: - $ref: '#/components/schemas/V4AttachmentInfo' - user: - $ref: '#/components/schemas/V4User' - stream: - $ref: '#/components/schemas/V4Stream' - externalRecipients: - type: boolean - description: Indicates if the message have external recipients. Only present - on real time messaging. - diagnostic: - type: string - description: | - Details if event failed to parse for any reason. The contents of this field may not be useful, - depending on the nature of the error. Only present when error occurs. - userAgent: - type: string - description: | - User agent string for client that sent the message. Allows callers to identify which client sent the - origin message (e.g. API Agent, SFE Client, mobile, etc) - originalFormat: - type: string - description: | - Indicates the format in which the message was originally sent. This could have been either: - - com.symphony.markdown - Markdown OR Message ML V1 - - com.symphony.messageml.v2 - Message ML V2 - disclaimer: - type: string - description: | - Message that may be sent along with a regular message if configured for the POD, - usually the first message sent in a room that day. - sid: - type: string - description: | - Unique session identifier from where the message was created. - example: fa691cd3-484a-4109-aeb2-57c05b78c95b - replacing: - type: string - description: Id of the message that the current message is replacing (present only if set) - replacedBy: - type: string - description: Id of the message that the current message is being replaced with (present only if set) - initialTimestamp: - type: integer - description: | - Timestamp of when the initial message has been created in milliseconds since - Jan 1 1970 (present only if set) - format: int64 - initialMessageId: - type: string - description: Id the the initial message that has been updated (present only if set) - silent: - type: boolean - description: When false the user/s will receive the message update as unread (true by default) - x-since: 20.14 - description: A representation of a message sent by a user of Symphony - V4MessageBlastResponse: - type: object - required: - - messages - - errors - properties: - messages: - type: array - default: [] - description: List of messages successfully sent - items: - $ref: '#/components/schemas/V4Message' - errors: - type: object - additionalProperties: - $ref: '#/components/schemas/Error' - description: List of streams where the messages ingestion has failed - description: Wrapper response for a single message sent to multiple streams - V4User: - type: object - properties: - userId: - type: integer - description: Id of user - format: int64 - firstName: - type: string - description: First name of user - lastName: - type: string - description: Last name of user - displayName: - type: string - description: User display name - email: - type: string - description: Email of user - username: - type: string - description: Applicable only to internal users - V4Stream: - type: object - properties: - streamId: - type: string - description: Id of stream - streamType: - type: string - description: | - Stream type, possible values are: - - IM - - MIM - - ROOM - - POST - roomName: - type: string - description: Applicable only to rooms - members: - type: array - description: Applicable only to IM Created - items: - $ref: '#/components/schemas/V4User' - external: - type: boolean - crossPod: - type: boolean - recipientTenantIds: - type: array - description: | - List of tenant identifiers (aka pod identifiers) involved in the conversation. It contains more than one - item if the conversation is external. Field is only present for real time messaging. - items: - type: integer - format: int32 - x-since: 24.2 - V4RoomProperties: - type: object - properties: - name: - type: string - description: - type: string - creatorUser: - $ref: '#/components/schemas/V4User' - createdDate: - type: integer - description: Timestamp - format: int64 - external: - type: boolean - crossPod: - type: boolean - public: - type: boolean - copyProtected: - type: boolean - readOnly: - type: boolean - discoverable: - type: boolean - membersCanInvite: - type: boolean - keywords: - type: array - default: [] - items: - $ref: '#/components/schemas/V4KeyValuePair' - canViewHistory: - type: boolean - V4KeyValuePair: - type: object - properties: - key: - type: string - value: - type: string - V4MessageSent: - type: object - properties: - message: - $ref: '#/components/schemas/V4Message' - V4Initiator: - type: object - properties: - user: - $ref: '#/components/schemas/V4User' - V4SharedPost: - type: object - properties: - message: - $ref: '#/components/schemas/V4Message' - sharedMessage: - $ref: '#/components/schemas/V4Message' - V4InstantMessageCreated: - type: object - properties: - stream: - $ref: '#/components/schemas/V4Stream' - V4RoomCreated: - type: object - properties: - stream: - $ref: '#/components/schemas/V4Stream' - roomProperties: - $ref: '#/components/schemas/V4RoomProperties' - V4RoomUpdated: - type: object - properties: - stream: - $ref: '#/components/schemas/V4Stream' - newRoomProperties: - $ref: '#/components/schemas/V4RoomProperties' - V4RoomDeactivated: - type: object - properties: - stream: - $ref: '#/components/schemas/V4Stream' - V4RoomReactivated: - type: object - properties: - stream: - $ref: '#/components/schemas/V4Stream' - V4UserJoinedRoom: - type: object - properties: - stream: - $ref: '#/components/schemas/V4Stream' - affectedUser: - $ref: '#/components/schemas/V4User' - V4UserLeftRoom: - type: object - properties: - stream: - $ref: '#/components/schemas/V4Stream' - affectedUser: - $ref: '#/components/schemas/V4User' - V4RoomMemberPromotedToOwner: - type: object - properties: - stream: - $ref: '#/components/schemas/V4Stream' - affectedUser: - $ref: '#/components/schemas/V4User' - V4RoomMemberDemotedFromOwner: - type: object - properties: - stream: - $ref: '#/components/schemas/V4Stream' - affectedUser: - $ref: '#/components/schemas/V4User' - V4ConnectionRequested: - type: object - properties: - toUser: - $ref: '#/components/schemas/V4User' - V4ConnectionAccepted: - type: object - properties: - fromUser: - $ref: '#/components/schemas/V4User' - V4MessageSuppressed: - type: object - properties: - messageId: - type: string - stream: - $ref: '#/components/schemas/V4Stream' - V4SymphonyElementsAction: - type: object - properties: - stream: - $ref: '#/components/schemas/V4Stream' - formMessageId: - type: string - description: The id of the message that contains the Form - formId: - type: string - description: The id of the Form element - formValues: - type: object - description: The values (in JSON format) answered on the Form - V4UserRequestedToJoinRoom: - type: object - properties: - stream: - $ref: '#/components/schemas/V4Stream' - affectedUsers: - type: array - description: List of affected users by the action (i.e. owners of the room) - items: - $ref: '#/components/schemas/V4User' - V4GenericSystemEvent: - type: object - properties: - stream: - $ref: '#/components/schemas/V4Stream' - eventTimestamp: - type: integer - description: The timestamp when the event was emitted - format: int64 - sourceSystem: - type: string - description: The name of the system that emitted the event - eventSubtype: - type: string - description: The identifier of the type of generic event - parameters: - type: object - description: Free-form properties that provide context about the event - additionalProperties: true - V4Payload: - type: object - properties: - messageSent: - $ref: '#/components/schemas/V4MessageSent' - sharedPost: - $ref: '#/components/schemas/V4SharedPost' - instantMessageCreated: - $ref: '#/components/schemas/V4InstantMessageCreated' - roomCreated: - $ref: '#/components/schemas/V4RoomCreated' - roomUpdated: - $ref: '#/components/schemas/V4RoomUpdated' - roomDeactivated: - $ref: '#/components/schemas/V4RoomDeactivated' - roomReactivated: - $ref: '#/components/schemas/V4RoomReactivated' - userJoinedRoom: - $ref: '#/components/schemas/V4UserJoinedRoom' - userLeftRoom: - $ref: '#/components/schemas/V4UserLeftRoom' - roomMemberPromotedToOwner: - $ref: '#/components/schemas/V4RoomMemberPromotedToOwner' - roomMemberDemotedFromOwner: - $ref: '#/components/schemas/V4RoomMemberDemotedFromOwner' - connectionRequested: - $ref: '#/components/schemas/V4ConnectionRequested' - connectionAccepted: - $ref: '#/components/schemas/V4ConnectionAccepted' - messageSuppressed: - $ref: '#/components/schemas/V4MessageSuppressed' - symphonyElementsAction: - $ref: '#/components/schemas/V4SymphonyElementsAction' - userRequestedToJoinRoom: - $ref: '#/components/schemas/V4UserRequestedToJoinRoom' - genericSystemEvent: - $ref: '#/components/schemas/V4GenericSystemEvent' - V4Event: - type: object - properties: - id: - type: string - description: Event ID - messageId: - type: string - description: Message ID - timestamp: - type: integer - description: Timestamp of event - format: int64 - type: - type: string - description: | - Event type, possible events are: - - MESSAGESENT - - SHAREDPOST - - INSTANTMESSAGECREATED - - ROOMCREATED - - ROOMUPDATED - - ROOMDEACTIVATED - - ROOMREACTIVATED - - USERJOINEDROOM - - USERLEFTROOM - - ROOMMEMBERPROMOTEDTOOWNER - - ROOMMEMBERDEMOTEDFROMOWNER - - CONNECTIONREQUESTED - - CONNECTIONACCEPTED - - MESSAGESUPPRESSED - - SYMPHONYELEMENTSACTION - - USERREQUESTEDTOJOINROOM - - GENERICSYSTEMEVENT - diagnostic: - type: string - description: | - Details if event failed to parse for any reason. The contents of this field may not be useful, - depending on the nature of the error. Only present when error occurs. - initiator: - $ref: '#/components/schemas/V4Initiator' - payload: - $ref: '#/components/schemas/V4Payload' - V4EventList: - type: array - items: - $ref: '#/components/schemas/V4Event' - BaseSignal: - type: object - properties: - name: - type: string - description: Signal name - query: - type: string - description: | - The query used to define this signal. The query is defined as "field:value" pairs combined by the operators - "AND" or "OR". Supported fields are (case-insensitive): "author", "hashtag" and "cashtag". - MUST contain at least one "hashtag" or "cashtag" definition. - visibleOnProfile: - type: boolean - description: Whether the signal is visible on its creator's profile - companyWide: - type: boolean - description: Whether the signal is a push signal - Signal: - allOf: - - $ref: '#/components/schemas/BaseSignal' - - type: object - properties: - id: - type: string - description: Signal ID - timestamp: - type: integer - description: Timestamp when the signal was created, in milliseconds since - Jan 1 1970 - format: int64 - SignalList: - type: array - items: - $ref: '#/components/schemas/Signal' - ChannelSubscriptionResponse: - type: object - properties: - requestedSubscription: - type: integer - description: The number of requested userIds to subscribe - format: int64 - successfulSubscription: - type: integer - description: The number of successful subscriptions done - format: int64 - failedSubscription: - type: integer - description: The number of subscription failures - format: int64 - subscriptionErrors: - type: array - items: - $ref: '#/components/schemas/ChannelSubscriptionError' - ChannelSubscriptionError: - type: object - properties: - userId: - type: integer - description: The userId on which failure happened - format: int64 - code: - type: string - description: subscription failure code - message: - type: string - description: subscription failure message - ChannelSubscriberResponse: - type: object - properties: - offset: - type: integer - description: The number of subscribers skipped - format: int64 - hasMore: - type: boolean - description: True if there are more subscribers - total: - type: integer - description: The total number of subscribers - data: - type: array - items: - $ref: '#/components/schemas/ChannelSubscriber' - ChannelSubscriber: - type: object - properties: - subscriptionId: - type: string - pushed: - type: boolean - description: True if the subscriber is allowed to unsubscribe - default: false - owner: - type: boolean - description: True if the subscriber is the creator - default: false - subscriberName: - type: string - description: User display name - userId: - type: integer - description: The user ID of the subscriber - format: int64 - timestamp: - type: integer - description: Timestamp when the signal was subscribed, in milliseconds since - Jan 1 1970 - format: int64 - AgentInfo: - type: object - properties: - ipAddress: - type: string - description: The IP address of the Agent server. - hostname: - type: string - description: The hostname of the Agent server. - serverFqdn: - type: string - description: The fully-qualified domain name of the Agent server. Must be - set by the user at startup. - version: - type: string - description: The version of the Agent. - url: - type: string - description: The URL under which the Agent is available. - onPrem: - type: boolean - description: Whether this is an on-prem or cloud installation. - mt: - type: boolean - description: Whether this is a multi tenant instance. - commitId: - type: string - description: The Git commit ID of the running revision. - V1DLPPoliciesCollectionResponse: - type: object - required: - - policies - properties: - policies: - type: array - description: List of policies - items: - $ref: '#/components/schemas/V1DLPPolicy' - page: - type: integer - description: Page number of current page - format: int32 - pageCount: - type: integer - description: Total number of pages available - format: int32 - description: List of policies - V1DLPPolicy: - required: - - contentTypes - - name - - scopes - - dictionaryRefs - - type - type: object - properties: - active: - type: boolean - description: Indicate whether the policy is active or not - contentTypes: - type: array - description: | - The list of content types that policy should apply to. Cannot be empty. Policy content types could be either of "Messages", "RoomMeta", "SignalMeta". - Default is set to ["Messages"] if not specified. - items: - type: string - creationDate: - type: integer - description: Creation time of the policy in milliseconds elapsed as of epoch time. - format: int64 - creatorId: - type: string - description: Numeric userId of the creator - dictionaryRefs: - type: array - description: List of dictionaries. - items: - $ref: '#/components/schemas/V1DLPDictionaryRef' - lastDisabledDate: - type: integer - description: Recent disable time of the policy in milliseconds elapsed as of epoch time. - format: int64 - lastUpdatedDate: - type: integer - description: Recent update time of the policy in milliseconds elapsed as of epoch time. - format: int64 - name: - type: string - description: Unique name of a policy, max 30 characters. Cannot be empty. - All the leading and trailing blank spaces are trimmed. - policyId: - type: string - description: Policy Id - scopes: - type: array - description: | - List of communication scopes. Possible values are "Internal" (for Internal conversations) or "External" (for External conversations). - You can apply both scopes if you set it to ["Internal", "External"]. - items: - type: string - type: - type: string - description: Type of policy. Possible values "Block" or "Warn". - version: - type: string - description: | - The version of a dictionary, in format "major.minor". Initial value will set by backend as "1.0" when created. - Whenever the dictionary version needs to be changed, the minor version by 1 unless minor == 999, then the major version is increased by 1 until it reaches 999. - description: The policy object for expression filter, one policy can have multiple - dictionaries - V1DLPPolicyRequest: - required: - - contentTypes - - dictionaryIds - - name - - scopes - - type - type: object - properties: - contentTypes: - type: array - description: | - The list of content types that policy should apply to. Cannot be empty. Policy content types could be either of "Messages", "RoomMeta", "SignalMeta". - Default is set to ["Messages"] if not specified. - items: - type: string - dictionaryIds: - type: array - description: List of dictionaries Ids for the policy. - items: - type: string - name: - type: string - description: Unique name of a policy, max 30 characters. Cannot be empty. - All the leading and trailing blank spaces are trimmed. - scopes: - type: array - description: | - List of communication scopes. Possible values are "Internal" (for Internal conversations) or "External" (for External conversations). - You can apply both scopes if you set it to ["Internal", "External"]. - items: - type: string - type: - type: string - description: Type of policy. Possible values "Block" or "Warn". - description: The policy object to use for creating/updating a policy. - V1DLPPolicyResponse: - type: object - properties: - data: - $ref: '#/components/schemas/V1DLPPolicy' - description: Policy Response - V1DLPDictionary: - required: - - dictionaryMetadata - type: object - properties: - content: - $ref: '#/components/schemas/V1DLPDictionaryContent' - dictionaryMetadata: - $ref: '#/components/schemas/V1DLPDictionaryMetadata' - description: Dictionary object - V1DLPDictionaryContent: - type: object - properties: - data: - type: string - description: A comma separated string which contains a lot of keywords/regexes. - numKeywords: - type: integer - description: Number of Keywords in dictionary - format: int32 - md5: - type: string - description: MD5 value of the content - description: Content of a dictionary - V1DLPDictionaryMetadataCollectionResponse: - type: object - required: - - items - properties: - items: - type: array - description: List of dictionary metadata - items: - $ref: '#/components/schemas/V1DLPDictionaryMetadata' - page: - type: integer - description: Page number of current page - format: int32 - pageCount: - type: integer - description: Total number of pages available - format: int32 - description: List of dictionary metadata. - V1DLPDictionaryMetadataResponse: - required: - - data - type: object - properties: - data: - $ref: '#/components/schemas/V1DLPDictionaryMetadata' - description: Dictionary response containing dictionary metadata. - V1DLPDictionaryMetadataCreateRequest: - required: - - name - - type - type: object - properties: - name: - type: string - description: | - The name of dictionary - type: - type: string - description: | - The type of dictionary, which specify the content is a list of words or a list of regexes. - By default set to "Word" if not specified. Possible values - Word, Regex - description: Dictionary's metadata (excluding content) to use for dictionary - create operations. - V1DLPDictionaryMetadataUpdateRequest: - required: - - name - type: object - properties: - name: - type: string - description: The name of dictionary - description: Dictionary's metadata (excluding content) to use for dictionary - update operations. - V1DLPDictionaryMetadata: - required: - - dictRef - - type - type: object - properties: - creationDate: - type: integer - description: Creation time of the dictionary in milliseconds elapsed as - of epoch time. - format: int64 - creatorId: - type: string - description: Numeric userId of the creator - dictRef: - $ref: '#/components/schemas/V1DLPDictionaryRef' - lastUpdatedDate: - type: integer - description: The recent update time of the dictionary in milliseconds - format: int64 - type: - type: string - description: | - The type of dictionary, which specify the content is a list of words or a list of regexes. - By default set to "Word" if not specified. Possible values - Word, Regex - description: Dictionary's metadata (excluding content) - V1DLPDictionaryRef: - required: - - name - type: object - properties: - dictId: - type: string - description: Unique dictionary id - name: - type: string - description: Unique name of a dictionary, max 30 characters, with trimmed - leading and trailing blank spaces. - version: - type: string - description: | - The version of a dictionary, in format "major.minor". - Initial value will set by backend as "1.0" when created. - Whenever the dictionary version needs to be changed, the minor version by 1 unless minor == 999, then the major version is increased by 1 until it reaches 999. - description: Basic information needed to identify a dictionary - V1DLPViolationMessageResponse: - type: object - required: - - violations - properties: - violations: - type: array - description: A representation of list of violations due to messages sent - by a user of Symphony - items: - $ref: '#/components/schemas/V1DLPViolationMessage' - nextOffset: - type: string - description: Offset for the next chunk of violations to be submitted in - the next request. Value is null if there are no further violations. - V1DLPViolationStreamResponse: - type: object - required: - - violations - properties: - violations: - type: array - items: - $ref: '#/components/schemas/V1DLPViolationStream' - nextOffset: - type: string - description: Offset for the next chunk of violations to be submitted in - the next request. Value is null if there are no further violations. - V1DLPViolationSignalResponse: - type: object - required: - - violations - properties: - violations: - type: array - description: A representation of list of violations due to signal creation/update - sent by a user of Symphony - items: - $ref: '#/components/schemas/V1DLPViolationSignal' - nextOffset: - type: string - description: Offset for the next chunk of violations to be submitted in - the next request. Value is null if there are no further violations. - V1DLPViolationMessage: - type: object - properties: - violation: - $ref: '#/components/schemas/V1DLPViolation' - message: - $ref: '#/components/schemas/V4Message' - diagnostic: - type: string - description: | - A diagnostic message containing an error message in the event there are parsing errors. - May also be present in the case of a successful call if there is useful narrative to return. - V1DLPViolationStream: - type: object - properties: - violation: - $ref: '#/components/schemas/V1DLPViolation' - stream: - $ref: '#/components/schemas/V1DLPStream' - V1DLPViolationSignal: - type: object - properties: - violation: - $ref: '#/components/schemas/V1DLPViolation' - signal: - $ref: '#/components/schemas/V1DLPSignal' - V1DLPViolation: - type: object - properties: - enforcementEventID: - type: string - description: Enforcement event ID. Unique ID that identifies this enforcement. - entityID: - type: string - description: Entity ID is the content Id of the violation, for example, - for messages, its the Id of the message - createTime: - type: integer - description: Timestamp of the violation in milliseconds since Jan 1 1970 - format: int64 - lastModified: - type: integer - description: Timestamp of the last modification of violation in milliseconds - since Jan 1 1970 - format: int64 - requesterId: - type: integer - description: Id of the requester responsible for the message/stream/signal - format: int64 - matchedPolicies: - $ref: '#/components/schemas/V1DLPMatchedPolicyList' - action: - type: string - description: action taken such as BLOCK or WARN. See outcome for a more - detailed description of the outcome this action. - outcome: - $ref: '#/components/schemas/V1DLPOutcome' - contentType: - $ref: '#/components/schemas/V1DLPContentType' - version: - type: string - description: Version of application which processed the message and produced - this violation. - ignoreDLPwarning: - type: boolean - description: Did the user chose to ignore DLP warning that was presented? - description: A representation of a violation due to a message sent by a user - of Symphony - V1DLPMatchedPolicyList: - type: array - description: List of policies that matched the violation. - items: - $ref: '#/components/schemas/V1DLPMatchedPolicy' - V1DLPMatchedPolicy: - type: object - properties: - id: - type: string - description: Id of the policy - version: - type: string - description: Version of the policy - policyName: - type: string - description: Name of the policy - type: - type: string - description: Whether BLOCK or WARN - terms: - type: string - description: List of decrypted matched keywords in the policy - diagnostic: - type: string - description: | - A diagnostic message containing an error message in the event that the - decryption of terms failed. May also be present in the case of a successful - call if there is useful narrative to return. - description: A representation of policy that matched the violation with a list - of matched keywords in the policy - V1DLPOutcome: - type: object - properties: - type: - type: string - description: Outcome of DLP enforcement - description: A representation of outcome of DLP message/stream/signal sent by - a user of Symphony - V1DLPContentType: - type: object - properties: - type: - type: string - description: content type - description: A representation of content type of message sent by a user of Symphony - (message/stream/signal) - V1DLPStream: - type: object - properties: - name: - type: string - description: Name of the Stream/Room. - creatorPrettyName: - type: string - description: Name of the creator of the Room. - publicRoom: - type: boolean - description: Is this a public room? - crossPod: - type: boolean - description: Is this a cross pod scenario? - allowExternal: - type: boolean - description: Is external messaging allowed - creatorId: - type: string - description: Id of the creator of the Room. - roomDescription: - type: string - description: Description of the Room. - streamId: - type: string - description: ThreadId of the Room. - state: - type: string - description: State of the Room (example CREATED etc) - type: - type: string - description: Type of the Room (example ROOM (or IM or Wall)) - lastDisabled: - type: integer - description: Timestamp of last time the room is Disabled - format: int64 - memberAddUserEnabled: - type: boolean - description: Is memberAddUserEnabled - active: - type: boolean - description: Is Room Active - discoverable: - type: boolean - description: Is Room discoverable - readOnly: - type: boolean - description: Is Room read-only - copyDisabled: - type: boolean - description: Is Room copyDisabled - externalOwned: - type: boolean - description: Is Room externalOwned - sendMessageDisabled: - type: boolean - description: Is sendMessage Disabled for this Room - moderated: - type: boolean - description: Is room moderated - shareHistoryEnabled: - type: boolean - description: Is room shareHistoryEnabled - diagnostic: - type: string - description: | - A diagnostic message containing an error message in the event that the - stream retrieval failed. May also be present in the case of a successful - call if there is useful narrative to return. - description: Room details in the context of violation. - V1DLPSignal: - type: object - properties: - id: - type: string - description: Unique ID of the Signal - name: - type: string - description: Name of the Signal - rules: - type: string - description: Signal rules decrypted. - diagnostic: - type: string - description: | - A diagnostic message containing an error message in the event that the - signal decryption failed. May also be present in the case of a successful - call if there is useful narrative to return. - description: Signal details - V3DLPPolicyRequest: - required: - - appliesTo - - name - - scopes - type: object - properties: - name: - type: string - description: | - Unique name of a policy, max 30 characters. Cannot be empty. All the leading and trailing blank spaces are trimmed. - scopes: - type: array - description: | - List of communication scopes. Possible values are "Internal" (for Internal conversations) or "External" (for External conversations). - You can apply both scopes if you set it to ["Internal", "External"]. - items: - type: string - appliesTo: - type: array - items: - $ref: '#/components/schemas/V3DLPPolicyAppliesTo' - description: Request to be used to get policies. - V3DLPPolicy: - type: object - required: - - appliesTo - properties: - id: - type: string - description: Unique identifier for policy. - policyId: - type: string - description: Policy Id. - version: - type: string - description: | - The version of the policy, in format "major.minor". Initial value will set by backend as "3.0" when created. - Whenever the policy version needs to be changed, the minor version by 1 unless minor == 999, - then the major version is increased by 1 until it reaches 999. - name: - type: string - description: | - Unique name of policy, max 30 characters. Cannot be empty. All the leading and trailing blank spaces are trimmed. - creatorId: - type: integer - description: Numeric userId of the creator. - format: int64 - scopes: - type: array - description: | - List of communication scopes. Possible values are "Internal" (for Internal conversations) or "External" (for External conversations). - You can apply both scopes if you set it to ["Internal", "External"]. - items: - type: string - appliesTo: - type: array - items: - $ref: '#/components/schemas/V3DLPPolicyAppliesTo' - active: - type: boolean - description: Indicate whether the policy is active or not. - deleted: - type: boolean - description: Indicate whether the policy is deleted or not. - creationDate: - type: integer - description: Creation time of the policy in milliseconds elapsed as of epoch time. - format: int64 - lastUpdatedDate: - type: integer - description: Recent update time of the policy in milliseconds elapsed as of epoch time. - format: int64 - lastDisabledDate: - type: integer - description: Recent disable time of the policy in milliseconds elapsed as of epoch time. - format: int64 - systemPolicy: - type: boolean - description: | - A policy is the main entity of V3 policy/rule system. It is responsible to define rules and add scope constraints to the engine. - V3DLPRule: - required: - - name - - type - type: object - properties: - id: - type: string - type: - type: string - description: Type of a rule used by policy. Can be ["UNKNOWN", "TEXT_MATCH", - "FILE_EXTENSION", "FILE_SIZE", "FILE_PASSWORD", "FILE_CLASSIFIER"]. - name: - type: string - description: Name for rule. - textMatchConfig: - $ref: '#/components/schemas/V3DLPTextMatchConfig' - fileSizeConfig: - $ref: '#/components/schemas/V3DLPFileSizeConfig' - fileExtensionConfig: - $ref: '#/components/schemas/V3DLPFileExtensionConfig' - filePasswordConfig: - $ref: '#/components/schemas/V3DLPFilePasswordConfig' - fileClassifierConfig: - $ref: '#/components/schemas/V3DLPFileClassifierConfig' - description: | - A Rule defines the actual matching specification for policies. It holds a type and a configuration - for the rule, these properties should be used to build the corresponding matching implementation. - Only one of the configuration property should be set [textMatchConfig, fileSizeConfig, fileExtensionConfig, filePasswordConfig, fileClassifierConfig]. - V3DLPFilePasswordConfig: - required: - - applicableFileTypes - - matchCriteria - type: object - properties: - applicableFileTypes: - type: array - description: File types that can be applied. Can be ["PDF", "WORD", "EXCEL", - "POWERPOINT", "ZIP", "CSV", "TXT"]. - items: - type: string - matchCriteria: - type: string - description: | - Based on the criteria, whether a file is password protected or not means a match. - Can be ["PASSWORD_PROTECTED", "NOT_PASSWORD_PROTECTED"]. The default is "NOT_PASSWORD_PROTECTED". - description: Password protected detection config for files that are password - protected or not. - V3DLPFileExtensionConfig: - required: - - allowLists - - blockLists - type: object - properties: - allowLists: - type: array - description: File extensions that are allowed. - items: - type: string - blockLists: - type: array - description: File extensions that are blocked. - items: - type: string - description: Extension detection config for allowed and blocked types of file - extensions. - V3DLPFileSizeConfig: - type: object - properties: - sizeLimit: - type: integer - format: int32 - description: File size config defines maximum allowed size of file. Default max size limit is 20 MB. - V3DLPTextMatchConfig: - type: object - required: - - dictionaries - - applicableFileTypes - properties: - dictionaries: - type: array - items: - $ref: '#/components/schemas/V3DLPDictionaryMeta' - countUniqueOccurrences: - type: integer - format: int32 - applicableFileTypes: - type: array - description: | - File types must be applied only for rule type "FileContent", otherwise must be empty. - Can be ["PDF", "WORD", "EXCEL", "POWERPOINT", "ZIP", "CSV", "TXT"]. - items: - type: string - description: | - This is a configuration that can be used to match text or regex. - Configuration that can be used by a rule. This is a configuration that can be used to match text or regex. - This configuration also corresponds to V2 TextMatch/RegexMatch of dictionaries. - V3DLPDictionaryMeta: - required: - - dictId - - name - - version - type: object - properties: - dictId: - type: string - version: - type: string - name: - type: string - description: Identity of a dictionary. - V3DLPFileClassifierConfig: - required: - - applicableFileTypes - - classifiers - type: object - properties: - classifiers: - type: object - additionalProperties: - type: string - description: | - Classifier is defined as a Key and its Value: e.g.: "classification": "Internal". - Name and value can contain UTF-8 characters. Neither the name nor value cannot be left empty. - Maximum 30 characters for the name and value, case insensitive. - If files contains k-v pairs in the classifers map, it means a match. Maximum 30 classifiers per policy. - applicableFileTypes: - type: array - description: File types that can be applied. Can be ["PDF", "WORD", "EXCEL", "POWERPOINT", "ZIP", "CSV", "TXT"]. - items: - type: string - V3DLPPolicyAppliesTo: - required: - - action - - dataType - - rules - type: object - properties: - dataType: - type: string - description: | - The list of data types that policy should apply to. Can't be empty. - Can be ["Messages","RoomMeta", "SignalMeta", "FileContent", "FileMeta"]. - action: - type: string - description: | - Action to be taken on violation detection. - Can be ["Block", "Warn", "LogOnly"]. The default is "LogOnly". - rules: - type: array - items: - $ref: '#/components/schemas/V3DLPRule' - V3DLPPolicyResponse: - type: object - properties: - data: - $ref: '#/components/schemas/V3DLPPolicy' - description: Policy Response. - V3DLPPoliciesCollectionResponse: - type: object - required: - - policies - properties: - policies: - type: array - description: List of policies. - items: - $ref: '#/components/schemas/V3DLPPolicy' - page: - type: integer - description: The starting page for pagination. - format: int32 - size: - type: integer - description: Size of policies displayed per page. - format: int32 - pageCount: - type: integer - description: Total number of pages available. - format: int32 - description: List of policies. - V3DLPViolationMessageResponse: - type: object - required: - - violations - properties: - violations: - type: array - description: A representation of list of violations due to messages sent - by a user of Symphony - items: - $ref: '#/components/schemas/V3DLPViolationMessage' - nextOffset: - type: string - description: | - Offset for the next chunk of violations to be submitted in the next request. - Value is null if there are no further violations. - V3DLPViolationStreamResponse: - type: object - required: - - violations - properties: - violations: - type: array - items: - $ref: '#/components/schemas/V3DLPViolationStream' - nextOffset: - type: string - description: | - Offset for the next chunk of violations to be submitted in the next request. - Value is null if there are no further violations. - V3DLPViolationSignalResponse: - type: object - required: - - violations - properties: - violations: - type: array - description: A representation of list of violations due to signal creation/update sent by a user of Symphony - items: - $ref: '#/components/schemas/V3DLPViolationSignal' - nextOffset: - type: string - description: | - Offset for the next chunk of violations to be submitted in the next request. - Value is null if there are no further violations. - V3DLPViolationMessage: - type: object - properties: - violation: - $ref: '#/components/schemas/V3DLPViolation' - message: - $ref: '#/components/schemas/V4Message' - sharedMessage: - $ref: '#/components/schemas/V4Message' - diagnostic: - type: string - description: | - A diagnostic message containing an error message in the event there are parsing errors. - May also be present in the case of a successful call if there is useful narrative to return. - V3DLPViolationStream: - type: object - properties: - violation: - $ref: '#/components/schemas/V3DLPViolation' - stream: - $ref: '#/components/schemas/V1DLPStream' - V3DLPViolationSignal: - type: object - properties: - violation: - $ref: '#/components/schemas/V3DLPViolation' - signal: - $ref: '#/components/schemas/V1DLPSignal' - V3DLPViolation: - type: object - properties: - enforcementEventID: - type: string - description: Enforcement event ID. Unique ID that identifies this enforcement. - entityID: - type: string - description: Entity ID is the content Id of the violation. For example, for messages it's the Id of the message - createTime: - type: integer - description: Timestamp of the violation in milliseconds since Jan 1 1970 - format: int64 - lastModified: - type: integer - description: Timestamp of the last modification of violation in milliseconds - since Jan 1 1970 - format: int64 - requesterId: - type: integer - description: Id of the requester responsible for the message/stream/signal - format: int64 - details: - type: array - description: JSON representation of the details of the violation. - items: - type: object - action: - type: string - description: action taken such as BLOCK or WARN. See outcome for a more detailed description of the outcome this action. - outcome: - $ref: '#/components/schemas/V1DLPOutcome' - version: - type: string - description: Version of application which processed the message and produced - this violation. - ignoreDLPwarning: - type: boolean - description: Did the user chose to ignore DLP warning that was presented? - description: A representation of a violation due to an event created by a user - of Symphony - Pagination: - required: - - cursors - type: object - properties: - cursors: - type: object - properties: - before: - type: string - description: | - This is the opaque url-safe string that points to the start of the page of data - that has been returned. - example: MTAxNTExOTQ1MjAwNzI5NDE= - after: - type: string - description: | - This is the opaque url-safe string that points to the end of the page of data - that has been returned. - example: NDMyNzQyODI3OTQw - previous: - type: string - description: | - API endpoint that will return the previous page of data. If not included, this is - the first page of data. - example: https://tenantapi.d.isym.io/v1/tenantinfo?limit=25&before=MTAxNTExOTQ1MjAwNzI5NDE= - next: - type: string - description: | - API endpoint that will return the next page of data. If not included, this is the - last page of data. Due to how pagination works with visibility and privacy, it is - possible that a page may be empty but contain a 'next' paging link. Stop paging when - the 'next' link no longer appears. - example: https://tenantapi.d.isym.io/v1/tenantinfo?limit=25&after=NDMyNzQyODI3OTQw - V1AuditTrailInitiatorResponse: - type: object - properties: - action: - type: string - description: The audit trail action that has peformed - actionName: - type: string - description: The audit trail action name that has peformed - timestamp: - type: string - description: The timestamp when the action has occurred - initiatorId: - type: string - description: The user's id that has performed the action - initiatorUsername: - type: string - description: The username that has performed the action - initiatorEmailAddress: - type: string - description: The user's e-mail address that has performed the action - description: | - Audit Trail Initiator object response. - The attributes may vary according to the action. - There are different types of action and each action could have specific attributes. - V1AuditTrailInitiatorList: - type: object - properties: - items: - type: array - items: - $ref: '#/components/schemas/V1AuditTrailInitiatorResponse' - pagination: - $ref: '#/components/schemas/Pagination' - V5Datafeed: - type: object - properties: - id: - type: string - description: ID of the datafeed - createdAt: - type: integer - description: | - [deprecated] Datafeed creation timestamp - format: int64 - deprecated: true - type: - type: string - description: The type of feed. Only allowed value is "datahose". - description: Container for the feed ID - example: - id: 371f465fb97b5d1027d20a5e7085863a_f - type: fanout - V5DatafeedCreateBody: - type: object - properties: - tag: - maxLength: 100 - type: string - description: A unique identifier to ensure uniqueness of the datafeed. - AckId: - type: object - properties: - ackId: - type: string - description: | - A unique id for events that can be deleted from a client's. - Parameter must be omitted or set to empty string for the first read. For successive reads, must be set to the ackId received in the last Datafeed Read. - updatePresence: - type: boolean - description: Set to false to avoid updating the user's presence when reading events. Default is true. - default: true - description: | - An object containing the ackId (and parameters) associated with - events that the client has received through an individual feed. - V5EventList: - type: object - properties: - events: - type: array - default: [] - items: - $ref: '#/components/schemas/V4Event' - ackId: - type: string - description: | - The ackId which acknowledges that the current batch of messages - have been successfully received by the client - V5EventsReadBody: - required: - - tag - - type - type: object - properties: - type: - type: string - description: The type of feed. Only allowed value is "datahose". - tag: - maxLength: 80 - minLength: 1 - type: string - description: A unique identifier to ensure uniqueness of the datafeed. - eventTypes: - type: array - description: | - At least one value is required. Values must be valid Real-Time Events, i.e. one of: - * MESSAGESENT - * MESSAGESUPPRESSED - * SYMPHONYELEMENTSACTION - * SHAREDPOST - * INSTANTMESSAGECREATED - * ROOMCREATED - * ROOMUPDATED - * ROOMDEACTIVATED - * ROOMREACTIVATED - * USERREQUESTEDTOJOINROOM - * USERJOINEDROOM - * USERLEFTROOM - * ROOMMEMBERPROMOTEDTOOWNER - * ROOMMEMBERDEMOTEDFROMOWNER - * CONNECTIONREQUESTED - * CONNECTIONACCEPTED - items: - type: string - x-since: 22.7 - scopes: - type: array - description: | - Allows to filter events by scope - Scopes supported: - * INTERNAL: Only events related to chats that are Internal are received. Shared Wall posts are included - * EXTERNAL: Only events related to chats that are External are received. Connection Requested/Accepted events are included - * FEDERATED: Only events related to chats that are Federated are received. Events that are not related to streams (Shared Wall Post, Connection Requested/Accepted) are not included. - If more than one scope is set, then events included in the union of scopes will be received. - If not set, then all events will be received. - items: - type: string - x-since: 25.8 - ackId: - type: string - description: | - Must be omitted or set as an empty string for the first call. - In successive calls, it must be set to the last read ackId. - It acknowledges that the current batch of messages have been successfully received by the client. - updatePresence: - type: boolean - description: | - Whether to update the presence status of the account to AVAILABLE - when calling the endpoint. Default value is true. - default: true - V3Health: - type: object - properties: - services: - type: object - additionalProperties: - $ref: '#/components/schemas/V3HealthComponent' - status: - $ref: '#/components/schemas/V3HealthStatus' - users: - type: object - additionalProperties: - $ref: '#/components/schemas/V3HealthComponent' - version: - type: string - description: Required Agent verison - V3HealthAuthType: - type: string - description: Type of authentication - enum: - - RSA - - CERT - V3HealthComponent: - type: object - properties: - authType: - $ref: '#/components/schemas/V3HealthAuthType' - message: - type: string - description: An error message, if the component status is DOWN - status: - $ref: '#/components/schemas/V3HealthStatus' - version: - type: string - description: Optional component version - V3HealthStatus: - type: string - description: Application health status. - enum: - - UP - - DOWN - # - # Deprecated definitions - # + deprecated: true + x-codegen-request-body-name: echoInput + # + # Deprecated definitions + # MessageSubmission: type: object properties: diff --git a/agent/agent-api-public.yaml b/agent/agent-api-public.yaml index 7cf41d3..3a8c0dc 100644 --- a/agent/agent-api-public.yaml +++ b/agent/agent-api-public.yaml @@ -24,7 +24,7 @@ info: To know more about the endpoints, refer to Create Messages/Events Stream and Read Messages/Events Stream. Unless otherwise specified, all events were added in 1.46. - version: 25.8.1 + version: 25.11.1-SNAPSHOT servers: - url: 'youragentURL.symphony.com/agent' paths: @@ -3599,7 +3599,7 @@ paths: delete: tags: - Datafeed - summary: Delete the specified real time message / event stream ("datafeed"). + summary: Delete the specified datafeed. description: | _Available on Agent 2.57.0 and above._ @@ -3656,17 +3656,17 @@ paths: post: tags: - Datafeed - summary: Read the specified real time message / event stream ("datafeed"). + summary: Read messages and events from the real time feed identified by its {datafeedId}. description: | - _Available on Agent 2.57.0 and above._ + Available on Agent 2.57.0 and above. The datafeed provides messages and events from all conversations that the user - is in. The types of events surfaced in the datafeed can be found in the Real Time Events list. + is in, in real time. The types of events surfaced in the datafeed can be found in the Real Time Events list. (see definition on top of the file) Read the specified datafeed. - The ackId sent as parameter can be empty for the first call. In the response an ackId will be sent back and it can be used for + The ackId sent as parameter must be null for the first call. In the response an ackId will be sent back and it must be used for the next call: in this way you acknowledge that you have received the events that came with that ackId; datafeed will remove the events associated with that ackId from your queue operationId: readDatafeed @@ -3732,7 +3732,7 @@ paths: - Datahose summary: Creates and Reads a real time feed of messages and events of your pod (Datahose) description: | - _Available on Agent 22.5.1 and above._ + Available on Agent 22.5.1 and above. This API provides a real time feed of all the messages and events in the pod, even from conversations where the calling service account is not a member. The types of events surfaced @@ -3773,7 +3773,7 @@ paths: $ref: '#/components/schemas/V5EventsReadBody' example: type: "datahose" - tag: "mybotusername" + tag: "mybotusername11" eventTypes: ["MESSAGE_SENT"] updatePresence: false required: true @@ -5964,7 +5964,7 @@ components: If not set, then all events will be received. items: type: string - x-since: 25.8 + x-since: 25.7 #TODO update this is this slips to 25.8 before merging ackId: type: string description: |