---
title: "Crear API key (la key completa solo viaja aquí)"
method: POST
path: "/api-keys"
tags: ["cuenta"]
---

# Crear API key (la key completa solo viaja aquí)

`POST /api-keys`

## Request

- Base URL: `https://contadeo.com/api`
- URL: `https://contadeo.com/api/api-keys`
- Auth: HTTP bearer

La key completa (`cdo_…`) viaja solo en esta respuesta. Una key con rol `emisor`, `contador` o `lector` sirve además como credencial del MCP en modo stdio (`CONTADEO_API_KEY`), así que la respuesta incluye `avisoIa`. La primera vez que la empresa abre el canal de IA -por esta vía o autorizando el conector remoto en `POST /oauth/consentimiento`- se manda además un correo al owner.

## Request body

- object
  - `nombre` string, required
  - `roles` string[]

## Response `201`

Key creada (con `avisoIa` si abre el canal de IA)

- ApiKeyCreada
  - `id` string
  - `nombre` string
  - `prefijo` string
  - `roles` string[]
  - `createdAt` string
  - `lastUsedAt` string, nullable
  - `revokedAt` string, nullable
  - `key` string: Única vez que viaja la key completa (cdo_...)
  - `avisoIa` AvisoIa: Aviso de transparencia del canal de IA (art. 5.1 de la resolución SPSP-SPD-2026-0009-R). Conectar un asistente convierte al tenant en desplegador del sistema de IA: informar a sus compradores de que un asistente trata sus datos es obligación suya, no de Contadeo, que actúa como encargado del tratamiento.
    - `titulo` string
    - `texto` string
    - `url` string: URL absoluta del texto modelo publicado en /aviso-ia, listo para adaptar como sección del aviso de privacidad del emisor.

---

[API](https://skmtc.dev/contadeo/apis/api-de-contadeo.md) · [All operations](https://skmtc.dev/contadeo/apis/api-de-contadeo/llms.txt) · [OpenAPI document](https://skmtc.dev/contadeo/apis/api-de-contadeo/revisions/461bbb9a74ce?raw)
