Symphony Channelco API

The Channelco API from Symphony — 3 operation(s) for channelco.

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/symphony-channelco-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

symphony-channelco-api-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: Symphony Agent Add Channelco 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: 22.9.1
servers:
- url: /
tags:
- name: Channelco
paths:
  /v1/channelco/user:
    get:
      tags:
      - Channelco
      security:
      - JwtAuth: []
      summary: Symphony Search Channelco User
      operationId: searchUser
      parameters:
      - name: email
        in: query
        schema:
          type: string
        required: true
        description: user's email
        example: user@comcocompany.com
      responses:
        '200':
          description: body
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ChannelCoUserAndCompany'
        '400':
          description: Something was wrong about the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
        '401':
          description: Unauthorized request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
        '404':
          description: The user do not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
    post:
      tags:
      - Channelco
      security:
      - JwtAuth: []
      summary: Symphony Create Channelco User
      operationId: createUser
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ChannelCoUsersListRequest'
      responses:
        '201':
          description: body
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ChannelCoUsersListResponse'
        '400':
          description: Something was wrong about the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
        '401':
          description: Unauthorized request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
  /v1/channelco/company/{companyId}/user/{userId}/roles/add:
    post:
      tags:
      - Channelco
      security:
      - JwtAuth: []
      summary: Symphony Adds a Role to a Channelco User's Account
      operationId: addRole
      parameters:
      - name: userId
        in: path
        schema:
          type: integer
          format: int64
        required: true
        description: symphony user id
        example: 123456789
      - name: companyId
        in: path
        schema:
          type: string
        required: true
        description: company Id of the user
        example: '10'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Role'
      responses:
        '200':
          description: body
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiInfo'
        '400':
          description: Something was wrong about the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
        '401':
          description: Unauthorized request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
        '404':
          description: The user do not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
  /v1/channelco/company/{companyId}/user/{userId}:
    get:
      tags:
      - Channelco
      security:
      - JwtAuth: []
      summary: Symphony Get Channelco User by Companyid and Userid
      operationId: getUser
      parameters:
      - name: userId
        in: path
        schema:
          type: integer
          format: int64
        required: true
        description: symphony user id
        example: 123456789
      - name: companyId
        in: path
        schema:
          type: string
        required: true
        description: company Id of the user
        example: '10'
      responses:
        '200':
          description: body
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ChannelCoUserAndCompany'
        '400':
          description: Something was wrong about the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
        '401':
          description: Unauthorized request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
        '404':
          description: The user do not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
    put:
      tags:
      - Channelco
      security:
      - JwtAuth: []
      summary: Symphony Update Channelco User
      operationId: updateUser
      parameters:
      - name: userId
        in: path
        schema:
          type: integer
          format: int64
        required: true
        description: symphony user id
        example: 123456789
      - name: companyId
        in: path
        schema:
          type: string
        required: true
        description: company Id of the user
        example: '10'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateChannelCoUserRequest'
      responses:
        '200':
          description: body
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ChannelCoUser'
        '400':
          description: Something was wrong about the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
        '401':
          description: Unauthorized request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
        '404':
          description: The user do not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
    delete:
      tags:
      - Channelco
      security:
      - JwtAuth: []
      summary: Symphony Disable Channelco User
      operationId: disableUser
      parameters:
      - name: userId
        in: path
        schema:
          type: integer
          format: int64
        required: true
        description: symphony user id
        example: 123456789
      - name: companyId
        in: path
        schema:
          type: string
        required: true
        description: company Id of the user
        example: '10'
      responses:
        '204':
          description: The user was disabled successfully.
        '400':
          description: Something was wrong about the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
        '401':
          description: Unauthorized request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
        '404':
          description: The user do not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
