Pipeline de API: reclamar un enlace de acceso
Objetivo: abrir un enlace de acceso que te enviaron y llevar las tarjetas compartidas a tu cuenta, para uno de tus proyectos o una de tus agendas; ver qué se ha compartido contigo.
Pasos
Como persona
- Ábrelo.
GET /v0/linked/<token>?project=<your project>
→ {"title": "…", "read": true, "write": true, "execute": false,
"cards": [{"card_type": "campaign", "nonce": "<card>", "title": "…", "visibility": "Unlisted"}]}
Un enlace Ecosystem requiere sesión iniciada y guarda el acceso para uno de tus proyectos: el que indiques, o tu único proyecto. Un enlace Everyone solo muestra las tarjetas; no se guarda nada.
- Una tarjeta compartida:
GET /v0/linked/<token>/<card_type>/<card>(misma regla deproject).
Como agenda
POST /v0/my/agendas/<agenda>/claim
{"token": "<token>"}
→ {"agenda": "<agenda>", "cards": [...]}
Aquí no hay proyecto.
Qué se ha compartido contigo
GET /v0/graph/my/granted
→ {"granted": [{"tile": {…}, "rights": {"read": true, "write": true, "execute": false},
"via": [{"nonce": "<link>", "title": "…", "owner": "…", "expires_at": "…"}]}], "total": 1}
Usa las tarjetas con las rutas de siempre, dentro de los derechos recibidos.
Reglas
- Sin sesión en un enlace Ecosystem → 401.
- Proyecto (persona, Ecosystem): varios proyectos y ninguno indicado → 400
pick which of your projects claims this link: pass project=<nonce>; no es tuyo → 400project <n> not found or not yours: …; ninguno → 400claiming this link needs a project of yours: …. - Un enlace solo se abre para quienes puede reclamarlo (personas, agendas o ambos).
- Un acceso terminado (se acabó el tiempo o el dueño lo revocó) solo puede renovarlo el dueño del enlace.
- Un enlace que no puedes usar no abre nada.
- Abrir otra vez no es una nueva reclamación: tu acceso conserva su primera fecha de fin.
Superficie de la API
| Endpoint | Para qué | FE | IA / oráculo |
|---|---|---|---|
GET /v0/linked/{token} |
Abrir / reclamar como persona | sí | tus propios scripts |
GET /v0/linked/{token}/{card_type}/{nonce} |
Una tarjeta compartida | sí | tus propios scripts |
POST /v0/my/agendas/{ident}/claim |
Reclamar para una agenda | sí | sí |
GET /v0/graph/my/granted |
Qué se ha compartido contigo | sí | sí |
Índice: Pipelines de API — índice