Pulsa / para buscar

Toda la documentación
docs Llamarlo desde tu software Autenticación

Se ejecuta enWrit Cloud

auth ▸ cinco familias de tokens

Autenticación.

Cinco familias de credenciales, cada una abre exactamente una superficie. Esta página las mapea, y luego profundiza en las dos que más generarás: las claves API wt_ con sus scopes, y OAuth para aplicaciones de terceros.

tokens ▸ el mapa

Cinco credenciales, cinco superficies.

Cada credencial abre exactamente una porción de Writ. La forma más rápida de depurar un 401 es comprobar el par: qué token, en qué superficie.

CredencialPrefijoDónde funciona
Clave API wt_ Tus propios servidores, en toda la superficie /api/* + /api/v1/* y en POST /mcp.
Token de acceso OAuth wto_ Aplicaciones de terceros, en /api/* y en los servidores publicados /mcp/{slug}. Los tokens heredados pso_ se siguen aceptando.
Clave de consumidor csk_ Tus clientes, solo en la pasarela /v1/{slug}/{path} — nunca en /api.
Token SCIM Tu proveedor de identidad, solo en /scim/v2/* — un token por organización.
Sesión (JWT) La aplicación web tras el inicio de sesión — tokens de acceso de 15 minutos, revocados en el servidor al cerrar sesión.

wt ▸ claves + scopes

Claves API: una cabecera, un ámbito ceñido.

Una clave es wt_ seguido de 43 caracteres URL-safe. El secreto se muestra una sola vez al crearla y se guarda hasheado — las listas y los registros muestran solo un prefijo corto y no secreto. Envíala como token Bearer:

curl https://api.usewrit.app/api/v1/workflows \
  -H "Authorization: Bearer $WRIT_API_KEY"

Scopes: resource:action

Las acciones son read, write, execute y delete, sobre diecisiete recursos. Una clave lleva solo los scopes que le concedes — y los recursos fijables pueden acotarse aún más, a ids concretos.

RecursoAccionesNota
workflowsread · write · execute · deleteFijable a workflows concretos.
runsread
monitorsread · write · execute · deleteFijable.
datasetsread · deleteFijable.
transferread · writeExportación e importación masiva de toda la cuenta — nunca forma parte de un preset.
crawlread · execute · delete
scrapeexecuteSeparado de crawl: una clave de extracción de página única no puede iniciar un crawl de sitio.
filesread · write · delete
personasread · write · delete
secretsread · write · deleteLos valores nunca se devuelven — solo nombres y metadatos.
agentsread · write · execute
triggersread · write · execute · delete
recorderread · execute
streamingread · execute · delete
mcpread · write · execute · delete
marketplaceread · write
accountread

Tres presets cubren la mayoría de las claves: read_only (cada :read), run (:read + :execute) y full (todo, incluido borrar). transfer queda excluido de todos los presets y debe concederse a mano. Los comodines se expanden a scopes concretos en el momento de la concesión, así que una clave nunca puede ampliarse en silencio — y la aplicación es de denegación por defecto: una ruta no abierta explícitamente a claves API las rechaza.

Rotación. Las claves son independientes: genera una clave nueva con los mismos scopes, despliégala y revoca la antigua — sin tiempo de inactividad. Guarda las claves en tu gestor de secretos; no pueden volver a mostrarse.

oauth ▸ aplicaciones de terceros

OAuth: PKCE, sin client secret.

La superficie OAuth está hecha para clientes públicos: PKCE es obligatorio, no hay client secret, y los clientes pueden registrarse solos mediante el registro dinámico RFC 7591. Los tokens de acceso llevan el prefijo wto_ (el heredado pso_ se sigue aceptando) y funcionan en /api/* y en los servidores publicados /mcp/{slug}.

EndpointFunción
GET /api/oauth/.well-known/oauth-authorization-serverMetadatos del servidor de autorización — endpoints, scopes, métodos PKCE.
POST /api/oauth/registerRegistro dinámico de clientes RFC 7591, para clientes públicos con PKCE.

Los scopes de OAuth son un conjunto aparte y más pequeño — trece — y una concesión tope en el rol operator, nunca admin:

ScopeConcede
targets:readVer los objetivos vigilados y su estado.
targets:writeCrear, modificar y eliminar objetivos.
changes:readVer los cambios detectados y los diffs.
workflows:readVer los workflows.
workflows:writeCrear y modificar workflows.
workflows:executeDisparar la ejecución de workflows.
triggers:readVer las reglas de disparo y las configuraciones de webhook.
triggers:writeCrear y modificar triggers.
reports:readVer los resultados de runs y los informes.
notifications:readVer los ajustes de notificación.
notifications:writeGestionar los ajustes de notificación.
org:readVer la información de la organización y los miembros del equipo.
profile:readVer la información del perfil de usuario.

cuenta ▸ seguridad de acceso

Cerrar la propia cuenta.

Al margen de las credenciales de API, la cuenta lleva sus propias protecciones:

MFA TOTP

Registra una app de autenticación, confirma un código para activarla, desactívala con un código válido — con códigos de recuperación de un solo uso como respaldo. La verificación tiene límite de tasa contra la fuerza bruta.

Passkeys WebAuthn

Inicio de sesión sin contraseña, o segundo factor junto a la contraseña.

SSO SAML 2.0 + OIDC

Configurado por conexión — aserciones firmadas en SAML, PKCE + nonce en OIDC.

Verificación de dominio

Demuestra un dominio con un registro DNS TXT en _writ-sso-verify.{domain}; activa opcionalmente sso_enforced para que los miembros entren obligatoriamente por SSO.

Aprovisionamiento SCIM 2.0

Tu proveedor de identidad crea y desaprovisiona cuentas en /scim/v2/*; el desaprovisionamiento revoca de inmediato las sesiones y tokens vivos del usuario.

secretos ▸ dos sintaxis

Referencias vault vs placeholders de IA.

Dos sintaxis de placeholder, dos canales — no las mezcles. {{vault:key}} es la sintaxis de los campos de workflow: admite subcampos como {{vault:name.username}}, y una referencia de credenciales sin subcampo se resuelve a la contraseña. {{secret:key}} es el placeholder del canal de IA, para cuando una sesión de IA necesita un secreto. Un campo de workflow espera vault:; una instrucción de IA espera secret:.

faq

Preguntas de autenticación, respondidas.

¿Qué token abre qué superficie?
wt_ abre /api/* (más /api/v1/*) y POST /mcp. Los tokens OAuth wto_ abren /api/* y los servidores publicados /mcp/{slug}. Las claves de consumidor csk_ abren solo la pasarela /v1/{slug}/{path}. Los tokens SCIM abren solo /scim/v2/* — y la sesión web nunca sale de la aplicación.
¿Cómo se guardan las claves — puedo recuperar una?
No. El secreto se muestra una sola vez al crearla y se guarda hasheado; las listas y los registros identifican las claves por un prefijo corto y no secreto. Si una clave se filtra, revócala y genera otra — las claves son independientes, así que la rotación no exige inactividad.
¿Qué no concede nunca un preset?
transfer — la exportación e importación masiva de toda la cuenta. read_only concede cada :read, run añade :execute, full concede todo incluido borrar; los scopes de transfer deben concederse siempre de forma explícita, a mano.
¿Puede una app OAuth convertirse en admin?
No. Las concesiones OAuth se limitan a los trece scopes de OAuth y topan en el rol operator — una app autorizada nunca puede tener derechos de admin, pida lo que pida.