JJijibora Docs
docs.jijibora.online
On this page (20 sections)

Sovereign Agent BFF — UIC BBS+ & Information Vault — OpenAPI 1.0.0

<!-- GENERATED by scripts/render-platform-map-api-docs.mjs — do not hand-edit; edit apps/agent-bff/openapi/<spec>.json and re-run. --> Scope: The published reference for Sovereign Agent BFF — UIC BBS+ & Information Vault. 14 paths — the measured spec-vs-implementation coverage lives in the complete API inventory. Status: rendered 2026-11-09 from the OpenAPI source for Sovereign Agent BFF — UIC BBS+ & Information Vault — regenerate with node scripts/render-platform-map-api-docs.mjs. See also: the OpenAPI spec index.

Servers

URLNotes
http://127.0.0.1:3030Local dev (DEV_SKIP_AUTH=1)

Tags

TagSummary
uic-bbs-plusBLS12-381 BBS+ mint, present, verify
vault-bbs-plusInformation vault file, present, share, redeem
attestationAttestation co-mint with UIC BBS+ vault

Paths — 14 paths / 14 operations

MethodPathOperation IDSummary
POST/v1/identity/uic/mint-sealed/bbs-plusmintSealedBbsPlusMint co-signed UIC envelope with BBS+ commitments
POST/v1/identity/uic/present/bbs-pluspresentBbsPlusCreate BBS+ verifiable presentation
POST/v1/identity/uic/verify-presentation/bbs-plusverifyPresentationBbsPlusVerify BBS+ presentation
POST/v1/vault/bbs-plus/filevaultBbsPlusFileFile minted BBS+ envelope into vault
GET/v1/vault/bbs-plus/claims/{vaultId}/{vaultClaimId}getVaultBbsPlusClaimLoad vault claim with BBS+ metadata
POST/v1/vault/bbs-plus/claims/{vaultId}/{vaultClaimId}/presentvaultBbsPlusPresentBuild selective-disclosure presentation from vault claim
POST/v1/vault/bbs-plus/sharescreateVaultBbsPlusShareCreate verifiable share with presentation
GET/v1/vault/bbs-plus/shares/{shareId}getVaultBbsPlusShareLoad share metadata (no holder secrets)
POST/v1/vault/bbs-plus/shares/{shareId}/verifyverifyVaultBbsPlusShareVerify share presentation without redeeming
POST/v1/vault/bbs-plus/shares/{shareId}/redeemredeemVaultBbsPlusShareRedeem share and return disclosed attributes
GET/v1/vault/bbs-plus/policieslistVaultBbsPlusPoliciesList disclosure policy catalog
POST/v1/vault/bbs-plus/secrets/backupbackupBbsPlusSecretsExport passphrase-encrypted holder secrets (transient)
POST/v1/vault/bbs-plus/secrets/restorerestoreBbsPlusSecretsRestore holder secrets from backup compact
POST/v1/attest/tokens/mint-with-uic-bbs-plus-vaultmintAttestWithUicBbsPlusVaultCo-mint aaas_token + BBS+ UIC envelope + optional vault file

Operations

POST /v1/identity/uic/mint-sealed/bbs-plus

Summary: Mint co-signed UIC envelope with BBS+ commitments

Tags: uic-bbs-plus Operation ID: mintSealedBbsPlus Request body:

Content type: application/json

FieldTypeNotes

Responses:

StatusMeaning
201Minted envelope with optional vault filing

POST /v1/identity/uic/present/bbs-plus

Summary: Create BBS+ verifiable presentation

Tags: uic-bbs-plus Operation ID: presentBbsPlus Request body:

Content type: application/json

FieldTypeNotes

Responses:

StatusMeaning
200Presentation compact token

POST /v1/identity/uic/verify-presentation/bbs-plus

Summary: Verify BBS+ presentation

Tags: uic-bbs-plus Operation ID: verifyPresentationBbsPlus Request body:

Content type: application/json

FieldTypeNotes

Responses:

StatusMeaning
200Verification result

POST /v1/vault/bbs-plus/file

