naftiko: 1.0.0-alpha2 info: label: Koyeb Rest API — Instances description: 'Koyeb Rest API — Instances. 4 operations. Lead operation: List Instance events. Self-contained Naftiko capability covering one Koyeb business surface.' tags: - Koyeb - Instances created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: KOYEB_API_KEY: KOYEB_API_KEY capability: consumes: - type: http namespace: koyeb-instances baseUri: https://app.koyeb.com description: Koyeb Rest API — Instances business capability. Self-contained, no shared references. resources: - name: v1-instance_events path: /v1/instance_events operations: - name: listinstanceevents method: GET description: List Instance events outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: instance_ids in: query type: array description: (Optional) Filter on list of instance id - name: types in: query type: array description: (Optional) Filter on instance event types - name: limit in: query type: string description: (Optional) The number of items to return - name: offset in: query type: string description: (Optional) The offset in the list of item to return - name: order in: query type: string description: (Optional) Sorts the list in the ascending or the descending order - name: v1-instances path: /v1/instances operations: - name: listinstances method: GET description: List Instances outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: app_id in: query type: string description: (Optional) Filter on application id - name: service_id in: query type: string description: (Optional) Filter on service id - name: deployment_id in: query type: string description: (Optional) Filter on deployment id - name: regional_deployment_id in: query type: string description: (Optional) Filter on regional deployment id - name: allocation_id in: query type: string description: (Optional) Filter on allocation id - name: replica_index in: query type: string description: (Optional) Filter on replica index - name: statuses in: query type: array description: (Optional) Filter on instance statuses - name: limit in: query type: string description: (Optional) The number of items to return - name: offset in: query type: string description: (Optional) The offset in the list of item to return - name: order in: query type: string description: (Optional) Sorts the list in the ascending or the descending order - name: starting_time in: query type: string description: (Optional) The starting time of the period of running instance - name: ending_time in: query type: string description: (Optional) The ending time of the period of running instance - name: v1-instances-id path: /v1/instances/{id} operations: - name: getinstance method: GET description: Get Instance outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: The id of the instance required: true - name: v1-streams-instances-exec path: /v1/streams/instances/exec operations: - name: execcommand method: GET description: Exec Command outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: query type: string description: ID of the resource to exec on. - name: body.command in: query type: array description: Command to exec. Mandatory in the first frame sent - name: body.tty_size.height in: query type: integer - name: body.tty_size.width in: query type: integer - name: body.stdin.data in: query type: string description: Data is base64 encoded - name: body.stdin.close in: query type: boolean description: Indicate last data frame - name: body.disableTty in: query type: boolean description: Disable TTY. It's enough to specify it in the first frame - name: id_type in: query type: string description: When specified, it is used to determine if the kind of resource the id refers to. If missing, defaults to the instance id. exposes: - type: rest namespace: koyeb-instances-rest port: 8080 description: REST adapter for Koyeb Rest API — Instances. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/v1/instance-events name: v1-instance-events description: REST surface for v1-instance_events. operations: - method: GET name: listinstanceevents description: List Instance events call: koyeb-instances.listinstanceevents with: instance_ids: rest.instance_ids types: rest.types limit: rest.limit offset: rest.offset order: rest.order outputParameters: - type: object mapping: $. - path: /v1/v1/instances name: v1-instances description: REST surface for v1-instances. operations: - method: GET name: listinstances description: List Instances call: koyeb-instances.listinstances with: app_id: rest.app_id service_id: rest.service_id deployment_id: rest.deployment_id regional_deployment_id: rest.regional_deployment_id allocation_id: rest.allocation_id replica_index: rest.replica_index statuses: rest.statuses limit: rest.limit offset: rest.offset order: rest.order starting_time: rest.starting_time ending_time: rest.ending_time outputParameters: - type: object mapping: $. - path: /v1/v1/instances/{id} name: v1-instances-id description: REST surface for v1-instances-id. operations: - method: GET name: getinstance description: Get Instance call: koyeb-instances.getinstance with: id: rest.id outputParameters: - type: object mapping: $. - path: /v1/v1/streams/instances/exec name: v1-streams-instances-exec description: REST surface for v1-streams-instances-exec. operations: - method: GET name: execcommand description: Exec Command call: koyeb-instances.execcommand with: id: rest.id body.command: rest.body.command body.tty_size.height: rest.body.tty_size.height body.tty_size.width: rest.body.tty_size.width body.stdin.data: rest.body.stdin.data body.stdin.close: rest.body.stdin.close body.disableTty: rest.body.disableTty id_type: rest.id_type outputParameters: - type: object mapping: $. - type: mcp namespace: koyeb-instances-mcp port: 9090 transport: http description: MCP adapter for Koyeb Rest API — Instances. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: list-instance-events description: List Instance events hints: readOnly: true destructive: false idempotent: true call: koyeb-instances.listinstanceevents with: instance_ids: tools.instance_ids types: tools.types limit: tools.limit offset: tools.offset order: tools.order outputParameters: - type: object mapping: $. - name: list-instances description: List Instances hints: readOnly: true destructive: false idempotent: true call: koyeb-instances.listinstances with: app_id: tools.app_id service_id: tools.service_id deployment_id: tools.deployment_id regional_deployment_id: tools.regional_deployment_id allocation_id: tools.allocation_id replica_index: tools.replica_index statuses: tools.statuses limit: tools.limit offset: tools.offset order: tools.order starting_time: tools.starting_time ending_time: tools.ending_time outputParameters: - type: object mapping: $. - name: get-instance description: Get Instance hints: readOnly: true destructive: false idempotent: true call: koyeb-instances.getinstance with: id: tools.id outputParameters: - type: object mapping: $. - name: exec-command description: Exec Command hints: readOnly: true destructive: false idempotent: true call: koyeb-instances.execcommand with: id: tools.id body.command: tools.body.command body.tty_size.height: tools.body.tty_size.height body.tty_size.width: tools.body.tty_size.width body.stdin.data: tools.body.stdin.data body.stdin.close: tools.body.stdin.close body.disableTty: tools.body.disableTty id_type: tools.id_type outputParameters: - type: object mapping: $.