Apiable Docs API

Docs are a way to store documentation in the system. The documentation can be used to store API and Plan level API documentations in the system.A documentation entry is always associated with either plan directly, or with an API, which is associated with a plan.The only exception to this, is the Full API Reference, which is a special case, and is not associated with any plan. But with the portal itself.

Business capability
Developer Portal Management BC-4270.30

Operations 3

GET /api/docs/{docId} Get the doc by id #
PATCH /api/docs/{docId} Patch the doc by id #
PATCH /api/docs/full-api-doc Update the Full API reference #

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/apiable:apiable-docs-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 form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

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

OpenAPI Specification

apiable-docs-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Apiable Platform Docs API
  description: '## Introduction


    The Apiable Platform API is a RESTful API that allows you to manage your portal, teams, users, and subscriptions. The API is designed to be simple and easy to use, with a focus on security and performance. The Platform API is designed to be used by developers to build custom integrations and applications that interact with the Apiable Portal. The included endpoints allow you to manage, including, but not limited to, your portal products, plans, teams, users, and subscriptions. ## Authentication

    The authentication is done using a Bearer token, that must be included in all requests. ## Errors

    The API uses standard HTTP status codes to indicate the success or failure of a request. In case of an error, the response body will contain a JSON object with an error message. ## Rate Limiting


    ## Pagination and Filtering

    Calls that return multiple items will be paginated to 10 items by default. You can specify further pages with the `page` parameter. For most such resources, you can also set a custom page size up to 100 with the `size` parameter. Requests that return multiple items also include `search` parameter to filter the results. ## Versioning

    The API is versioned using the `X-API-Version` header. The API responses always with latest version, if not set otherwise. ## Glossary of Terms

    ### Product

    The product object represents a high-level abstraction of your API products. It is used to group plans together and to provide a high-level overview of the product. A product can have multiple plans associated with it. Products are typically used to group plans together that are related to a specific API or service. ### Plan

    The plan object represents a subscription plan that can be associated with a product. A plan can have multiple APIs associated with it. Plans can be free or paid, and can have different pricing models. ### Subscription

    The subscription object represents a subscription to a plan. Subscriptions, both paid and free, are associated with a team, and a single user as the primary owner of the subscription. The owner of the subscription is considered to be the one responsible for the billing of the subscription. Depending on the permissions within a team, API key and billing information can be viewed managed by not just the subscription owner, but other members of the team as well. ### Team

    The team object represents a group of users that work together. A team can have multiple members and can be associated with a company. Teams are a way to group users together and manage permissions and roles within a group. ### Company

    The company object represents a group of teams. A company can have multiple teams associated with it. Companies are a way to manage multiple teams and users together. Companies do not have roles and permissions, nor are subscriptions shared between different teams under the same company. ### User

    The user object represents a user of the platform. A user can be a member of one or more teams and can have different roles and permissions within each team. Users can be invited to join a team, and can be assigned different roles and permissions within a team. ### Invitation

    The invitation object represents an invitation to join a team. Invitations are typically sent by team members to new users, and can be accepted or ignored by the invitee. Invitations can be sent to users that are not yet registered on the platform, and can be used to invite new users to join the platform and team of the inviter. ### Webhook

    The webhook object represents a webhook that can be used to receive notifications about events that occur on the platform. Webhooks can be used to trigger actions in external systems based on events that occur on the platform. Webhooks can be configured to send notifications for specific events, such as when a new subscription is created, or when a subscription is updated. ### API Key Tutorial


    To interact with the API, you will need to obtain an JWT Access Token.'
  contact:
    name: Apiable Team
    url: https://apiable.io
    email: support@apiable.io
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0.html
  version: v2
servers:
- url: https://developer.apiable.io
tags:
- name: Docs
  description: Docs are a way to store documentation in the system. The documentation can be used to store API and Plan level API documentations in the system.A documentation entry is always associated with either plan directly, or with an API, which is associated with a plan.The only exception to this, is the Full API Reference, which is a special case, and is not associated with any plan. But with the portal itself.
