Loading

DFS Service Layer API (v1)

Download OpenAPI specification:Download

Accounts

Retrieve a specific account

Retrieve a specific account (active or inactive).

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that is part of the Account's Contact Group

accountId
required
integer <int32>

The ID of the account to be retrieved.

query Parameters
language
string

The language of the localized resources

header Parameters
X-Token-Jwt
required
string

The JWT.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

500

Server Error

get/v1.0/contacts/{contactId}/accounts/{accountId}
https://example-host/v1.0/contacts/{contactId}/accounts/{accountId}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 7,
  • "AccountNumber": "00250007871200007549",
  • "Iban": "00250007871200007549",
  • "InternalId": "871200007549",
  • "Name": "00250007871200007549",
  • "Balance": 1854.09,
  • "BalanceLastUpdateDate": "2019-12-01T00:00:00",
  • "BranchId": 4,
  • "Currency":
    {
    },
  • "ContactGroupId": 5,
  • "Type":
    {
    },
  • "IsActive": true,
  • "OpeningDate": "2019-06-25T07:47:25.3934246+00:00",
  • "Product":
    {
    },
  • "Status":
    {
    },
  • "ClosingDate": "2020-12-25T07:47:25.3934795+00:00",
  • "IntegrationStatus":
    {
    },
  • "Attributes": "{\"Description\": \"This the Account the Client always wanted to have!\"}",
  • "SubAccounts": [ ]
}

Modify account

Modifies an existing account.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that belongs to the Account's contact group

accountId
required
integer <int32>

The ID of the account to modify

header Parameters
X-Token-Jwt
required
string

The JWT.

Request Body schema:

The parameter DTO

AccountNumber
string Nullable

The optional new account number of the account.

Iban
object Nullable

The optional new IBAN of the account.

InternalId
object Nullable

The optional new Internal Id of the account.

Name
object Nullable

The optional new name of the account.

BranchId
integer <int32> Nullable

The optional new branch id of the account.

AccountType
integer <int32> Nullable

The optional new account type id of the account.

Balance
object Nullable

The optional new balance of the account.

BalanceDate
object Nullable

The optional new date of the last balance update of the account.

IsActive
boolean Nullable

This determines whether the Account is active or not.

ParentId
object Nullable

The optional new parent id of the account.

Product
object Nullable

The optional new product id of the account.

Status
integer <int32> Nullable

The optional new status of the account.

OpeningDate
object Nullable

The optional new date when the account was opened.

ClosingDate
object Nullable

The optional new date when the account was closed.

IntegrationStatus
object Nullable

The optional new integration status id of the account.

CustomAttributes
object Nullable

The optional new custom attributes of the account.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

patch/v1.0/contacts/{contactId}/accounts/{accountId}
https://example-host/v1.0/contacts/{contactId}/accounts/{accountId}

Request samples

Content type
Copy
Expand all Collapse all
{
  • "AccountNumber": "002500078712000099999",
  • "Iban":
    {
    },
  • "InternalId":
    {
    },
  • "Name":
    {
    },
  • "BranchId": 4,
  • "AccountType": 5,
  • "Balance":
    {
    },
  • "BalanceDate":
    {
    },
  • "IsActive": true,
  • "ParentId":
    {
    },
  • "Product":
    {
    },
  • "Status": 1,
  • "OpeningDate":
    {
    },
  • "ClosingDate":
    {
    },
  • "IntegrationStatus":
    {
    },
  • "CustomAttributes":
    {
    }
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Retrieve all accounts of a contact

Retrieve all accounts of a contact (active or inactive).

Authorizations:
path Parameters
contactId
required
integer <int32>

The contactId of the contact

query Parameters
language
string

The language of the localized resources

header Parameters
X-Token-Jwt
required
string

The JWT.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

500

Server Error

get/v1.0/contacts/{contactId}/accounts
https://example-host/v1.0/contacts/{contactId}/accounts

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Create a new Account

Creates a new account.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact for the new account

query Parameters
language
string

The language of the localized resources

header Parameters
X-Token-Jwt
required
string

The JWT.

Request Body schema:

The parameter DTO

AccountNumber
required
string

The account number for the new account.

Iban
string Nullable

The IBAN for the new account.

InternalId
string Nullable

The Internal Id for the new account.

Name
string Nullable

The name of the new account.

BranchId
required
integer <int32>

The id of the branch for the new account.

CurrencyId
required
integer <int32>

The id of the currency for the new account.

ContactGroupId
integer <int32> Nullable

The id of the contact group for the new account.

AccountType
required
integer <int32>

The id of the account type for the new account.

Balance
number <double> Nullable

The balance for the new account.

BalanceDate
string <date-time> Nullable

The date of the last update of the balance for the new account.

IsActive
boolean

This determines whether the Account is active or not.

ParentId
integer <int32> Nullable

The id of the parent for the new account.

Product
integer <int32> Nullable

The id of the product for the new account.

Status
required
integer <int32>

The id of the status for the new account.

OpeningDate
string <date-time> Nullable

The date when the account was opened.

ClosingDate
string <date-time> Nullable

The date when the account was closed.

IntegrationStatus
integer <int32> Nullable

The id of the integration status for the new account.

CustomAttributes
string Nullable

The custom attributes for the new account.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/contacts/{contactId}/accounts/create
https://example-host/v1.0/contacts/{contactId}/accounts/create

Request samples

Content type
Copy
Expand all Collapse all
{
  • "AccountNumber": "002500078712000099999",
  • "Iban": "002500078712000099999",
  • "InternalId": "871200009999",
  • "Name": "002500078712000099999",
  • "BranchId": 4,
  • "CurrencyId": 2,
  • "ContactGroupId": 5,
  • "AccountType": 1,
  • "Balance": 1854.09,
  • "BalanceDate": "2019-12-01T00:00:00",
  • "IsActive": true,
  • "Product": 3,
  • "Status": 1,
  • "OpeningDate": "2018-11-28T00:00:00",
  • "CustomAttributes": "{\"Description\": \"Is this the Account the Client always wanted to have?\"}"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Allows the User to search for Accounts of an authenticated Contact for a given set of criteria

Allows the User to search for Accounts of an authenticated Contact for a given set of criteria

Authorizations:
path Parameters
contactId
required
integer <int32>

The contactId of the contact

query Parameters
language
string

The language of the localized resources

header Parameters
X-Token-Jwt
required
string

The JWT.

Request Body schema:

The search request parameters

Page
integer <int32>

The result page number, starting by 1

PageSize
integer <int32>

The number of items in a result page

BranchIds
Array of integers <int32> Nullable

Array with Bank Branch Ids

CurrencyIds
Array of integers <int32> Nullable

Array with Currency Ids

ContactGroupIds
Array of integers <int32> Nullable

Array with Contact Group Ids

AccountTypeIds
Array of integers <int32> Nullable

Array with Account Type Ids

IsActive
boolean Nullable

If null, active or inactive accounts are returned

ProductIds
Array of integers <int32> Nullable

Array with Product Ids

AccountStatusIds
Array of integers <int32> Nullable

Array with Account Status Ids

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/contacts/{contactId}/accounts/search
https://example-host/v1.0/contacts/{contactId}/accounts/search

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Page": 1,
  • "PageSize": 1000,
  • "BranchIds": [ ],
  • "CurrencyIds":
    [
    ],
  • "ContactGroupIds": [ ],
  • "AccountTypeIds":
    [
    ],
  • "IsActive": true,
  • "ProductIds":
    [
    ],
  • "AccountStatusIds": [ ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Accounts":
    [
    ],
  • "TotalNumberOfResults": 2
}

Authentication

Unlock

Unlocks a contact that was locked due to multiple failed authentication attempts (passcode or mTan). If the contact is not locked an HTTP 200 with Result = ContactAlreadyUnlocked will be returned.

Authorizations:
path Parameters
contactId
required
integer <int32>

The contact identifier

header Parameters
X-Token-Jwt
required
string

The JWT.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

500

Server Error

delete/v1.0/contacts/{contactId}/authentication/unlock
https://example-host/v1.0/contacts/{contactId}/authentication/unlock

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Result": "Success"
}

Get token by session id

Gets a JWT token for a given sessionId.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that the token belongs to.

sessionId
required
string

The session identifier.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

500

Server Error

get/v1.1/contacts/{contactId}/authentication/tokens/{sessionId}
https://example-host/v1.1/contacts/{contactId}/authentication/tokens/{sessionId}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Result": "Success",
  • "Session":
    {
    }
}

