Calyptia pipeline_secret API

The pipeline_secret API from Calyptia — 2 operation(s) for pipeline_secret.

OpenAPI Specification

calyptia-pipeline-secret-api-openapi.yml Raw ↑
openapi: 3.0.4
info:
  title: Calyptia Cloud agent pipeline_secret API
  version: '1.0'
  description: HTTP API service of Calyptia Cloud
  contact:
    name: Calyptia
    email: hello@calyptia.com
    url: https://cloud.calyptia.com
  termsOfService: https://calyptia.com/terms/
servers:
- url: https://cloud-api.calyptia.com
  description: prod
- url: https://cloud-api-dev.calyptia.com
  description: dev
- url: https://cloud-api-staging.calyptia.com
  description: staging
- url: http://localhost:{port}
  description: local
  variables:
    port:
      default: '5000'
tags:
- name: pipeline_secret
paths:
  /v1/aggregator_pipelines/{pipelineID}/secrets:
    parameters:
    - schema:
        type: string
        format: uuid
      name: pipelineID
      in: path
      required: true
    post:
      tags:
      - pipeline_secret
      summary: Create pipeline secret
      operationId: createPipelineSecret
      description: 'Create secret within a pipeline.

        The given name is unique within the pipeline.

        These secrets can be referenced by their name within a fluentbit configuration file like so `{{secrets.thename}}`.

        Use them to hide sensible values from your config file.'
      security:
      - user: []
      - project: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreatePipelineSecret'
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreatedPipelineSecret'
    get:
      tags:
      - pipeline_secret
      summary: Pipeline secrets
      operationId: pipelineSecrets
      description: Secrets from a pipeline.
      security:
      - user: []
      - project: []
      parameters:
      - schema:
          type: integer
          minimum: 0
        in: query
        name: last
        description: Last secrets.
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PipelineSecret'
  /v1/pipeline_secrets/{secretID}:
    parameters:
    - schema:
        type: string
        format: uuid
      name: secretID
      in: path
      required: true
    get:
      tags:
      - pipeline_secret
      summary: Pipeline secret
      operationId: pipelineSecret
      description: Secret by ID.
      security:
      - user: []
      - project: []
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineSecret'
    patch:
      tags:
      - pipeline_secret
      summary: Update pipeline secret
      operationId: updatePipelineSecret
      description: Update secret by its ID.
      security:
      - user: []
      - project: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdatePipelineSecret'
      responses:
        '204':
          description: No Content
    delete:
      tags:
      - pipeline_secret
      summary: Delete pipeline secret
      operationId: deletePipelineSecret
      description: 'Delete pipeline secret by its ID.

        The secret cannot be deleted if some pipeline config is still referencing it;

        you must delete the pipeline first if you want to delete the secret.'
      security:
      - user: []
      - project: []
      responses:
        '204':
          description: No Content
components:
  schemas:
    CreatePipelineSecret:
      description: Create pipeline secret request body.
      type: object
      properties:
        key:
          type: string
          example: newsecret
        value:
          type: string
          format: byte
      required:
      - key
      - value
    UpdatePipelineSecret:
      description: Update pipeline secret request body.
      type: object
      properties:
        key:
          type: string
          example: newsecret
          nullable: true
          default: null
        value:
          type: string
          format: byte
          nullable: true
          default: null
    PipelineSecret:
      type: object
      description: Pipeline secret model.
      properties:
        id:
          type: string
          format: uuid
        key:
          type: string
          example: mysecret
        value:
          type: string
          format: byte
        createdAt:
          type: string
          format: date-time
        updatedAt:
          type: string
          format: date-time
      required:
      - id
      - key
      - value
      - createdAt
      - updatedAt
    CreatedPipelineSecret:
      type: object
      description: Created pipeline secret response body.
      properties:
        id:
          type: string
          format: uuid
        createdAt:
          type: string
          format: date-time
      required:
      - id
      - createdAt
  securitySchemes:
    user:
      type: http
      scheme: bearer
    project:
      name: X-Project-Token
      type: apiKey
      in: header
    auth0:
      type: oauth2
      flows:
        clientCredentials:
          tokenUrl: https://sso.calyptia.com/oauth/token
          scopes: {}
        authorizationCode:
          authorizationUrl: https://sso.calyptia.com/authorize
          tokenUrl: https://sso.calyptia.com/oauth/token
          scopes: {}