cURL
curl --request POST \ --url https://api.digitalreceiptprotocol.org/api/v1/keys/grant-access \ --header 'Content-Type: application/json' \ --data ' { "userId": "550e8400-e29b-41d4-a716-446655440001", "keyId": "550e8400-e29b-41d4-a716-446655440000" } '
{ "success": true, "data": { "tokenId": "550e8400-e29b-41d4-a716-446655440002", "userId": "550e8400-e29b-41d4-a716-446655440001", "keyId": "550e8400-e29b-41d4-a716-446655440000", "purpose": "decrypt", "grantedAt": "2025-12-15T12:00:00Z", "expiresAt": "2025-12-15T12:03:00Z", "sourceIp": "192.168.1.1" } }
Issue a short-lived access token (2-3 minutes) for receipt decryption. The source IP is logged for audit purposes. Maximum 5 active tokens per user.
User ID requesting access
"550e8400-e29b-41d4-a716-446655440001"
Key ID to grant access for
"550e8400-e29b-41d4-a716-446655440000"
Access granted successfully
true
Show child attributes
Access token ID
"550e8400-e29b-41d4-a716-446655440002"
decrypt
sign
"decrypt"
"2025-12-15T12:00:00Z"
Token expires in 2-3 minutes (180 seconds)
"2025-12-15T12:03:00Z"
IP address of the requester (for audit)
"192.168.1.1"