Cabi.Chat API — Crear tarjetas: idempotencia y límites
Crear una tarjeta a través de Cabi.Chat API es un solo POST /v0/my/<type>. Dos cosas hacen que reintentar sea seguro y que compartir sea justo: una clave de idempotencia en cada creación y un límite de peticiones por llamante. Una creación reintentada con la misma clave devuelve el primer resultado y nunca hace una copia.
Idempotency-Key
Las redes fallan a mitad de camino. Sin clave, un reintento tras un timeout puede crear la misma tarjeta dos veces. Con clave, no puede.
- Cada creación envía
Idempotency-Key: <any unique string>, hasta 255 caracteres; lo habitual es un UUID. Eso es cadaPOST /v0/my/<type>, más los contactos y las relaciones de un proyecto. Una creación sin ella responde 400. - Genera una clave por intento de creación y reutilízala en cada reintento de ese intento.
- Misma clave, mismo cuerpo, primera llamada terminada: recibes otra vez la primera respuesta, byte a byte, con la cabecera
idempotent-replayed: true. No hay segunda tarjeta. - Misma clave, mismo cuerpo, primera llamada aún en curso: 409. Espera y reintenta.
- Misma clave, cuerpo distinto: 400. Una clave pertenece a un solo cuerpo.
- Una creación fallida (cualquier respuesta que no sea 2xx) libera su clave, así que el reintento puede reutilizarla.
- Los tokens de acceso personal y los tokens de oráculo se muestran una sola vez: repetir esa creación con la misma clave responde 409 y nunca vuelve a enviar el token. Cabi.Chat API — Tokens de acceso personal
Límite de peticiones
Las creaciones tienen un límite por llamante, sobre todos los tipos de tarjeta juntos. Por encima del límite la respuesta es 429: espera unos segundos y reintenta con la misma clave.
Políticas al crear
- Para abrir una tarjeta nueva, envía
visibilityjunto conpublicityypermissionsen un soloPATCH. Cómo empieza una tarjeta y qué ajustes puede tener: Grafo de Cabi.Chat — Políticas de tarjetas - Una tarjeta que no es un proyecto se ancla a su proyecto con
project, al crearla o en el patch. Cabi.Chat Graph — Tipos de datos workspaces: [<nonce>]al crear coloca la tarjeta en tus espacios de trabajo de inmediato.
Handles y texto
- Handles y menciones: Cabi.Chat Graph — Handles, menciones y relaciones
- El texto es CommonMark. Las publicaciones son Telegram MarkdownV2.
- Dos ediciones del mismo artículo a la vez: la posterior se rechaza con
card changed concurrently — retry. Vuelve a leer el artículo y repite.
Crear un proyecto con su lugar, su sector y sus contactos, paso a paso: Pipeline de API: crear y editar la página de tu proyecto
Todos los endpoints: Cabi.Chat API — Endpoints del grafo