Koyeb Provisioning API

The Provisioning API from Koyeb — 2 operation(s) for provisioning.

OpenAPI Specification

koyeb-provisioning-api-openapi.yml Raw ↑
swagger: '2.0'
info:
  title: Koyeb Rest activity Provisioning API
  description: 'The Koyeb API allows you to interact with the Koyeb platform in a simple, programmatic way using conventional HTTP requests.

    '
  version: 1.0.0
host: app.koyeb.com
schemes:
- https
security:
- Bearer: []
tags:
- name: Provisioning
paths:
  /v1/provisioning/{deployment_id}/status/{stage}/{attempt}:
    post:
      summary: Create an attempt for a stage
      operationId: CreateStageAttempt
      responses:
        '200':
          description: A successful response.
          schema:
            $ref: '#/definitions/CreateStageAttemptReply'
        '400':
          description: Validation error
          schema:
            $ref: '#/definitions/ErrorWithFields'
        '401':
          description: Returned when the token is not valid.
          schema:
            $ref: '#/definitions/Error'
        '403':
          description: Returned when the user does not have permission to access the resource.
          schema:
            $ref: '#/definitions/Error'
        '404':
          description: Returned when the resource does not exist.
          schema:
            $ref: '#/definitions/Error'
        '500':
          description: Returned in case of server error.
          schema:
            $ref: '#/definitions/Error'
        '503':
          description: Service is unavailable.
          schema:
            $ref: '#/definitions/Error'
        default:
          description: An unexpected error response.
          schema:
            $ref: '#/definitions/google.rpc.Status'
      parameters:
      - name: deployment_id
        in: path
        required: true
        type: string
      - name: stage
        in: path
        required: true
        type: string
      - name: attempt
        in: path
        required: true
        type: string
      - name: body
        in: body
        required: true
        schema:
          type: object
          properties:
            secret:
              type: string
            status:
              $ref: '#/definitions/DeploymentProvisioningInfo.Stage.Status'
            started_at:
              type: string
              format: date-time
            messages:
              type: array
              items:
                type: string
            steps:
              type: array
              items:
                type: string
      tags:
      - Provisioning
    patch:
      summary: Declare stage progress
      operationId: DeclareStageProgress
      responses:
        '200':
          description: A successful response.
          schema:
            $ref: '#/definitions/DeclareStageProgressReply'
        '400':
          description: Validation error
          schema:
            $ref: '#/definitions/ErrorWithFields'
        '401':
          description: Returned when the token is not valid.
          schema:
            $ref: '#/definitions/Error'
        '403':
          description: Returned when the user does not have permission to access the resource.
          schema:
            $ref: '#/definitions/Error'
        '404':
          description: Returned when the resource does not exist.
          schema:
            $ref: '#/definitions/Error'
        '500':
          description: Returned in case of server error.
          schema:
            $ref: '#/definitions/Error'
        '503':
          description: Service is unavailable.
          schema:
            $ref: '#/definitions/Error'
        default:
          description: An unexpected error response.
          schema:
            $ref: '#/definitions/google.rpc.Status'
      parameters:
      - name: deployment_id
        in: path
        required: true
        type: string
      - name: stage
        in: path
        required: true
        type: string
      - name: attempt
        in: path
        required: true
        type: string
      - name: body
        in: body
        required: true
        schema:
          type: object
          properties:
            secret:
              type: string
            status:
              $ref: '#/definitions/DeploymentProvisioningInfo.Stage.Status'
            finished_at:
              type: string
              format: date-time
            messages:
              type: array
              items:
                type: string
            image_pushed:
              type: boolean
            internal_failure:
              type: boolean
            retryable_failure:
              type: boolean
      tags:
      - Provisioning
  /v1/provisioning/{deployment_id}/status/{stage}/{attempt}/{step}:
    patch:
      summary: Declare step progress
      operationId: DeclareStepProgress
      responses:
        '200':
          description: A successful response.
          schema:
            $ref: '#/definitions/DeclareStepProgressReply'
        '400':
          description: Validation error
          schema:
            $ref: '#/definitions/ErrorWithFields'
        '401':
          description: Returned when the token is not valid.
          schema:
            $ref: '#/definitions/Error'
        '403':
          description: Returned when the user does not have permission to access the resource.
          schema:
            $ref: '#/definitions/Error'
        '404':
          description: Returned when the resource does not exist.
          schema:
            $ref: '#/definitions/Error'
        '500':
          description: Returned in case of server error.
          schema:
            $ref: '#/definitions/Error'
        '503':
          description: Service is unavailable.
          schema:
            $ref: '#/definitions/Error'
        default:
          description: An unexpected error response.
          schema:
            $ref: '#/definitions/google.rpc.Status'
      parameters:
      - name: deployment_id
        in: path
        required: true
        type: string
      - name: stage
        in: path
        required: true
        type: string
      - name: attempt
        in: path
        required: true
        type: string
      - name: step
        in: path
        required: true
        type: string
      - name: body
        in: body
        required: true
        schema:
          type: object
          properties:
            secret:
              type: string
            status:
              $ref: '#/definitions/DeploymentProvisioningInfo.Stage.Status'
            started_at:
              type: string
              format: date-time
            finished_at:
              type: string
              format: date-time
            messages:
              type: array
              items:
                type: string
      tags:
      - Provisioning
definitions:
  DeclareStepProgressReply:
    type: object
  google.rpc.Status:
    type: object
    properties:
      code:
        type: integer
        format: int32
      message:
        type: string
      details:
        type: array
        items:
          $ref: '#/definitions/google.protobuf.Any'
  DeclareStageProgressReply:
    type: object
  DeploymentProvisioningInfo.Stage.Status:
    type: string
    enum:
    - UNKNOWN
    - PENDING
    - RUNNING
    - FAILED
    - COMPLETED
    - ABORTED
    default: UNKNOWN
  ErrorWithFields:
    type: object
    properties:
      status:
        type: integer
        format: int32
      code:
        type: string
      message:
        type: string
      fields:
        type: array
        items:
          $ref: '#/definitions/ErrorField'
  CreateStageAttemptReply:
    type: object
  google.protobuf.Any:
    type: object
    properties:
      '@type':
        type: string
    additionalProperties: {}
  ErrorField:
    type: object
    properties:
      field:
        type: string
      description:
        type: string
  Error:
    type: object
    properties:
      status:
        type: integer
        format: int32
      code:
        type: string
      message:
        type: string
securityDefinitions:
  Bearer:
    type: apiKey
    name: Authorization
    in: header
x-tagGroups:
- name: Introduction
  tags:
  - intro
- name: API
  tags:
  - Profile
  - Sessions
  - Users
  - organization
  - OrganizationMembers
  - OrganizationInvitations
  - OrganizationConfirmations
  - Subscriptions
  - Coupons
  - Credentials
  - Secrets
  - activity
  - Apps
  - Services
  - Deployments
  - Archives
  - RegionalDeployments
  - Instances
  - Domains
  - PersistentVolumes
  - Snapshots
  - Compose
  - Repositories
  - Logs
  - Metrics
  - Catalog
  - CatalogRegions
  - CatalogInstances
  - Usages
  - Summary
  - DockerHelper