Get contact status

Checks whether a contact is locked due to multiple failed authentication attempts (passcode or mTan) and retrieves his status.

Authorizations:
path Parameters
contactId
required
integer <int32>

The contact identifier

header Parameters
X-Token-Jwt
required
string

The JWT.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

500

Server Error

get/v1.0/contacts/{contactId}/authentication/status
https://example-host/v1.0/contacts/{contactId}/authentication/status

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "IsPasscodeLocked": true,
  • "IsMTanLocked": false,
  • "IsTwoFactorLocked": false,
  • "AccountStatusCode": "IsActive"
}

Pre authenticate

Pre authenticates an account by username and password. Checks if the user should perform secondary authentication and if so, returns the available authentication factor for this user, the campaign contact details, status and session details. If the 2FA is disabled for this user then the credentials are checked against the database and the details are returned along with the session. Possible reasons of rejection with HTTP 200: PasscodeInvalid, ContactLocked or AccessDenied. Possible scenarios of pair (Status, Factor):

  • Auth - Passcode - The user is eligible for secondary authentication. The "/v1.1/contacts/{contactId}/authentication/authenticate" must be called as the secondary step which requires a passcode as input. The user will use the time-base one-time codes from a mobile app or a different channel (SMS)
  • Auth - Approve - The user is eligible for secondary authentication. The "/v1.1/contacts/{contactId}/authentication/authenticate" must be called as the secondary step
  • Auth - QrCode - The user is eligible for secondary authentication. The "/v1.1/contacts/{contactId}/authentication/authenticate" must be called as the secondary step
  • Allow - The user is configured to bypass secondary authentication, or is authenticating from a trusted device. The session details are returned and the user will be authenticated without a secondary step
Authorizations:
Request Body schema:

The pre authentication request which contains the user name, password, trusted device token and a flag to force expiring an existing session on the contact.

UserName
string Nullable

The contact name based on which authentication will be done.

Password
string Nullable

The password of the contact to authenticate.

TrustedDeviceToken
string Nullable

If the supplied token is valid, return an “allow” response, meaning that the user does not have to perform secondary authentication as the attempt originates from a trusted device.

ForceExpiringPreviousSession
boolean

A flag which indicates if the current existing session of the contact will be expired or not. It is useful when a contact is logged on multiple devices.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.1/authentication/pre-authenticate
https://example-host/v1.1/authentication/pre-authenticate

Request samples

Content type
Copy
Expand all Collapse all
{
  • "UserName": "test@additiv.com",
  • "Password": "password",
  • "TrustedDeviceToken": "Rm90MWRjdUc0dnhsRHhvM3lELWJhQjRwaV8zbk1tbkZBd2NOZ0sxbVFzZzo1NmYzYTk3NS03YTQwLTQ4MzAtYTcwMC0xMTkyNWM3NDk1ZjM6YXBpLmZ1dHVyYWUuY29t",
  • "ForceExpiringPreviousSession": true
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Result": "Success",
  • "Status": "Allow",
  • "Factor": "Approve",
  • "Provider": "Futurae",
  • "Length": 6,
  • "CampaignContact":
    {
    },
  • "Session":
    {
    }
}

Authenticate Deprecated

Authenticates an account by username and password.
This API is deprecated. Use the following endpoint to pre-authenticate: /v1.1/authentication/pre-authenticate. The GlobalSettings table must support the following settings: 2FAFactor = Passcode and 2FAProvider = MTan.

Authorizations:
Request Body schema:

The authentication request which contains the user name, password and a flag to force expiring an existing session on the contact.

UserName
string Nullable

The contact name based on which authentication will be done.

Password
string Nullable

The password of the contact to authenticate.

ForceExpiringPreviousSession
boolean

A flag which indicates if the current existing session of the contact will be expired or not. It is useful when a contact is logged on multiple devices.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.1/authentication/authenticate
https://example-host/v1.1/authentication/authenticate

Request samples

Content type
Copy
Expand all Collapse all
{
  • "UserName": "test@additiv.com",
  • "Password": "password",
  • "ForceExpiringPreviousSession": true
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Result": "Success",
  • "CampaignContact":
    {
    }
}

Authenticate

Performs secondary authentication using one of the available factors. The response of this endpoint depends on the chosen factor. If the two-factor authentication is disabled then the session details will be returned and the contact will be automatically authenticated. Possible reasons of rejection with HTTP 200: PasscodeInvalid, ContactLocked or AccessDenied. Possible scenarios of pair (Status, Factor):

  • Allow - Passcode - The session details are returned and the user will be authenticated.
  • Allow - Approve - The session details are returned and the user will be authenticated.
  • Auth / NULL - Approve - The end-user will approve or reject the authentication request via a 2FA mobile app.
  • Auth / NULL - QrCode - The end-user will scan the code received on AsynchronousParameters[QrCodeUrl]. For Auth status a temporary session is returned in order to allow status requests on the current authentication process. A callback is pending to be called by a 2FA provider to complete the authentication.