Summary: File minted BBS+ envelope into vault

Tags: vault-bbs-plus Operation ID: vaultBbsPlusFile Request body:

Content type: application/json

FieldTypeNotes

Responses:

StatusMeaning
201Vault claim created

GET /v1/vault/bbs-plus/claims/{vaultId}/{vaultClaimId}

Summary: Load vault claim with BBS+ metadata

Tags: vault-bbs-plus Operation ID: getVaultBbsPlusClaim

Parameters:

NameInRequiredTypeNotes
vaultIdpathyesstring
vaultClaimIdpathyesstring

Responses:

StatusMeaning
200Claim with envelope and attribute keys

POST /v1/vault/bbs-plus/claims/{vaultId}/{vaultClaimId}/present

Summary: Build selective-disclosure presentation from vault claim

Tags: vault-bbs-plus Operation ID: vaultBbsPlusPresent

Parameters:

NameInRequiredTypeNotes
vaultIdpathyesstring
vaultClaimIdpathyesstring

Request body:

Content type: application/json

FieldTypeNotes

Responses:

StatusMeaning
200Presentation compact

POST /v1/vault/bbs-plus/shares

Summary: Create verifiable share with presentation

Tags: vault-bbs-plus Operation ID: createVaultBbsPlusShare Request body:

Content type: application/json

FieldTypeNotes

Responses:

StatusMeaning
201Share created

GET /v1/vault/bbs-plus/shares/{shareId}

Summary: Load share metadata (no holder secrets)

Tags: vault-bbs-plus Operation ID: getVaultBbsPlusShare

Parameters:

NameInRequiredTypeNotes
shareIdpathyesstring

Responses:

StatusMeaning
200Share metadata

POST /v1/vault/bbs-plus/shares/{shareId}/verify

Summary: Verify share presentation without redeeming

Tags: vault-bbs-plus Operation ID: verifyVaultBbsPlusShare

Parameters:

NameInRequiredTypeNotes
shareIdpathyesstring

Responses:

StatusMeaning
200Verification result

POST /v1/vault/bbs-plus/shares/{shareId}/redeem

Summary: Redeem share and return disclosed attributes

Tags: vault-bbs-plus Operation ID: redeemVaultBbsPlusShare

Parameters:

NameInRequiredTypeNotes
shareIdpathyesstring

Request body:

Content type: application/json

FieldTypeNotes
expected_audiencestring
issuer_public_key_pemstring
subject_public_key_pemstring

Responses:

StatusMeaning
200Redeemed disclosed attributes

GET /v1/vault/bbs-plus/policies

Summary: List disclosure policy catalog

Tags: vault-bbs-plus Operation ID: listVaultBbsPlusPolicies Responses:

StatusMeaning
200Policy names and descriptions

POST /v1/vault/bbs-plus/secrets/backup

Summary: Export passphrase-encrypted holder secrets (transient)

Tags: vault-bbs-plus Operation ID: backupBbsPlusSecrets Request body:

Content type: application/json

FieldTypeNotes
bbs_plus_secretsobject
passphrasestring

Responses:

StatusMeaning
200backup_compact string

POST /v1/vault/bbs-plus/secrets/restore

Summary: Restore holder secrets from backup compact

Tags: vault-bbs-plus Operation ID: restoreBbsPlusSecrets Request body:

Content type: application/json

FieldTypeNotes
backup_compactstring
passphrasestring

Responses:

StatusMeaning
200bbs_plus_secrets object

POST /v1/attest/tokens/mint-with-uic-bbs-plus-vault

Summary: Co-mint aaas_token + BBS+ UIC envelope + optional vault file

Tags: attestation Operation ID: mintAttestWithUicBbsPlusVault Request body:

Content type: application/json

FieldTypeNotes

Responses:

StatusMeaning
201Token, envelope, secrets, optional vault claim

Full specification — verbatim source of truth

{
  "openapi": "3.1.0",
  "info": {
    "title": "Sovereign Agent BFF — UIC BBS+ & Information Vault",
    "version": "1.0.0",
    "description": "OpenAPI 3.1 fragment for Universal Identity BBS+ selective disclosure and information vault share routes (Waves 29–33). Canonical BFF :3030. Human-readable: docs/vault/VAULT_API_REFERENCE.md, docs/universal_identity/UIC_BBS_API_REFERENCE.md."
  },
  "servers": [
    {
      "url": "http://127.0.0.1:3030",
      "description": "Local dev (DEV_SKIP_AUTH=1)"
    }
  ],
  "tags": [
    {
      "name": "uic-bbs-plus",
      "description": "BLS12-381 BBS+ mint, present, verify"
    },
    {
      "name": "vault-bbs-plus",
      "description": "Information vault file, present, share, redeem"
    },
    {
      "name": "attestation",
      "description": "Attestation co-mint with UIC BBS+ vault"
    }
  ],
  "paths": {
    "/v1/identity/uic/mint-sealed/bbs-plus": {
      "post": {
        "tags": [
          "uic-bbs-plus"
        ],
        "summary": "Mint co-signed UIC envelope with BBS+ commitments",
        "operationId": "mintSealedBbsPlus",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/MintSealedBbsPlusRequest"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Minted envelope with optional vault filing",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MintSealedBbsPlusResponse"
                }
              }
            }
          }
        }
      }
    },
    "/v1/identity/uic/present/bbs-plus": {
      "post": {
        "tags": [
          "uic-bbs-plus"
        ],
        "summary": "Create BBS+ verifiable presentation",
        "operationId": "presentBbsPlus",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PresentBbsPlusRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Presentation compact token",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PresentBbsPlusResponse"
                }
              }
            }
          }
        }
      }
    },
    "/v1/identity/uic/verify-presentation/bbs-plus": {
      "post": {
        "tags": [
          "uic-bbs-plus"
        ],
        "summary": "Verify BBS+ presentation",
        "operationId": "verifyPresentationBbsPlus",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/VerifyPresentationBbsPlusRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Verification result",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/VerifyResult"
                }
              }
            }
          }
        }
      }
    },
    "/v1/vault/bbs-plus/file": {
      "post": {
        "tags": [
          "vault-bbs-plus"
        ],
        "summary": "File minted BBS+ envelope into vault",
        "operationId": "vaultBbsPlusFile",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/VaultFileRequest"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Vault claim created"
          }
        }
      }
    },
    "/v1/vault/bbs-plus/claims/{vaultId}/{vaultClaimId}": {
      "get": {
        "tags": [
          "vault-bbs-plus"
        ],
        "summary": "Load vault claim with BBS+ metadata",
        "operationId": "getVaultBbsPlusClaim",
        "parameters": [
          {
            "name": "vaultId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "vaultClaimId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Claim with envelope and attribute keys"
          }
        }
      }
    },
    "/v1/vault/bbs-plus/claims/{vaultId}/{vaultClaimId}/present": {
      "post": {
        "tags": [
          "vault-bbs-plus"
        ],
        "summary": "Build selective-disclosure presentation from vault claim",
        "operationId": "vaultBbsPlusPresent",
        "parameters": [
          {
            "name": "vaultId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "vaultClaimId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/VaultPresentRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Presentation compact"
          }
        }
      }
    },
    "/v1/vault/bbs-plus/shares": {
      "post": {
        "tags": [
          "vault-bbs-plus"
        ],
        "summary": "Create verifiable share with presentation",
        "operationId": "createVaultBbsPlusShare",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateShareRequest"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Share created"
          }
        }
      }
    },
    "/v1/vault/bbs-plus/shares/{shareId}": {
      "get": {
        "tags": [
          "vault-bbs-plus"
        ],
        "summary": "Load share metadata (no holder secrets)",
        "operationId": "getVaultBbsPlusShare",
        "parameters": [
          {
            "name": "shareId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Share metadata"
          }
        }
      }
    },
    "/v1/vault/bbs-plus/shares/{shareId}/verify": {
      "post": {
        "tags": [
          "vault-bbs-plus"
        ],
        "summary": "Verify share presentation without redeeming",
        "operationId": "verifyVaultBbsPlusShare",
        "parameters": [
          {
            "name": "shareId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Verification result"
          }
        }
      }
    },
    "/v1/vault/bbs-plus/shares/{shareId}/redeem": {
      "post": {
        "tags": [
          "vault-bbs-plus"
        ],
        "summary": "Redeem share and return disclosed attributes",
        "operationId": "redeemVaultBbsPlusShare",
        "parameters": [
          {
            "name": "shareId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "expected_audience": {
                    "type": "string"
                  },
                  "issuer_public_key_pem": {
                    "type": "string"
                  },
                  "subject_public_key_pem": {
                    "type": "string"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Redeemed disclosed attributes"
          }
        }
      }
    },
    "/v1/vault/bbs-plus/policies": {
      "get": {
        "tags": [
          "vault-bbs-plus"
        ],
        "summary": "List disclosure policy catalog",
        "operationId": "listVaultBbsPlusPolicies",
        "responses": {
          "200": {
            "description": "Policy names and descriptions"
          }
        }
      }
    },
    "/v1/vault/bbs-plus/secrets/backup": {
      "post": {
        "tags": [
          "vault-bbs-plus"
        ],
        "summary": "Export passphrase-encrypted holder secrets (transient)",
        "operationId": "backupBbsPlusSecrets",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "bbs_plus_secrets",
                  "passphrase"
                ],
                "properties": {
                  "bbs_plus_secrets": {
                    "type": "object"
                  },
                  "passphrase": {
                    "type": "string"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "backup_compact string"
          }
        }
      }
    },
    "/v1/vault/bbs-plus/secrets/restore": {
      "post": {
        "tags": [
          "vault-bbs-plus"
        ],
        "summary": "Restore holder secrets from backup compact",
        "operationId": "restoreBbsPlusSecrets",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "backup_compact",
                  "passphrase"
                ],
                "properties": {
                  "backup_compact": {
                    "type": "string"
                  },
                  "passphrase": {
                    "type": "string"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "bbs_plus_secrets object"
          }
        }
      }
    },
    "/v1/attest/tokens/mint-with-uic-bbs-plus-vault": {
      "post": {
        "tags": [
          "attestation"
        ],
        "summary": "Co-mint aaas_token + BBS+ UIC envelope + optional vault file",
        "operationId": "mintAttestWithUicBbsPlusVault",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/MintWithUicBbsPlusVaultRequest"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Token, envelope, secrets, optional vault claim",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MintWithUicBbsPlusVaultResponse"
                }
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "MintSealedBbsPlusRequest": {
        "type": "object",
        "required": [
          "issuer_id",
          "subject_id",
          "attributes"
        ],
        "properties": {
          "issuer_id": {
            "type": "string"
          },
          "subject_id": {
            "type": "string"
          },
          "attributes": {
            "type": "object",
            "additionalProperties": true
          },
          "security_profile": {
            "type": "string",
            "enum": [
              "basic",
              "secure"
            ]
          },
          "persist": {
            "type": "boolean"
          },
          "vault_id": {
            "type": "string"
          },
          "folder_id": {
            "type": "string"
          },
          "display_name": {
            "type": "string"
          },
          "file_to_vault": {
            "type": "boolean"
          },
          "tags": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "MintSealedBbsPlusResponse": {
        "type": "object",
        "properties": {
          "ok": {
            "type": "boolean"
          },
          "envelope": {
            "type": "object"
          },
          "bbs_plus_secrets": {
            "type": "object"
          },
          "verify": {
            "$ref": "#/components/schemas/VerifyResult"
          },
          "vault": {
            "type": "object",
            "properties": {
              "vault_claim_id": {
                "type": "string"
              },
              "uon": {
                "type": "string"
              },
              "envelope_id": {
                "type": "string"
              }
            }
          }
        }
      },
      "PresentBbsPlusRequest": {
        "type": "object",
        "required": [
          "envelope",
          "disclosed_keys",
          "bbs_plus_secrets"
        ],
        "properties": {
          "envelope": {
            "type": "object"
          },
          "disclosed_keys": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "bbs_plus_secrets": {
            "type": "object"
          },
          "audience": {
            "type": "string"
          },
          "nonce": {
            "type": "string"
          }
        }
      },
      "PresentBbsPlusResponse": {
        "type": "object",
        "properties": {
          "ok": {
            "type": "boolean"
          },
          "presentation_compact": {
            "type": "string"
          },
          "disclosed_keys": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "presentation": {
            "type": "object"
          }
        }
      },
      "VerifyPresentationBbsPlusRequest": {
        "type": "object",
        "properties": {
          "presentation": {
            "type": "object"
          },
          "presentation_compact": {
            "type": "string"
          },
          "issuer_public_key_pem": {
            "type": "string"
          },
          "subject_public_key_pem": {
            "type": "string"
          },
          "expected_audience": {
            "type": "string"
          },
          "expected_nonce": {
            "type": "string"
          },
          "check_revocation": {
            "type": "boolean"
          }
        }
      },
      "VerifyResult": {
        "type": "object",
        "properties": {
          "valid": {
            "type": "boolean"
          },
          "reason": {
            "type": "string"
          },
          "disclosed_keys": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "VaultFileRequest": {
        "type": "object",
        "required": [
          "envelope",
          "vault_id"
        ],
        "properties": {
          "envelope": {
            "type": "object"
          },
          "vault_id": {
            "type": "string"
          },
          "folder_id": {
            "type": "string"
          },
          "display_name": {
            "type": "string"
          },
          "tags": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "actor": {
            "type": "string"
          },
          "verify": {
            "type": "boolean"
          }
        }
      },
      "VaultPresentRequest": {
        "type": "object",
        "required": [
          "bbs_plus_secrets"
        ],
        "properties": {
          "bbs_plus_secrets": {
            "type": "object"
          },
          "disclosure_policy": {
            "type": "string",
            "enum": [
              "full",
              "read",
              "summary",
              "verdict_only",
              "custom"
            ]
          },
          "disclosed_keys": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "audience": {
            "type": "string"
          },
          "nonce": {
            "type": "string"
          },
          "attach_holder_signature": {
            "type": "boolean"
          }
        }
      },
      "CreateShareRequest": {
        "type": "object",
        "required": [
          "vault_id",
          "vault_claim_id",
          "grantee_email"
        ],
        "properties": {
          "vault_id": {
            "type": "string"
          },
          "vault_claim_id": {
            "type": "string"
          },
          "grantee_email": {
            "type": "string"
          },
          "disclosure_policy": {
            "type": "string"
          },
          "disclosed_keys": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "bbs_plus_secrets": {
            "type": "object"
          },
          "presentation_compact": {
            "type": "string"
          },
          "expires_at": {
            "type": "string",
            "format": "date-time"
          }
        }
      },
      "MintWithUicBbsPlusVaultRequest": {
        "type": "object",
        "required": [
          "issuer_id",
          "subject_id",
          "attributes"
        ],
        "properties": {
          "issuer_id": {
            "type": "string"
          },
          "subject_id": {
            "type": "string"
          },
          "attributes": {
            "type": "object",
            "additionalProperties": true
          },
          "security_profile": {
            "type": "string"
          },
          "capabilities": {
            "type": "array",
            "items": {
              "type": "object"
            }
          },
          "vault_id": {
            "type": "string"
          },
          "folder_id": {
            "type": "string"
          },
          "display_name": {
            "type": "string"
          },
          "tags": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "MintWithUicBbsPlusVaultResponse": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "token_id": {
                "type": "string"
              },
              "envelope_id": {
                "type": "string"
              },
              "envelope": {
                "type": "object"
              },
              "bbs_plus_secrets": {
                "type": "object"
              },
              "vault": {
                "type": "object"
              },
              "verify": {
                "$ref": "#/components/schemas/VerifyResult"
              }
            }
          },
          "capability": {
            "type": "string",
            "example": "token_mint_with_uic_bbs_plus_vault"
          }
        }
      }
    }
  }
}