From 3a8dbeb4128db8aeaacb1ff72449f6658efe890c Mon Sep 17 00:00:00 2001 From: symphony-jeremy Date: Fri, 16 Oct 2026 09:37:47 +0200 Subject: [PATCH 1/2] BE-10206 update stream context endpoint definition --- agent/agent-api-public-deprecated.yaml | 69 +++++++++++++-- agent/agent-api-public.yaml | 69 +++++++++++++-- .../swagger2/agent-api-public-deprecated.yaml | 87 ++++++++++++++----- agent/swagger2/agent-api-public.yaml | 87 ++++++++++++++----- 4 files changed, 256 insertions(+), 56 deletions(-) diff --git a/agent/agent-api-public-deprecated.yaml b/agent/agent-api-public-deprecated.yaml index f4b13e8..54e9cc7 100644 --- a/agent/agent-api-public-deprecated.yaml +++ b/agent/agent-api-public-deprecated.yaml @@ -679,32 +679,85 @@ paths: $ref: '#/components/schemas/Error' /v1/stream/{sid}/context: get: - summary: Get Stream Context - description: Get the context of a stream (conversation details, membership, laste messages) in markdown format. - operationId: v1StreamContext tags: - - StreamContext + - Messages + summary: Get stream context in Markdown format + description: | + Generates a Markdown representation of a stream's context, including room + metadata, member list, and the most recent decrypted conversation messages. + When messageId is provided, the conversation is instead made of the messages + surrounding that message: the message itself, up to numberOfMessagesBefore messages + before it and up to numberOfMessagesAfter messages after it (at most 101 messages + in total). In both cases, the conversation messages are listed in chronological + order (oldest first). + Requires Premium APIs entitlement for the requesting tenant. + operationId: v1StreamContext parameters: - name: sid in: path + description: Stream ID (URL-safe Base64 encoded) required: true - description: Stream ID schema: type: string + - name: messageId + in: query + description: | + Message ID (URL-safe Base64 encoded) of a message of the stream to center the + conversation on. If omitted, the most recent messages are included. + required: false + schema: + type: string + - name: numberOfMessages + in: query + description: | + Number of most recent messages to include (1 to 100). Only applies when messageId + is not provided: combined with messageId, the request is rejected (use + numberOfMessagesBefore and numberOfMessagesAfter instead). + required: false + schema: + type: integer + minimum: 1 + maximum: 100 + default: 50 + - name: numberOfMessagesBefore + in: query + description: | + Number of messages to include before the target message (0 to 100). Only applies + when messageId is provided, the request is rejected otherwise. The sum of + numberOfMessagesBefore and numberOfMessagesAfter must not exceed 100. + required: false + schema: + type: integer + minimum: 0 + maximum: 100 + default: 20 + - name: numberOfMessagesAfter + in: query + description: | + Number of messages to include after the target message (0 to 100). Only applies + when messageId is provided, the request is rejected otherwise. The sum of + numberOfMessagesBefore and numberOfMessagesAfter must not exceed 100. + required: false + schema: + type: integer + minimum: 0 + maximum: 100 + default: 20 - name: sessionToken in: header + description: Session authentication token required: true - description: Session authentication token. schema: type: string - name: keyManagerToken in: header - description: Key Manager authentication token. + description: Key Manager authentication token + required: false schema: type: string responses: 200: - description: OK + description: Stream context formatted in Markdown content: text/markdown: schema: diff --git a/agent/agent-api-public.yaml b/agent/agent-api-public.yaml index 9ce48b8..60e9f57 100644 --- a/agent/agent-api-public.yaml +++ b/agent/agent-api-public.yaml @@ -679,32 +679,85 @@ paths: $ref: '#/components/schemas/Error' /v1/stream/{sid}/context: get: - summary: Get Stream Context - description: Get the context of a stream (conversation details, membership, laste messages) in markdown format. - operationId: v1StreamContext tags: - - StreamContext + - Messages + summary: Get stream context in Markdown format + description: | + Generates a Markdown representation of a stream's context, including room + metadata, member list, and the most recent decrypted conversation messages. + When messageId is provided, the conversation is instead made of the messages + surrounding that message: the message itself, up to numberOfMessagesBefore messages + before it and up to numberOfMessagesAfter messages after it (at most 101 messages + in total). In both cases, the conversation messages are listed in chronological + order (oldest first). + Requires Premium APIs entitlement for the requesting tenant. + operationId: v1StreamContext parameters: - name: sid in: path + description: Stream ID (URL-safe Base64 encoded) required: true - description: Stream ID schema: type: string + - name: messageId + in: query + description: | + Message ID (URL-safe Base64 encoded) of a message of the stream to center the + conversation on. If omitted, the most recent messages are included. + required: false + schema: + type: string + - name: numberOfMessages + in: query + description: | + Number of most recent messages to include (1 to 100). Only applies when messageId + is not provided: combined with messageId, the request is rejected (use + numberOfMessagesBefore and numberOfMessagesAfter instead). + required: false + schema: + type: integer + minimum: 1 + maximum: 100 + default: 50 + - name: numberOfMessagesBefore + in: query + description: | + Number of messages to include before the target message (0 to 100). Only applies + when messageId is provided, the request is rejected otherwise. The sum of + numberOfMessagesBefore and numberOfMessagesAfter must not exceed 100. + required: false + schema: + type: integer + minimum: 0 + maximum: 100 + default: 20 + - name: numberOfMessagesAfter + in: query + description: | + Number of messages to include after the target message (0 to 100). Only applies + when messageId is provided, the request is rejected otherwise. The sum of + numberOfMessagesBefore and numberOfMessagesAfter must not exceed 100. + required: false + schema: + type: integer + minimum: 0 + maximum: 100 + default: 20 - name: sessionToken in: header + description: Session authentication token required: true - description: Session authentication token. schema: type: string - name: keyManagerToken in: header - description: Key Manager authentication token. + description: Key Manager authentication token + required: false schema: type: string responses: 200: - description: OK + description: Stream context formatted in Markdown content: text/markdown: schema: diff --git a/agent/swagger2/agent-api-public-deprecated.yaml b/agent/swagger2/agent-api-public-deprecated.yaml index 0f6127b..e8875ea 100644 --- a/agent/swagger2/agent-api-public-deprecated.yaml +++ b/agent/swagger2/agent-api-public-deprecated.yaml @@ -545,35 +545,82 @@ paths: $ref: '#/definitions/Error' '/v1/stream/{sid}/context': get: - summary: Get Stream Context - description: Get the context of a stream in markdown format. - operationId: v1StreamContext tags: - - "StreamContext" + - Messages + summary: Get stream context in Markdown format + description: | + Generates a Markdown representation of a stream's context, including room + metadata, member list, and the most recent decrypted conversation messages. + When messageId is provided, the conversation is instead made of the messages + surrounding that message: the message itself, up to numberOfMessagesBefore messages + before it and up to numberOfMessagesAfter messages after it (at most 101 messages + in total). In both cases, the conversation messages are listed in chronological + order (oldest first). + Requires Premium APIs entitlement for the requesting tenant. + operationId: v1StreamContext produces: - - "text/markdown" + - text/markdown parameters: - - name: "sid" - in: "path" - required: true - description: "Stream ID" - type: "string" - - name: "sessionToken" - in: "header" + - name: sid + in: path + description: Stream ID (URL-safe Base64 encoded) required: true - description: "Session authentication token." - type: "string" - - name: "keyManagerToken" - description: "Key Manager authentication token." - in: "header" + type: string + - name: messageId + in: query + description: | + Message ID (URL-safe Base64 encoded) of a message of the stream to center the + conversation on. If omitted, the most recent messages are included. + required: false + type: string + - name: numberOfMessages + in: query + description: | + Number of most recent messages to include (1 to 100). Only applies when messageId + is not provided: combined with messageId, the request is rejected (use + numberOfMessagesBefore and numberOfMessagesAfter instead). + required: false + type: integer + minimum: 1 + maximum: 100 + default: 50 + - name: numberOfMessagesBefore + in: query + description: | + Number of messages to include before the target message (0 to 100). Only applies + when messageId is provided, the request is rejected otherwise. The sum of + numberOfMessagesBefore and numberOfMessagesAfter must not exceed 100. + required: false + type: integer + minimum: 0 + maximum: 100 + default: 20 + - name: numberOfMessagesAfter + in: query + description: | + Number of messages to include after the target message (0 to 100). Only applies + when messageId is provided, the request is rejected otherwise. The sum of + numberOfMessagesBefore and numberOfMessagesAfter must not exceed 100. + required: false + type: integer + minimum: 0 + maximum: 100 + default: 20 + - name: sessionToken + in: header + description: Session authentication token required: true - type: "string" + type: string + - name: keyManagerToken + in: header + description: Key Manager authentication token + required: false + type: string responses: '200': - description: "OK" + description: Stream context formatted in Markdown schema: type: "string" - example: "## Stream Context\n\n* **Stream ID**: Wl21s7GRn3uH75jGf5QoUX___qf_5c-5dab" '/v4/stream/{sid}/message': get: diff --git a/agent/swagger2/agent-api-public.yaml b/agent/swagger2/agent-api-public.yaml index 5027e3f..42522e2 100644 --- a/agent/swagger2/agent-api-public.yaml +++ b/agent/swagger2/agent-api-public.yaml @@ -545,35 +545,82 @@ paths: $ref: '#/definitions/Error' '/v1/stream/{sid}/context': get: - summary: Get Stream Context - description: Get the context of a stream in markdown format. - operationId: v1StreamContext tags: - - "StreamContext" + - Messages + summary: Get stream context in Markdown format + description: | + Generates a Markdown representation of a stream's context, including room + metadata, member list, and the most recent decrypted conversation messages. + When messageId is provided, the conversation is instead made of the messages + surrounding that message: the message itself, up to numberOfMessagesBefore messages + before it and up to numberOfMessagesAfter messages after it (at most 101 messages + in total). In both cases, the conversation messages are listed in chronological + order (oldest first). + Requires Premium APIs entitlement for the requesting tenant. + operationId: v1StreamContext produces: - - "text/markdown" + - text/markdown parameters: - - name: "sid" - in: "path" - required: true - description: "Stream ID" - type: "string" - - name: "sessionToken" - in: "header" + - name: sid + in: path + description: Stream ID (URL-safe Base64 encoded) required: true - description: "Session authentication token." - type: "string" - - name: "keyManagerToken" - description: "Key Manager authentication token." - in: "header" + type: string + - name: messageId + in: query + description: | + Message ID (URL-safe Base64 encoded) of a message of the stream to center the + conversation on. If omitted, the most recent messages are included. + required: false + type: string + - name: numberOfMessages + in: query + description: | + Number of most recent messages to include (1 to 100). Only applies when messageId + is not provided: combined with messageId, the request is rejected (use + numberOfMessagesBefore and numberOfMessagesAfter instead). + required: false + type: integer + minimum: 1 + maximum: 100 + default: 50 + - name: numberOfMessagesBefore + in: query + description: | + Number of messages to include before the target message (0 to 100). Only applies + when messageId is provided, the request is rejected otherwise. The sum of + numberOfMessagesBefore and numberOfMessagesAfter must not exceed 100. + required: false + type: integer + minimum: 0 + maximum: 100 + default: 20 + - name: numberOfMessagesAfter + in: query + description: | + Number of messages to include after the target message (0 to 100). Only applies + when messageId is provided, the request is rejected otherwise. The sum of + numberOfMessagesBefore and numberOfMessagesAfter must not exceed 100. + required: false + type: integer + minimum: 0 + maximum: 100 + default: 20 + - name: sessionToken + in: header + description: Session authentication token required: true - type: "string" + type: string + - name: keyManagerToken + in: header + description: Key Manager authentication token + required: false + type: string responses: '200': - description: "OK" + description: Stream context formatted in Markdown schema: type: "string" - example: "## Stream Context\n\n* **Stream ID**: Wl21s7GRn3uH75jGf5QoUX___qf_5c-5dab" '/v4/stream/{sid}/message': get: summary: Get messages from an existing stream. From c00c8cdf5c3b61cc4dcb7a35b673c958ad4805c4 Mon Sep 17 00:00:00 2001 From: symphony-jeremy Date: Fri, 16 Oct 2026 09:39:01 +0200 Subject: [PATCH 2/2] BE-10206 update agent version to 26.10 --- agent/agent-api-public-deprecated.yaml | 2 +- agent/agent-api-public.yaml | 2 +- agent/swagger2/agent-api-public-deprecated.yaml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/agent/agent-api-public-deprecated.yaml b/agent/agent-api-public-deprecated.yaml index 54e9cc7..75fa012 100644 --- a/agent/agent-api-public-deprecated.yaml +++ b/agent/agent-api-public-deprecated.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: 26.10 servers: - url: 'youragentURL.symphony.com/agent' paths: diff --git a/agent/agent-api-public.yaml b/agent/agent-api-public.yaml index 60e9f57..65981f5 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: 26.10 servers: - url: 'youragentURL.symphony.com/agent' paths: diff --git a/agent/swagger2/agent-api-public-deprecated.yaml b/agent/swagger2/agent-api-public-deprecated.yaml index e8875ea..3b81e77 100644 --- a/agent/swagger2/agent-api-public-deprecated.yaml +++ b/agent/swagger2/agent-api-public-deprecated.yaml @@ -1,6 +1,6 @@ swagger: '2.0' info: - version: '22.7.1' + version: '26.10' title: Agent API description: | This document refers to Symphony API calls to send and receive messages