Authorizations:
path Parameters
contactId
required
integer <int32>

The contact identifier

Request Body schema:

The authentication request which contains the passcode and a flag which establishes a trusted relationship.

Passcode
string Nullable

The passcode received on the phone or generated by installed application or on the different channels, such as slack.

SetTrusted
boolean

If the authentication is successful (i.e., result is allow), also return a trusted device token which can be used in the future to mark the device from which the authentication attempt took place as trusted.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.1/contacts/{contactId}/authentication/authenticate
https://example-host/v1.1/contacts/{contactId}/authentication/authenticate

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Passcode": "873154",
  • "SetTrusted": true
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Result": "Success",
  • "Status": "Allow",
  • "Factor": "Approve",
  • "TrustedDeviceToken": "Rm90MWRjdUc0dnhsRHhvM3lELWJhQjRwaV8zbk1tbkZBd2NOZ0sxbVFzZzo1NmYzYTk3NS03YTQwLTQ4MzAtYTcwMC0xMTkyNWM3NDk1ZjM6YXBpLmZ1dHVyYWUuY29t",
  • "CampaignContact":
    {
    },
  • "AuthStatusSessionId": "6e23866ba2e941b3a125cd3735190f58",
  • "Session":
    {
    },
}

Authenticate status

Checks the authentication status of an account by username and temporary session when async 2FA is enabled. This endpoint can return a response in two different ways:

  • It can wait until the authentication session has been completed and return when the result is available.
  • It can wait just for the next status update during the authentication session and return the new status. It can then be called once again to either retrieve the next status update or wait for the result to become available (depending on how it’s called this time). If the response is successful session details will be returned and the contact will be able to authenticate.
Authorizations:
Request Body schema:

The authenticate status request which contains the user name and authentication session.

UserName
string Nullable

The contact name based on which two factor authentication status is checked.

AuthStatusSessionId
string Nullable

The identifier to associate the status request with a specific authentication process. It is generated and returned by the endpoint starting the authentication.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.1/authentication/authenticate/status
https://example-host/v1.1/authentication/authenticate/status

Request samples

Content type
Copy
Expand all Collapse all
{
  • "UserName": "jim.jones@test.com",
  • "AuthStatusSessionId": "91934bb8e7e848af8536671afd81c3d0"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Result": "Success",
  • "TrustedDeviceToken": "Rm90MWRjdUc0dnhsRHhvM3lELWJhQjRwaV8zbk1tbkZBd2NOZ0sxbVFzZzo1NmYzYTk3NS03YTQwLTQ4MzAtYTcwMC0xMTkyNWM3NDk1ZjM6YXBpLmZ1dHVyYWUuY29t",
  • "Session":
    {
    }
}

Authenticate onboarding

Authenticates a contact to access onboarding. The authentication is done by mobile number. Use for mobile devices only (from native apps). Pre authenticates an existing contact to gain access to the onboarding using a mobile number as identifier. Triggers sending of second factor (mtan) to the contact to validate the contact. The follow up call with the mtan should be to /contacts/{contactId}/authentication/onboarding/activate.

Authorizations:
Request Body schema:

The authentication onboarding request

MobileNumber
string Nullable

The mobile number used to identify the contact. It must be provided without country code separator (|), but including the country code prefix (00 or + as exit code). If the system is not in production mode (test mode) and there are multiple active contacts with the same mobile number then the first contact is returned. If the system is in production mode and there are multiple active contacts with the same mobile number then an HTTP 200 response with result 'MobileMultipleContacts' is returned.

DeviceToken
string Nullable

The unique identifier of the device. Does not change through the existence of the application.

PushToken
string Nullable

The push token used to send push notifications.

Platform
string
Enum: "iOS" "Android"

Device platform / Operating System. iOS,Android

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.1/authentication/authenticate/onboarding
https://example-host/v1.1/authentication/authenticate/onboarding

Request samples

Content type
Copy
Expand all Collapse all
{
  • "MobileNumber": "082179008188",
  • "DeviceToken": "B90BF9BE-588D-462A-AD00-19C7E26C50F8",
  • "PushToken": "5454332abb7ddd6101b20d132eb55c7cfb0b16b72647242e2de325717668c175",
  • "Platform": "iOS"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Result": "Success",
  • "ContactId": 10,
  • "ObfuscatedMobileNumber": "***|*******123"
}

Onboarding activate

Sends an activation link to the given contactId provided that the contact exists and the given mtan is valid. If the contact is already marked as active, it will be reset to be not active until the link is clicked by the contact. If the system is in testing mode, due to testing reasons, the new generated activation key is returned. It can be used later in the reset password flow.

Authorizations:
path Parameters
contactId
required
integer <int32>

The contact identifier

Request Body schema:

The activate onboarding request

MTan
string Nullable

The mTan code received on the phone or on the different channels, such as slack.

RedirectUrl
string Nullable

optional - The front office redirect url that will be sent to the contact email once the mTan is validated in order to verify the email. If not specified in the request then it will be taken from the application setting. If both are defined, the request value take precedence. Only provide the url in the request if different clients (e.g. different mobile OS Apps) require different urls.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/contacts/{contactId}/authentication/onboarding/activate
https://example-host/v1.0/contacts/{contactId}/authentication/onboarding/activate

Request samples

Content type
Copy
Expand all Collapse all
{}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Result": "Success",
  • "UserName": "test.name",
  • "Email": "test.name@additiv.ch",
  • "ActivationKey": "7fe48d7a68a74a0e9e0508f284a63bf4"
}

Authenticate mobile

Authenticates a contact on a mobile app by user name and password.

Authorizations:
Request Body schema:

The authentication mobile request

UserName
string Nullable

The mobile number used to identify the contact.

Password
string Nullable

The password of the contact.

ForceExpiringPreviousSession
boolean

A flag which indicates if the current existing session of the contact will be expired or not. It is useful when a contact is logged on multiple devices.

DeviceToken
string Nullable

The unique identifier of the device. Does not change through the existence of the application.

PushToken
string Nullable

The push token used to send push notifications.

Platform
string
Enum: "iOS" "Android"

Device platform / Operating System. iOS,Android

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/authentication/authenticate/mobile
https://example-host/v1.0/authentication/authenticate/mobile

Request samples

Content type
Copy
Expand all Collapse all
{
  • "UserName": "test@additiv.com",
  • "Password": "password",
  • "ForceExpiringPreviousSession": true,
  • "DeviceToken": "B90BF9BE-588D-462A-AD00-19C7E26C50F8",
  • "PushToken": "5454332abb7ddd6101b20d132eb55c7cfb0b16b72647242e2de325717668c175",
  • "Platform": "iOS"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Result": "Success",
  • "Session":
    {
    }
}

Authenticate SSO

Performs single-sign-on authentication based on a JWT token. The provided JWT access token is validated before authentication.

Authorizations:
Request Body schema:

The SSO authentication request.

AccessToken
string Nullable

The SSO jwt access token.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/authentication/authenticate/sso
https://example-host/v1.0/authentication/authenticate/sso

Request samples

Content type
Copy
Expand all Collapse all
{
  • "AccessToken": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiJmZjUyNTBhOGM5OTc0NDk4OGFjNjRjZmE2Y2IxNjJkNSIsImlzcyI6IkFkZGl0aXYgQUciLCJzdWIiOiJqZDFAamQuY29tIiwiaWF0IjoxNTI0MDQ0OTUyLCJleHAiOjE1MjQwNDg1NTJ9.KQKCN5CVouVlV0c2SmR1BJxrUr6AD9lWs4lz_qNiNxShsZOStBN8ZgTN20dC2457P90MI2922eFSwtU-G4BXXrLEegCChyXom50jKWI_wsNfXIt2mUD9TEoAXWMO6ITpWNKAm5f1UgPvHsPBh0JJmZ11JWoJkhbQcNjfuXsNra0YAs6D62Znxu-jDDiQWg8hf5379YUEDy6si0XRUXd8mRZ-NIjO_9N_FceabIrJhTelRbr9BrpSY-O929DDv2qBXj7wcLV4i4eZ0z5aotTXWSfjehTGRLgrtOnUOpZycJyqVbEahsOx5KJOwaq0pRZ_l7hOCwncJJ5rernutAjrzA"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Result": "Success",
  • "Session":
    {
    }
}

Authenticate mtan Deprecated

Authenticates an account by username and mTan. If the authentication is successful, a session id along with a JWT access token is returned.
This API is deprecated. Use the following endpoint to authenticate via MTan: /v1.1/contacts/{contactId}/authentication/authenticate. The GlobalSettings table must support the following settings: 2FAFactor = Passcode and 2FAProvider = MTan.

Authorizations:
path Parameters
contactId
required
integer <int32>

The contact identifier

Request Body schema:

The authentication request

MTan
string Nullable

The mTan code received on the phone or on the different channels, such as slack.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/contacts/{contactId}/authentication/authenticate/mtan
https://example-host/v1.0/contacts/{contactId}/authentication/authenticate/mtan

Request samples

Content type
Copy
Expand all Collapse all
{
  • "MTan": "9d5s2g2q6"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Result": "Success",
  • "Session":
    {
    }
}

Validate token

Validates a provided JWT access token (expiration, contactId, memberId, subject, auditContextId). Returns the result type of the validation (Success or one of the invalid result types).

Authorizations:
Request Body schema:

The validate token request

AccessToken
string Nullable

The JWT access token that will be validated.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/authentication/tokens/validate
https://example-host/v1.0/authentication/tokens/validate

Request samples

Content type
Copy
Expand all Collapse all
{
  • "AccessToken": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI3NTIzMzE0YjU4ZDU0YTQxYTA1YzI2NDA4MmQzZDRlMiIsImlzcyI6IkFkZGl0aXYgQUciLCJzdWIiOiJzdGVsaWFuLmR1bWl0cmEiLCJpYXQiOjE1NDY4NTg4OTYsImV4cCI6MTU0Njg2MDA5NiwiY2lkIjoxMjM0LCJtaWQiOjB9.VA3Qlfs8tzqryo6imIyZ7vcRDipDI71W_7O6seuojhvoiWom8r0mQMIzgfzTB01CXFvBpx-BhfzODFT1bPsqSoSMdMEiwqMQA3TzaWDfkFmsfQ6ZEx9D7PbUD6TtHj8IrJFrIwlPBlRDuUXPz6lOxdaGMQxmpQagtLi-5NWmQPrj4WjmEvzDLcuWyjWZAuLqTr1xabVGYyZd-kb2dENaDdcjb73jsyw89ChnYii_5j81-mcudouwPIdm5ECvKBW5G2Anbi0ITwusS9eHGd7bx5JAJYKtpt8o2hk4VLC5qx4S6jCn0sTEiB5Kz5FxgFeAHfYesIPOY7SYTLPmF1A7Xw"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Result": "Success"
}

Forgotten password

Triggers a forgotten password process based on username or email. The username takes the priority over email to identify the campaign contact if both are provided. If the contact is registered, then the details of the campaign contact are returned and an mTan is generated and sent to the contact.

Authorizations:
Request Body schema:

The forgotten password request

Email
string Nullable

The email for which the password was forgotten.

UserName
string Nullable

The user name for which the password was forgotten.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.1/authentication/forgotten-password
https://example-host/v1.1/authentication/forgotten-password

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Email": "test@additiv.com",
  • "UserName": "test@additiv.com"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Result": "Success",
  • "ContactId": 10,
  • "ObfuscatedMobileNumber": "***|*******123"
}

Forgotten password mtan

Sends a forgotten password activation link by email to the given contactId provided that the contact exists, is active and that the given mtan is valid. After this call, the previous password, if existing, can no longer be used and the contact can log-in again only after setting a new password. If the system is in testing mode, due to testing reasons, the new generated activation key is returned. It can be used later in the reset password flow.

Authorizations:
path Parameters
contactId
required
integer <int32>

The contact identifier

Request Body schema:

The forgotten password mtan request

MTan
string Nullable

The mTan code received on the phone or on the different channels, such as slack.

RedirectUrl
string Nullable

optional - The front office redirect url that will be sent to the contact email once the mTan is validated in order to set a new password. If not specified in the request then it will be taken from the application setting. If both are defined, the request value take precedence. Only provide the url in the request if different clients (e.g. different mobile OS Apps) require different urls.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/contacts/{contactId}/authentication/forgotten-password/mtan
https://example-host/v1.0/contacts/{contactId}/authentication/forgotten-password/mtan

Request samples

Content type
Copy
Expand all Collapse all
{}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Result": "Success",
  • "ActivationKey": "b8195a80bed54f88a2faac30fb138b7d"
}

Reset password by activation key

Sets a password for an existing, active contact which is not authenticated based on the provided activation key. Can be used for first password creation or for password reset as long as the contact is active already. If the activation key is valid, the new password is set for the contact. Once the password is set the contact should be redirected to a login page and use the new password.

Authorizations:
Request Body schema:

The reset password request

ActivationKey
string Nullable

The activation key used to validate the contact.

Password
string Nullable

The new password.

ConfirmPassword
string Nullable

The new password confirmed.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/authentication/reset-password
https://example-host/v1.0/authentication/reset-password

Request samples

Content type
Copy
Expand all Collapse all
{
  • "ActivationKey": "4774480a09b84e23ac8cb89921d13367",
  • "Password": "newpassword",
  • "ConfirmPassword": "newpassword"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Result": "Success"
}

Reset password by contact id

Sets a new password for an existing, active contact with password set which is authenticated based on the contact id provided.

Authorizations:
path Parameters
contactId
required
integer <int32>

The contact identifier

header Parameters
X-Token-Jwt
required
string

The JWT.

Request Body schema:

The reset password request

Password
string Nullable

The new password.

ConfirmPassword
string Nullable

The new password confirmed.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/contacts/{contactId}/authentication/reset-password
https://example-host/v1.0/contacts/{contactId}/authentication/reset-password

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Password": "newpassword",
  • "ConfirmPassword": "newpassword"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Result": "Success"
}

Log off

Logs off an authenticated account.

Authorizations:
path Parameters
contactId
required
integer <int32>

The contact identifier

header Parameters
X-Token-Jwt
required
string

The JWT.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

500

Server Error

post/v1.0/contacts/{contactId}/authentication/logoff
https://example-host/v1.0/contacts/{contactId}/authentication/logoff

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Result": "Success"
}

Renew token

Renews an expired or existing session/JWT token. Returns the renewed JWT token along with session id.

Authorizations:
path Parameters
contactId
required
integer <int32>

The contact identifier

Request Body schema:

The renew token request

XTokenJwt
string Nullable

The XTokenJwt represented as Base64 including SessionId and JwtAccessToken which will be renewed.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

500

Server Error

put/v1.0/contacts/{contactId}/authentication/tokens/renew
https://example-host/v1.0/contacts/{contactId}/authentication/tokens/renew

Request samples

Content type
Copy
Expand all Collapse all
{
  • "XTokenJwt": "MTJhNzk0YjQ2ZDVhNDEwNGI1MDM0NTZkYWQ5YThmOTQ6ZXlKaGJHY2lPaUpTVXpJMU5pSXNJblI1Y0NJNklrcFhWQ0o5LmV5SnFkR2tpT2lJeE1tRTNPVFJpTkRaa05XRTBNVEEwWWpVd016UTFObVJoWkRsaE9HWTVOQ0lzSW1semN5STZJa0ZrWkdsMGFYWWdRVWNpTENKemRXSWlPaUkzSWl3aWFXRjBJam94TlRJMk9UYzVOemswTENKbGVIQWlPakUxTWpZNU9EQTVPVFI5LlNoT0FXc2VUNXcxbmxvVks4QTM3SUdlSjVaTXdNMVNaTTQ3SFB4QVBjZl83dDhyRFFvTUR0NjBqUmU1WWozZEJhd3BCZUdPY1lDMkpyRDN4LVlJelBfUk80T2RhM3pNZjhENTVBc3Rhb2s2VWtTeVJDS0ZhUG04U2JSY19GLW53RFE3emRLdVZiMlNDSngxS0JQUjhJd0dCZ0NzWEE3aThOMTl6clV0YzBYc3RUOF9aQmw5dmU4eHAzRkpQRkRmcmlyc1VTNEx6WWx4Tk03Rk1GTFB4N2d3WXozTnoxWDBjVG1IWnBhS2RFQ2lpZjlPZHlYY25zUVgwekFtZ2VGZFF1NHUxSzBuN21xRlZpRWcweUxJay1jVmNCdnZRLUU4eURoT1k0YlRrbC1NdUVNMFRRODFqZHR4ck1sWjc0RGo5bExyMzdjNTM1VkhFR3lfTkw3d1BuZw=="
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Result": "Success",
  • "Session":
    {
    }
}

Renew SSO token

Renews an expired or an existing SSO session/JWT token. Returns the renewed JWT token along with session id.

Authorizations:
path Parameters
contactId
required
integer <int32>

The contact identifier

Request Body schema:

The renew token request

XTokenJwt
string Nullable

The XTokenJwt represented as Base64 including SessionId and JwtAccessToken which will be renewed.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

500

Server Error

put/v1.0/contacts/{contactId}/authentication/tokens/renew/sso
https://example-host/v1.0/contacts/{contactId}/authentication/tokens/renew/sso

Request samples

Content type
Copy
Expand all Collapse all
{
  • "XTokenJwt": "MTJhNzk0YjQ2ZDVhNDEwNGI1MDM0NTZkYWQ5YThmOTQ6ZXlKaGJHY2lPaUpTVXpJMU5pSXNJblI1Y0NJNklrcFhWQ0o5LmV5SnFkR2tpT2lJeE1tRTNPVFJpTkRaa05XRTBNVEEwWWpVd016UTFObVJoWkRsaE9HWTVOQ0lzSW1semN5STZJa0ZrWkdsMGFYWWdRVWNpTENKemRXSWlPaUkzSWl3aWFXRjBJam94TlRJMk9UYzVOemswTENKbGVIQWlPakUxTWpZNU9EQTVPVFI5LlNoT0FXc2VUNXcxbmxvVks4QTM3SUdlSjVaTXdNMVNaTTQ3SFB4QVBjZl83dDhyRFFvTUR0NjBqUmU1WWozZEJhd3BCZUdPY1lDMkpyRDN4LVlJelBfUk80T2RhM3pNZjhENTVBc3Rhb2s2VWtTeVJDS0ZhUG04U2JSY19GLW53RFE3emRLdVZiMlNDSngxS0JQUjhJd0dCZ0NzWEE3aThOMTl6clV0YzBYc3RUOF9aQmw5dmU4eHAzRkpQRkRmcmlyc1VTNEx6WWx4Tk03Rk1GTFB4N2d3WXozTnoxWDBjVG1IWnBhS2RFQ2lpZjlPZHlYY25zUVgwekFtZ2VGZFF1NHUxSzBuN21xRlZpRWcweUxJay1jVmNCdnZRLUU4eURoT1k0YlRrbC1NdUVNMFRRODFqZHR4ck1sWjc0RGo5bExyMzdjNTM1VkhFR3lfTkw3d1BuZw=="
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Result": "Success",
  • "Session":
    {
    }
}

Bank

Delete bank

Delete bank

Authorizations:
path Parameters
id
required
integer <int32>

Id of the existing bank

header Parameters
X-Token-Jwt
required
string

The JWT.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

500

Server Error

delete/v1.0/banks/{id}
https://example-host/v1.0/banks/{id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Get bank

Return a bank by id

Authorizations:
path Parameters
id
required
integer <int32>

