Choreo Components API

Manage components (services, APIs, web apps, jobs) within projects.

Operations 4

GET /organizations/{orgId}/projects/{projectId}/components Choreo List components #
POST /organizations/{orgId}/projects/{projectId}/components Choreo Create a component #
GET /organizations/{orgId}/projects/{projectId}/components/{componentId} Choreo Get a component #
DELETE /organizations/{orgId}/projects/{projectId}/components/{componentId} Choreo Delete a component #

Documentation

Specifications

Schemas & Data

Other Resources

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/choreo-components-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

choreo-components-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Choreo API Management Components API
  description: The Choreo API Management API provides programmatic access to manage the full lifecycle of APIs on the WSO2 Choreo platform. It allows API creators to create, publish, version, and manage APIs, configure rate limiting policies, and manage API documentation. Choreo is an AI-native internal developer platform that simplifies building, deploying, and managing cloud-native applications.
  version: 1.0.0
  contact:
    name: WSO2 Choreo
    url: https://choreo.dev/
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0
  x-provider-slug: choreo
  x-api-slug: api-management
servers:
- url: https://console.choreo.dev/api/v1
  description: Choreo Console API
security:
- bearerAuth: []
- oauth2:
  - read
  - write
tags:
- name: Components
  description: Manage components (services, APIs, web apps, jobs) within projects.
paths:
  /organizations/{orgId}/projects/{projectId}/components:
    get:
      operationId: listComponents
      summary: Choreo List components
      description: Retrieve a list of components within a project. Components represent services, APIs, web apps, jobs, and other deployable units.
      tags:
      - Components
      parameters:
      - name: orgId
        in: path
        required: true
        schema:
          type: string
        description: Organization identifier.
      - name: projectId
        in: path
        required: true
        schema:
          type: string
        description: Project identifier.
      responses:
        '200':
          description: Successful response with list of components.
          content:
            application/json:
              schema:
                type: object
                properties:
                  list:
                    type: array
                    items:
                      $ref: '#/components/schemas/Component'
        '401':
          description: Unauthorized.
        '404':
          description: Project not found.
    post:
      operationId: createComponent
      summary: Choreo Create a component
      description: Create a new component within a project. A component can be a service, API proxy, web application, scheduled job, manual trigger, or event handler.
      tags:
      - Components
      parameters:
      - name: orgId
        in: path
        required: true
        schema:
          type: string
        description: Organization identifier.
      - name: projectId
        in: path
        required: true
        schema:
          type: string
        description: Project identifier.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ComponentCreate'
      responses:
        '201':
          description: Component created successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Component'
        '400':
          description: Bad request.
        '401':
          description: Unauthorized.
  /organizations/{orgId}/projects/{projectId}/components/{componentId}:
    get:
      operationId: getComponent
      summary: Choreo Get a component
      description: Retrieve details of a specific component.
      tags:
      - Components
      parameters:
      - name: orgId
        in: path
        required: true
        schema:
          type: string
      - name: projectId
        in: path
        required: true
        schema:
          type: string
      - name: componentId
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful response with component details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Component'
        '401':
          description: Unauthorized.
        '404':
          description: Component not found.
    delete:
      operationId: deleteComponent
      summary: Choreo Delete a component
      description: Delete a specific component from a project.
      tags:
      - Components
      parameters:
      - name: orgId
        in: path
        required: true
        schema:
          type: string
      - name: projectId
        in: path
        required: true
        schema:
          type: string
      - name: componentId
        in: path
        required: true
        schema:
          type: string
      responses:
        '204':
          description: Component deleted successfully.
        '401':
          description: Unauthorized.
        '404':
          description: Component not found.
components:
  schemas:
    ComponentCreate:
      type: object
      required:
      - name
      - type
      - repoUrl
      properties:
        name:
          type: string
          description: Name of the component.
        type:
          type: string
          enum:
          - Service
          - REST API Proxy
          - GraphQL API Proxy
          - Web Application
          - Scheduled Job
          - Manual Trigger
          - Event Handler
          - Webhook
          description: Type of the component.
        description:
          type: string
        repoUrl:
          type: string
          description: Git repository URL.
        branch:
          type: string
          description: Git branch.
          default: main
        buildpackId:
          type: string
          description: Buildpack identifier.
        subPath:
          type: string
          description: Sub-path within the repository.
    Component:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier for the component.
        name:
          type: string
          description: Name of the component.
        type:
          type: string
          enum:
          - Service
          - REST API Proxy
          - GraphQL API Proxy
          - Web Application
          - Scheduled Job
          - Manual Trigger
          - Event Handler
          - Webhook
          description: Type of the component.
        description:
          type: string
          description: Description of the component.
        repoUrl:
          type: string
          description: Git repository URL.
        branch:
          type: string
          description: Git branch.
        buildpackId:
          type: string
          description: Buildpack used for the component.
        projectId:
          type: string
        orgId:
          type: string
        status:
          type: string
          enum:
          - Active
          - Inactive
        createdAt:
          type: string
          format: date-time
  securitySchemes:
    oauth2:
      type: oauth2
      flows:
        authorizationCode:
          authorizationUrl: https://console.choreo.dev/oauth2/authorize
          tokenUrl: https://console.choreo.dev/oauth2/token
          scopes:
            read: Read access
            write: Write access
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT