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

# Criar chave de API

> Cria uma chave com os escopos informados. O token completo (`kbt_…`) é retornado **uma única vez** — guarde-o em gerenciador de segredos. Aplique o menor privilégio: crie chaves por integração com escopos mínimos.



## OpenAPI

````yaml /openapi/korbit-public-v1.json post /v1/iam/api-keys
openapi: 3.1.0
info:
  title: Korbit API
  version: 1.0.0
  description: >-
    API de pagamentos da Korbit para merchants: PIX, cartão (com 3DS),
    assinaturas, checkout por link, payouts, antecipações e refunds — com
    idempotência, webhooks assinados e ambiente sandbox.
  contact:
    name: Suporte Korbit
    email: suporte@korbit.com.br
servers:
  - url: https://api.korbit.com.br
    description: Produção (chaves kbt_live_)
  - url: https://api-test.korbit.com.br
    description: Sandbox (chaves kbt_test_)
security:
  - bearerAuth: []
tags:
  - name: Antecipações
  - name: Assinaturas
  - name: Atividade
  - name: Catálogo
  - name: Chaves de API
  - name: Checkout
  - name: Clientes e Pedidos
  - name: Pagamentos
  - name: Refunds e Disputas
  - name: Saldo e Saques
  - name: Sandbox
  - name: Webhooks
paths:
  /v1/iam/api-keys:
    post:
      tags:
        - Chaves de API
      summary: Criar chave de API
      description: >-
        Cria uma chave com os escopos informados. O token completo (`kbt_…`) é
        retornado **uma única vez** — guarde-o em gerenciador de segredos.
        Aplique o menor privilégio: crie chaves por integração com escopos
        mínimos.
      operationId: createApiKey
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              additionalProperties: false
              required:
                - name
                - scopes
              properties:
                expiresAt:
                  type: string
                  format: date-time
                  description: >-
                    Expiração opcional (ISO 8601). Recomendado para chaves de
                    uso temporário.
                name:
                  type: string
                  minLength: 1
                  maxLength: 100
                  description: >-
                    Nome descritivo da chave (ex.: `erp-producao`,
                    `conciliacao-job`).
                scopes:
                  type: array
                  minItems: 1
                  uniqueItems: true
                  items:
                    type: string
                    enum:
                      - iam:manage
                      - payments:read
                      - payments:write
                      - payouts:read
                      - payouts:write
                      - refunds:write
                      - webhooks:manage
                      - commerce:read
                      - commerce:write
                  description: >-
                    Escopos concedidos — a chave nunca pode fazer mais que o
                    declarado aqui.
      responses:
        '201':
          description: Default Response
          content:
            application/json:
              schema:
                type: object
                additionalProperties: false
                required:
                  - createdAt
                  - environment
                  - expiresAt
                  - id
                  - lastUsedAt
                  - name
                  - publicId
                  - revokedAt
                  - scopes
                  - status
                  - token
                properties:
                  createdAt:
                    type: string
                    format: date-time
                  environment:
                    type: string
                    enum:
                      - live
                      - test
                  expiresAt:
                    anyOf:
                      - type: string
                        format: date-time
                      - type: 'null'
                  id:
                    type: string
                    format: uuid
                  lastUsedAt:
                    anyOf:
                      - type: string
                        format: date-time
                      - type: 'null'
                  name:
                    type: string
                    minLength: 1
                    maxLength: 100
                  publicId:
                    type: string
                  revokedAt:
                    anyOf:
                      - type: string
                        format: date-time
                      - type: 'null'
                  scopes:
                    type: array
                    minItems: 1
                    uniqueItems: true
                    items:
                      type: string
                      enum:
                        - iam:manage
                        - payments:read
                        - payments:write
                        - payouts:read
                        - payouts:write
                        - refunds:write
                        - webhooks:manage
                        - commerce:read
                        - commerce:write
                  status:
                    type: string
                    enum:
                      - ACTIVE
                      - EXPIRED
                      - REVOKED
                  token:
                    type: string
        '400':
          description: Default Response
          content:
            application/json:
              schema:
                type: object
                additionalProperties: false
                required:
                  - detail
                  - instance
                  - requestId
                  - status
                  - title
                  - type
                properties:
                  code:
                    type: string
                  detail:
                    type: string
                  instance:
                    type: string
                  requestId:
                    type: string
                  status:
                    type: integer
                    minimum: 400
                    maximum: 599
                  title:
                    type: string
                  type:
                    type: string
        '401':
          description: Default Response
          content:
            application/json:
              schema:
                type: object
                additionalProperties: false
                required:
                  - detail
                  - instance
                  - requestId
                  - status
                  - title
                  - type
                properties:
                  code:
                    type: string
                  detail:
                    type: string
                  instance:
                    type: string
                  requestId:
                    type: string
                  status:
                    type: integer
                    minimum: 400
                    maximum: 599
                  title:
                    type: string
                  type:
                    type: string
        '403':
          description: Default Response
          content:
            application/json:
              schema:
                type: object
                additionalProperties: false
                required:
                  - detail
                  - instance
                  - requestId
                  - status
                  - title
                  - type
                properties:
                  code:
                    type: string
                  detail:
                    type: string
                  instance:
                    type: string
                  requestId:
                    type: string
                  status:
                    type: integer
                    minimum: 400
                    maximum: 599
                  title:
                    type: string
                  type:
                    type: string
        '429':
          description: Default Response
          content:
            application/json:
              schema:
                type: object
                additionalProperties: false
                required:
                  - detail
                  - instance
                  - requestId
                  - status
                  - title
                  - type
                properties:
                  code:
                    type: string
                  detail:
                    type: string
                  instance:
                    type: string
                  requestId:
                    type: string
                  status:
                    type: integer
                    minimum: 400
                    maximum: 599
                  title:
                    type: string
                  type:
                    type: string
        '503':
          description: Default Response
          content:
            application/json:
              schema:
                type: object
                additionalProperties: false
                required:
                  - detail
                  - instance
                  - requestId
                  - status
                  - title
                  - type
                properties:
                  code:
                    type: string
                  detail:
                    type: string
                  instance:
                    type: string
                  requestId:
                    type: string
                  status:
                    type: integer
                    minimum: 400
                    maximum: 599
                  title:
                    type: string
                  type:
                    type: string
      security:
        - bearerAuth: []
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: Korbit API key

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.