Bank id

header Parameters
X-Token-Jwt
required
string

The JWT.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

500

Server Error

get/v1.0/banks/{id}
https://example-host/v1.0/banks/{id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 1,
  • "Name": "Europe bank",
  • "Bic": "BARCGB22XXX",
  • "Code": "x9x9x9x"
}

Update bank

Update existing bank

Authorizations:
path Parameters
id
required
integer <int32>

Id of the existing bank

header Parameters
X-Token-Jwt
required
string

The JWT.

Request Body schema:

Properties of the bank to update

Name
string Nullable
Bic
string Nullable
Code
string Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

500

Server Error

put/v1.0/banks/{id}
https://example-host/v1.0/banks/{id}

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Name": "string",
  • "Bic": "string",
  • "Code": "string"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 1,
  • "Name": "Europe bank",
  • "Bic": "BARCGB22XXX",
  • "Code": "x9x9x9x"
}

Delete bank account type

Deletes bank account type

Authorizations:
path Parameters
id
required
integer <int32>

Id of the existing bank account type

header Parameters
X-Token-Jwt
required
string

The JWT.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

500

Server Error

delete/v1.0/bankaccounttypes/{id}
https://example-host/v1.0/bankaccounttypes/{id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Get bank account type

Returns a bank account type by id

Authorizations:
path Parameters
id
required
integer <int32>

Bank account type id

header Parameters
X-Token-Jwt
required
string

The JWT.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

500

Server Error

get/v1.0/bankaccounttypes/{id}
https://example-host/v1.0/bankaccounttypes/{id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 1,
  • "Name": "Cash",
  • "InternalId": "Cash",
  • "Description": "Cash account type"
}

Update bank account type

Updates existing bank account type

Authorizations:
path Parameters
id
required
integer <int32>

Id of the existing bank account type

header Parameters
X-Token-Jwt
required
string

The JWT.

Request Body schema:

Properties of the bank account type to update

Name
string Nullable
InternalId
string Nullable
Description
string Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

500

Server Error

put/v1.0/bankaccounttypes/{id}
https://example-host/v1.0/bankaccounttypes/{id}

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Name": "Cash",
  • "InternalId": "Cash",
  • "Description": "Cash account type"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 1,
  • "Name": "Cash",
  • "InternalId": "Cash",
  • "Description": "Cash account type"
}

Delete bank branch

Delete bank branch from the system.

Authorizations:
path Parameters
id
required
integer <int32>

Id of the existing bank branch

header Parameters
X-Token-Jwt
required
string

The JWT.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

500

Server Error

delete/v1.0/bankbranches/{id}
https://example-host/v1.0/bankbranches/{id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Get bank branch by id

Returns bank branch by its id

Authorizations:
path Parameters
id
required
integer <int32>

Id of the bank branch

header Parameters
X-Token-Jwt
required
string

The JWT.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

500

Server Error

get/v1.0/bankbranches/{id}
https://example-host/v1.0/bankbranches/{id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 1,
  • "Name": "0001 AD",
  • "BankId": 1,
  • "CountryId": 2,
  • "Code": "227",
  • "AddressLine1": "Rue des Avenges",
  • "AddressLine2": "25",
  • "AddressLine3": "6356",
  • "AddressLine4": "Andorra",
  • "Bic": "AD63746",
  • "LastModifiedByMemberId": 1,
  • "PhoneNumber": "+3233356989"
}

Update bank branch

Update existing bank branch.

Authorizations:
path Parameters
id
required
integer <int32>

Id of the existing bank branch

header Parameters
X-Token-Jwt
required
string

The JWT.

Request Body schema:

Properties of the bank branch to update

Name
Array of objects (JsonLanguage) Nullable
BankId
integer <int32>
CountryId
integer <int32> Nullable
Code
string Nullable
AddressLine1
string Nullable
AddressLine2
string Nullable
AddressLine3
string Nullable
AddressLine4
string Nullable
Bic
string Nullable
LastModifiedByMemberId
integer <int32>
PhoneNumber
string Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

500

Server Error

put/v1.0/bankbranches/{id}
https://example-host/v1.0/bankbranches/{id}

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Name":
    [
    ],
  • "BankId": 1,
  • "CountryId": 2,
  • "Code": "227",
  • "AddressLine1": "Rue des Avenges",
  • "AddressLine2": "25",
  • "AddressLine3": "6356",
  • "AddressLine4": "Andorra",
  • "Bic": "AD63746",
  • "LastModifiedByMemberId": 1,
  • "PhoneNumber": "+32|33356989"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 1,
  • "Name": "0001 AD",
  • "BankId": 1,
  • "CountryId": 2,
  • "Code": "227",
  • "AddressLine1": "Rue des Avenges",
  • "AddressLine2": "25",
  • "AddressLine3": "6356",
  • "AddressLine4": "Andorra",
  • "Bic": "AD63746",
  • "LastModifiedByMemberId": 1,
  • "PhoneNumber": "+3233356989"
}

Get bank list

Returns the list of all banks in the system.

Authorizations:
header Parameters
X-Token-Jwt
required
string

The JWT.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

500

Server Error

get/v1.0/banks
https://example-host/v1.0/banks

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Create bank

Create a new bank

Authorizations:
header Parameters
X-Token-Jwt
required
string

The JWT.

Request Body schema:

Properties of the bank to create

Name
string Nullable
Bic
string Nullable
Code
string Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/banks
https://example-host/v1.0/banks

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Name": "string",
  • "Bic": "string",
  • "Code": "string"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 1,
  • "Name": "Europe bank",
  • "Bic": "BARCGB22XXX",
  • "Code": "x9x9x9x"
}

Get bank account type list

Returns the list of all bank account types in the system.

Authorizations:
header Parameters
X-Token-Jwt
required
string

The JWT.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

500

Server Error

get/v1.0/bankaccounttypes
https://example-host/v1.0/bankaccounttypes

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Create bank account type

Creates a new bank account type

Authorizations:
header Parameters
X-Token-Jwt
required
string

The JWT.

Request Body schema:

Properties of the bank account type to create

Name
string Nullable
InternalId
string Nullable
Description
string Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/bankaccounttypes
https://example-host/v1.0/bankaccounttypes

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Name": "Cash",
  • "InternalId": "Cash",
  • "Description": "Cash account type"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 1,
  • "Name": "Cash",
  • "InternalId": "Cash",
  • "Description": "Cash account type"
}

Get bank branch list

Returns the list of all bank branches in the system. Optionally, data can be localized using "language" parameter.

Authorizations:
query Parameters
language
string

The language of the localized resources

header Parameters
X-Token-Jwt
required
string

The JWT.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

500

Server Error

