Acceso y claves

Una clave de API da acceso tanto al servidor MCP como a la REST API. Esta página explica quién del equipo puede crear una clave, qué puede hacer una clave, cómo enviarla y revisarla, cómo rotarla, y cómo se ve una solicitud rechazada.

Abrir en ChatGPTAbrir en Claudellms.txtllms-full.txtopenapi.json

Contenido

¿Cómo consigo acceso?

Se necesita una cuenta de Bidlo. Cualquiera puede conseguir una agendando una llamada en https://cal.com/matt-wolfe-yecrho/30min — Bidlo prepara el equipo, y luego un dueño o administrador del equipo crea la clave de API en Settings → Features → API. No hay un plan público ni se puede abrir una cuenta por cuenta propia.

Si tu empresa ya está en Bidlo, no necesitas la llamada: pídele una clave a un dueño o administrador de tu equipo.

Agenda una llamada

¿Quién puede crear una clave?

Solo un dueño o administrador del equipo puede crear una clave de API, en la app de Bidlo en Settings → Features → API.

Dos pantallas de la app crean el mismo tipo de clave.

Dónde en la appLo que crea
Settings → Features → APIUna clave con una etiqueta, el acceso que elijas, un límite opcional a ciertas colecciones y un vencimiento opcional.
Settings → Features → MCPUna clave de solo lectura con la etiqueta Bidlo MCP, y debajo la configuración del cliente ya lista.

Settings → Features → API, como lo ve un propietario o administrador del equipo.

  1. Abre Settings en la app.
  2. Dentro de Features, elige API.
  3. Haz clic en New key, nombra la clave y elige Read only, Read and write data, Full access o Custom.
  4. Haz clic en Create key y copia la clave. Bidlo la muestra una sola vez.

Solo ellos pueden ver o eliminar las claves de un equipo. Dale a cada integración su propia clave.

¿Cómo se ve una clave?

Una clave es el prefijo sk_live_ seguido de 48 caracteres hexadecimales, y Bidlo la muestra una sola vez.

Son 56 caracteres en total. Bidlo guarda un hash de la clave y no la clave, así que puede verificarla y nunca puede volver a mostrarla. La lista en Settings muestra cada clave por su etiqueta y sus últimos cuatro caracteres, lo justo para distinguir dos y no lo suficiente para usarla.

Copia la clave cuando la crees. Una clave que no se copió no se puede recuperar: elimínala y crea otra.

Guarda la clave en un servidor, nunca en código del navegador. La REST API no envía encabezados CORS, así que un navegador no puede llamarla de todos modos.

¿Cómo mando la clave?

Mándala en un encabezado Authorization en cada solicitud: la palabra Bearer, un espacio y luego la clave; el servidor MCP y la REST API leen el mismo encabezado.

El encabezado es la misma línea en los dos casos. YOUR_API_KEY representa la clave que creaste.

El encabezado
Authorization: Bearer YOUR_API_KEY

https://app.bidlo.ai/api/v1

REST acepta el encabezado en todos los métodos. La clave lleva su equipo, así que una solicitud no manda ningún team_id; uno que se mande de todos modos se rechaza con un 422. La REST API cubre las rutas anteriores que todavía lo piden.

Listar colecciones, en REST
curl https://app.bidlo.ai/api/v1/collections \
  -H "Authorization: Bearer YOUR_API_KEY"

El servidor MCP lee el mismo encabezado. Un cliente MCP lo envía una vez que la clave está en su configuración; la página Servidor MCP incluye una configuración para cada tipo de cliente.

¿Qué puede hacer una clave?

Una clave hace lo que su acceso permite, en las colecciones a las que está limitada, hasta que vence; las tres cosas se eligen al crear la clave.

Ninguna de las tres cosas se puede cambiar después. Para cambiar lo que puede hacer una clave, crea una nueva y borra la anterior.

Acceso

El menú Access tiene cuatro opciones.

AccesoQué recibe la clave
Read onlyRead data.
Read and write dataRead data y Edit data.
Full accessTodos los permisos que permite el rol de quien creó la clave, incluido Editar colecciones y campos.
CustomLos permisos que marques, uno por uno.

Hoy funcionan tres permisos en la API.

PermisoQué permite
Read dataLeer colecciones, campos, documentos, notas, opciones de etiquetas, detalles de archivos, comentarios e historial.
Edit dataCrear, editar, enviar a la papelera y restaurar documentos, escribir notas, cargar archivos y enviarlos a la papelera, y escribir tus propios comentarios.
Editar colecciones y camposCrear, renombrar y eliminar colecciones y campos, y agregar fórmulas, relaciones y opciones de etiquetas.

