Every API here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for apis
7 MCP tools reach this
find_apisBrowse and filter every API in the catalog.
get_api_artifactsOne API's artifacts, grouped by type.
get_openapiThe primary OpenAPI for this API.
find_similar_apisAPIs that look like this one.
apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
resolveTurn a domain, URL or GitHub org into the provider it belongs to.
find_cohortsEvery scored population of providers in the catalog.
All 92 tools →
Call it yourself
curl for this page
This API
curl "https://apis.io/api/v1/apis/retail-dynamic-client-registration"
All apis
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we
store it to create your key and to recognise you if you sign in with another
provider. See our Privacy Policy and
Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.1.0
info:
version: '1.3.0'
# build: '0'
title: Data Recipient Registration
description: Truist Financial, following FDX V5.4.1 Recipient API
contact:
name: Truist API Support
url: 'https://developer.truist.com/contact-us'
servers:
- url: 'https://api-sandbox.truist.com/retail'
description: Truist Financial Retail Open Banking APIs - Sandbox environment
- url: 'https://apicert-secure.truist.com/retail'
description: Truist Financial Retail Open Banking APIs - Certification environment
- url: 'https://api-secure.truist.com/retail'
description: Truist Financial Retail Open Banking APIs - Production environment
tags:
- name: Recipients
description: Manage recipients
security:
- BasicAuth: []
paths:
############################################################
#
# Recipient Registration paths
#
############################################################
/v1/register:
parameters:
- $ref: '#/components/parameters/FapiInteractionIdHeader'
post:
summary: Recipient Registration Request
description: Request to Register Recipient by Creating a Recipient Record
operationId: createRecipient
tags:
- Recipients
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/RecipientRequest'
examples:
Create Recipient Record at Provider:
value:
client_name: My Example Client
description: Recipient application for specified financial use case
redirect_uris:
- https://partner.example.net/callback
logo_uri: https://client.example.org/logo.png
auto_connect: true
client_uri: https://example.net/
contacts:
- support@example.net
- https://example.net/contact-us
scope: ACCOUNT_DETAILED TRANSACTIONS
duration_type:
- TIME_BOUND
duration_period: 365
lookback_period: 180
intermediaries:
- name: Data Access Platform Name
description: Company servicing permissioned financial data sharing
uri: https://partner.example/
logo_uri: https://partner.example/logo.png
contacts:
- support@dap-partner.com
- https://dap-partner.com/contact-us
- name: Digital Service Provider Name
description: Digital Service Provider to the Recipient
uri: https://sub-partner-one.example/
logo_uri: https://sub-partner-one.example/logo.png
contacts:
- support@sub-partner-one.com
- https://sub-partner-one.com/contact-us
responses:
'201':
description: Created
headers:
x-fapi-interaction-id:
$ref: '#/components/headers/x-fapi-interaction-id'
content:
text/plain:
schema:
type: string
examples:
Provider Response With Full Record Of Recipient:
value:
eyJhbGciOiJSUzI1NiIsImtpZCI6IjFlOWdkazcifQ.ewogImlzcyI6ICJodHRwOi8vc2VydmVyLmV4YW1wbGUuY29tIiwKICJzdWIiOiAiMjQ4Mjg5NzYxMDAxIiwKICJhdWQiOiAiczZCaGRSa3F0MyIsCiAibm9uY2UiOiAibi0wUzZfV3pBMk1qIiwKICJleHAiOiAxMzExMjgxOTcwLAogImlhdCI6IDEzMTEyODA5NzAKfQ.ggW8hZ1EuVLuxNuuIJKX_V8a_OMXzR0EHR9R6jgdqrOOF4daGU96Sr_P6qJp6IcmD3HP99Obi1PRs-cwh3LO-p146waJ8IhehcwL7F09JdijmBqkvPeB2T9CJNqeGpe-gccMg4vfKjkM8FcGvnzZUN4_KSP0aAp1tOJ1zZwgjxqGByKHiOtX7TpdQyHE5lcMiKPXfEIQILVq0pc_E2DzL7emopWoaoZTF_m0_N0YzFC6g6EJbOEoRoSK5hoDalrcvRYLSrQAZZKflyuVCyixEoV9GfNQC3_osjzw2PAithfubEEBLuVVk4XUVrWOLrLl0nx7RkKU8NXNHq-rvKMzqg
'202':
description: Accepted
headers:
x-fapi-interaction-id:
$ref: '#/components/headers/x-fapi-interaction-id'
content:
text/plain:
schema:
type: string
examples:
Accepted DR registration still pending its Payment Networks setup:
value:
eyJhbGciOiJSUzI1NiIsImtpZCI6IjFlOWdkazcifQ.ewogImlzcyI6ICJodHRwOi8vc2VydmVyLmV4YW1wbGUuY29tIiwKICJzdWIiOiAiMjQ4Mjg5NzYxMDAxIiwKICJhdWQiOiAiczZCaGRSa3F0MyIsCiAibm9uY2UiOiAibi0wUzZfV3pBMk1qIiwKICJleHAiOiAxMzExMjgxOTcwLAogImlhdCI6IDEzMTEyODA5NzAKfQ.ggW8hZ1EuVLuxNuuIJKX_V8a_OMXzR0EHR9R6jgdqrOOF4daGU96Sr_P6qJp6IcmD3HP99Obi1PRs-cwh3LO-p146waJ8IhehcwL7F09JdijmBqkvPeB2T9CJNqeGpe-gccMg4vfKjkM8FcGvnzZUN4_KSP0aAp1tOJ1zZwgjxqGByKHiOtX7TpdQyHE5lcMiKPXfEIQILVq0pc_E2DzL7emopWoaoZTF_m0_N0YzFC6g6EJbOEoRoSK5hoDalrcvRYLSrQAZZKflyuVCyixEoV9GfNQC3_osjzw2PAithfubEEBLuVVk4XUVrWOLrLl0nx7RkKU8NXNHq-rvKMzqg
Accepted DR registration still pending authorization server setup:
value:
eyJhbGciOiJSUzI1NiIsImtpZCI6IjFlOWdkazcifQ.ewogImlzcyI6ICJodHRwOi8vc2VydmVyLmV4YW1wbGUuY29tIiwKICJzdWIiOiAiMjQ4Mjg5NzYxMDAxIiwKICJhdWQiOiAiczZCaGRSa3F0MyIsCiAibm9uY2UiOiAibi0wUzZfV3pBMk1qIiwKICJleHAiOiAxMzExMjgxOTcwLAogImlhdCI6IDEzMTEyODA5NzAKfQ.ggW8hZ1EuVLuxNuuIJKX_V8a_OMXzR0EHR9R6jgdqrOOF4daGU96Sr_P6qJp6IcmD3HP99Obi1PRs-cwh3LO-p146waJ8IhehcwL7F09JdijmBqkvPeB2T9CJNqeGpe-gccMg4vfKjkM8FcGvnzZUN4_KSP0aAp1tOJ1zZwgjxqGByKHiOtX7TpdQyHE5lcMiKPXfEIQILVq0pc_E2DzL7emopWoaoZTF_m0_N0YzFC6g6EJbOEoRoSK5hoDalrcvRYLSrQAZZKflyuVCyixEoV9GfNQC3_osjzw2PAithfubEEBLuVVk4XUVrWOLrLl0nx7RkKU8NXNHq-rvKMzqg
'400':
description: Bad Request
headers:
x-fapi-interaction-id:
$ref: '#/components/headers/x-fapi-interaction-id'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
examples:
MISSING_REQUIRED_PARAMETER:
value:
code: '401'
message: Following required parameters are missing - {client_name,
redirect_uris, client_uri, contacts, scope, duration_type,
intermediary name, intermediary uri, intermediary contacts}
INVALID_CLIENT_METADATA:
value:
code: '401'
message: Following request fields have invalid values - {redirect_uris, logo_uri,
client_uri, auto_connect, contacts, scope, duration_type, duration_period,
lookback_period, intermediary uri, intermediary logo_uri, contacts}
OUT_OF_CONTRACT_METADATA:
value:
code: '401'
message: Following request fields have out of contract metadata - {scope,
duration_type, duration_period, lookback_period}
'401':
$ref: '#/components/responses/401'
'403':
$ref: '#/components/responses/403'
'404':
$ref: '#/components/responses/404'
'405':
$ref: '#/components/responses/405'
'409':
$ref: '#/components/responses/409'
'429':
$ref: '#/components/responses/429'
'500':
$ref: '#/components/responses/500'
'503':
$ref: '#/components/responses/503'
'504':
$ref: '#/components/responses/504'
/v1/register/{clientId}:
parameters:
- $ref: '#/components/parameters/ClientIdPath'
- $ref: '#/components/parameters/FapiInteractionIdHeader'
get:
summary: Get Recipient
operationId: getRecipient
tags:
- Recipients
description: Get a specific recipient data identified with clientId
responses:
'200':
description: OK
headers:
x-fapi-interaction-id:
$ref: '#/components/headers/x-fapi-interaction-id'
content:
text/plain:
schema:
type: string
examples:
Provider Response With Full Record Of Recipient:
value:
eyJhbGciOiJSUzI1NiIsImtpZCI6IjFlOWdkazcifQ.ewogImlzcyI6ICJodHRwOi8vc2VydmVyLmV4YW1wbGUuY29tIiwKICJzdWIiOiAiMjQ4Mjg5NzYxMDAxIiwKICJhdWQiOiAiczZCaGRSa3F0MyIsCiAibm9uY2UiOiAibi0wUzZfV3pBMk1qIiwKICJleHAiOiAxMzExMjgxOTcwLAogImlhdCI6IDEzMTEyODA5NzAKfQ.ggW8hZ1EuVLuxNuuIJKX_V8a_OMXzR0EHR9R6jgdqrOOF4daGU96Sr_P6qJp6IcmD3HP99Obi1PRs-cwh3LO-p146waJ8IhehcwL7F09JdijmBqkvPeB2T9CJNqeGpe-gccMg4vfKjkM8FcGvnzZUN4_KSP0aAp1tOJ1zZwgjxqGByKHiOtX7TpdQyHE5lcMiKPXfEIQILVq0pc_E2DzL7emopWoaoZTF_m0_N0YzFC6g6EJbOEoRoSK5hoDalrcvRYLSrQAZZKflyuVCyixEoV9GfNQC3_osjzw2PAithfubEEBLuVVk4XUVrWOLrLl0nx7RkKU8NXNHq-rvKMzqg
'401':
$ref: '#/components/responses/401'
'403':
$ref: '#/components/responses/403'
'404':
$ref: '#/components/responses/404'
'405':
$ref: '#/components/responses/405'
'429':
$ref: '#/components/responses/429'
'500':
$ref: '#/components/responses/500'
'503':
$ref: '#/components/responses/503'
'504':
$ref: '#/components/responses/504'
put:
summary: Update a Recipient
operationId: updateRecipient
tags:
- Recipients
description: Update data for a specific recipient identified with clientId
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/RecipientRequest'
responses:
'200':
description: OK
headers:
x-fapi-interaction-id:
$ref: '#/components/headers/x-fapi-interaction-id'
content:
text/plain:
schema:
type: string
examples:
Updated Provider Response With Full Record Of Recipient:
value:
eyJhbGciOiJSUzI1NiIsImtpZCI6IjFlOWdkazcifQ.ewogImlzcyI6ICJodHRwOi8vc2VydmVyLmV4YW1wbGUuY29tIiwKICJzdWIiOiAiMjQ4Mjg5NzYxMDAxIiwKICJhdWQiOiAiczZCaGRSa3F0MyIsCiAibm9uY2UiOiAibi0wUzZfV3pBMk1qIiwKICJleHAiOiAxMzExMjgxOTcwLAogImlhdCI6IDEzMTEyODA5NzAKfQ.ggW8hZ1EuVLuxNuuIJKX_V8a_OMXzR0EHR9R6jgdqrOOF4daGU96Sr_P6qJp6IcmD3HP99Obi1PRs-cwh3LO-p146waJ8IhehcwL7F09JdijmBqkvPeB2T9CJNqeGpe-gccMg4vfKjkM8FcGvnzZUN4_KSP0aAp1tOJ1zZwgjxqGByKHiOtX7TpdQyHE5lcMiKPXfEIQILVq0pc_E2DzL7emopWoaoZTF_m0_N0YzFC6g6EJbOEoRoSK5hoDalrcvRYLSrQAZZKflyuVCyixEoV9GfNQC3_osjzw2PAithfubEEBLuVVk4XUVrWOLrLl0nx7RkKU8NXNHq-rvKMzqg
'400':
description: Bad Request
headers:
x-fapi-interaction-id:
$ref: '#/components/headers/x-fapi-interaction-id'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
examples:
MISSING_REQUIRED_PARAMETER:
value:
code: '401'
message: Following required parameters are missing - {client_name,
redirect_uris, client_uri, contacts, scope, duration_type,
intermediary name, intermediary uri, intermediary contacts}
INVALID_CLIENT_METADATA:
value:
code: '401'
message: Following request fields have invalid values - {redirect_uris, logo_uri,
client_uri, auto_connect, contacts, scope, duration_type, duration_period,
lookback_period, intermediary uri, intermediary logo_uri, contacts}
OUT_OF_CONTRACT_METADATA:
value:
code: '401'
message: Following request fields have out of contract metadata - {scope,
duration_type, duration_period, lookback_period}
UPDATE_NOT_YET_IMPLEMENTED:
value:
code: '401'
message: Following requested field updates are not yet supported
by Truist - {client_name, auto_connect, duration_type, duration_period}
'401':
$ref: '#/components/responses/401'
'403':
$ref: '#/components/responses/403'
'404':
$ref: '#/components/responses/404'
'405':
$ref: '#/components/responses/405'
'409':
$ref: '#/components/responses/409'
'429':
$ref: '#/components/responses/429'
'500':
$ref: '#/components/responses/500'
'503':
$ref: '#/components/responses/503'
'504':
$ref: '#/components/responses/504'
delete:
summary: Delete Recipient
operationId: deleteRecipient
tags:
- Recipients
description: Delete data for a specific recipient identified with clientId
responses:
'204':
description: No Content
headers:
x-fapi-interaction-id:
$ref: '#/components/headers/x-fapi-interaction-id'
'401':
$ref: '#/components/responses/401'
'403':
$ref: '#/components/responses/403'
'404':
$ref: '#/components/responses/404'
'405':
$ref: '#/components/responses/405'
'429':
$ref: '#/components/responses/429'
'500':
$ref: '#/components/responses/500'
'503':
$ref: '#/components/responses/503'
'504':
$ref: '#/components/responses/504'
components:
securitySchemes:
BasicAuth:
type: http
scheme: basic
description: Base64(client_id:client_secret)
parameters:
############################################################
#
# Recipient Registration request parameters
#
############################################################
ClientIdPath:
name: clientId
in: path
description: Client Identifier. Uniquely identifies a Client
required: true
schema:
$ref: '#/components/schemas/Identifier'
example: 'uYrD4LD7P9948lzy3UCPHLWljGqcRWx06Tn'
FapiInteractionIdHeader:
name: x-fapi-interaction-id
in: header
description: Unique request identifier
schema:
$ref: '#/components/schemas/FapiInteractionId'
required: true
example: c770aef3-6784-41f7-8e0e-ff5f97bddb3a
headers:
############################################################
#
# Standard response headers
#
############################################################
x-fapi-interaction-id:
description: Unique request identifier
schema:
$ref: '#/components/schemas/FapiInteractionId'
required: true
example: c770aef3-6784-41f7-8e0e-ff5f97bddb3a
examples:
############################################################
#
# Examples of decrypted responses
#
############################################################
Provider-Response-With-Full-Record-Of-Recipient:
description: >-
Completed recipient creation will return the submitted request attribute
values plus new client_id and client_secret with status APPROVED
value:
client_name: My Example Client
description: Recipient Application servicing financial use case requiring permissioned data sharing
redirect_uris:
- 'https://partner.example.net/callback-one'
- 'https://partner.example.net/callback-two'
logo_uri: 'https://client.example.org/logo.png'
auto_connect: true
client_uri: 'https://example.net/'
contacts:
- support@example.net
- 'https://example.net/contact-us'
scope: ACCOUNT_DETAILED TRANSACTIONS INVESTMENTS
duration_type:
- TIME_BOUND
duration_period: 365
lookback_period: 180
intermediaries:
- name: Data Access Platform Name
description: Data Access Platform specializing in servicing permissioned data sharing for Data Recipients
uri: 'https://partner.example/'
logo_uri: 'https://partner.example/logo.png'
contacts:
- support@dap-partner.com
- 'https://dap-partner.com/contact-us'
- name: Digital Service Provider Name
description: Digital Service Provider to the Recipient
uri: 'https://sub-partner-one.example/'
logo_uri: 'https://sub-partner-one.example/logo.png'
contacts:
- support@sub-partner-one.com
- 'https://sub-partner-one.com/contact-us'
client_id: V8tvEkZWhDAdxSaKGUJZ
client_secret: SpsuwZIxnp8bBEhp5sk1EKiIKTZ4X4DKU
status: APPROVED
Accepted-DR-registration-still-pending-its-Payment-Networks-setup:
description: >-
Recipient created and can begin creating customer consents
but is not yet available for Tokenized Account Numbers.
Response will return the submitted request attribute values plus
new client_id and client_secret with status PAYMENT_SUPPORT_ERROR
value:
client_name: My Example Client
description: Recipient Application servicing financial use case requiring permissioned data sharing
redirect_uris:
- 'https://partner.example.net/callback-one'
- 'https://partner.example.net/callback-two'
logo_uri: 'https://client.example.org/logo.png'
auto_connect: true
client_uri: 'https://example.net/'
contacts:
- support@example.net
- 'https://example.net/contact-us'
scope: ACCOUNT_DETAILED TRANSACTIONS INVESTMENTS PAYMENT_SUPPORT
duration_type:
- TIME_BOUND
duration_period: 365
lookback_period: 180
intermediaries:
- name: Data Access Platform Name
description: Data Access Platform specializing in servicing permissioned data sharing for Data Recipients
uri: 'https://partner.example/'
logo_uri: 'https://partner.example/logo.png'
contacts:
- support@dap-partner.com
- 'https://dap-partner.com/contact-us'
- name: Digital Service Provider Name
description: Digital Service Provider to the Recipient
uri: 'https://sub-partner-one.example/'
logo_uri: 'https://sub-partner-one.example/logo.png'
contacts:
- support@sub-partner-one.com
- 'https://sub-partner-one.com/contact-us'
client_id: V8tvEkZWhDAdxSaKGUJZ
client_secret: SpsuwZIxnp8bBEhp5sk1EKiIKTZ4X4DKU
status: PAYMENT_SUPPORT_ERROR
Accepted-DR-registration-still-pending-authorization-server-setup:
description: >-
Recipient created but is not yet available for customer consents,
response will return the submitted request attribute values plus
new client_id and client_secret with status PENDING
value:
client_name: My Example Client
description: Recipient Application servicing financial use case requiring permissioned data sharing
redirect_uris:
- 'https://partner.example.net/callback-one'
- 'https://partner.example.net/callback-two'
logo_uri: 'https://client.example.org/logo.png'
auto_connect: true
client_uri: 'https://example.net/'
contacts:
- support@example.net
- 'https://example.net/contact-us'
scope: ACCOUNT_DETAILED TRANSACTIONS INVESTMENTS PAYMENT_SUPPORT
duration_type:
- TIME_BOUND
duration_period: 365
lookback_period: 180
intermediaries:
- name: Data Access Platform Name
description: Data Access Platform specializing in servicing permissioned data sharing for Data Recipients
uri: 'https://partner.example/'
logo_uri: 'https://partner.example/logo.png'
contacts:
- support@dap-partner.com
- 'https://dap-partner.com/contact-us'
- name: Digital Service Provider Name
description: Digital Service Provider to the Recipient
uri: 'https://sub-partner-one.example/'
logo_uri: 'https://sub-partner-one.example/logo.png'
contacts:
- support@sub-partner-one.com
- 'https://sub-partner-one.com/contact-us'
client_id: V8tvEkZWhDAdxSaKGUJZ
client_secret: SpsuwZIxnp8bBEhp5sk1EKiIKTZ4X4DKU
status: PENDING
schemas:
############################################################
#
# Recipient Registration data entities
#
############################################################
Recipient:
title: Recipient Provider
type: object
description: Record of Recipient at the Provider in snake case to match IETF RFC 7591 naming formats
allOf:
- $ref: '#/components/schemas/RecipientRequest'
- type: object
properties:
client_id:
type: string
description: OAuth 2.0 client identifier. Unique ID representing Data Recipient and Identity Chain combination
client_secret:
type: string
description: OAuth 2.0 client secret string
status:
$ref: '#/components/schemas/RecipientStatus'
description: Status of Recipient creation through dynamic client registration per
FDX RFC 0117 and FDX Recipient Registration Guidelines document
required:
- client_id
- status
############################################################
#
# Shared data entities (usable by core and all extensions)
#
############################################################
Intermediary:
title: Intermediary
description: >-
Data Access Platform, Service Provider, or any other entity in
the data sharing chain between a Data Provider to a Data Recipient.
In snake case to match IETF RFC 7591 naming formats
type: object
properties:
name:
type: string
description: Name of intermediary party
description:
type: string
description: A short description of the intermediary
uri:
type: string
format: uri
description: A URL string of a web page providing information about the intermediary
logo_uri:
type: string
format: uri
description: A URL string that references a logo for this intermediary
contacts:
type: array
items:
type: string
description: Array of strings representing ways to contact people responsible for this intermediary
required:
- name
- uri
- contacts
RecipientRequest:
title: Recipient Request
type: object
description: Used to request a recipient registration.
In snake case to match IETF RFC 7591 naming formats
properties:
client_name:
$ref: '#/components/schemas/Identifier'
description: >-
The Data Recipient or Data Recipient Application name displayed by Data Provider during
the consent Flow as well as in the Consent Dashboard.
Must be unique from all previously registered client names.
Truist allows alphanumeric, spaces and these special characters: underscore (_), hyphen (-),
period (.), pound sign (#), dollar sign ($), percent (%), ampersand (&) and comma (,).
Prior name value must be sent in Truist PUT /register/{id} update call,
even though functionality to permit update of name field is still being built.
description:
type: string
description: A short description of the Data Recipient application.
If not sent in an update request the prior value will be cleared
redirect_uris:
type: array
items:
type: string
description: An array of eligible Redirect URI targets
logo_uri:
type: string
description: Data Recipient Logo URL location.
If not sent in an update request the prior value will be cleared
format: uri
auto_connect:
type: boolean
description: Flag which provides information whether Data Recipient customers can auto-connect new accounts.
Prior auto_connect value, if true, must be sent in Truist PUT /register/{id} update call,
even though functionality to permit update of auto_connect field is still being built
client_uri:
type: string
description: The URI which provides additional information about the Data Recipient
format: uri
contacts:
type: array
items:
type: string
description: Array of strings representing ways to contact individuals responsible for the Data Recipient application
scope:
type: string
description: String form field with a list of data clusters.
Prior or updated scope value must be sent in Truist PUT /register/{id} update call,
Data Recipient scope will be set to the value in PUT request
duration_type:
type: array
items:
$ref: '#/components/schemas/ConsentDurationType'
description: The type of consent duration for the Data Recipient consumers.
Only value of duration_type which Truist currently supports and accepts is ['TIME_BOUND']
duration_period:
type: number
description: The maximum consent duration in days that can be requested for a Recipient consumer.
Maximum value is 365. Prior duration_period value must be sent in Truist PUT /register/{id} update call,
even though functionality to permit update of duration_period field is still being built
lookback_period:
type: number
description: >-
The maximum number of days allowed for Data Recipient consumers to obtain in transaction history,
effective from the current date.
If not sent in an update request the prior value will be left unchanged
intermediaries:
type: array
items:
$ref: '#/components/schemas/Intermediary'
description: An array of the intermediaries for this data recipient.
If not sent in an update request the prior values will be cleared
required:
- client_name
- redirect_uris
- client_uri
- contacts
- scope
- duration_type
############################################################
#
# Shared data types (usable by core and all extensions)
#
############################################################
ConsentDurationType:
title: Consent Duration Type
description: Duration of the Consent Grant, per FDX UX Guidelines v1.0 (pp 18 - 20)
type: string
enum:
- TIME_BOUND
RecipientStatus:
title: Status
description: Status of Recipient creation through dynamic client registration per
FDX RFC 0117 and FDX Recipient Registration Guidelines document
type: string
enum:
- APPROVED
- PAYMENT_SUPPORT_ERROR
- PENDING
- SUSPENDED
- TERMINATED
Error:
title: Error
description: >-
An error entity which can be used at the API level for error responses
or at the account level to indicate a problem specific to a particular
account
type: object
properties:
code:
type: string
description: >-
Error code defined by FDX API Specification or Data Provider
indicating the error situation which has occurred
message:
type: string
description: >-
End user displayable information which might help the customer
diagnose an error
Identifier:
title: Identifier
description: Value for a unique identifier
type: string
maxLength: 256
FapiInteractionId:
title: FAPI Interaction ID
description: >-
Universally unique identifier for this interaction,
used across all FDX API requests and responses
type: string
format: uuid
minLength: 36
maxLength: 36
example: c770aef3-6784-41f7-8e0e-ff5f97bddb3a
responses:
############################################################
#
# Standard error responses
#
############################################################
'401':
description: Unauthorized
headers:
x-fapi-interaction-id:
$ref: '#/components/headers/x-fapi-interaction-id'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
examples:
INVALID_BASICAUTHENTICATION_SOURCE:
value:
code: '603'
message: Authentication failed
'403':
description: Forbidden
headers:
x-fapi-interaction-id:
$ref: '#/components/headers/x-fapi-interaction-id'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
examples:
NO_APIPRODUCT_MATCHFOUND:
value:
code: '403'
message: Forbidden, inadequate authorization
'404':
description: Not Found
headers:
x-fapi-interaction-id:
$ref: '#/components/headers/x-fapi-interaction-id'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
examples:
RESOURCE_NOT_FOUND:
value:
code: '1107-1206'
message: URI does not represent a recognized resource
'405':
description: Client called an unimplemented REST method
headers:
x-fapi-interaction-id:
$ref: '#/components/headers/x-fapi-interaction-id'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
examples:
INVALID_METHOD:
value:
code: '1206'
message: Method Not Allowed
'409':
description: Conflict
headers:
x-fapi-interaction-id:
$ref: '#/components/headers/x-fapi-interaction-id'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
examples:
DUPLICATE_CLIENT:
value:
code: '409'
message: Duplicate Client Name request
'429':
description: Too Many Requests
headers:
x-fapi-interaction-id:
$ref: '#/components/headers/x-fapi-interaction-id'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
examples:
SPIKE_ARREST_VIOLATION:
value:
code: '1207'
message: Traffic spike, too many requests
QUOTA_VIOLATION:
value:
code: '1207'
message: Quota violation, too many requests
'500':
description: Internal Server Error
headers:
x-fapi-interaction-id:
$ref: '#/components/headers/x-fapi-interaction-id'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
examples:
INTERNAL_SERVER_ERROR:
value:
code: '500'
message: System down for maintenance
'503':
description: Service unavailable / system down for maintenance
headers:
x-fapi-interaction-id:
$ref: '#/components/headers/x-fapi-interaction-id'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
examples:
SERVICE_UNAVAILABLE:
value:
code: '503'
message: Scheduled Maintenance
'504':
description: Service Timed out
headers:
x-fapi-interaction-id:
$ref: '#/components/headers/x-fapi-interact
# --- truncated at 32 KB (32 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/bbandt-corp/refs/heads/main/openapi/bbandt-corp-retail-register-recipient-openapi.yml