get/v1.0/bankbranches
https://example-host/v1.0/bankbranches

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Create bank branch

Create a new bank branch in the system.

Authorizations:
header Parameters
X-Token-Jwt
required
string

The JWT.

Request Body schema:

Properties of the bank branch to create

Name
Array of objects (JsonLanguage) Nullable
BankId
integer <int32>
CountryId
integer <int32> Nullable
Code
string Nullable
AddressLine1
string Nullable
AddressLine2
string Nullable
AddressLine3
string Nullable
AddressLine4
string Nullable
Bic
string Nullable
LastModifiedByMemberId
integer <int32>
PhoneNumber
string Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/bankbranches
https://example-host/v1.0/bankbranches

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Name":
    [
    ],
  • "BankId": 1,
  • "CountryId": 2,
  • "Code": "227",
  • "AddressLine1": "Rue des Avenges",
  • "AddressLine2": "25",
  • "AddressLine3": "6356",
  • "AddressLine4": "Andorra",
  • "Bic": "AD63746",
  • "LastModifiedByMemberId": 1,
  • "PhoneNumber": "+32|33356989"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 1,
  • "Name": "0001 AD",
  • "BankId": 1,
  • "CountryId": 2,
  • "Code": "227",
  • "AddressLine1": "Rue des Avenges",
  • "AddressLine2": "25",
  • "AddressLine3": "6356",
  • "AddressLine4": "Andorra",
  • "Bic": "AD63746",
  • "LastModifiedByMemberId": 1,
  • "PhoneNumber": "+3233356989"
}

Callback

Futurae success callback authenticate

Provides an API a Futurae server can call in order to deliver status updates as well as the result of a particular authentication attempt (also called authentication session). The URL will be called as a POST request with "Content-Type" header being "application/json". The body of the request will be a JSON object containing the following keys and corresponding values: user_id, username, session_id, result, status, status_msg and trusted_device_token. The session ID identifies the particular authentication session and is conditionally returned by /v1.1/authentication/authenticate endpoint.

Authorizations:
query Parameters
authorization
string

The tenant hash identifier

header Parameters
X-Token-Jwt
required
string

The JWT.

Request Body schema:

The authentication request which contains information about authentication session status.

username
string Nullable

The contact name based on which authentication will be done.

user_id
string Nullable
session_id
string Nullable
trusted_device_token
string Nullable
result
string
Enum: "Allow" "Auth" "Deny" "Waiting" "Unknown" "Success" "Expired" "Pending" "Disabled" "Locked" "InvalidPasscode" "Success2FaDisabled"

The result of the authentication: allow - Authentication was successful. Application should grant access to the user; deny - authentication failed; waiting - authentication is still in-progress.

status
string Nullable

The authentication status: bypass, disabled, locked_out.

status_msg
string Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.1/callback/authentication/futurae
https://example-host/v1.1/callback/authentication/futurae

Request samples

Content type
Copy
Expand all Collapse all
{
  • "username": "john.jones@additiv.ch",
  • "user_id": "404b0058-ffd5-4c14-8e92-da766b475eaa",
  • "session_id": "ae6950d4-2a03-479f-a6fb-ffa53a964dc2",
  • "trusted_device_token": "Rm90MWRjdUc0dnhsRHhvM3lELWJhQjRwaV8zbk1tbkZBd2NOZ0sxbVFzZzo1NmYzYTk3NS03YTQwLTQ4MzAtYTcwMC0xMTkyNWM3NDk1ZjM6YXBpLmZ1dHVyYWUuY29t",
  • "result": "Allow",
  • "status": "",
  • "status_msg": "Authenticated"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Result": "Success"
}

Futurae success callback enrollment

Provides an API a Futurae server can call in order to inform the application when the enrollment was successfully completed. The body of the request will be a JSON object containing the following keys and corresponding values: user_id, username, activation_code and result. The value of the latter will always be "success", since the callback will only be called when the enrollment is completed successfully.

Authorizations:
query Parameters
authorization
string

The tenant hash identifier

header Parameters
X-Token-Jwt
required
string

The JWT.

Request Body schema:

The enrollment request which contains the result of the enrollment process.

username
string Nullable

The contact name based on which enrollment will be done.

user_id
string Nullable
activation_code
string Nullable
result
string Nullable

The result status. The value of the latter will always be “success”, since the callback will only be called when the enrollment is completed successfully.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.1/callback/enrollment/futurae
https://example-host/v1.1/callback/enrollment/futurae

Request samples

Content type
Copy
Expand all Collapse all
{
  • "username": "john.jones@additiv.ch",
  • "user_id": "56f3a975-7a40-4830-a700-11925c7495f3",
  • "activation_code": "futurae://enroll?activation_code=Rm90MWRjdUc0dnhsRHhvM3lELWJhQjRwaV8zbk1tbkZBd2NOZ0sxbVFzZzo1NmYzYTk3NS03YTQwLTQ4MzAtYTcwMC0xMTkyNWM3NDk1ZjM6YXBpLmZ1dHVyYWUuY29t",
  • "result": "Success"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Result": "Success"
}

Common

Delete risk category

Authorizations:
path Parameters
id
required
integer <int32>
header Parameters
X-Token-Jwt
required
string

The JWT.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

500

Server Error

delete/v1.0/riskcategories/{id}
https://example-host/v1.0/riskcategories/{id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Get risk category

Authorizations:
path Parameters
id
required
integer <int32>

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

500

Server Error

get/v1.0/riskcategories/{id}
https://example-host/v1.0/riskcategories/{id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 1,
  • "Name": "Risk-tolerant"
}

Update risk category

Authorizations:
path Parameters
id
required
integer <int32>
header Parameters
X-Token-Jwt
required
string

The JWT.

Request Body schema:
Id
integer <int32>
Name
Array of objects (JsonLanguage) Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

patch/v1.0/riskcategories/{id}
https://example-host/v1.0/riskcategories/{id}

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "Name":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 1,
  • "Name": "Risk-tolerant"
}

Delete economical zone

Delete economical zone

Authorizations:
path Parameters
id
required
integer <int32>

Id of the existing economical zone

header Parameters
X-Token-Jwt
required
string

The JWT.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

500

Server Error

delete/v1.0/economicalzones/{id}
https://example-host/v1.0/economicalzones/{id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Get economical zone

Return a economical zone by id

Authorizations:
path Parameters
id
required
integer <int32>

Economical zone id

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

500

Server Error

get/v1.0/economicalzones/{id}
https://example-host/v1.0/economicalzones/{id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 1,
  • "Name": "<root><de>Europe zone</de><en>Europe zone</en><fr>Europe zone</fr><ja>Europe zone</ja><ru>Europe zone</ru></root>",
  • "Color": "#56d96f"
}

