Skip to content

Referencia API del Registry

URL base: https://api.biologicalsovereigntyprotocol.com

La Registry API es un relayer gasless. Verifica firmas Ed25519 y retransmite transacciones a Arweave, pagando el gas en nombre de los usuarios. No puede falsificar ni modificar acciones del usuario.

Toda operación de escritura requiere payload firmado con nonce (16+ caracteres) y timestamp (ISO8601, máx 5 min de antigüedad).


Operaciones de BEO

Todas las rutas en POST /api/relayer/beo/...

RutaDescripciónAuth
POST /api/relayer/beoCrear nuevo BEOFirma Ed25519
POST /api/relayer/beo/lockBloqueo de emergenciaFirma Ed25519
POST /api/relayer/beo/unlockDesbloquearFirma Ed25519
POST /api/relayer/beo/destroyBorrado permanente (LGPD/GDPR)Firma Ed25519
POST /api/relayer/beo/rotate-keyRotar llave Ed25519Firma Ed25519
POST /api/relayer/beo/recoveryActualizar configuración de recoveryFirma Ed25519
POST /api/relayer/beo/request-recoveryIniciar Social RecoveryPúblico
POST /api/relayer/beo/revoke-allRevocar todos los tokens de un BEOFirma Ed25519
POST /api/relayer/consentOtorgar ConsentTokenFirma Ed25519

Formato de payload (ejemplo: createBEO)

json
{
  "domain": "andre.bsp",
  "publicKey": "ed25519-hex-64-chars",
  "recovery": null,
  "signature": "base64-ed25519-detached-signature",
  "nonce": "random-16-chars-min",
  "timestamp": "2026-04-07T20:00:00.000Z"
}

La signature se computa sobre: JSON.stringify(sortedKeys({ function: "createBEO", domain, publicKey, recovery, nonce, timestamp })).


Operaciones de IEO

Todas las rutas en POST /api/ieo/...

RutaDescripciónAuth
POST /api/ieoCrear nuevo IEOFirma Ed25519
POST /api/ieo/lockBloqueo de emergenciaFirma Ed25519
POST /api/ieo/unlockDesbloquearFirma Ed25519
POST /api/ieo/destroyBorrado permanenteFirma Ed25519
POST /api/ieo/rotate-keyRotar llave Ed25519Firma Ed25519
POST /api/ieo/contactsActualizar endpoint API / webhookFirma Ed25519
POST /api/ieo/recoveryActualizar configuración de recoveryFirma Ed25519
POST /api/ieo/approveAprobar propuesta de gobernanza (multisig 2-de-3)X-Institute-Key
POST /api/ieo/certificationActualizar nivel de certificación del IEOX-Institute-Key

Operaciones de Guardian

Todas las rutas en /api/guardian/...

RutaDescripciónAuth
POST /api/guardian/inviteTitular del BEO invita a un guardiánFirma Ed25519
GET /api/guardian/accept/:tokenRenderizar página de aceptaciónPúblico
POST /api/guardian/accept/:tokenGuardián acepta y registra llave pública Ed25519Público
GET /api/guardian/confirm-recovery/:tokenRenderizar confirmación de recoveryPúblico
POST /api/guardian/confirm-recovery/:tokenGuardián confirma recovery (threshold 2-de-3 dispara rotación)Público

Operaciones de Query (solo lectura)

Sin autenticación — lee estado público en Arweave.

RutaDescripción
GET /api/beos/:beoIdObtener BEO por UUID
GET /api/beos/domain/:domainResolver BEO por dominio .bsp
GET /api/ieosListar IEOs (filtros: status, ieoType, certLevel)
GET /api/ieos/:ieoIdObtener IEO por UUID
GET /api/ieos/domain/:domainResolver IEO por dominio .bsp
GET /api/ieos/:ieoId/certificationVerificar certificación del IEO
GET /api/consent/:tokenIdVerificar ConsentToken
GET /api/consent/history/:beo_domainHistorial completo de tokens

Revocación de Consentimiento

RutaDescripciónAuth
DELETE /api/consent/:tokenIdRevocar un tokenFirma Ed25519
DELETE /api/consent/allRevocar TODOS los tokens (emergencia)Firma Ed25519
DELETE /api/consent/ieo/:ieo_domainRevocar todos de un IEOFirma Ed25519
DELETE /api/consent/intent/:intentRevocar todos por intenciónFirma Ed25519

Operaciones de Exchange

RutaDescripciónAuth
POST /api/exchange/recordsEnviar BioRecordsConsentToken + Ed25519
GET /api/exchange/recordsLeer BioRecordsConsentToken + Ed25519
POST /api/exchange/exportExport soberano de datos (JSON/CSV/FHIR_R4)ConsentToken + Ed25519

Límites de Tasa

Grupo de RutaLímite
Relayer BEO/IEO10 req/min
Lectura de query60 req/min por IP
Escrituras de consentimiento15 req/min por IP
Submit de exchange10 req/min por IP
Lectura de exchange30 req/min por IP
Export soberano5 req/min por IP
Invitación de guardián5 req/min

Health Check

GET /health
→ { "status": "ok", "service": "bsp-registry-api", "version": "1.0.0" }

Referencia CLI · Referencia SDK · Servidor MCP