Ajustes marca los permisos de vistas, flujos, webhooks y equipo como Próximamente y los desactiva. Elige Solo lectura salvo que la integración escriba datos.

Colecciones

Una clave accede a todas las colecciones por defecto. Elige ciertas colecciones y solo podrá acceder a esas; cualquier otra devuelve un 403. Una clave limitada a ciertas colecciones no puede crear una colección. Las relaciones y las dependencias de las fórmulas también deben estar dentro del acceso de la clave.

Vencimiento

Elige Never, In 30 days, In 90 days o In 1 year. Después de esa fecha, toda solicitud con la clave es un 401.

¿Como quién actúa una clave?

Una clave actúa como la persona que la creó, así que nunca puede hacer más de lo que hoy permite el rol de esa persona en el equipo.

La lista de claves en Settings muestra a esa persona junto a cada clave, como Acts as y su nombre.

  • Si el creador tiene el rol Viewer en el equipo, la clave solo puede leer, sin importar el acceso que se le haya dado.
  • Si al creador le bajan el rol, la clave pierde de inmediato lo que el nuevo rol no permite.
  • Si el creador sale del equipo, toda solicitud con la clave es un 401.

Una clave sin creador guardado es de solo lectura, sin importar el acceso con que se creó. La lista la marca como Read only. Para escribir, crea una clave nueva.

¿Cómo reviso qué puede hacer una clave?

Llama a GET https://app.bidlo.ai/api/v1/me, o a la herramienta MCP me, y Bidlo responde con los permisos de la clave, su límite de colecciones y su vencimiento.

Revisar una clave, en REST
curl https://app.bidlo.ai/api/v1/me \
  -H "Authorization: Bearer YOUR_API_KEY"
La respuesta
{
  "data": {
    "key_id": "<key_id>",
    "label": "<label>",
    "team_id": "<team_id>",
    "owner_id": "<user_id>",
    "scopes": [
      "data:read",
      "data:write"
    ],
    "role": "admin",
    "collection_ids": null,
    "expires_at": null
  }
}

scopes es lo que la clave puede hacer ahora, después de aplicar el rol de su creador: data:read es Read data y data:write es Edit data. collection_ids es null cuando la clave llega a todas las colecciones, y expires_at es null cuando nunca vence. La llamada necesita Read data, como toda lectura.

¿Cómo revoco o roto una clave?

Borra la clave para revocarla, y crea otra para rotarla; una clave con fecha de vencimiento también deja de funcionar ese día.

Borrarla surte efecto en la siguiente solicitud: esa clave deja de ser una clave. Para cambiar de clave sin interrupción, crea la nueva antes de borrar la vieja.

  1. Crea la clave nueva en Settings → Features → API y cópiala.
  2. Pasa cada cliente y cada servidor a ella.
  3. Borra la clave vieja.

El vencimiento se fija al crear la clave y no se puede mover, así que una clave que vence se rota de la misma forma. Otras dos cosas detienen una clave: que su creador salga del equipo y que venza la suscripción del equipo. Las dos están en la siguiente sección.

¿Por qué rechazan mi clave?

Una clave ausente, desconocida o vencida es un 401, una clave que no tiene permiso para lo que pidió es un 403, y demasiadas solicitudes en un minuto son un 429; el código en el cuerpo del error dice cuál es.

Qué pasóStatusCodeMensaje
Sin encabezado Authorization401unauthorizedMissing Authorization header
Una clave que Bidlo no conoce: mal escrita, o ya borrada401unauthorizedInvalid API key
La persona que creó la clave salió del equipo401unauthorizedAPI key owner is no longer a team member
La clave pasó su fecha de vencimiento401key_expiredAPI key expired
La suscripción del equipo venció403subscription_expiredTeam subscription expired
La clave no recibió el permiso403forbidden_scopeKey cannot use data:write
La clave tiene el permiso, pero el rol de su creador en el equipo ya no lo permite403forbidden_roleKey cannot use data:write
La colección está fuera de las que se le permitieron a la clave403forbidden_scopeCollection is outside the key allowlist
La colección es una que la API mantiene cerrada para toda clave403forbidden_scopeCollection is protected for this operation
Demasiadas solicitudes de esta clave en este minuto429rate_limitedRate limit exceeded

REST responde con un objeto error que lleva el código y el mensaje, y un request_id para citar si escribes a soporte.

Un rechazo, en REST
{
  "error": {
    "code": "key_expired",
    "message": "API key expired"
  },
  "request_id": "<request_id>"
}

El servidor MCP responde con el mismo estado y un cuerpo de error JSON-RPC; la página Servidor MCP lo cubre.

Cada clave tiene 600 lecturas y 120 escrituras por minuto. La página REST API explica los encabezados del límite de solicitudes.