Update economical zone

Update existing economical zone

Authorizations:
path Parameters
id
required
integer <int32>

Id of the existing economical zone

header Parameters
X-Token-Jwt
required
string

The JWT.

Request Body schema:

Properties of the economical zone to update

Name
required
Array of objects (JsonLanguage)
Color
string Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

500

Server Error

put/v1.0/economicalzones/{id}
https://example-host/v1.0/economicalzones/{id}

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Name":
    [
    ],
  • "Color": "string"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 1,
  • "Name": "<root><de>Europe zone</de><en>Europe zone</en><fr>Europe zone</fr><ja>Europe zone</ja><ru>Europe zone</ru></root>",
  • "Color": "#56d96f"
}

Get resource set list filtered by name

Returns the list of all resource sets in the system filtered by name.

Authorizations:
path Parameters
name
required
string

The name of the resource set

query Parameters
language
required
string

The language of the localized resources

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

500

Server Error

get/v1.0/resourcesets/{name}
https://example-host/v1.0/resourcesets/{name}

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Health check

Performs a health check of the system. Will return "OK" as "text/plain" if everything is working properly.

Authorizations:

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

500

Server Error

get/v1.0/health-check
https://example-host/v1.0/health-check

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Get system settings

Returns system settings. If the optional group parameter is passed only settings for this group will be returned, otherwise all available settings.

Authorizations:
query Parameters
group
string

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

500

Server Error

get/v1.0/settings
https://example-host/v1.0/settings

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Get system setting

Returns a specific system setting. The name of the group and the name of the key need to be supplied.

Authorizations:
path Parameters
group
required
string
key
required
string

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

500

Server Error

get/v1.0/settings/{group}/{key}
https://example-host/v1.0/settings/{group}/{key}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Key": "string",
  • "Value": "string",
  • "Group": "string"
}

Get current campaign configuration

Returns campaign configuration data. Returns data about the active campaign of the tenant, including a list of product offers and their products, the list of supported languages and the default language. The language DTOs also contain specifications that can be used for number formatting (NumberDecimalSeparator and NumberGroupSeparator).

Authorizations:
query Parameters
language
required
string
header Parameters
X-Token-Jwt
required
string

The JWT.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

500

Server Error

get/v1.0/campaigns/current/configuration
https://example-host/v1.0/campaigns/current/configuration

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "ProductOffers":
    [
    ],
  • "Languages":
    [
    ],
  • "DefaultLanguage":
    {
    },
  • "DefaultTimeZoneUtcOffsetMinutes": 0
}

Get country list

Returns the list of all countries in the system.

Authorizations:
path Parameters
language
required
string

The language of the localized resources

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

500

Server Error

get/v1.0/countries/{language}
https://example-host/v1.0/countries/{language}

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Get language list

Returns the list of all languages in the system.

Authorizations:
path Parameters
language
required
string

The language of the localized resources

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

500

Server Error

get/v1.0/languages/{language}
https://example-host/v1.0/languages/{language}

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Get salutation list

Returns the list of all salutations in the system.

Authorizations:
path Parameters
language
required
string

The salutation of the localized resources

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

500

Server Error

get/v1.0/salutations/{language}
https://example-host/v1.0/salutations/{language}

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    },
  • {
    }
]

Get contact status list

Returns the list of all contact statuses in the system.

Authorizations:
path Parameters
language
required
string

The contact status of the localized resources

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

500

Server Error

get/v1.0/contactstatuses/{language}
https://example-host/v1.0/contactstatuses/{language}

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Get identification document type list

Returns the list of all identification document types in the system.

Authorizations:
path Parameters
language
required
string

The identification document type of the localized resources

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

500

Server Error

get/v1.0/identificationdocumenttypes/{language}
https://example-host/v1.0/identificationdocumenttypes/{language}

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Get severity levels list

Returns the list of all severity levels in the system.

Authorizations:

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

500

Server Error

get/v1.0/severity-levels
https://example-host/v1.0/severity-levels

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Get datasources

Returns a list of all available data sources.

Authorizations:
header Parameters
X-Token-Jwt
required
string

The JWT.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

500

Server Error

get/v1.0/datasources/all
https://example-host/v1.0/datasources/all

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Get stored procedure names

Returns a list of stored procedures available for the provided data source and schema

Authorizations:
path Parameters
dataSourceName
required
string

Name of the data source

schema
required
string

Name of the specific DB schema

header Parameters
X-Token-Jwt
required
string

The JWT.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

500

Server Error

get/v1.0/datasources/{dataSourceName}/storedprocedures/{schema}
https://example-host/v1.0/datasources/{dataSourceName}/storedprocedures/{schema}

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Returns the list of all risk categories in the system.

Authorizations:
query Parameters
language
required
string

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

500

Server Error

get/v1.0/riskcategories
https://example-host/v1.0/riskcategories

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Create risk category

Authorizations:
header Parameters
X-Token-Jwt
required
string

The JWT.

Request Body schema:
Id
integer <int32>
Name
Array of objects (JsonLanguage) Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/riskcategories
https://example-host/v1.0/riskcategories

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "Name":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 1,
  • "Name": "Risk-tolerant"
}

Get risk categories

Gets all risk categories for a specific product

Authorizations:
path Parameters
productId
required
integer <int32>
query Parameters
language
required
string

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

500

Server Error

get/v1.0/products/{productId}/riskcategories
https://example-host/v1.0/products/{productId}/riskcategories

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Get product constraints

Gets the constraints of a product by ID

Authorizations:
path Parameters
productId
required
integer <int32>

The ID of the product to retrieve

query Parameters
language
required
string

The language in which to return all properties

header Parameters
X-Token-Jwt
required
string

The JWT.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

500

Server Error

get/v3.0/products/{productId}/optimisationconstraints
https://example-host/v3.0/products/{productId}/optimisationconstraints

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "OptimisationConstraint":
    {
    }
}

Get assetclass tree

Returns the tree of all assetclasses in the system.

Authorizations:
path Parameters
language
required
string

The language of the localized resources

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

500

Server Error

get/v1.0/assetclasses/{language}
https://example-host/v1.0/assetclasses/{language}

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Get continent list

Returns the list of all continents in the system.

Authorizations:
path Parameters
language
required
string

The language of the localized resources

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

500

Server Error

get/v1.0/continents/{language}
https://example-host/v1.0/continents/{language}

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Get securitytype list

Returns the list of all securitytypes in the system.

Authorizations:
path Parameters
language
required
string

The language of the localized resources

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

500

Server Error

get/v1.0/securitytypes/{language}
https://example-host/v1.0/securitytypes/{language}

Response samples