> ## Documentation Index
> Fetch the complete documentation index at: https://docs.lerian.studio/llms.txt
> Use this file to discover all available pages before exploring further.

# Enviar uma versão de especificação OpenAPI

> Utilize este endpoint para publicar uma versão global de especificação OpenAPI 3.x para um serviço nativo. Todos os tenants resolvem contra as versões publicadas. As versões são imutáveis: enviar uma versão que já existe retorna 409. Envie a especificação como multipart/form-data; o arquivo não deve exceder 8 MiB. Quem chama precisa da permissão de criação sobre o recurso de catálogo.



## OpenAPI

````yaml pt/openapi/v3-current/flowker.yaml post /v1/catalog/openapi-specs/{service}/{version}
openapi: 3.1.0
info:
  description: >-
    Referência completa da API para os serviços de orquestração de workflows do
    Flowker, incluindo gerenciamento de catálogo, definições de workflows,
    configurações de executor, configurações de provider e execuções de
    workflows.
  title: API do Flowker
  version: 1.2.0
servers:
  - url: https://flowker.sandbox.lerian.net
security:
  - BearerAuth: []
tags:
  - name: Catalog API
    description: >-
      Explore providers, executors e triggers integrados disponíveis no catálogo
      do Flowker.
  - name: Workflows API
    description: Crie, atualize, ative, desative, clone e exclua definições de workflows.
  - name: Executions API
    description: Inicie execuções de workflows e acompanhe seu status e resultados.
  - name: Executor Configurations API
    description: >-
      Liste, consulte, atualize e exclua os registros de configuração de
      executor que uma implantação mantém.
  - name: Provider Configurations API
    description: >-
      Crie, atualize, habilite e desabilite as configurações de provider pelas
      quais os nodes de workflow chamam.
  - name: Dashboard API
    description: >-
      Recupere resumos agregados de workflows e execuções para dashboards
      operacionais.
  - name: Webhooks API
    description: >-
      Receba callbacks de webhooks de sistemas externos para disparar execuções
      de workflows.
  - name: Schedule API
    description: >-
      Inspecione as ocorrências agendadas futuras, ignoradas e retidas de um
      workflow, e execute ou descarte as retidas.
  - name: Schema Registry API
    description: >-
      Publique versões globais de especificação OpenAPI para serviços nativos e
      fixe a versão que cada tenant resolve.
  - name: OpenAPI Schemas API
    description: >-
      Envie, consulte e exclua os esquemas OpenAPI externos do tenant, e derive
      o contrato de uma operação específica.
  - name: XSD Schemas API
    description: >-
      Envie, consulte e exclua os esquemas XSD do tenant que validam as cargas
      XML dos webhooks.
paths:
  /v1/catalog/openapi-specs/{service}/{version}:
    post:
      tags:
        - Schema Registry API
      summary: Enviar uma versão de especificação OpenAPI
      description: >-
        Utilize este endpoint para publicar uma versão global de especificação
        OpenAPI 3.x para um serviço nativo. Todos os tenants resolvem contra as
        versões publicadas. As versões são imutáveis: enviar uma versão que já
        existe retorna 409. Envie a especificação como multipart/form-data; o
        arquivo não deve exceder 8 MiB. Quem chama precisa da permissão de
        criação sobre o recurso de catálogo.
      operationId: uploadOpenAPISpec
      parameters:
        - description: >-
            Identificador do serviço (o id do provider / segmento da chave
            global da spec, por exemplo ledger).
          in: path
          name: service
          required: true
          schema:
            description: >-
              Identificador do serviço (o id do provider / segmento da chave
              global da spec, por exemplo ledger).
            type: string
            example: ledger
        - description: Versão da spec (imutável, por exemplo v1.0.0).
          in: path
          name: version
          required: true
          schema:
            description: Versão da spec (imutável, por exemplo v1.0.0).
            type: string
            example: v1.0.0
      requestBody:
        content:
          multipart/form-data:
            encoding:
              file:
                contentType: application/octet-stream
            schema:
              properties:
                file:
                  contentEncoding: binary
                  contentMediaType: application/octet-stream
                  description: OpenAPI 3.x spec file (JSON).
                  format: binary
                  type: string
              required:
                - file
              type: object
      responses:
        '201':
          description: >-
            Indica que o recurso foi criado com sucesso e a operação foi
            concluída conforme o esperado.
        '400':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: >-
            Indica que a requisição estava malformada ou continha parâmetros
            inválidos.
        '409':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: >-
            Indica que a requisição não pôde ser concluída devido a um conflito
            com o estado atual do recurso.
        '413':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Indica que a carga da requisição excede o tamanho máximo permitido.
        '422':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: >-
            Indica que a requisição estava bem formada mas contém erros
            semânticos que impedem o processamento.
        '500':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: >-
            Indica um erro interno inesperado. Se persistir, entre em contato
            com o suporte.
        '503':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: >-
            Indica que o serviço está temporariamente indisponível para atender
            a requisição.
components:
  schemas:
    ErrorResponse:
      properties:
        code:
          description: Código de erro do Flowker, estável e legível por máquina.
          example: FLK-0001
          type: string
        detail:
          description: >-
            Explicação legível desta ocorrência. Respostas com status 500 ou
            superior trazem uma mensagem genérica fixa.
          example: name is a required field
          type: string
        errors:
          description: Entradas por campo para uma requisição que não passou na validação.
          items:
            $ref: '#/components/schemas/ErrorDetail'
          type: array
        instance:
          description: Referência URI que identifica esta ocorrência específica.
          example: /v1/workflows
          format: uri
          type: string
        status:
          description: Código de status HTTP.
          example: 400
          type: integer
        title:
          description: Frase padrão do status HTTP. Ela não muda conforme o código de erro.
          example: Bad Request
          type: string
        type:
          description: >-
            Referência URI que identifica o erro. É sempre a base do catálogo de
            erros seguida do código.
          example: https://errors.lerian.studio/v1/FLK-0001
          format: uri
          type: string
      type: object
    ErrorDetail:
      properties:
        location:
          description: Onde está o problema, como body.nodes ou path.id.
          example: body.nodes
          type: string
        message:
          description: Descrição do problema no campo.
          example: expected array length >= 1
          type: string
        value:
          description: O valor que causou o erro, quando é seguro incluí-lo.
      type: object
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >-
        Token bearer JWT emitido pelo provider de identidade. Envie-o no
        cabeçalho Authorization como `Bearer <token>`.

````