Clean and initialize sandbox with default values
POST/v1/sandbox/initialize
This operation will initialize Sandbox with a standard collection of customers and accounts. All Sandbox data will be reset. This also includes customers and accounts created manually using the other Mock Data APIs. It will create a starting point for working with the Sandbox as follows
- Private customers with 2 accounts and a card account
- Private Customer 1 SSN: 13039319955
- Private Customer 2 SSN: 12085592767
- Corporate customer with 2 accounts
- Corporate Customer 1 SSN: 18129215603
- Corporate Customer 2 SSN: 20079518612
These customers can then be accessed using GET /v1/sandbox/customers to perform further operations on their agreements. This can be used instead of or in combination with the other mock data operations that create or update individual resources. Once the initialized the Sandbox resources are operated on using the full set of Berlin Group API implementations.
Request
Header Parameters
- keyId must be formatted as
keyId="SN=XXX,CA=YYY"
whereXXX
is the serial number of the signing certificate in hexadecimal encoding andYYY
is the full Distinguished Name of the Certificate Authority having certificate - algorithm must identify the same algorithm for the signature as presented in the signing certificate and should be
rsa-sha256
- headers must contain
date
,digest
,x-request-id
,psu-id
,psu-corporate-id
, andtpp-redirect-uri
when available - signature must be computed as
Base64(RSA-SHA256(signingString))
Advertises what type of data is actually sent.
Advertises which content types, expressed as MIME types, the client is able to understand. Using content negotiation, the server then selects one of the proposals, uses it and informs the client of its choice with the Content-Type response header.
Advertises which character set the client is able to understand. Using content negotiation, the server then selects one of the proposals, uses it and informs the client of its choice within the Content-Type response header.
Advertises which content encoding, usually a compression algorithm, the client is able to understand. Using content negotiation, the server selects one of the proposals, uses it and informs the client of its choice with the Content-Encoding response header.
Advertises which natural languages the client is able to understand, and which locale variant is preferred. Using content negotiation, the server then selects one of the proposals, uses it and informs the client of its choice with the Content-Language response header.
The domain name of the server (for virtual hosting), and (optionally) the TCP port number on which the server is listening.
Request identifier, unique to the call, as determined by the TPP.
The certificate used for signing the request in base64 encoding.
HTTP Message Signature as specified by https://tools.ietf.org/html/draft-cavage-http-signatures-10 with requirements imposed by Berlin Group's NextGenPSD2 Framework.
If any values in the Signature header is ISO-8859-1 or UTF-8 encoded you need to URL encode the Signature header according to RFC 2047 which means MIME encoding the signature.
Also the signature must be wrapped using this format: =?charset?encoding?encoded signature?=
Example of this encoding: =?utf-8?B?a2V5QTQsQ0E9Mi41LjQuOTc9IzB........jMTM1MDUzNDQ0ZTRmMmQ0NjUz?=
Java example of how to implement encoding:
if (charset.equals(StandardCharsets.UTF_8)) {
Signature = String.format("=?utf-8?B?%s?=", Base64.getEncoder().encodeToString(signature.getBytes(StandardCharsets.UTF_8)));
}
Responses
- 201
- 400
- 500
Sandbox Mock Data created
Bad Request
- application/json
- Schema
- Example (from schema)
- Example
Schema
{
"id": "5884127160",
"system": "ERA-PSD2",
"status": 400,
"code": "ERROR_CODE",
"message": "Specific error message"
}
{
"FORMAT_ERROR": {
"value": {
"id": "56133543",
"status": 400,
"system": "ERA-PSD2",
"code": "FORMAT_ERROR"
}
}
}
Internal Server Error
- application/json
- Schema
- Example (from schema)
- SYSTEM_ERROR
Schema
{
"id": "5884127160",
"system": "ERA-PSD2",
"status": 400,
"code": "ERROR_CODE",
"message": "Specific error message"
}
{
"id": "56133541",
"system": "ERA-PSD2",
"status": 500,
"code": "SYSTEM_ERROR"
}