components:
  schemas:
    ChannelCoUserErrorResponse:
      allOf:
      - $ref: '#/components/schemas/ChannelCoUserRequest'
      - type: object
        properties:
          code:
            type: string
            description: error code
            example:
              alreadyExisting:
                value: USER_ALREADY_EXISTS
                description: user already existing belong a pod (error message will provide detail about pod url)
              existingCompany:
                value: COMPANY_ALREADY_EXISTS_USER_NEEDS_ACCESS
                description: company already exists and the user need access (error message will provide detail about pod url)
              existingComCoCompany:
                value: COMCO_COMPANY_ALREADY_EXISTS_USER_NEED_ACCESS
                description: comco company already exists and the user need access
              mismatchCompany:
                value: UNEXPECTED_ERROR
          message:
            type: string
            description: Human readable details about the information the api is returning
    ChannelCoUserAndCompany:
      allOf:
      - $ref: '#/components/schemas/ChannelCoUser'
      - type: object
        properties:
          companyId:
            type: string
            description: company Id of the user
            example: '10'
          companyName:
            type: string
            description: company name of the user
            example: Symphony
            maxLength: 64
    ApiInfo:
      type: object
      properties:
        code:
          type: string
          description: info code
        message:
          type: string
          description: Human readable details about the information the api is returning
        details:
          description: Full details about info
          type: object
    UpdateChannelCoUserRequest:
      type: object
      description: payload to update a channelco user account
      properties:
        email:
          type: string
          format: email
          example: foo@example.com
        firstName:
          type: string
          example: Paul
          maxLength: 64
        lastName:
          type: string
          example: Smith
          maxLength: 64
        displayName:
          type: string
          example: Paul Smith
        phoneNumber:
          type: string
          example: 33612345678
        department:
          type: string
          example: Product Engineering
          maxLength: 256
        title:
          type: string
          example: Engineering manager
          maxLength: 256
        location:
          type: string
          description: country
    ChannelCoUser:
      allOf:
      - $ref: '#/components/schemas/ChannelCoUserRequest'
      - type: object
        properties:
          userId:
            type: integer
            format: int64
            description: Member's user id
          username:
            type: string
            description: Member's username generated by API. If there is no naming conflict it is <firstName.lastName> (in lower case)
    Role:
      type: object
      properties:
        id:
          type: string
          description: role Id
          example: COMPLIANCE_OFFICER
      required:
      - id
    ChannelCoUserRequest:
      type: object
      description: payload to onboard a channelco user account
      properties:
        email:
          type: string
          format: email
          example: foo@example.com
        firstName:
          type: string
          example: Paul
          maxLength: 64
        lastName:
          type: string
          example: Smith
          maxLength: 64
        displayName:
          type: string
          example: Paul Smith
          maxLength: 128
          description: if omitted, it will be generated with the pattern <firstName lastName>
        phoneNumber:
          type: string
          example: 33612345678
        department:
          type: string
          example: Product Engineering
          maxLength: 256
        title:
          type: string
          example: Engineering manager
          maxLength: 256
        location:
          type: string
          description: country
      required:
      - email
      - firstName
      - lastName
    ChannelCoUserResponse:
      allOf:
      - $ref: '#/components/schemas/ChannelCoUserRequest'
      - type: object
        properties:
          userId:
            type: integer
            format: int64
            description: Member's user id
          username:
            type: string
            description: Member's username generated by API. It is expected to be the same as email
          code:
            type: string
            description: info code
            example:
              newCompany:
                value: USER_ADDED_NEW_COMPANY
                description: new company created and user added into it
              existingCompany:
                value: USER_ADDED_EXISTING_COMPANY
                description: company already exists, user added into it
              mismatchCompany:
                value: USER_ADDED_TO_DIFFERENT_COMPANY_NAME
                description: company already exists (lookup by domain name), but the name is different. User is added in the existing one
          message:
            type: string
            description: Human readable details about the information the api is returning
    ApiError:
      type: object
      properties:
        code:
          type: string
          description: error code
        message:
          type: string
          description: Human readable details about the error
        details:
          description: Full details about error, usefull for 400
          type: object
    ChannelCoUsersListRequest:
      type: object
      description: payload to onboard channelco users
      properties:
        companyName:
          type: string
          description: This field is mandatory only if a company with same domain (taken from email) does not exist yet
          example: Symphony
          maxLength: 64
        users:
          type: array
          items:
            $ref: '#/components/schemas/ChannelCoUserRequest'
      required:
      - companyName
      - users
    ChannelCoUsersListResponse:
      type: object
      properties:
        companyId:
          type: string
          description: company Id of the users
          example: '10'
        companyName:
          type: string
          description: company name of the users
          example: Symphony
          maxLength: 64
        success:
          type: array
          items:
            $ref: '#/components/schemas/ChannelCoUserResponse'
        errors:
          type: array
          items:
            $ref: '#/components/schemas/ChannelCoUserErrorResponse'