naftiko: 1.0.0-alpha2 info: label: Choreo API Management 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. tags: - Choreo - API created: '2026-05-06' modified: '2026-05-06' capability: consumes: - type: http namespace: choreo baseUri: https://console.choreo.dev/api/v1 description: Choreo API Management API HTTP API. authentication: type: bearer token: '{{CHOREO_TOKEN}}' resources: - name: organizations path: /organizations operations: - name: listorganizations method: GET description: Choreo List organizations outputRawFormat: json outputParameters: - name: result type: object value: $. - name: organizations-orgid-projects path: /organizations/{orgId}/projects operations: - name: listprojects method: GET description: Choreo List projects inputParameters: - name: orgId in: path type: string required: true description: Organization identifier. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: createproject method: POST description: Choreo Create a project inputParameters: - name: orgId in: path type: string required: true description: Organization identifier. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: organizations-orgid-projects-projectid-component path: /organizations/{orgId}/projects/{projectId}/components operations: - name: listcomponents method: GET description: Choreo List components inputParameters: - name: orgId in: path type: string required: true description: Organization identifier. - name: projectId in: path type: string required: true description: Project identifier. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: createcomponent method: POST description: Choreo Create a component inputParameters: - name: orgId in: path type: string required: true description: Organization identifier. - name: projectId in: path type: string required: true description: Project identifier. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: organizations-orgid-projects-projectid-component path: /organizations/{orgId}/projects/{projectId}/components/{componentId} operations: - name: getcomponent method: GET description: Choreo Get a component inputParameters: - name: orgId in: path type: string required: true - name: projectId in: path type: string required: true - name: componentId in: path type: string required: true outputRawFormat: json outputParameters: - name: result type: object value: $. - name: deletecomponent method: DELETE description: Choreo Delete a component inputParameters: - name: orgId in: path type: string required: true - name: projectId in: path type: string required: true - name: componentId in: path type: string required: true outputRawFormat: json outputParameters: - name: result type: object value: $. - name: organizations-orgid-projects-projectid-component path: /organizations/{orgId}/projects/{projectId}/components/{componentId}/builds operations: - name: listbuilds method: GET description: Choreo List builds inputParameters: - name: orgId in: path type: string required: true - name: projectId in: path type: string required: true - name: componentId in: path type: string required: true outputRawFormat: json outputParameters: - name: result type: object value: $. - name: createbuild method: POST description: Choreo Trigger a build inputParameters: - name: orgId in: path type: string required: true - name: projectId in: path type: string required: true - name: componentId in: path type: string required: true outputRawFormat: json outputParameters: - name: result type: object value: $. - name: organizations-orgid-projects-projectid-component path: /organizations/{orgId}/projects/{projectId}/components/{componentId}/deployments operations: - name: listdeployments method: GET description: Choreo List deployments inputParameters: - name: orgId in: path type: string required: true - name: projectId in: path type: string required: true - name: componentId in: path type: string required: true outputRawFormat: json outputParameters: - name: result type: object value: $. - name: createdeployment method: POST description: Choreo Promote a build to an environment inputParameters: - name: orgId in: path type: string required: true - name: projectId in: path type: string required: true - name: componentId in: path type: string required: true outputRawFormat: json outputParameters: - name: result type: object value: $. - name: organizations-orgid-apis path: /organizations/{orgId}/apis operations: - name: listapis method: GET description: Choreo List APIs inputParameters: - name: orgId in: path type: string required: true description: Organization identifier. - name: limit in: query type: integer description: Maximum number of results to return. - name: offset in: query type: integer description: Number of results to skip. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: organizations-orgid-apis-apiid path: /organizations/{orgId}/apis/{apiId} operations: - name: getapi method: GET description: Choreo Get API details inputParameters: - name: orgId in: path type: string required: true - name: apiId in: path type: string required: true outputRawFormat: json outputParameters: - name: result type: object value: $. - name: organizations-orgid-environments path: /organizations/{orgId}/environments operations: - name: listenvironments method: GET description: Choreo List environments inputParameters: - name: orgId in: path type: string required: true description: Organization identifier. outputRawFormat: json outputParameters: - name: result type: object value: $. exposes: - type: rest port: 8080 namespace: choreo-rest description: REST adapter for Choreo API Management API. resources: - path: /organizations name: listorganizations operations: - method: GET name: listorganizations description: Choreo List organizations call: choreo.listorganizations outputParameters: - type: object mapping: $. - path: /organizations/{orgId}/projects name: listprojects operations: - method: GET name: listprojects description: Choreo List projects call: choreo.listprojects with: orgId: rest.orgId outputParameters: - type: object mapping: $. - path: /organizations/{orgId}/projects name: createproject operations: - method: POST name: createproject description: Choreo Create a project call: choreo.createproject with: orgId: rest.orgId outputParameters: - type: object mapping: $. - path: /organizations/{orgId}/projects/{projectId}/components name: listcomponents operations: - method: GET name: listcomponents description: Choreo List components call: choreo.listcomponents with: orgId: rest.orgId projectId: rest.projectId outputParameters: - type: object mapping: $. - path: /organizations/{orgId}/projects/{projectId}/components name: createcomponent operations: - method: POST name: createcomponent description: Choreo Create a component call: choreo.createcomponent with: orgId: rest.orgId projectId: rest.projectId outputParameters: - type: object mapping: $. - path: /organizations/{orgId}/projects/{projectId}/components/{componentId} name: getcomponent operations: - method: GET name: getcomponent description: Choreo Get a component call: choreo.getcomponent with: orgId: rest.orgId projectId: rest.projectId componentId: rest.componentId outputParameters: - type: object mapping: $. - path: /organizations/{orgId}/projects/{projectId}/components/{componentId} name: deletecomponent operations: - method: DELETE name: deletecomponent description: Choreo Delete a component call: choreo.deletecomponent with: orgId: rest.orgId projectId: rest.projectId componentId: rest.componentId outputParameters: - type: object mapping: $. - path: /organizations/{orgId}/projects/{projectId}/components/{componentId}/builds name: listbuilds operations: - method: GET name: listbuilds description: Choreo List builds call: choreo.listbuilds with: orgId: rest.orgId projectId: rest.projectId componentId: rest.componentId outputParameters: - type: object mapping: $. - path: /organizations/{orgId}/projects/{projectId}/components/{componentId}/builds name: createbuild operations: - method: POST name: createbuild description: Choreo Trigger a build call: choreo.createbuild with: orgId: rest.orgId projectId: rest.projectId componentId: rest.componentId outputParameters: - type: object mapping: $. - path: /organizations/{orgId}/projects/{projectId}/components/{componentId}/deployments name: listdeployments operations: - method: GET name: listdeployments description: Choreo List deployments call: choreo.listdeployments with: orgId: rest.orgId projectId: rest.projectId componentId: rest.componentId outputParameters: - type: object mapping: $. - path: /organizations/{orgId}/projects/{projectId}/components/{componentId}/deployments name: createdeployment operations: - method: POST name: createdeployment description: Choreo Promote a build to an environment call: choreo.createdeployment with: orgId: rest.orgId projectId: rest.projectId componentId: rest.componentId outputParameters: - type: object mapping: $. - path: /organizations/{orgId}/apis name: listapis operations: - method: GET name: listapis description: Choreo List APIs call: choreo.listapis with: orgId: rest.orgId outputParameters: - type: object mapping: $. - path: /organizations/{orgId}/apis/{apiId} name: getapi operations: - method: GET name: getapi description: Choreo Get API details call: choreo.getapi with: orgId: rest.orgId apiId: rest.apiId outputParameters: - type: object mapping: $. - path: /organizations/{orgId}/environments name: listenvironments operations: - method: GET name: listenvironments description: Choreo List environments call: choreo.listenvironments with: orgId: rest.orgId outputParameters: - type: object mapping: $. - type: mcp port: 9090 namespace: choreo-mcp transport: http description: MCP adapter for Choreo API Management API for AI agent use. tools: - name: listorganizations description: Choreo List organizations hints: readOnly: true destructive: false idempotent: true call: choreo.listorganizations outputParameters: - type: object mapping: $. - name: listprojects description: Choreo List projects hints: readOnly: true destructive: false idempotent: true call: choreo.listprojects with: orgId: tools.orgId inputParameters: - name: orgId type: string description: Organization identifier. required: true outputParameters: - type: object mapping: $. - name: createproject description: Choreo Create a project hints: readOnly: false destructive: false idempotent: false call: choreo.createproject with: orgId: tools.orgId inputParameters: - name: orgId type: string description: Organization identifier. required: true outputParameters: - type: object mapping: $. - name: listcomponents description: Choreo List components hints: readOnly: true destructive: false idempotent: true call: choreo.listcomponents with: orgId: tools.orgId projectId: tools.projectId inputParameters: - name: orgId type: string description: Organization identifier. required: true - name: projectId type: string description: Project identifier. required: true outputParameters: - type: object mapping: $. - name: createcomponent description: Choreo Create a component hints: readOnly: false destructive: false idempotent: false call: choreo.createcomponent with: orgId: tools.orgId projectId: tools.projectId inputParameters: - name: orgId type: string description: Organization identifier. required: true - name: projectId type: string description: Project identifier. required: true outputParameters: - type: object mapping: $. - name: getcomponent description: Choreo Get a component hints: readOnly: true destructive: false idempotent: true call: choreo.getcomponent with: orgId: tools.orgId projectId: tools.projectId componentId: tools.componentId inputParameters: - name: orgId type: string description: orgId required: true - name: projectId type: string description: projectId required: true - name: componentId type: string description: componentId required: true outputParameters: - type: object mapping: $. - name: deletecomponent description: Choreo Delete a component hints: readOnly: false destructive: true idempotent: true call: choreo.deletecomponent with: orgId: tools.orgId projectId: tools.projectId componentId: tools.componentId inputParameters: - name: orgId type: string description: orgId required: true - name: projectId type: string description: projectId required: true - name: componentId type: string description: componentId required: true outputParameters: - type: object mapping: $. - name: listbuilds description: Choreo List builds hints: readOnly: true destructive: false idempotent: true call: choreo.listbuilds with: orgId: tools.orgId projectId: tools.projectId componentId: tools.componentId inputParameters: - name: orgId type: string description: orgId required: true - name: projectId type: string description: projectId required: true - name: componentId type: string description: componentId required: true outputParameters: - type: object mapping: $. - name: createbuild description: Choreo Trigger a build hints: readOnly: false destructive: false idempotent: false call: choreo.createbuild with: orgId: tools.orgId projectId: tools.projectId componentId: tools.componentId inputParameters: - name: orgId type: string description: orgId required: true - name: projectId type: string description: projectId required: true - name: componentId type: string description: componentId required: true outputParameters: - type: object mapping: $. - name: listdeployments description: Choreo List deployments hints: readOnly: true destructive: false idempotent: true call: choreo.listdeployments with: orgId: tools.orgId projectId: tools.projectId componentId: tools.componentId inputParameters: - name: orgId type: string description: orgId required: true - name: projectId type: string description: projectId required: true - name: componentId type: string description: componentId required: true outputParameters: - type: object mapping: $. - name: createdeployment description: Choreo Promote a build to an environment hints: readOnly: false destructive: false idempotent: false call: choreo.createdeployment with: orgId: tools.orgId projectId: tools.projectId componentId: tools.componentId inputParameters: - name: orgId type: string description: orgId required: true - name: projectId type: string description: projectId required: true - name: componentId type: string description: componentId required: true outputParameters: - type: object mapping: $. - name: listapis description: Choreo List APIs hints: readOnly: true destructive: false idempotent: true call: choreo.listapis with: orgId: tools.orgId limit: tools.limit offset: tools.offset inputParameters: - name: orgId type: string description: Organization identifier. required: true - name: limit type: integer description: Maximum number of results to return. - name: offset type: integer description: Number of results to skip. outputParameters: - type: object mapping: $. - name: getapi description: Choreo Get API details hints: readOnly: true destructive: false idempotent: true call: choreo.getapi with: orgId: tools.orgId apiId: tools.apiId inputParameters: - name: orgId type: string description: orgId required: true - name: apiId type: string description: apiId required: true outputParameters: - type: object mapping: $. - name: listenvironments description: Choreo List environments hints: readOnly: true destructive: false idempotent: true call: choreo.listenvironments with: orgId: tools.orgId inputParameters: - name: orgId type: string description: Organization identifier. required: true outputParameters: - type: object mapping: $. binds: - namespace: env keys: CHOREO_TOKEN: CHOREO_TOKEN