paths:
  /api/docs/{docId}:
    get:
      tags:
      - Docs
      summary: Get the doc by id
      description: Retrieves and returns the specific API documentation by id.
      operationId: findDocById
      parameters:
      - name: docId
        in: path
        description: The documentation id
        required: true
        style: simple
        explode: false
        schema:
          type: string
        example: 66f3c2be7903d41208214a7d
      - name: X-API-Version
        in: header
        description: API version to use.
        required: false
        style: simple
        explode: false
        schema:
          type: string
          enum:
          - '2024-09-25'
      responses:
        '200':
          description: 'OK: Successfully retrieved the documentation.'
          content:
            application/json:
              schema:
                description: The documentation version for a plan.
                properties:
                  id:
                    type: string
                  order:
                    type: integer
                    format: int32
                    description: The order of the documentation in the list of documentation for the plan.
                  version:
                    type: string
                    description: The version of the documentation.
                  status:
                    type: array
                    description: The status of the documentation.
                    items:
                      type: string
                      description: The status of the documentation.
                  active:
                    type: boolean
                    description: Flag to indicate if the documentation is active.
                  visible:
                    type: boolean
                    description: The visibility of the documentation.
                  retrievalType:
                    type: string
                    description: The retrieval type of the documentation.
                    enum:
                    - MANUAL
                    - GATEWAY
                    - CICD
                    - CATALOG
                  url:
                    type: string
                    description: The URL of the documentation.
                  name:
                    type: string
                    description: The name of the documentation.
                  synced:
                    type: string
                    format: date-time
                    description: Timestamp of the last time the documentation was synchronized.
                  sdks:
                    type: array
                    description: List of SDKs associated with this documentation version.
                    items:
                      description: SDK information for a documentation version.
                      properties:
                        language:
                          type: string
                          description: The programming language of the SDK.
                        downloadUrl:
                          type: string
                          description: The download URL of the SDK.
                        visibility:
                          type: string
                          description: The visibility of the SDK (PUBLIC, PRIVATE, SUBSCRIBERS).
                          enum:
                          - PUBLIC
                          - PRIVATE
                          - SUBSCRIBERS
                  catalogApi:
                    type: string
                  planId:
                    type: string
                    readOnly: true
                  planDocLevel:
                    type: string
                    description: Documentation level of the documentation.
                    enum:
                    - PLAN
                    - API
                    - CUSTOM
                    readOnly: true
                  apiIntegrationId:
                    type: string
                    description: Reference to the API if the documentation is bound to an API object.
                    readOnly: true
                  custom:
                    type: boolean
              examples:
                Example Documentation:
                  description: Documentation object with all its details.
                  value:
                    id: 66f172d43ee464553f9fe898
                    order: 0
                    version: '1.0'
                    status: []
                    active: true
                    visible: true
                    retrievalType: GATEWAY
                    url: https://apiable.s3.eu-central-1.amazonaws.com/public/dev/amazingDocumentation.json
                    name: Jokes (Cognito) - prod-202481-v-1.0.json
                    synced: '2024-09-23T13:58:22.665'
        '401':
          description: 'Unauthorized for operation: findDocById'
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    example: Unauthorized
                  status:
                    type: string
                    example: '401'
        '404':
          description: 'Not Found: The requested documentation does not exist.'
          content:
            application/json:
              schema:
                type: string
              examples:
                NotFound:
                  description: Error message when the documentation with the given ID is not found.
                  value: Documentation not found
      security:
      - oauth-cc:
        - apiable/cicd
        - apiable/platform
    patch:
      tags:
      - Docs
      summary: Patch the doc by id
      description: Updates the API documentation by applying the specified patch operations.
      operationId: patchDocById
      parameters:
      - name: docId
        in: path
        description: The documentation id
        required: true
        style: simple
        explode: false
        schema:
          type: string
        example: 66f3c2be7903d41208214a7d
      - name: X-API-Version
        in: header
        description: API version to use.
        required: false
        style: simple
        explode: false
        schema:
          type: string
          enum:
          - '2024-09-25'
      requestBody:
        description: 'Request body for operation: patchDocById.'
        content:
          application/json:
            schema:
              type: array
              items:
                description: Patch object for JSON Patch
                properties:
                  op:
                    type: string
                    description: Supported patch operations
                    enum:
                    - replace
                  path:
                    type: string
                    description: Path to the field to be patched
                  value:
                    type: string
                    description: Value to be patched
            examples:
              Patch Example:
                description: Example of a patch operation to update the documentation name.
                value:
                - op: replace
                  path: /name
                  value: new doc name
        required: true
      responses:
        '200':
          description: 'OK: Successfully updated the documentation.'
          content:
            application/json:
              schema:
                description: The documentation version for a plan.
                properties:
                  id:
                    type: string
                  order:
                    type: integer
                    format: int32
                    description: The order of the documentation in the list of documentation for the plan.
                  version:
                    type: string
                    description: The version of the documentation.
                  status:
                    type: array
                    description: The status of the documentation.
                    items:
                      type: string
                      description: The status of the documentation.
                  active:
                    type: boolean
                    description: Flag to indicate if the documentation is active.
                  visible:
                    type: boolean
                    description: The visibility of the documentation.
                  retrievalType:
                    type: string
                    description: The retrieval type of the documentation.
                    enum:
                    - MANUAL
                    - GATEWAY
                    - CICD
                    - CATALOG
                  url:
                    type: string
                    description: The URL of the documentation.
                  name:
                    type: string
                    description: The name of the documentation.
                  synced:
                    type: string
                    format: date-time
                    description: Timestamp of the last time the documentation was synchronized.
                  sdks:
                    type: array
                    description: List of SDKs associated with this documentation version.
                    items:
                      description: SDK information for a documentation version.
                      properties:
                        language:
                          type: string
                          description: The programming language of the SDK.
                        downloadUrl:
                          type: string
                          description: The download URL of the SDK.
                        visibility:
                          type: string
                          description: The visibility of the SDK (PUBLIC, PRIVATE, SUBSCRIBERS).
                          enum:
                          - PUBLIC
                          - PRIVATE
                          - SUBSCRIBERS
                  catalogApi:
                    type: string
                  planId:
                    type: string
                    readOnly: true
                  planDocLevel:
                    type: string
                    description: Documentation level of the documentation.
                    enum:
                    - PLAN
                    - API
                    - CUSTOM
                    readOnly: true
                  apiIntegrationId:
                    type: string
                    description: Reference to the API if the documentation is bound to an API object.
                    readOnly: true
                  custom:
                    type: boolean
              examples:
                Updated Documentation:
                  description: Documentation object with updated details.
                  value:
                    id: 66f172d43ee464553f9fe898
                    order: 0
                    version: '1.0'
                    status: []
                    active: true
                    visible: true
                    retrievalType: GATEWAY
                    url: https://apiable.s3.eu-central-1.amazonaws.com/public/dev/amazingDocumentation.json
                    name: Jokes (Cognito) - prod-202481-v-1.0.json
                    synced: '2024-09-23T13:58:22.665'
        '401':
          description: 'Unauthorized for operation: patchDocById'
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    example: Unauthorized
                  status:
                    type: string
                    example: '401'
        '404':
          description: 'Not Found: The requested documentation does not exist.'
          content:
            application/json:
              schema:
                type: string
              examples:
                NotFound:
                  description: Error message when the documentation with the given ID is not found.
                  value: Documentation not found
      security:
      - oauth-cc:
        - apiable/cicd
        - apiable/platform
  /api/docs/full-api-doc:
    patch:
      tags:
      - Docs
      summary: Update the Full API reference
      description: Updates the Full API documentation configuration by applying the specified patch operations.
      operationId: patchFullApiDocConfiguration
      parameters:
      - name: X-API-Version
        in: header
        description: API version to use.
        required: false
        style: simple
        explode: false
        schema:
          type: string
          enum:
          - '2024-09-25'
      requestBody:
        description: 'Request body for operation: patchFullApiDocConfiguration.'
        content:
          application/json:
            schema:
              type: array
              items:
                description: Patch object for Full API Docs Configuration
                properties:
                  op:
                    type: string
                    description: Supported patch operations
                    enum:
                    - replace
                  path:
                    type: string
                    description: Supported patch paths for Full API Docs Configuration
                    enum:
                    - /url
                    - /public
                    - /name
                  value:
                    type: string
            examples:
              Full API Doc Patch Example:
                description: Example of a patch operation to update the Full API documentation configuration.
                value:
                - op: replace
                  path: /url
                  value: https://example.apiable.io/full-api-ref.json
        required: true
      responses:
        '200':
          description: 'OK: Successfully updated the Full API documentation configuration.'
          content:
            application/json:
              schema:
                description: The full-api-doc configuration
                properties:
                  url:
                    type: string
                  public:
                    type: boolean
                  name:
                    type: string
                  published:
                    type: boolean
                  cascade:
                    type: boolean
                  customDescriptions:
                    type: array
                    items:
                      description: The custom description reference configuration
                      properties:
                        operationId:
                          type: string
                        method:
                          type: string
                        path:
                          type: string
                        description:
                          type: string
                  validationRulesetUrl:
                    type: string
                  validationType:
                    type: string
                    enum:
                    - SPECTRAL
              examples:
                Updated Full API Doc Configuration:
                  description: Full API documentation configuration with updated details.
                  value:
                    url: https://apiable.s3.eu-central-1.amazonaws.com/public/hairygreenwombatrlhy7g/34a2b273-7d15-4ebb-a8bf-7873ded2c8ad
                    public: true
                    name: example.yaml
        '401':
          description: 'Unauthorized for operation: patchFullApiDocConfiguration'
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    example: Unauthorized
                  status:
                    type: string
                    example: '401'
        '404':
          description: 'Not Found: The requested Full API documentation configuration does not exist.'
          content:
            application/json:
              schema:
                type: string
              examples:
                NotFound:
                  description: Error message when the Full API documentation configuration with the given ID is not found.
                  value: Full API documentation configuration not found
      security:
      - oauth-cc:
        - apiable/cicd
        - apiable/platform
components:
  securitySchemes:
    oauth-cc:
      type: oauth2
      description: 'OAuth 2.0: Client Credentials'
      flows:
        clientCredentials:
          tokenUrl: https://developer.apiable.io/api/oauth2/token
          scopes: {}
      x-receive-token-in: request-body
      x-client-id: ''
      x-client-secret: ''