FINOS Share API
The Share API from FINOS — 1 operation(s) for share.
The Share API from FINOS — 1 operation(s) for share.
openapi: 3.0.1
info:
title: Agent Admin Share 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
tags:
- name: Share
paths:
/v3/stream/{sid}/share:
post:
tags:
- Share
summary: PROVISIONAL - 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
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'
x-codegen-request-body-name: shareContent
components:
schemas:
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
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
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. \nEither an articleId or an articleUrl is required.\n"
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
Error:
type: object
properties:
code:
type: integer
format: int32
message:
type: string
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'
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'