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

# Criar uma chave de workspace com nome

> Gera uma chave `ps_workspace_` COM NOME (nunca a principal), devolvida **só nesta resposta**. Proprietário ou Admin (`apikeys:rotate`). A chave fica registrada como criada pelo usuário da chave de conta e é revogada se ele sair do workspace. Até 50 chaves de workspace ativas (não revogadas) por workspace, contando a principal (`409 WORKSPACE_KEY_LIMIT_REACHED`, com `limit`).

**Requer uma chave de conta** (`ps_account_`, criada em Perfil → API). Chaves de workspace, de número e tokens OAuth/MCP recebem `403 ACCOUNT_KEY_REQUIRED`. Enviado com `Cache-Control: no-store`.

> [!WARNING]
>
> **Isto gera uma chave de verdade.** A chave bruta vem **só nesta resposta** — copie-a antes de sair da página.


## OpenAPI

````yaml openapi.pt.json POST /v1/workspaces/{workspaceId}/api-keys
openapi: 3.1.0
info:
  title: API Pilot Status
  version: 1.0.0
  license:
    name: Pilot Status Terms of Service
    url: https://pilotstatus.com.br/terms
  description: >-
    API REST pública do Pilot Status. Autentique com o header `x-api-key:
    ps_...` (ou `x-api-key-id`). Base URL: https://pilotstatus.com.br
servers:
  - url: https://pilotstatus.com.br
security:
  - apiKey: []
  - apiKeyId: []
paths:
  /v1/workspaces/{workspaceId}/api-keys:
    post:
      tags:
        - Workspace
      summary: Criar uma chave de workspace com nome
      description: >-
        Gera uma chave `ps_workspace_` COM NOME (nunca a principal), devolvida
        **só nesta resposta**. Proprietário ou Admin (`apikeys:rotate`). A chave
        fica registrada como criada pelo usuário da chave de conta e é revogada
        se ele sair do workspace. Até 50 chaves de workspace ativas (não
        revogadas) por workspace, contando a principal (`409
        WORKSPACE_KEY_LIMIT_REACHED`, com `limit`).


        **Requer uma chave de conta** (`ps_account_`, criada em Perfil → API).
        Chaves de workspace, de número e tokens OAuth/MCP recebem `403
        ACCOUNT_KEY_REQUIRED`. Enviado com `Cache-Control: no-store`.
      operationId: post_workspaces_api_keys
      parameters:
        - name: workspaceId
          in: path
          required: true
          schema:
            type: string
          description: Id do workspace, obtido em `GET /v1/workspaces`.
          example: cmh2a9z8y0002ws8example1q
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                name:
                  type: string
                  description: >-
                    De 1 a 60 caracteres, sem os espaços das pontas. Diz qual
                    integração usa a chave.
                  example: Bakery Downtown
              required:
                - name
              additionalProperties: false
      responses:
        '201':
          description: Criada — `apiKey.key` volta só esta vez
          content:
            application/json:
              example:
                apiKey:
                  id: cmh2ab7770004ak8example9m
                  name: Billing integration
                  key: >-
                    ps_workspace_4e8b0d2f6a1c3e5b7d9f0a2c4e6b8d0f1a3c5e7b9d0fa1c0
                  prefix: ps_workspace_
                  last4: a1c0
                  isPrimary: false
                  createdAt: '2026-10-28T09:15:00.000Z'
          headers:
            Cache-Control:
              schema:
                type: string
              example: no-store
        '400':
          description: '`NAME_REQUIRED`, `NAME_TOO_LONG` ou `UNKNOWN_FIELDS`'
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                  code:
                    type: string
              example:
                error: The name is required | O nome é obrigatório
                code: NAME_REQUIRED
        '401':
          description: Chave de API ausente, inválida ou revogada
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                  code:
                    type: string
              example:
                error: Invalid API key
        '403':
          description: >-
            Não é chave de conta (`ACCOUNT_KEY_REQUIRED`), não é membro ativo do
            workspace (`WORKSPACE_MEMBERSHIP_REQUIRED`) ou papel abaixo de Admin
            (`PERMISSION_DENIED`)
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                  code:
                    type: string
              example:
                error: >-
                  This endpoint requires an account API key (ps_account_…),
                  created in Profile → API. Workspace keys, number keys and
                  OAuth tokens cannot use it | Este endpoint exige uma API key
                  de conta (ps_account_…), criada em Perfil → API. Chaves de
                  workspace, de número e tokens OAuth não podem usá-lo
                code: ACCOUNT_KEY_REQUIRED
        '409':
          description: O workspace já tem 50 chaves de workspace ativas
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                  code:
                    type: string
                  limit:
                    type: integer
              example:
                error: >-
                  This workspace already has 50 API keys, which is the limit |
                  Este workspace já tem 50 API keys, que é o limite
                code: WORKSPACE_KEY_LIMIT_REACHED
                limit: 50
components:
  securitySchemes:
    apiKey:
      type: apiKey
      in: header
      name: x-api-key
      description: Sua chave de API ps_
    apiKeyId:
      type: apiKey
      in: header
      name: x-api-key-id
      description: Id da chave de API (alternativa ao x-api-key)

````

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