Ada

Ada Channels API

The channels API from Ada — 2 operation(s) for channels.

Operations 3

GET /v2/channels/ Get a list of channels #
POST /v2/channels/ Create a new channel #
PATCH /v2/channels/{channel_id} Update a channel #

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/ada-channels-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

ada-channels-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Knowledge Channels API
  version: 1.0.0
servers:
- url: https://example.ada.support/api
  description: Production
tags:
- name: channels
paths:
  /v2/channels/:
    get:
      operationId: get-channels
      summary: Get a list of channels
      description: Get a list of channels. This list can be filtered by modality and paginated. The default and maximum limits are 100 channels per page
      tags:
      - channels
      parameters:
      - name: limit
        in: query
        description: The number of records to return
        required: false
        schema:
          type: integer
      - name: cursor
        in: query
        description: The ID that marks the start or beginning of the returned records
        required: false
        schema:
          type: string
      - name: type
        in: query
        description: The type of the channels to retrieve
        required: true
        schema:
          $ref: '#/components/schemas/V2ChannelsGetParametersType'
      - name: modality
        in: query
        description: The modality of the channels to retrieve
        required: false
        schema:
          $ref: '#/components/schemas/V2ChannelsGetParametersModality'
      - name: Authorization
        in: header
        description: Bearer authentication
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Channels
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Channels_getChannels_Response_200'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '429':
          description: Too Many Requests
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
    post:
      operationId: create-channel
      summary: Create a new channel
      description: Create a new channel. A maximum of 100 channels can be created per account per day. The maximum request size is 10MB.
      tags:
      - channels
      parameters:
      - name: Authorization
        in: header
        description: Bearer authentication
        required: true
        schema:
          type: string
      responses:
        '201':
          description: Channel created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CustomChannel'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '413':
          description: Content Too Large
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '429':
          description: Too Many Requests
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CustomChannel'
  /v2/channels/{channel_id}:
    patch:
      operationId: update-channel
      summary: Update a channel
      description: Update a channel's capabilities. Only custom channels can be updated; native channels are read-only.
      tags:
      - channels
      parameters:
      - name: channel_id
        in: path
        description: The ID of the channel to update
        required: true
        schema:
          type: string
          format: id
      - name: Authorization
        in: header
        description: Bearer authentication
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Channel updated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CustomChannel'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '429':
          description: Too Many Requests
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateChannel'
components:
  schemas:
    BaseChannelCapabilities:
      type: object
      properties:
        markdown:
          type: boolean
          default: false
          description: Preserve Markdown (bold, italic, and links) in replies instead of flattening to plain text.
      description: What the channel's surface can render. The AI Agent tailors replies to the declared capabilities. Omitted fields default to false. Read-only on native channels, whose capabilities are fixed by the surface.
      title: BaseChannelCapabilities
    BaseChannelModality:
      type: string
      enum:
      - messaging
      - email
      - voice
      description: The modality of the channel
      title: BaseChannelModality
    Channels_getChannels_Response_200:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/Channel'
        meta:
          $ref: '#/components/schemas/PaginationMetadata'
      title: Channels_getChannels_Response_200
    V2ChannelsGetParametersType:
      type: string
      enum:
      - custom
      - native
      title: V2ChannelsGetParametersType
    PaginationMetadata:
      type: object
      properties:
        next_page_url:
          type:
          - string
          - 'null'
          description: The URL to the next page of results
      title: PaginationMetadata
    UpdateChannelCapabilities:
      type: object
      properties:
        markdown:
          type: boolean
          description: Preserve Markdown (bold, italic, and links) in replies instead of flattening to plain text.
      description: Capabilities to update. Only the fields you include are changed; omitted fields keep their current value.
      title: UpdateChannelCapabilities
    UpdateChannel:
      type: object
      properties:
        capabilities:
          $ref: '#/components/schemas/UpdateChannelCapabilities'
          description: Capabilities to update. Only the fields you include are changed; omitted fields keep their current value.
      required:
      - capabilities
      description: Fields that can be updated on an existing custom channel
      title: UpdateChannel
    ErrorsErrorsItems:
      type: object
      properties:
        type:
          type: string
          description: The error type
        message:
          type: string
          description: The error message
        details:
          type:
          - string
          - 'null'
          description: Extra information about the error
      required:
      - type
      - message
      title: ErrorsErrorsItems
    Errors:
      type: object
      properties:
        errors:
          type: array
          items:
            $ref: '#/components/schemas/ErrorsErrorsItems'
          description: A list of errors
      required:
      - errors
      title: Errors
    V2ChannelsGetParametersModality:
      type: string
      enum:
      - messaging
      - email
      - voice
      title: V2ChannelsGetParametersModality
    Channel:
      oneOf:
      - type: object
        properties:
          type:
            $ref: '#/components/schemas/CustomChannelType'
            description: The type of the channel
          id:
            type: string
            format: id
            description: The channel ID
          name:
            type: string
            description: The name of the channel
          description:
            type: string
            description: A description of the channel
          modality:
            $ref: '#/components/schemas/BaseChannelModality'
            description: The modality of the channel
          capabilities:
            $ref: '#/components/schemas/BaseChannelCapabilities'
            description: What the channel's surface can render. The AI Agent tailors replies to the declared capabilities. Omitted fields default to false. Read-only on native channels, whose capabilities are fixed by the surface.
          metadata:
            type: object
            additionalProperties:
              $ref: '#/components/schemas/CustomChannelMetadata'
            description: 'A dictionary of key, value pairs assigned to the channel. Metadata may not exceed 4KB total.

              - `metadata` keys may only be of type: `string`

              - `metadata` values may only be one of type: `string`, `boolean`, `integer`, or `number` (float)

              '
          created_at:
            type: string
            format: date-time
            description: The date and time the channel was created
        required:
        - type
        - name
        - description
        - modality
        description: custom variant
      - type: object
        properties:
          type:
            $ref: '#/components/schemas/NativeChannelType'
            description: The type of the channel
          id:
            type: string
            description: The channel ID
          name:
            type: string
            description: The name of the channel
          description:
            type: string
            description: A description of the channel
          modality:
            $ref: '#/components/schemas/BaseChannelModality'
            description: The modality of the channel
          capabilities:
            $ref: '#/components/schemas/BaseChannelCapabilities'
            description: What the channel's surface can render. The AI Agent tailors replies to the declared capabilities. Omitted fields default to false. Read-only on native channels, whose capabilities are fixed by the surface.
        required:
        - type
        - name
        - description
        - modality
        description: native variant
      discriminator:
        propertyName: type
      title: Channel
    CustomChannel:
      type: object
      properties:
        id:
          type: string
          format: id
          description: The channel ID
        type:
          $ref: '#/components/schemas/CustomChannelType'
          description: The type of the channel
        name:
          type: string
          description: The name of the channel
        description:
          type: string
          description: A description of the channel
        modality:
          $ref: '#/components/schemas/BaseChannelModality'
          description: The modality of the channel
        capabilities:
          $ref: '#/components/schemas/BaseChannelCapabilities'
          description: What the channel's surface can render. The AI Agent tailors replies to the declared capabilities. Omitted fields default to false. Read-only on native channels, whose capabilities are fixed by the surface.
        metadata:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/CustomChannelMetadata'
          description: 'A dictionary of key, value pairs assigned to the channel. Metadata may not exceed 4KB total.

            - `metadata` keys may only be of type: `string`

            - `metadata` values may only be one of type: `string`, `boolean`, `integer`, or `number` (float)

            '
        created_at:
          type: string
          format: date-time
          description: The date and time the channel was created
      required:
      - name
      - description
      - modality
      title: CustomChannel
    CustomChannelMetadata:
      oneOf:
      - type: string
      - type: boolean
      - type: integer
      - type: number
        format: double
      title: CustomChannelMetadata
    CustomChannelType:
      type: string
      enum:
      - custom
      description: The type of the channel
      title: CustomChannelType
    NativeChannelType:
      type: string
      enum:
      - native
      description: The type of the channel
      title: NativeChannelType
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer