Taifa Identity. Docs
OpenAPI
Developers

API reference

Propose the exact live Portal presentation client

Management API contract View .md

POST/v1/projects/{project_id}/presentation-client-proposals

Authentication Bearer access token with audience taifa-management. Roles and local eligibility are reviewed separately from the OpenAPI bearer scheme.

Parameters

NameInTypeRequiredDescription
project_idpathstringYes
idempotency-keyheaderstringYes

Request body

application/jsonRequiredClientProposal

FieldTypeRequiredDescription
reasonstringYesValidation: min length 8; max length 500
target_issuerstringYesValidation: min length 1; max length 2048
client_idstringYesValidation: min length 1; max length 128
client_versionintegerYesValidation: minimum 1; maximum 9223372036854775807
display_namestringYesValidation: min length 3; max length 120
catalog_idstringYesValidation: min length 1; max length 200
credential_preparation_idstringYesCanonical preparation UUID from controlled credential delivery. Management verifies fresh private issuer readback; browser proof is reference metadata only. Validation: min length 36; max length 36
permission_idsstring[]YesValidation: min items 1; max items 32
registrationRegistrationProposalYes

Responses

201Successful Response

Content type: application/jsonUnspecified response schema

No fields declared in the current specification.

Other responses

StatusDescriptionSchema
403Current project authority or independent review required
409Current exact proposal, catalog, version or idempotency conflict
413Exact JSON request exceeds 64 KiB
422Invalid exact reviewed policy or registration
503Configured owned issuer authority unavailable

Request example

Illustrative only. TypeScript runs in Node.js on the server. Keep management tokens out of browser bundles. Replace the host, token, path values, and any header or required body placeholders before use. Examples do not send requests.

Shell
curl -X POST 'https://YOUR_IDENTITY_HOST/v1/projects/REPLACE_WITH_PROJECT_ID/presentation-client-proposals' \
  -H 'Authorization: Bearer YOUR_ACCESS_TOKEN' \
  -H 'idempotency-key: REPLACE_WITH_IDEMPOTENCY_KEY' \
  -H 'Content-Type: application/json' \
  --data '{
  "catalog_id": "00000000-0000-4000-8000-000000000001",
  "client_id": "case-app-test",
  "client_version": 1,
  "credential_preparation_id": "00000000-0000-4000-8000-000000000002",
  "display_name": "Case application test",
  "permission_ids": [
    "case.read"
  ],
  "reason": "Review an owned case application registration",
  "registration": {
    "enabled": true,
    "management_access": false,
    "post_logout_redirect_uris": [
      "https://case.example.test/signed-out"
    ],
    "redirect_uris": [
      "https://case.example.test/callback"
    ],
    "refresh_allowed": false,
    "resource_audiences": [
      "case-api-test"
    ],
    "secret_hash_fingerprint": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
  },
  "target_issuer": "https://owned-issuer.example.test"
}'

Response example

No response example in the current specification.

Popular

Browse by section