Protección

Create a consent request

Starts a consent authorisation. Protección pushes the request and returns an opaque `request_uri` plus the `authorization_url` to redirect the customer to. The consent becomes `active` once the customer approves.

POST
/consents

Starts a consent authorisation. Protección pushes the request and returns an opaque request_uri plus the authorization_url to redirect the customer to. The consent becomes active once the customer approves.

Authorization

bearerAuth
AuthorizationBearer <token>

A sender-constrained access token from the token endpoint, presented over mutual TLS with the bound client certificate.

In: header

Request Body

application/json

scopesarray<Scope>required

The scopes to request. The customer approves exactly these.

Consent lifetime in seconds. Omit or use 0 for a single-use consent.

redirect_uristringrequired

Where the customer is returned after consenting. Must be pre-registered.

Formaturi

Optional identifier for the customer in your system.

Response Body

application/json

application/json

curl -X POST "https://example.com/consents" \  -H "Content-Type: application/json" \  -d '{    "scopes": [      "openid",      "bank:accounts.basic:read",      "bank:transactions:read"    ],    "sharing_duration": 7776000,    "redirect_uri": "https://app.example.com/callback",    "customer_id": "cust_31ab"  }'
{  "consent_id": "cnst_8H2kQ9",  "status": "created",  "request_uri": "urn:proteccion:par:9f2b1c7a4e8d",  "authorization_url": "https://public.proteccion.prod.provider.fiskil.com/connect/authorize?client_id=your-client-id&request_uri=urn:proteccion:par:9f2b1c7a4e8d",  "expires_in": 90}
{  "code": "string",  "message": "string"}