Skip to main content

Codefi Assets API (1.0)

Download OpenAPI specification:Download

This API allows to issue and manage tokenized financial assets on Ethereum.

Users

Users can be managed on the platform. A user is an object in Codefi database, which controls one or multiple Ethereum wallets. A Codefi user can be controlled by an identity in Auth0 (identity provider).

List all users

Authorizations:
access-tokenoauth2
query Parameters
offset
required
number >= 0

Index of first users to fetch

limit
required
number <= 50
Example: limit=100

Max amount of users to fetch

userTypes
required
string
Example: userTypes=["ISSUER","UNDERWRITER","VERIFIER"]

Filter parameter to retrieve users of given user types. The parameter shall be a stringified array of UserTypes.

linkStates
required
string
Example: linkStates=["invited","kycSubmitted","validated"]

Filter parameter to retrieve users linked to the platform/issuer with a given states. The parameter shall be a stringified array of linkStates.

withLinks
required
boolean
Example: withLinks=true

If set 'true', user's links are retrieved as well

Responses

Response samples

Content type
application/json
{
  • "users": [
    ],
  • "count": 3,
  • "total": 543,
  • "message": "5 user(s) listed successfully"
}

Create a user

Authorizations:
access-tokenoauth2
Request Body schema: application/json
userType
required
string
Enum: "SUPERADMIN" "ADMIN" "ISSUER" "UNDERWRITER" "BROKER" "INVESTOR" "VEHICLE" "NOTARY" "VERIFIER" "NAV_MANAGER"

Must be a valid user type: SUPERADMIN | ADMIN | ISSUER | INVESTOR | VEHICLE

email
required
string

Must be a valid email

firstName
required
string

User's first name

lastName
required
string

User's last name

userNature
required
string
Enum: "NATURAL" "LEGAL"

User nature: NATURAL | LEGAL

authId
required
string

ID of user's account in auth0 (identity provider)

docuSignId
required
string

ID of user's DocuSign account (for issuers only - optional)

kycTemplateId
required
string

ID of user's KYC template (for issuers only - optional)

superUserId
required
string

ID super user's ID (only for vehicles - used to indicate who's the owner of the vehicle)

projectId
required
string

ID of project - optional - used to link user to a specific project after user creation

tokenId
required
string

ID of token - optional - used to link user to a specific token after user creation

assetClass
required
string

Asset class of token - optional - used to link user to a specific asset class of a token after user creation

auth0UserCreate
required
boolean

If set to true, corresponding user shall be created in Auth0

auth0UserPassword
required
string

If 'auth0UserCreate' is set to true, this parameter can be used to define user's password in Auth0

data
required
object

Object to store any additional data (potentially use case related data)

Responses

Request samples

Content type
application/json
{
  • "userType": "INVESTOR",
  • "email": "[email protected]",
  • "firstName": "John",
  • "lastName": "Doe",
  • "userNature": "NATURAL",
  • "authId": "auth0|5fe0ce446843db0077c47e43",
  • "docuSignId": "767db668-ad45-4100-ac57-e6d39a9f7162",
  • "kycTemplateId": "string",
  • "superUserId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "projectId": "d4192b60-79b5-429c-9160-e862b5a3e370",
  • "tokenId": "423baf7e-66fc-4e40-a5d6-4b7384bd665d",
  • "assetClass": "classa",
  • "auth0UserCreate": true,
  • "auth0UserPassword": "xxx",
  • "data": { }
}

Response samples

Content type
application/json
{
  • "user": {
    },
  • "newUser": true,
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 successfully created"
}

Retrieve a user

Authorizations:
access-tokenoauth2
path Parameters
userId
required
string
Example: 3611ab62-94a9-4782-890f-221a64518c83

Id of user to retrieve

query Parameters
withVehicles
required
boolean
Example: withVehicles=true

If set 'true', user's vehicles are retrieved as well. If set to 'false', only user's data is returned

withBalances
required
boolean
Example: withBalances=true

If set 'true', and 'tokenId' is parameter is specified, user's balances for the specified token are retrieved as well

withEthBalance
required
boolean
Example: withEthBalance=true

If set 'true', user's ETH balances is retrieved as well

tokenId
required
string
Example: tokenId=423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token - optional - used to retrieve a user's token-related data

projectId
required
string
Example: projectId=423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of project - optional - used to retrieve a user's project-related data

assetClass
required
string
Example: assetClass=classa

Asset class of token - optional - used to retrieve a user's asset-class-related data

Responses

Response samples

Content type
application/json
{
  • "user": {
    },
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 retrieved successfully"
}

Update a user

Authorizations:
access-tokenoauth2
path Parameters
userId
required
string
Example: 3611ab62-94a9-4782-890f-221a64518c83

Id of user to update

Request Body schema: application/json
updatedParameters
required
object

User parameters to update

Responses

Request samples

Content type
application/json
{
  • "updatedParameters": {
    }
}

Response samples

Content type
application/json
{
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 updated successfully"
}

Delete a user

Authorizations:
access-tokenoauth2
path Parameters
userId
required
string
Example: 3611ab62-94a9-4782-890f-221a64518c83

Id of user to delete

query Parameters
auth0UserDelete
required
boolean
Example: auth0UserDelete=true

If set to true, corresponding user shall be deleted in Auth0

Responses

Response samples

Content type
application/json
{
  • "deletedElementInstances": [
    ],
  • "deletedElementReviews": [
    ],
  • "deletedTemplateReviews": [
    ],
  • "deletedTokenDeployments": [
    ],
  • "deletedActions": [
    ],
  • "deletedOrders": [
    ],
  • "deletedLinks": [
    ],
  • "deletedAuth0Users": [
    ],
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 deleted successfully"
}

Retrieve a user, as a verifier

Authorizations:
access-tokenoauth2
path Parameters
userId
required
string
Example: 3611ab62-94a9-4782-890f-221a64518c83

Id of user to retrieve

query Parameters
withVehicles
required
boolean
Example: withVehicles=true

If set 'true', user's vehicles are retrieved as well. If set to 'false', only user's data is returned

withBalances
required
boolean
Example: withBalances=true

If set 'true', and 'tokenId' is parameter is specified, user's balances for the specified token are retrieved as well

withEthBalance
required
boolean
Example: withEthBalance=true

If set 'true', user's ETH balances is retrieved as well

tokenId
required
string
Example: tokenId=423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token - optional - used to retrieve a user's token-related data

projectId
required
string
Example: projectId=423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of project - optional - used to retrieve a user's project-related data

assetClass
required
string
Example: assetClass=classa

Asset class of token - optional - used to retrieve a user's asset-class-related data

issuerId
required
string
Example: issuerId=3611ab62-94a9-4782-890f-221a64518c83

ID of issuer - optional - used to retrieve a user's issuer-related data as a verifier, underwriter, or broker

Responses

Response samples

Content type
application/json
{
  • "user": {
    },
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 retrieved successfully"
}

Retrieve a user, as an underwriter

Authorizations:
access-tokenoauth2
path Parameters
userId
required
string
Example: 3611ab62-94a9-4782-890f-221a64518c83

Id of user to retrieve

query Parameters
withVehicles
required
boolean
Example: withVehicles=true

If set 'true', user's vehicles are retrieved as well. If set to 'false', only user's data is returned

withBalances
required
boolean
Example: withBalances=true

If set 'true', and 'tokenId' is parameter is specified, user's balances for the specified token are retrieved as well

withEthBalance
required
boolean
Example: withEthBalance=true

If set 'true', user's ETH balances is retrieved as well

tokenId
required
string
Example: tokenId=423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token - optional - used to retrieve a user's token-related data

projectId
required
string
Example: projectId=423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of project - optional - used to retrieve a user's project-related data

assetClass
required
string
Example: assetClass=classa

Asset class of token - optional - used to retrieve a user's asset-class-related data

issuerId
required
string
Example: issuerId=3611ab62-94a9-4782-890f-221a64518c83

ID of issuer - optional - used to retrieve a user's issuer-related data as a verifier, underwriter, or broker

Responses

Response samples

Content type
application/json
{
  • "user": {
    },
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 retrieved successfully"
}

Retrieve a user, as an broker

Authorizations:
access-tokenoauth2
path Parameters
userId
required
string
Example: 3611ab62-94a9-4782-890f-221a64518c83

Id of user to retrieve

query Parameters
withVehicles
required
boolean
Example: withVehicles=true

If set 'true', user's vehicles are retrieved as well. If set to 'false', only user's data is returned

withBalances
required
boolean
Example: withBalances=true

If set 'true', and 'tokenId' is parameter is specified, user's balances for the specified token are retrieved as well

withEthBalance
required
boolean
Example: withEthBalance=true

If set 'true', user's ETH balances is retrieved as well

tokenId
required
string
Example: tokenId=423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token - optional - used to retrieve a user's token-related data

projectId
required
string
Example: projectId=423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of project - optional - used to retrieve a user's project-related data

assetClass
required
string
Example: assetClass=classa

Asset class of token - optional - used to retrieve a user's asset-class-related data

issuerId
required
string
Example: issuerId=3611ab62-94a9-4782-890f-221a64518c83

ID of issuer - optional - used to retrieve a user's issuer-related data as a verifier, underwriter, or broker

Responses

Response samples

Content type
application/json
{
  • "user": {
    },
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 retrieved successfully"
}

Select a notary, as an admin or as an issuer

Authorizations:
access-tokenoauth2
path Parameters
userId
required
string
Example: 423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of admin/issuer, the notary shall be added to

Request Body schema: application/json
notaryId
required
string

ID of user, who shall be added as notary to token

Responses

Request samples

Content type
application/json
{
  • "notaryId": "3611ab62-94a9-4782-890f-221a64518c83"
}

Response samples

Content type
application/json
{
  • "link": {
    },
  • "newLink": true,
  • "message": "Notary 3611ab62-94a9-4782-890f-221a64518c83 successfully added to token 423baf7e-66fc-4e40-a5d6-4b7384bd665d"
}

Select a verifier, as an admin or as an issuer

Authorizations:
access-tokenoauth2
path Parameters
userId
required
string
Example: 423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of admin/issuer, the verifier shall be added to

Request Body schema: application/json
verifierId
required
string

ID of user, who shall be added as verifier to token

Responses

Request samples

Content type
application/json
{
  • "verifierId": "3611ab62-94a9-4782-890f-221a64518c83"
}

Response samples

Content type
application/json
{
  • "link": {
    },
  • "newLink": true,
  • "message": "Verifier 3611ab62-94a9-4782-890f-221a64518c83 successfully added to token 423baf7e-66fc-4e40-a5d6-4b7384bd665d"
}

Select a NAV manager, as an admin or as an issuer

Authorizations:
access-tokenoauth2
path Parameters
userId
required
string
Example: 423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of admin/issuer, the NAV manager shall be added to

Request Body schema: application/json
navManagerId
required
string

ID of user, who shall be added as NAV manager to token

Responses

Request samples

Content type
application/json
{
  • "navManagerId": "3611ab62-94a9-4782-890f-221a64518c83"
}

Response samples

Content type
application/json
{
  • "link": {
    },
  • "newLink": true,
  • "message": "NAV manager 3611ab62-94a9-4782-890f-221a64518c83 successfully added to token 423baf7e-66fc-4e40-a5d6-4b7384bd665d"
}

Wallets

Ethereum wallets can be managed on the platform. Wallets allow to sign blockchain transactions. Wallets can either be generated and stored in a vault managed by Codefi or managed by the API user himself. In this last case, the wallet just needs to be registered in the API, even though transactions will be signed outside the API.

List all wallets

Authorizations:
access-tokenoauth2
path Parameters
userId
required
string
Example: 3611ab62-94a9-4782-890f-221a64518c83

Id of user wallets shall be listed for

Responses

Response samples

Content type
application/json
{
  • "defaultWallet": "0xd200b5d89f719473573be585eadedc8c916e5515",
  • "wallets": [
    ],
  • "message": "5 wallet(s) listed successfully for user: 3611ab62-94a9-4782-890f-221a64518c83"
}

Create (or register) new wallet

Authorizations:
access-tokenoauth2
path Parameters
userId
required
string
Example: 3611ab62-94a9-4782-890f-221a64518c83

Id of user wallet shall be created for

query Parameters
setAsDefault
required
boolean
Example: setAsDefault=true

If set to true, the created wallet shall be set as default wallet for the user

Request Body schema: application/json
walletType
required
string
Enum: "vault" "vault_deprecated" "ledger"

Must be a valid wallet type: vault | ledger

walletAddress
required
string

Must be a valid Ethereum address: address of wallet to register (only if wallet type == ledger)

data
required
object

Additional data can be attached to the wallet

Responses

Request samples

Content type
application/json
{
  • "walletType": "vault",
  • "walletAddress": "0xd200b5d89f719473573be585eadedc8c916e5515",
  • "data": {
    }
}

Response samples

Content type
application/json
{
  • "wallet": {
    },
  • "message": "Wallet 0xd200b5d89f719473573be585eadedc8c916e5515 created successfully for user 3611ab62-94a9-4782-890f-221a64518c83"
}

Retrieve wallet

Authorizations:
access-tokenoauth2
path Parameters
userId
required
string
Example: 3611ab62-94a9-4782-890f-221a64518c83

Id of user wallet shall be retrieved for

walletAddress
required
string
Example: 0xd200b5d89f719473573be585eadedc8c916e5515

Address of wallet to retrieve

Responses

Response samples

Content type
application/json
{
  • "wallet": {
    },
  • "message": "Wallet 0xd200b5d89f719473573be585eadedc8c916e5515 retrieved successfully for user 3611ab62-94a9-4782-890f-221a64518c83"
}

Update wallet

Authorizations:
access-tokenoauth2
path Parameters
userId
required
string
Example: 3611ab62-94a9-4782-890f-221a64518c83

Id of user wallet shall be updated for

walletAddress
required
string
Example: 0xd200b5d89f719473573be585eadedc8c916e5515

Address of wallet to update

query Parameters
setAsDefault
required
boolean
Example: setAsDefault=true

If set to true, the updated wallet shall be set as default wallet for the user

Request Body schema: application/json
data
required
object

Additional data can be attached to the wallet

Responses

Request samples

Content type
application/json
{
  • "data": {
    }
}

Response samples

Content type
application/json
{
  • "wallet": {
    },
  • "message": "Wallet 0xd200b5d89f719473573be585eadedc8c916e5515 updated successfully for user 3611ab62-94a9-4782-890f-221a64518c83"
}

Delete wallet

Authorizations:
access-tokenoauth2
path Parameters
userId
required
string
Example: 3611ab62-94a9-4782-890f-221a64518c83

Id of user wallet shall be deleted for

walletAddress
required
string
Example: 0xd200b5d89f719473573be585eadedc8c916e5515

Address of wallet to delete

Responses

Response samples

Content type
application/json
{
  • "message": "Wallet 0xd200b5d89f719473573be585eadedc8c916e5515 deleted successfully for user 3611ab62-94a9-4782-890f-221a64518c83"
}

Fungible tokens

Fungible tokens can be managed on the platform. Fungible tokens are all identical and can not be distinguished from each other. The token standard used for fungible tokens in this API is an inheritance of OpenZeppelin ERC20 and Ownable smart contracts. It verifies ERC20 interface.

Create a new fungible token

Authorizations:
access-tokenoauth2
Request Body schema: application/json
tokenStandard
required
string
Enum: "BatchBalanceReader" "BatchReader" "BatchTokenIssuer" "ERC20Token" "ERC721Token" "ERC1400ERC20" "ERC1400CertificateNonce" "ERC1400CertificateSalt" "ERC1400HoldableCertificateToken" "ERC1400TokensValidator" "DVPHoldableLockable"

Must be a valid fungible token standard: ERC20Token

name
required
string

Token name

symbol
required
string

Must be a less than 12 characters long

kycTemplateId
required
string

ID of the KYC template investors that will be applied to investors (leave undefined if no KYC will be requested from investors)

wallet
required
string

Address of wallet to use to create the token (only required if not the default wallet)

chainId
required
string

ID of the chain/network where the token shall be created

picture
required
string

Picture of the asset

description
required
string

Must be a less than 500 characters long

bankDepositDetail
required
object

Object containing bank account infos

data
required
object

Object to store any additional data (potentially use case related data)

notaryId
required
object

Must be a valid notary ID. Used to attach a notary to the token, thus allowing him to access all token data (investors, balances, etc.)

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

tokenAddress
required
object

Must be valid smart contract address, already deployed on the specified network, and where the issuer is already a minter

bypassSecondaryTradeIssuerApproval
required
boolean

If set 'true', Issuer is not required to approve secondary trade orders

initialSupplies
required
Array of objects

Array of initial supplies to be minted right after asset creation

Responses

Request samples

Content type
application/json
{
  • "tokenStandard": "ERC20Token",
  • "name": "CodefiToken",
  • "symbol": "CODEFI",
  • "kycTemplateId": "b32f6346-53b5-4cc6-a3f3-0012ed5e67a3",
  • "wallet": "0xd200b5d89f719473573be585eadedc8c916e5515",
  • "chainId": "1",
  • "picture": "assetImage.png",
  • "description": "Shares of a real estate fund",
  • "bankDepositDetail": {
    },
  • "data": {
    },
  • "notaryId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "sendNotification": true,
  • "tokenAddress": "0xb76b40231c176cd6435f83153796d1af18b4c9a7",
  • "bypassSecondaryTradeIssuerApproval": true,
  • "initialSupplies": [
    ]
}

Response samples

Content type
application/json
{
  • "token": {
    },
  • "tokenAction": {
    },
  • "updated": true,
  • "transactionId": "string",
  • "message": "Token 423baf7e-66fc-4e40-a5d6-4b7384bd665d created successfully (transaction sent)"
}

Retrieve a fungible token

Authorizations:
access-tokenoauth2
path Parameters
tokenId
required
string
Example: 423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token to retrieve

query Parameters
withVehicles
required
boolean
Example: withVehicles=true

If set 'true', user's vehicles, linked to the specified token, are retrieved as well

withBalances
required
boolean
Example: withBalances=true

If set 'true', user's balances for the specified token are retrieved as well

withEthBalance
required
boolean
Example: withEthBalance=true

If set 'true', user's ETH balance, on the network where the specified token is deployed, is retrieved as well

withCycles
required
boolean

Responses

Response samples

Content type
application/json
{
  • "token": {
    },
  • "message": "Fungible token 423baf7e-66fc-4e40-a5d6-4b7384bd665d retrieved successfully"
}

Update a fungible token

Authorizations:
access-tokenoauth2
path Parameters
tokenId
required
string
Example: 423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token to update

Request Body schema: application/json
updatedParameters
required
object

Token parameters to update

Responses

Request samples

Content type
application/json
{
  • "updatedParameters": {
    }
}

Response samples

Content type
application/json
{
  • "token": {
    },
  • "message": "Fungible token 423baf7e-66fc-4e40-a5d6-4b7384bd665d updated successfully"
}

Delete a fungible token

Authorizations:
access-tokenoauth2
path Parameters
tokenId
required
string
Example: 423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token to update

Responses

Response samples

Content type
application/json
{
  • "deletedCycles": [
    ],
  • "deletedElementReviews": [
    ],
  • "deletedTemplateReviews": [
    ],
  • "deletedTokenDeployments": [
    ],
  • "deletedNavs": [
    ],
  • "deletedActions": [
    ],
  • "deletedOrders": [
    ],
  • "deletedLinks": [
    ],
  • "deletedOffers": [
    ],
  • "message": "Token 423baf7e-66fc-4e40-a5d6-4b7384bd665d deleted successfully"
}

Mint fungible tokens

Authorizations:
access-tokenoauth2
path Parameters
tokenId
required
string
Example: 423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token, where a minting transaction shall be executed

Request Body schema: application/json
idempotencyKey
required
string

[OPTIONAL] Idempotency key (shall be unique and generated on client side), used to ensure object is not created twice

recipientId
required
string

ID of the user, tokens shall be minted for

quantity
required
number

Quantity of tokens to mint

forcePrice
required
number

Optional parameter to force the price of the operation. If not defined, price will be set automatically, based on NAV value (recommended).

data
required
object

Object to store any additional data (potentially use case related data)

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "idempotencyKey": "ae5a189f-bcb4-4170-8122-de3a9fe62e94",
  • "recipientId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "quantity": 10000,
  • "forcePrice": 10,
  • "data": {
    },
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "tokenAction": {
    },
  • "created": true,
  • "transactionId": "b8cb9c69-0996-4a01-b94e-fe4e8b90dbac",
  • "message": "Token 423baf7e-66fc-4e40-a5d6-4b7384bd665d minted successfully"
}

Transfer fungible tokens

Authorizations:
access-tokenoauth2
path Parameters
tokenId
required
string
Example: 423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token, where a transfer transaction shall be executed

Request Body schema: application/json
idempotencyKey
required
string

[OPTIONAL] Idempotency key (shall be unique and generated on client side), used to ensure object is not created twice

recipientId
required
string

ID of the user, tokens shall be transferred to

quantity
required
number

Quantity of tokens to transfer

forcePrice
required
number

Optional parameter to force the price of the operation. If not defined, price will be set automatically, based on NAV value (recommended).

data
required
object

Object to store any additional data (potentially use case related data)

Responses

Request samples

Content type
application/json
{
  • "idempotencyKey": "ae5a189f-bcb4-4170-8122-de3a9fe62e94",
  • "recipientId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "quantity": 10000,
  • "forcePrice": 10,
  • "data": {
    }
}

Response samples

Content type
application/json
{
  • "tokenAction": {
    },
  • "created": true,
  • "transactionId": "b8cb9c69-0996-4a01-b94e-fe4e8b90dbac",
  • "message": "Token 423baf7e-66fc-4e40-a5d6-4b7384bd665d transferred successfully"
}

Burn fungible tokens

Authorizations:
access-tokenoauth2
path Parameters
tokenId
required
string
Example: 423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token, where a burn transaction shall be executed

Request Body schema: application/json
idempotencyKey
required
string

[OPTIONAL] Idempotency key (shall be unique and generated on client side), used to ensure object is not created twice

quantity
required
number

Quantity of tokens to burn

forcePrice
required
number

Optional parameter to force the price of the operation. If not defined, price will be set automatically, based on NAV value (recommended).

data
required
object

Object to store any additional data (potentially use case related data)

Responses

Request samples

Content type
application/json
{
  • "idempotencyKey": "ae5a189f-bcb4-4170-8122-de3a9fe62e94",
  • "quantity": 10000,
  • "forcePrice": 10,
  • "data": {
    }
}

Response samples

Content type
application/json
{
  • "tokenAction": {
    },
  • "created": true,
  • "transactionId": "b8cb9c69-0996-4a01-b94e-fe4e8b90dbac",
  • "message": "Token 423baf7e-66fc-4e40-a5d6-4b7384bd665d burned successfully"
}

Non-fungible tokens

Non-fungible tokens can be managed on the platform. Non-fungible tokens are all unique and can be distinguished from each other. The token standard used for non-fungible tokens in this API is an inheritance of OpenZeppelin ERC721 and Ownable smart contracts. It verifies ERC721 interface.

Create a new non-fungible token

Authorizations:
access-tokenoauth2
Request Body schema: application/json
tokenStandard
required
string
Enum: "BatchBalanceReader" "BatchReader" "BatchTokenIssuer" "ERC20Token" "ERC721Token" "ERC1400ERC20" "ERC1400CertificateNonce" "ERC1400CertificateSalt" "ERC1400HoldableCertificateToken" "ERC1400TokensValidator" "DVPHoldableLockable"

Must be a valid non-fungible token standard: ERC721Token

name
required
string

Token name

symbol
required
string

Must be a less than 12 characters long

kycTemplateId
required
string

ID of the KYC template investors that will be applied to investors (leave undefined if no KYC will be requested from investors)

wallet
required
string

Address of wallet to use to create the token (only required if not the default wallet)

chainId
required
string

ID of the chain/network where the token shall be created

picture
required
string

Picture of the asset

description
required
string

Must be a less than 500 characters long

bankDepositDetail
required
object

Object containing bank account infos

data
required
object

Object to store any additional data (potentially use case related data)

notaryId
required
object

Must be a valid notary ID. Used to attach a notary to the token, thus allowing him to access all token data (investors, balances, etc.)

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

tokenAddress
required
object

Must be valid smart contract address, already deployed on the specified network, and where the issuer is already a minter

bypassSecondaryTradeIssuerApproval
required
boolean

If set 'true', Issuer is not required to approve secondary trade orders

initialSupplies
required
Array of objects

Array of initial supplies to be minted right after asset creation

Responses

Request samples

Content type
application/json
{
  • "tokenStandard": "ERC721Token",
  • "name": "CodefiToken",
  • "symbol": "CODEFI",
  • "kycTemplateId": "b32f6346-53b5-4cc6-a3f3-0012ed5e67a3",
  • "wallet": "0xd200b5d89f719473573be585eadedc8c916e5515",
  • "chainId": "1",
  • "picture": "assetImage.png",
  • "description": "Shares of a real estate fund",
  • "bankDepositDetail": {
    },
  • "data": {
    },
  • "notaryId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "sendNotification": true,
  • "tokenAddress": "0xb76b40231c176cd6435f83153796d1af18b4c9a7",
  • "bypassSecondaryTradeIssuerApproval": true,
  • "initialSupplies": [
    ]
}

Response samples

Content type
application/json
{
  • "token": {
    },
  • "tokenAction": {
    },
  • "updated": true,
  • "transactionId": "string",
  • "message": "Token 423baf7e-66fc-4e40-a5d6-4b7384bd665d created successfully (transaction sent)"
}

Retrieve a non-fungible token

Authorizations:
access-tokenoauth2
path Parameters
tokenId
required
string
Example: 423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token to retrieve

query Parameters
withVehicles
required
boolean
Example: withVehicles=true

If set 'true', user's vehicles, linked to the specified token, are retrieved as well

withBalances
required
boolean
Example: withBalances=true

If set 'true', user's balances for the specified token are retrieved as well

withEthBalance
required
boolean
Example: withEthBalance=true

If set 'true', user's ETH balance, on the network where the specified token is deployed, is retrieved as well

withCycles
required
boolean

Responses

Response samples

Content type
application/json
{
  • "token": {
    },
  • "message": "Nonfungible token 423baf7e-66fc-4e40-a5d6-4b7384bd665d retrieved successfully"
}

Update a non-fungible token

Authorizations:
access-tokenoauth2
path Parameters
tokenId
required
string
Example: 423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token to update

Request Body schema: application/json
updatedParameters
required
object

Token parameters to update

Responses

Request samples

Content type
application/json
{
  • "updatedParameters": {
    }
}

Response samples

Content type
application/json
{
  • "token": {
    },
  • "message": "Nonfungible token 423baf7e-66fc-4e40-a5d6-4b7384bd665d updated successfully"
}

Delete a non-fungible token

Authorizations:
access-tokenoauth2
path Parameters
tokenId
required
string
Example: 423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token to update

Responses

Response samples

Content type
application/json
{
  • "deletedCycles": [
    ],
  • "deletedElementReviews": [
    ],
  • "deletedTemplateReviews": [
    ],
  • "deletedTokenDeployments": [
    ],
  • "deletedNavs": [
    ],
  • "deletedActions": [
    ],
  • "deletedOrders": [
    ],
  • "deletedLinks": [
    ],
  • "deletedOffers": [
    ],
  • "message": "Token 423baf7e-66fc-4e40-a5d6-4b7384bd665d deleted successfully"
}

Mint non-fungible tokens

Authorizations:
access-tokenoauth2
path Parameters
tokenId
required
string
Example: 423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token, where a minting transaction shall be executed

Request Body schema: application/json
idempotencyKey
required
string

[OPTIONAL] Idempotency key (shall be unique and generated on client side), used to ensure object is not created twice

recipientId
required
string

ID of the user, tokens shall be minted for

identifier
required
string

Identifier of token to mint (shall be less than 16 characters long)

forcePrice
required
number

Optional parameter to force the price of the operation. If not defined, price will be set automatically, based on NAV value (recommended).

data
required
object

Object to store any additional data (potentially use case related data)

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "idempotencyKey": "ae5a189f-bcb4-4170-8122-de3a9fe62e94",
  • "recipientId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "identifier": "classA",
  • "forcePrice": 10,
  • "data": {
    },
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "tokenAction": {
    },
  • "created": true,
  • "transactionId": "b8cb9c69-0996-4a01-b94e-fe4e8b90dbac",
  • "message": "Token 423baf7e-66fc-4e40-a5d6-4b7384bd665d minted successfully"
}

Transfer non-fungible tokens

Authorizations:
access-tokenoauth2
path Parameters
tokenId
required
string
Example: 423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token, where a transfer transaction shall be executed

Request Body schema: application/json
idempotencyKey
required
string

[OPTIONAL] Idempotency key (shall be unique and generated on client side), used to ensure object is not created twice

recipientId
required
string

ID of the user, tokens shall be transferred to

identifier
required
string

Identifier of token to transfer

forcePrice
required
number

Optional parameter to force the price of the operation. If not defined, price will be set automatically, based on NAV value (recommended).

data
required
object

Object to store any additional data (potentially use case related data)

Responses

Request samples

Content type
application/json
{
  • "idempotencyKey": "ae5a189f-bcb4-4170-8122-de3a9fe62e94",
  • "recipientId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "identifier": "classA",
  • "forcePrice": 10,
  • "data": {
    }
}

Response samples

Content type
application/json
{
  • "tokenAction": {
    },
  • "created": true,
  • "transactionId": "b8cb9c69-0996-4a01-b94e-fe4e8b90dbac",
  • "message": "Token 423baf7e-66fc-4e40-a5d6-4b7384bd665d transferred successfully"
}

Burn non-fungible tokens

Authorizations:
access-tokenoauth2
path Parameters
tokenId
required
string
Example: 423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token, where a burn transaction shall be executed

Request Body schema: application/json
idempotencyKey
required
string

[OPTIONAL] Idempotency key (shall be unique and generated on client side), used to ensure object is not created twice

identifier
required
string

Identifier of token to burn

forcePrice
required
number

Optional parameter to force the price of the operation. If not defined, price will be set automatically, based on NAV value (recommended).

data
required
object

Object to store any additional data (potentially use case related data)

Responses

Request samples

Content type
application/json
{
  • "idempotencyKey": "ae5a189f-bcb4-4170-8122-de3a9fe62e94",
  • "identifier": "classA",
  • "forcePrice": 10,
  • "data": {
    }
}

Response samples

Content type
application/json
{
  • "tokenAction": {
    },
  • "created": true,
  • "transactionId": "b8cb9c69-0996-4a01-b94e-fe4e8b90dbac",
  • "message": "Token 423baf7e-66fc-4e40-a5d6-4b7384bd665d burned successfully"
}

Hybrid tokens

Hybrid tokens can be managed on the platform. Hybrid tokens are partially-fungible, which means tokens can be given a class/state and are fungible inside a given class/state. The token standard used for hybrid tokens in this API is the Universal Token smart contract (https://github.com/ConsenSys/UniversalToken). It verifies both ERC20 and ERC1400 interfaces.

Create a new hybrid token

Authorizations:
access-tokenoauth2
Request Body schema: application/json
tokenStandard
required
string
Enum: "BatchBalanceReader" "BatchReader" "BatchTokenIssuer" "ERC20Token" "ERC721Token" "ERC1400ERC20" "ERC1400CertificateNonce" "ERC1400CertificateSalt" "ERC1400HoldableCertificateToken" "ERC1400TokensValidator" "DVPHoldableLockable"

Must be a valid hybrid token standard: ERC1400HoldableCertificateToken

name
required
string

Token name

symbol
required
string

Must be a less than 12 characters long

classes
required
Array of strings

Each class must be a less than 20 characters long

kycTemplateId
required
string

ID of the KYC template investors that will be applied to investors (leave undefined if no KYC will be requested from investors)

certificateActivated
required
boolean

[DEPRECATED - Replaced by certificateType] If set to true, no token action (mint, transfer, burn) can be performed without certificates generated by Codefi API (security).

certificateType
required
string
Enum: "NONE" "NONCE" "SALT" "NONE_OR_NONCE_OR_SALT"

Type of certificate validation. Shall be chosen amongst NONE, NONCE and SALT

unregulatedERC20transfersActivated
required
boolean

If set to true, tokens from default partitions can be transferred without restriction, e.g. with unregulated ERC20 transfers

wallet
required
string

Address of wallet to use to create the token (only required if not the default wallet)

chainId
required
string

ID of the chain/network where the token shall be created

picture
required
string

Picture of the asset

description
required
string

Must be a less than 500 characters long

bankDepositDetail
required
object

Object containing bank account infos

data
required
object

Object to store any additional data (potentially use case related data)

notaryId
required
object

Must be a valid notary ID. Used to attach a notary to the token, thus allowing him to access all token data (investors, balances, etc.)

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

tokenAddress
required
object

Must be valid smart contract address, already deployed on the specified network, and where the issuer is already a minter

customExtensionAddress
required
string

[OPTIONAL] Address of "custom" extension contract, the token contract will be linked to. If undefined, token contract will be linked to "generic" extension contract by default.

initialOwnerAddress
required
string

[OPTIONAL] Address, the token contract ownership shall be transferred to. If undefined, token contract will not be transferred (but this can still be done afterwards).

bypassSecondaryTradeIssuerApproval
required
boolean

If set 'true', Issuer is not required to approve secondary trade orders

initialSupplies
required
Array of objects

Array of initial supplies to be minted right after asset creation

Responses

Request samples

Content type
application/json
{
  • "tokenStandard": "ERC1400HoldableCertificateToken",
  • "name": "CodefiToken",
  • "symbol": "CODEFI",
  • "classes": [
    ],
  • "kycTemplateId": "b32f6346-53b5-4cc6-a3f3-0012ed5e67a3",
  • "certificateActivated": true,
  • "certificateType": true,
  • "unregulatedERC20transfersActivated": true,
  • "wallet": "0xd200b5d89f719473573be585eadedc8c916e5515",
  • "chainId": "1",
  • "picture": "assetImage.png",
  • "description": "Shares of a real estate fund",
  • "bankDepositDetail": {
    },
  • "data": {
    },
  • "notaryId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "sendNotification": true,
  • "tokenAddress": "0xb76b40231c176cd6435f83153796d1af18b4c9a7",
  • "customExtensionAddress": "0x0089d53F703f7E0843953D48133f74cE247184c2",
  • "initialOwnerAddress": "0x0089d53F703f7E0843953D48133f74cE247184c2",
  • "bypassSecondaryTradeIssuerApproval": true,
  • "initialSupplies": [
    ]
}

Response samples

Content type
application/json
{
  • "token": {
    },
  • "tokenAction": {
    },
  • "updated": true,
  • "transactionId": "string",
  • "message": "Token 423baf7e-66fc-4e40-a5d6-4b7384bd665d created successfully (transaction sent)"
}

Retrieve a hybrid token

Authorizations:
access-tokenoauth2
path Parameters
tokenId
required
string
Example: 423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token to retrieve

query Parameters
assetClass
required
string
Example: assetClass=classa

Asset class of token, that shall be retrieved ('undefined' if all asset classes shall be retrieved)

withVehicles
required
boolean
Example: withVehicles=true

If set 'true', user's vehicles, linked to the specified token, are retrieved as well

withBalances
required
boolean
Example: withBalances=true

If set 'true', user's balances for the specified token are retrieved as well

withEthBalance
required
boolean
Example: withEthBalance=true

If set 'true', user's ETH balance, on the network where the specified token is deployed, is retrieved as well

withAssetData
required
boolean
Example: withAssetData=true

If set 'true', asset Meta data of the token is retrieved as well

withCycles
required
boolean

Responses

Response samples

Content type
application/json
{
  • "token": {
    },
  • "message": "Hybrid token 423baf7e-66fc-4e40-a5d6-4b7384bd665d retrieved successfully"
}

Update a hybrid token

Authorizations:
access-tokenoauth2
path Parameters
tokenId
required
string
Example: 423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token to update

Request Body schema: application/json
updatedParameters
required
object

Token parameters to update

Responses

Request samples

Content type
application/json
{
  • "updatedParameters": {
    }
}

Response samples

Content type
application/json
{
  • "token": {
    },
  • "message": "Hybrid token 423baf7e-66fc-4e40-a5d6-4b7384bd665d updated successfully"
}

Delete a hybrid token

Authorizations:
access-tokenoauth2
path Parameters
tokenId
required
string
Example: 423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token to update

Responses

Response samples

Content type
application/json
{
  • "deletedCycles": [
    ],
  • "deletedElementReviews": [
    ],
  • "deletedTemplateReviews": [
    ],
  • "deletedTokenDeployments": [
    ],
  • "deletedNavs": [
    ],
  • "deletedActions": [
    ],
  • "deletedOrders": [
    ],
  • "deletedLinks": [
    ],
  • "deletedOffers": [
    ],
  • "message": "Token 423baf7e-66fc-4e40-a5d6-4b7384bd665d deleted successfully"
}

Mint hybrid tokens

Authorizations:
access-tokenoauth2
path Parameters
tokenId
required
string
Example: 423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token, where a minting transaction shall be executed

Request Body schema: application/json
idempotencyKey
required
string

[OPTIONAL] Idempotency key (shall be unique and generated on client side), used to ensure object is not created twice

recipientId
required
string

ID of the user, tokens shall be minted for

state
required
string
Enum: "locked" "reserved" "issued" "collateral"

State of the token to mint, chosen amongst locked,reserved,issued,collateral

class
required
string

Class of the tokens to mint (shall be less than 20 characters long)

quantity
required
number

Quantity of tokens to mint

forcePrice
required
number

Optional parameter to force the price of the operation. If not defined, price will be set automatically, based on NAV value (recommended).

data
required
object

Object to store any additional data (potentially use case related data)

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "idempotencyKey": "ae5a189f-bcb4-4170-8122-de3a9fe62e94",
  • "recipientId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "state": "locked",
  • "class": "classA",
  • "quantity": 10000,
  • "forcePrice": 10,
  • "data": {
    },
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "tokenAction": {
    },
  • "created": true,
  • "transactionId": "b8cb9c69-0996-4a01-b94e-fe4e8b90dbac",
  • "message": "Token 423baf7e-66fc-4e40-a5d6-4b7384bd665d minted successfully"
}

Transfer hybrid tokens

Authorizations:
access-tokenoauth2
path Parameters
tokenId
required
string
Example: 423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token, where a transfer transaction shall be executed

Request Body schema: application/json
idempotencyKey
required
string

[OPTIONAL] Idempotency key (shall be unique and generated on client side), used to ensure object is not created twice

recipientId
required
string

ID of the user, tokens shall be transferred to

state
required
string
Enum: "locked" "reserved" "issued" "collateral"

State of the token to transfer, chosen amongst locked,reserved,issued,collateral

class
required
string

Class of the tokens to transfer

quantity
required
number

Quantity of tokens to transfer

forcePrice
required
number

Optional parameter to force the price of the operation. If not defined, price will be set automatically, based on NAV value (recommended).

data
required
object

Object to store any additional data (potentially use case related data)

Responses

Request samples

Content type
application/json
{
  • "idempotencyKey": "ae5a189f-bcb4-4170-8122-de3a9fe62e94",
  • "recipientId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "state": "locked",
  • "class": "classA",
  • "quantity": 10000,
  • "forcePrice": 10,
  • "data": {
    }
}

Response samples

Content type
application/json
{
  • "tokenAction": {
    },
  • "created": true,
  • "transactionId": "b8cb9c69-0996-4a01-b94e-fe4e8b90dbac",
  • "message": "Token 423baf7e-66fc-4e40-a5d6-4b7384bd665d transferred successfully"
}

Burn hybrid tokens

Authorizations:
access-tokenoauth2
path Parameters
tokenId
required
string
Example: 423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token, where a burn transaction shall be executed

Request Body schema: application/json
idempotencyKey
required
string

[OPTIONAL] Idempotency key (shall be unique and generated on client side), used to ensure object is not created twice

state
required
string
Enum: "locked" "reserved" "issued" "collateral"

State of the token to burn, chosen amongst locked,reserved,issued,collateral

class
required
string

Class of the tokens to burn

quantity
required
number

Quantity of tokens to burn

forcePrice
required
number

Optional parameter to force the price of the operation. If not defined, price will be set automatically, based on NAV value (recommended).

data
required
object

Object to store any additional data (potentially use case related data)

Responses

Request samples

Content type
application/json
{
  • "idempotencyKey": "ae5a189f-bcb4-4170-8122-de3a9fe62e94",
  • "state": "locked",
  • "class": "classA",
  • "quantity": 10000,
  • "forcePrice": 10,
  • "data": {
    }
}

Response samples

Content type
application/json
{
  • "tokenAction": {
    },
  • "created": true,
  • "transactionId": "b8cb9c69-0996-4a01-b94e-fe4e8b90dbac",
  • "message": "Token 423baf7e-66fc-4e40-a5d6-4b7384bd665d burned successfully"
}

Force transfer of hybrid tokens

Authorizations:
access-tokenoauth2
path Parameters
tokenId
required
string
Example: 423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token, where a transfer transaction shall be executed

Request Body schema: application/json
idempotencyKey
required
string

[OPTIONAL] Idempotency key (shall be unique and generated on client side), used to ensure object is not created twice

investorId
required
string

ID of the user, whom tokens shall be transferred from

recipientId
required
string

ID of the user, whom tokens shall be transferred to

state
required
string
Enum: "locked" "reserved" "issued" "collateral"

State of the token to transfer, chosen amongst locked,reserved,issued,collateral

class
required
string

Class of the tokens to transfer

quantity
required
number

Quantity of tokens to transfer

forcePrice
required
number

Optional parameter to force the price of the operation. If not defined, price will be set automatically, based on NAV value (recommended).

data
required
object

Object to store any additional data (potentially use case related data)

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "idempotencyKey": "ae5a189f-bcb4-4170-8122-de3a9fe62e94",
  • "investorId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "recipientId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "state": "locked",
  • "class": "classA",
  • "quantity": 10000,
  • "forcePrice": 10,
  • "data": {
    },
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "tokenAction": {
    },
  • "created": true,
  • "transactionId": "b8cb9c69-0996-4a01-b94e-fe4e8b90dbac",
  • "message": "Token 423baf7e-66fc-4e40-a5d6-4b7384bd665d transferred successfully"
}

Force burn of hybrid tokens

Authorizations:
access-tokenoauth2
path Parameters
tokenId
required
string
Example: 423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token, where a burn transaction shall be executed

Request Body schema: application/json
idempotencyKey
required
string

[OPTIONAL] Idempotency key (shall be unique and generated on client side), used to ensure object is not created twice

investorId
required
string

ID of the user, whom tokens shall be burned from

state
required
string
Enum: "locked" "reserved" "issued" "collateral"

State of the token to burn, chosen amongst locked,reserved,issued,collateral

class
required
string

Class of the tokens to burn

quantity
required
number

Quantity of tokens to burn

forcePrice
required
number

Optional parameter to force the price of the operation. If not defined, price will be set automatically, based on NAV value (recommended).

data
required
object

Object to store any additional data (potentially use case related data)

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "idempotencyKey": "ae5a189f-bcb4-4170-8122-de3a9fe62e94",
  • "investorId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "state": "locked",
  • "class": "classA",
  • "quantity": 10000,
  • "forcePrice": 10,
  • "data": {
    },
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "tokenAction": {
    },
  • "created": true,
  • "transactionId": "b8cb9c69-0996-4a01-b94e-fe4e8b90dbac",
  • "message": "Token 423baf7e-66fc-4e40-a5d6-4b7384bd665d burned successfully"
}

Update state of hybrid tokens

Authorizations:
access-tokenoauth2
path Parameters
tokenId
required
string
Example: 423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token, where an updateState transaction shall be executed

Request Body schema: application/json
idempotencyKey
required
string

[OPTIONAL] Idempotency key (shall be unique and generated on client side), used to ensure object is not created twice

state
required
string
Enum: "locked" "reserved" "issued" "collateral"

State of the token to update, chosen amongst locked,reserved,issued,collateral

class
required
string

Class of the tokens to update

destinationState
required
string
Enum: "locked" "reserved" "issued" "collateral"

Destination state of the token to update, chosen amongst locked,reserved,issued,collateral

quantity
required
number

Quantity of tokens to update

forcePrice
required
number

Optional parameter to force the price of the operation. If not defined, price will be set automatically, based on NAV value (recommended).

data
required
object

Object to store any additional data (potentially use case related data)

emailRemarks
required
string

Remarks in the email notification

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "idempotencyKey": "ae5a189f-bcb4-4170-8122-de3a9fe62e94",
  • "state": "locked",
  • "class": "classA",
  • "destinationState": "issued",
  • "quantity": 10000,
  • "forcePrice": 10,
  • "data": {
    },
  • "emailRemarks": "[\"I would like to retire these credit, to offset 1,000 tonnes of carbon produced by the beneficiary oin 2021.\"]",
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "tokenAction": {
    },
  • "created": true,
  • "transactionId": "b8cb9c69-0996-4a01-b94e-fe4e8b90dbac",
  • "message": "Token 423baf7e-66fc-4e40-a5d6-4b7384bd665d state updated successfully"
}

Force update state of hybrid tokens

Authorizations:
access-tokenoauth2
path Parameters
tokenId
required
string
Example: 423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token, where an updateState transaction shall be executed

Request Body schema: application/json
idempotencyKey
required
string

[OPTIONAL] Idempotency key (shall be unique and generated on client side), used to ensure object is not created twice

investorId
required
string

ID of the user, tokens' state shall be updated from

state
required
string
Enum: "locked" "reserved" "issued" "collateral"

State of the token to update, chosen amongst locked,reserved,issued,collateral

class
required
string

Class of the tokens to update

destinationState
required
string
Enum: "locked" "reserved" "issued" "collateral"

Destination state of the token to update, chosen amongst locked,reserved,issued,collateral

quantity
required
number

Quantity of tokens to update

forcePrice
required
number

Optional parameter to force the price of the operation. If not defined, price will be set automatically, based on NAV value (recommended).

data
required
object

Object to store any additional data (potentially use case related data)

Responses

Request samples

Content type
application/json
{
  • "idempotencyKey": "ae5a189f-bcb4-4170-8122-de3a9fe62e94",
  • "investorId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "state": "locked",
  • "class": "classA",
  • "destinationState": "issued",
  • "quantity": 10000,
  • "forcePrice": 10,
  • "data": {
    }
}

Response samples

Content type
application/json
{
  • "tokenAction": {
    },
  • "created": true,
  • "transactionId": "b8cb9c69-0996-4a01-b94e-fe4e8b90dbac",
  • "message": "Token 423baf7e-66fc-4e40-a5d6-4b7384bd665d state updated successfully"
}

Update class of hybrid tokens

Authorizations:
access-tokenoauth2
path Parameters
tokenId
required
string
Example: 423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token, where an updateClass transaction shall be executed

Request Body schema: application/json
idempotencyKey
required
string

[OPTIONAL] Idempotency key (shall be unique and generated on client side), used to ensure object is not created twice

investorId
required
string

ID of the user, tokens' class shall be updated from

state
required
string
Enum: "locked" "reserved" "issued" "collateral"

State of the token to update, chosen amongst locked,reserved,issued,collateral

class
required
string

Class of the tokens to update

destinationClass
required
string

Destination class of the token to update (shall be less than 20 characters long)

quantity
required
number

Quantity of tokens to update

forcePrice
required
number

Optional parameter to force the price of the operation. If not defined, price will be set automatically, based on NAV value (recommended).

data
required
object

Object to store any additional data (potentially use case related data)

Responses

Request samples

Content type
application/json
{
  • "idempotencyKey": "ae5a189f-bcb4-4170-8122-de3a9fe62e94",
  • "investorId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "state": "locked",
  • "class": "classA",
  • "destinationClass": "classA2",
  • "quantity": 10000,
  • "forcePrice": 10,
  • "data": {
    }
}

Response samples

Content type
application/json
{
  • "tokenAction": {
    },
  • "created": true,
  • "transactionId": "b8cb9c69-0996-4a01-b94e-fe4e8b90dbac",
  • "message": "Token 423baf7e-66fc-4e40-a5d6-4b7384bd665d class updated successfully"
}

Create a token hold

Authorizations:
access-tokenoauth2
path Parameters
tokenId
required
string
Example: 423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token, where a hold transaction shall be executed

Request Body schema: application/json
idempotencyKey
required
string

[OPTIONAL] Idempotency key (shall be unique and generated on client side), used to ensure object is not created twice

recipientId
required
string

ID of the user, who shall be added as recipient of the hold

state
required
string
Enum: "locked" "reserved" "issued" "collateral"

State of the token to hold, chosen amongst locked,reserved,issued,collateral

class
required
string

Class of the tokens to hold

quantity
required
number

Quantity of tokens to hold

forcePrice
required
number

Optional parameter to force the price of the operation. If not defined, price will be set automatically, based on NAV value (recommended).

nbHoursBeforeExpiration
required
number

Number of hours before the hold expires

secretHash
required
string

Hash of the secret required to execute the hold (32 bytes)

data
required
object

Object to store any additional data (potentially use case related data)

Responses

Request samples

Content type
application/json
{
  • "idempotencyKey": "ae5a189f-bcb4-4170-8122-de3a9fe62e94",
  • "recipientId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "state": "locked",
  • "class": "classA",
  • "quantity": 10000,
  • "forcePrice": 10,
  • "nbHoursBeforeExpiration": 24,
  • "secretHash": "0xb90d6f467cd8182bbd6344f749303fee92ac8b493c46fe455049702ef5b6976a",
  • "data": {
    }
}

Response samples

Content type
application/json
{
  • "tokenAction": {
    },
  • "created": true,
  • "transactionId": "b8cb9c69-0996-4a01-b94e-fe4e8b90dbac",
  • "message": "Token hold created successfully"
}

Force creation of a token hold

Authorizations:
access-tokenoauth2
path Parameters
tokenId
required
string
Example: 423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token, where a hold transaction shall be executed

Request Body schema: application/json
idempotencyKey
required
string

[OPTIONAL] Idempotency key (shall be unique and generated on client side), used to ensure object is not created twice

investorId
required
string

ID of the user, whom tokens shall be put on hold

recipientId
required
string

ID of the user, who shall be added as recipient of the hold

state
required
string
Enum: "locked" "reserved" "issued" "collateral"

State of the token to hold, chosen amongst locked,reserved,issued,collateral

class
required
string

Class of the tokens to hold

quantity
required
number

Quantity of tokens to hold

forcePrice
required
number

Optional parameter to force the price of the operation. If not defined, price will be set automatically, based on NAV value (recommended).

nbHoursBeforeExpiration
required
number

Number of hours before the hold expires

secretHash
required
string

Hash of the secret required to execute the hold (32 bytes)

data
required
object

Object to store any additional data (potentially use case related data)

Responses

Request samples

Content type
application/json
{
  • "idempotencyKey": "ae5a189f-bcb4-4170-8122-de3a9fe62e94",
  • "investorId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "recipientId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "state": "locked",
  • "class": "classA",
  • "quantity": 10000,
  • "forcePrice": 10,
  • "nbHoursBeforeExpiration": 24,
  • "secretHash": "0xb90d6f467cd8182bbd6344f749303fee92ac8b493c46fe455049702ef5b6976a",
  • "data": {
    }
}

Response samples

Content type
application/json
{
  • "tokenAction": {
    },
  • "created": true,
  • "transactionId": "b8cb9c69-0996-4a01-b94e-fe4e8b90dbac",
  • "message": "Token hold created successfully"
}

Execute a token hold

Authorizations:
access-tokenoauth2
path Parameters
tokenId
required
string
Example: 423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token, where a hold shall be executed

Request Body schema: application/json
idempotencyKey
required
string

[OPTIONAL] Idempotency key (shall be unique and generated on client side), used to ensure object is not created twice

holdId
required
string

ID of hold that shall be executed

htlcSecret
required
string

Secret required to execute the hold (32 bytes)

forcePrice
required
number

Optional parameter to force the price of the operation. If not defined, price will be set automatically, based on NAV value (recommended).

data
required
object

Object to store any additional data (potentially use case related data)

Responses

Request samples

Content type
application/json
{
  • "idempotencyKey": "ae5a189f-bcb4-4170-8122-de3a9fe62e94",
  • "holdId": "0xdee57eec5fa3e15df2c65a1600b5b5fad62700d6696996d31a3da528549e265b",
  • "htlcSecret": "0xdee57eec5fa3e15df2c65a1600b5b5fad62700d6696996d31a3da528549e265b",
  • "forcePrice": 10,
  • "data": {
    }
}

Response samples

Content type
application/json
{
  • "tokenAction": {
    },
  • "created": true,
  • "transactionId": "b8cb9c69-0996-4a01-b94e-fe4e8b90dbac",
  • "message": "Token hold created successfully"
}

Release a token hold

Authorizations:
access-tokenoauth2
path Parameters
tokenId
required
string
Example: 423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token, where a hold shall be released

Request Body schema: application/json
idempotencyKey
required
string

[OPTIONAL] Idempotency key (shall be unique and generated on client side), used to ensure object is not created twice

holdId
required
string

ID of hold that shall be released

data
required
object

Object to store any additional data (potentially use case related data)

Responses

Request samples

Content type
application/json
{
  • "idempotencyKey": "ae5a189f-bcb4-4170-8122-de3a9fe62e94",
  • "holdId": "0xdee57eec5fa3e15df2c65a1600b5b5fad62700d6696996d31a3da528549e265b",
  • "data": {
    }
}

Response samples

Content type
application/json
{
  • "tokenAction": {
    },
  • "created": true,
  • "transactionId": "b8cb9c69-0996-4a01-b94e-fe4e8b90dbac",
  • "message": "Token hold created successfully"
}

Transactions

Transactions can be managed on the platform. Every time an token action is performed (mint, transfer, burn), a transaction is sent to the blockchain network. This API keeps track of the transactions by storing the transaction ID + the transaction context in an off-chain database.

Retrieve a transaction

Authorizations:
access-tokenoauth2
path Parameters
transactionId
required
string
Example: b8cb9c69-0996-4a01-b94e-fe4e8b90dbac

Transaction identifier (or txHash)

query Parameters
withContext
required
boolean
Example: withContext=true

If set to false, only the transacction receipt will be retrieved. If set to true, transaction context/envelope will be retrieved as well.

ethService
required
string
Example: ethService={"type":"orchestrate","data":{"tenantId":"codefi","name":"Main Ethereum Network","key":"mainnet","chainId":"1","type":"pow","description":"Frontier, Homestead, Metropolis, the Ethereum public PoW main network","ethRequired":true,"kaleido":false,"faucetMinEthValue":"300000000000000000","isAlive":true}}

Ethereum service to use to retrieve transaction receipt

Responses

Response samples

Content type
application/json
{
  • "transaction": {
    },
  • "message": "Transaction 3435 successfully retrieved"
}

Send a signed transaction

Authorizations:
access-tokenoauth2
path Parameters
transactionId
required
string
Example: b8cb9c69-0996-4a01-b94e-fe4e8b90dbac

Transaction identifier (or txHash)

Request Body schema: application/json
signedTx
required
string

Signed transaction

Responses

Request samples

Content type
application/json
{
  • "signedTx": "0x..."
}

Response samples

Content type
application/json
{
  • "txIdentifier": "string",
  • "message": "Signed transaction b8cb9c69-0996-4a01-b94e-fe4e8b90dbac successfully sent"
}

Delete a transaction

Authorizations:
access-tokenoauth2
path Parameters
transactionId
required
string
Example: b8cb9c69-0996-4a01-b94e-fe4e8b90dbac

Transaction identifier (or txHash)

Responses

Response samples

Content type
application/json
{
  • "message": "Transaction 3435 successfully deleted"
}

List all transactions

Authorizations:
access-tokenoauth2
query Parameters
offset
required
number >= 0

Index of first transaction to fetch

limit
required
number <= 50
Example: limit=100

Max amount of transactions to fetch

Responses

Response samples

Content type
application/json
{
  • "transactions": [
    ],
  • "count": 3,
  • "total": 543,
  • "message": "5 transactions successfully retrieved"
}

Retry to send a transaction

Authorizations:
access-tokenoauth2
path Parameters
transactionId
required
string
Example: b8cb9c69-0996-4a01-b94e-fe4e8b90dbac

Transaction identifier (or txHash)

Responses

Response samples

Content type
application/json
{
  • "transaction": {
    },
  • "message": "Transaction b8cb9c69-0996-4a01-b94e-fe4e8b90dbac successfully resent. New transaction ID is b8cb9c69-0996-4a01-b94e-fe4e8b90dbac."
}

Networks

Networks can be managed on the platform. The platform is network-agnostic: assets can be deployed on different kind of networks, public or private.

List all networks

Authorizations:
access-tokenoauth2

Responses

Response samples

Content type
application/json
{
  • "defaultNetwork": "Main Ethereum Network",
  • "networks": [
    ],
  • "message": "5 network(s) listed successfully"
}

NetworkController_createNetwork

Authorizations:
access-token
Request Body schema: application/json
name
required
string

Network name

description
required
string

Network description

Array of objects (Metadata)

Network metadata

rpcEndpoints
required
Array of strings

Network RCP endpoint(s)

required
object

Network product(s)

kafka
required
object
Default: false

Network name

key
string
type
string or null
Default: null
Enum: "poa" "pow"
explorerUrl
string
symbol
string

Responses

Request samples

Content type
application/json
{
  • "name": "Example Dev Network",
  • "description": "This is the example dev network description",
  • "metadata": "[{ name: \"metadata name\", description: \"metadata description\" }]",
  • "rpcEndpoints": "[\"https://e0bwzpx1vh:85Fhl87PZbBHlKSWFecxCu3j89RlOulIEJACDHZzM_U@e0yt00jvmm-e0rlauwjnb-rpc.de0-aws.kaleido.io\"]",
  • "products": "{assets: true, payments:true}",
  • "kafka": "Example Dev Network",
  • "key": "string",
  • "type": "poa",
  • "explorerUrl": "string",
  • "symbol": "string"
}

Response samples

Content type
application/json
{
  • "message": "network listed successfully",
  • "network": { }
}

List all networks from Network API

Authorizations:
access-tokenoauth2
query Parameters
key
string
Example: key=test_network_1

Network key

Responses

Response samples

Content type
application/json
{
  • "networks": {
    },
  • "message": "5 network(s) listed successfully"
}

List a network by key from Network API

Authorizations:
access-tokenoauth2
path Parameters
key
required
string

Responses

Response samples

Content type
application/json
{
  • "network": {
    },
  • "message": "5 network(s) listed successfully"
}

Delete a network

Authorizations:
access-tokenoauth2
path Parameters
key
required
string
Example: kaleido_dev_network

Network key to delete

Responses

HealthCheckController_health

Responses

Response samples

Content type
application/json
"string"

WorkflowTemplateController_listAllWorkflows

Responses

Response samples

Content type
application/json
{
  • "workflows": [
    ],
  • "message": "5 workflow(s) listed successfully"
}

WorkflowTemplateController_retrieveWorkflowById

path Parameters
workflowId
required
number
Example: 1

ID of workflow

Responses

Response samples

Content type
application/json
{
  • "workflow": {
    },
  • "message": "Workflow id retrieved successfully"
}

KYCEssentialTemplateController_listAllTemplates

query Parameters
includeElements
required
boolean

If set 'true', elements are injected in the KYC template. If set to 'false', raw template is returned

Responses

Response samples

Content type
application/json
{
  • "defaultTemplate": "Codefi demo template",
  • "templates": [
    ],
  • "message": "5 KYC template(s) listed successfully"
}

KYCEssentialTemplateController_createTemplate

Request Body schema: application/json
issuerId
required
string

Must be a valid issuer ID

name
required
string

Name of the KYC template

topSections
required
Array of objects

Top sections of the KYC template

data
required
object

Object to store any additional data (potentially use case related data)

Responses

Request samples

Content type
application/json
{
  • "issuerId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "name": "Codefi demo template",
  • "topSections": [
    ],
  • "data": { }
}

Response samples

Content type
application/json
{
  • "template": {
    },
  • "newTemplate": true,
  • "message": "KYC template ddb8a64b-004f-4800-a166-af9d93ede5ae created successfully"
}

KYCEssentialTemplateController_retrieveTemplate

path Parameters
templateId
required
string
Example: ddb8a64b-004f-4800-a166-af9d93ede5ae

ID of template to retrieve

query Parameters
includeElements
required
boolean

If set 'true', elements are injected in the KYC template. If set to 'false', raw template is returned

Responses

Response samples

Content type
application/json
{
  • "template": {
    },
  • "message": "KYC template ddb8a64b-004f-4800-a166-af9d93ede5ae retrieved successfully"
}

KYCEssentialTemplateController_updateTemplate

path Parameters
templateId
required
string
Example: ddb8a64b-004f-4800-a166-af9d93ede5ae

ID of template to retrieve

Request Body schema: application/json
required
object

Template parameters to update

issuerId
required
string

Must be a valid issuer ID

name
required
string

Name of the KYC template

topSections
required
Array of objects

Top sections of the KYC template

data
required
object

Object to store any additional data (potentially use case related data)

Responses

Request samples

Content type
application/json
{
  • "updatedParameters": {
    }
}

Response samples

Content type
application/json
{
  • "template": {
    },
  • "message": "KYC template ddb8a64b-004f-4800-a166-af9d93ede5ae updated successfully"
}

KYCEssentialTemplateController_deleteTemplate

path Parameters
templateId
required
string
Example: ddb8a64b-004f-4800-a166-af9d93ede5ae

ID of template to retrieve

Responses

Response samples

Content type
application/json
{
  • "message": "KYC template ddb8a64b-004f-4800-a166-af9d93ede5ae deleted successfully"
}

KYCEssentialElementController_listAllElements

Responses

Response samples

Content type
application/json
{
  • "elements": [
    ],
  • "message": "5 KYC element(s) listed successfully"
}

KYCEssentialElementController_createElement

Request Body schema: application/json
Array
string

Responses

Request samples

Content type
application/json
[
  • "string"
]

Response samples

Content type
application/json
{
  • "elements": [
    ],
  • "message": "5 KYC element(s) created successfully"
}

KYCEssentialElementController_retrieveElement

path Parameters
elementId
required
string
Example: 46fbc854-0083-4219-b909-0be6b4d63b13

ID of KYC element to retrieve

Responses

Response samples

Content type
application/json
{
  • "element": {
    },
  • "message": "KYC element 46fbc854-0083-4219-b909-0be6b4d63b13 retrieved successfully"
}

KYCEssentialElementController_updateElement

path Parameters
elementId
required
string
Example: 46fbc854-0083-4219-b909-0be6b4d63b13

ID of KYC element to update

Request Body schema: application/json
updatedParameters
required
Array of strings

Element parameters to update

Responses

Request samples

Content type
application/json
{
  • "updatedParameters": [
    ]
}

Response samples

Content type
application/json
{
  • "element": {
    },
  • "message": "KYC element 46fbc854-0083-4219-b909-0be6b4d63b13 updated successfully"
}

KYCEssentialElementController_deleteElement

path Parameters
elementId
required
string
Example: 46fbc854-0083-4219-b909-0be6b4d63b13

ID of KYC element to delete

Responses

Response samples

Content type
application/json
{
  • "message": "KYC element 46fbc854-0083-4219-b909-0be6b4d63b13 deleted successfully"
}

KYCEssentialDataController_saveKycDataAsSubmitter

Request Body schema: application/json
elements
required
Array of strings

List of KYC element instances to save

Responses

Request samples

Content type
application/json
{
  • "elements": [
    ]
}

Response samples

Content type
application/json
{
  • "elementInstances": [
    ],
  • "message": "5 KYC element instance(s) created successfully"
}

KYCEssentialDataController_saveKycDataAsReviewer

Request Body schema: application/json
reviews
required
Array of strings

List of KYC element reviews to save

Responses

Request samples

Content type
application/json
{
  • "reviews": [
    ]
}

Response samples

Content type
application/json
{
  • "reviews": [
    ],
  • "message": "5 KYC element review(s) created successfully"
}

KYCEssentialDataController_retrieveTokenRelatedKycDataForSubmitter

query Parameters
tokenId
required
string
Example: tokenId=423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token, KYC data shall be retrieved for

assetClass
required
string
Example: assetClass=classa

Asset class of token, KYC shall be retrieved for

Responses

Response samples

Content type
application/json
{
  • "kycData": {
    },
  • "kycValidations": {
    },
  • "message": "KYC data (token-related) listed successfully for user 3611ab62-94a9-4782-890f-221a64518c83"
}

KYCEssentialDataController_retrieveTokenRelatedKycDataForReviewer

query Parameters
submitterId
required
string
Example: submitterId=3611ab62-94a9-4782-890f-221a64518c83

ID of user, KYC data shall be retrieved for

tokenId
required
string
Example: tokenId=423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token, KYC data shall be retrieved for

assetClass
required
string
Example: assetClass=classa

Asset class of token, KYC shall be retrieved for

Responses

Response samples

Content type
application/json
{
  • "kycData": {
    },
  • "kycValidations": {
    },
  • "message": "KYC data (token-related) of user 3611ab62-94a9-4782-890f-221a64518c83 listed successfully for issuer 3611ab62-94a9-4782-890f-221a64518c83"
}

KYCEssentialDataController_retrieveTokenRelatedKycDataForVerifier

query Parameters
submitterId
required
string
Example: submitterId=3611ab62-94a9-4782-890f-221a64518c83

ID of user, KYC data shall be retrieved for

tokenId
required
string
Example: tokenId=423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token, KYC data shall be retrieved for

assetClass
required
string
Example: assetClass=classa

Asset class of token, KYC shall be retrieved for

Responses

Response samples

Content type
application/json
{
  • "kycData": {
    },
  • "kycValidations": {
    },
  • "message": "KYC data (token-related) of user 3611ab62-94a9-4782-890f-221a64518c83 listed successfully for issuer 3611ab62-94a9-4782-890f-221a64518c83"
}

KYCEssentialDataController_retrieveTokenRelatedKycDataForUnderwriter

query Parameters
submitterId
required
string
Example: submitterId=3611ab62-94a9-4782-890f-221a64518c83

ID of user, KYC data shall be retrieved for

tokenId
required
string
Example: tokenId=423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token, KYC data shall be retrieved for

assetClass
required
string
Example: assetClass=classa

Asset class of token, KYC shall be retrieved for

Responses

Response samples

Content type
application/json
{
  • "kycData": {
    },
  • "kycValidations": {
    },
  • "message": "KYC data (token-related) of user 3611ab62-94a9-4782-890f-221a64518c83 listed successfully for issuer 3611ab62-94a9-4782-890f-221a64518c83"
}

KYCEssentialDataController_retrieveTokenRelatedKycDataForBroker

query Parameters
submitterId
required
string
Example: submitterId=3611ab62-94a9-4782-890f-221a64518c83

ID of user, KYC data shall be retrieved for

tokenId
required
string
Example: tokenId=423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token, KYC data shall be retrieved for

assetClass
required
string
Example: assetClass=classa

Asset class of token, KYC shall be retrieved for

Responses

Response samples

Content type
application/json
{
  • "kycData": {
    },
  • "kycValidations": {
    },
  • "message": "KYC data (token-related) of user 3611ab62-94a9-4782-890f-221a64518c83 listed successfully for issuer 3611ab62-94a9-4782-890f-221a64518c83"
}

KYCEssentialDataController_deleteTokenRelatedKycDataForSubmitter

query Parameters
submitterId
required
string
Example: submitterId=3611ab62-94a9-4782-890f-221a64518c83

ID of the user, KYC data shall be deleted from

tokenId
required
string
Example: tokenId=423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of the token, KYC data shall be deleted from

assetClass
required
string
Example: assetClass=classa

Asset class of token, KYC shall be deleted for

Responses

Response samples

Content type
application/json
{
  • "deletedElementInstances": [
    ],
  • "deletedElementReviews": [
    ],
  • "deletedTemplateReviews": [
    ],
  • "message": "KYC data, related to platform, successfully deleted for user 3611ab62-94a9-4782-890f-221a64518c83"
}

KYCEssentialDataController_retrieveIssuerRelatedKycDataForSubmitter

query Parameters
issuerId
required
string
Example: issuerId=423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of issuer, KYC data shall be retrieved for

Responses

Response samples

Content type
application/json
{
  • "kycData": {
    },
  • "kycValidations": {
    },
  • "message": "KYC data (issuer-related) listed successfully for user 3611ab62-94a9-4782-890f-221a64518c83"
}

KYCEssentialDataController_retrieveIssuerRelatedKycDataForReviewer

query Parameters
submitterId
required
string
Example: submitterId=3611ab62-94a9-4782-890f-221a64518c83

ID of user, KYC data shall be retrieved for

Responses

Response samples

Content type
application/json
{
  • "kycData": {
    },
  • "kycValidations": {
    },
  • "message": "KYC data (issuer-related) of user 3611ab62-94a9-4782-890f-221a64518c83 listed successfully for issuer 3611ab62-94a9-4782-890f-221a64518c83"
}

KYCEssentialDataController_retrieveIssuerRelatedKycDataForVerifier

query Parameters
submitterId
required
string
Example: submitterId=3611ab62-94a9-4782-890f-221a64518c83

ID of user, KYC data shall be retrieved for

issuerId
required
string
Example: issuerId=3611ab62-94a9-4782-890f-221a64518c83

ID of issuer, KYC applies to

Responses

Response samples

Content type
application/json
{
  • "kycData": {
    },
  • "kycValidations": {
    },
  • "message": "KYC data (issuer-related) of user 3611ab62-94a9-4782-890f-221a64518c83 listed successfully for issuer 3611ab62-94a9-4782-890f-221a64518c83"
}

KYCEssentialDataController_retrieveIssuerRelatedKycDataForUnderwriter

query Parameters
submitterId
required
string
Example: submitterId=3611ab62-94a9-4782-890f-221a64518c83

ID of user, KYC data shall be retrieved for

issuerId
required
string
Example: issuerId=3611ab62-94a9-4782-890f-221a64518c83

ID of issuer, KYC applies to

Responses

Response samples

Content type
application/json
{
  • "kycData": {
    },
  • "kycValidations": {
    },
  • "message": "KYC data (issuer-related) of user 3611ab62-94a9-4782-890f-221a64518c83 listed successfully for issuer 3611ab62-94a9-4782-890f-221a64518c83"
}

KYCEssentialDataController_retrieveIssuerRelatedKycDataForBroker

query Parameters
submitterId
required
string
Example: submitterId=3611ab62-94a9-4782-890f-221a64518c83

ID of user, KYC data shall be retrieved for

issuerId
required
string
Example: issuerId=3611ab62-94a9-4782-890f-221a64518c83

ID of issuer, KYC applies to

Responses

Response samples

Content type
application/json
{
  • "kycData": {
    },
  • "kycValidations": {
    },
  • "message": "KYC data (issuer-related) of user 3611ab62-94a9-4782-890f-221a64518c83 listed successfully for issuer 3611ab62-94a9-4782-890f-221a64518c83"
}

KYCEssentialDataController_deleteIssuerRelatedKycDataForSubmitter

query Parameters
submitterId
required
string
Example: submitterId=3611ab62-94a9-4782-890f-221a64518c83

ID of the user, KYC data shall be deleted from

issuerId
required
string
Example: issuerId=3611ab62-94a9-4782-890f-221a64518c83

ID of the issuer, KYC data shall be deleted from

Responses

Response samples

Content type
application/json
{
  • "deletedElementInstances": [
    ],
  • "deletedElementReviews": [
    ],
  • "deletedTemplateReviews": [
    ],
  • "message": "KYC data, related to platform, successfully deleted for user 3611ab62-94a9-4782-890f-221a64518c83"
}

KYCEssentialDataController_retrieveProjectRelatedKycDataForSubmitter

query Parameters
projectId
required
string
Example: projectId=d4192b60-79b5-429c-9160-e862b5a3e370

ID of project, KYC data shall be retrieved for

Responses

Response samples

Content type
application/json
{
  • "kycData": {
    },
  • "kycValidations": {
    },
  • "message": "KYC data (project-related) listed successfully for user 3611ab62-94a9-4782-890f-221a64518c83"
}

KYCEssentialDataController_retrieveProjectRelatedKycDataForReviewer

query Parameters
submitterId
required
string
Example: submitterId=3611ab62-94a9-4782-890f-221a64518c83

ID of user, KYC data shall be retrieved for

projectId
required
string
Example: projectId=d4192b60-79b5-429c-9160-e862b5a3e370

ID of project, KYC data shall be retrieved for

Responses

Response samples

Content type
application/json
{
  • "kycData": {
    },
  • "kycValidations": {
    },
  • "message": "KYC data (project-related) of user 3611ab62-94a9-4782-890f-221a64518c83 listed successfully for issuer 3611ab62-94a9-4782-890f-221a64518c83"
}

KYCEssentialDataController_retrieveProjectRelatedKycDataForVerifier

query Parameters
submitterId
required
string
Example: submitterId=3611ab62-94a9-4782-890f-221a64518c83

ID of user, KYC data shall be retrieved for

projectId
required
string
Example: projectId=d4192b60-79b5-429c-9160-e862b5a3e370

ID of project, KYC data shall be retrieved for

Responses

Response samples

Content type
application/json
{
  • "kycData": {
    },
  • "kycValidations": {
    },
  • "message": "KYC data (project-related) of user 3611ab62-94a9-4782-890f-221a64518c83 listed successfully for issuer 3611ab62-94a9-4782-890f-221a64518c83"
}

KYCEssentialDataController_deleteProjectRelatedKycDataForSubmitter

query Parameters
submitterId
required
string
Example: submitterId=3611ab62-94a9-4782-890f-221a64518c83

ID of the user, KYC data shall be deleted from

projectId
required
string
Example: projectId=d4192b60-79b5-429c-9160-e862b5a3e370

ID of the project, KYC data shall be deleted from

Responses

Response samples

Content type
application/json
{
  • "deletedElementInstances": [
    ],
  • "deletedElementReviews": [
    ],
  • "deletedTemplateReviews": [
    ],
  • "message": "KYC data, related to platform, successfully deleted for user 3611ab62-94a9-4782-890f-221a64518c83"
}

KYCEssentialDataController_retrievePlatformRelatedKycDataForSubmitter

Responses

Response samples

Content type
application/json
{
  • "kycData": {
    },
  • "kycValidations": {
    },
  • "message": "KYC data (platform-related) listed successfully for submitter 3611ab62-94a9-4782-890f-221a64518c83"
}

KYCEssentialDataController_retrievePlatformRelatedKycDataForReviewer

query Parameters
submitterId
required
string
Example: submitterId=3611ab62-94a9-4782-890f-221a64518c83

ID of user, KYC data shall be retrieved for

Responses

Response samples

Content type
application/json
{
  • "kycData": {
    },
  • "kycValidations": {
    },
  • "message": "KYC data (platform-related) of submitter with ID 3611ab62-94a9-4782-890f-221a64518c83 listed successfully for admin 3611ab62-94a9-4782-890f-221a64518c83"
}

KYCEssentialDataController_retrievePlatformRelatedKycDataForVerifier

query Parameters
submitterId
required
string
Example: submitterId=3611ab62-94a9-4782-890f-221a64518c83

ID of user, KYC data shall be retrieved for

Responses

Response samples

Content type
application/json
{
  • "kycData": {
    },
  • "kycValidations": {
    },
  • "message": "KYC data (platform-related) of submitter with ID 3611ab62-94a9-4782-890f-221a64518c83 listed successfully for admin 3611ab62-94a9-4782-890f-221a64518c83"
}

KYCEssentialDataController_deletePlatformRelatedKycDataForSubmitter

query Parameters
submitterId
required
string
Example: submitterId=3611ab62-94a9-4782-890f-221a64518c83

ID of user, KYC data shall be deleted from

Responses

Response samples

Content type
application/json
{
  • "deletedElementInstances": [
    ],
  • "deletedElementReviews": [
    ],
  • "deletedTemplateReviews": [
    ],
  • "message": "KYC data, related to platform, successfully deleted for user 3611ab62-94a9-4782-890f-221a64518c83"
}

EmailController_sendInvitationEmail

Request Body schema: application/json
recipientId
required
string

ID of user, whom invitation email shall be sent to

tenantId
required
string

Tenant of user, whom invitation email shall be sent to

email
required
string

Email of user, whom invitation email shall be sent to (only used if user's ID is not specified)

tenantName
required
string

Tenant name, that will be displayed in the invitation email

Responses

Request samples

Content type
application/json
{
  • "recipientId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "tenantId": "eRlC....XLf",
  • "email": "[email protected]",
  • "tenantName": "Codefi"
}

Response samples

Content type
application/json
{
  • "message": "Invitation email successfully sent to user with ID 3611ab62-94a9-4782-890f-221a64518c83"
}

EmailController_fetchMailTemplates

query Parameters
key
string

Responses

Response samples

Content type
application/json
[
  • { }
]

EmailController_upsertTemplates

Request Body schema: application/json
Array
string

Responses

Request samples

Content type
application/json
[
  • "string"
]

Response samples

Content type
application/json
[
  • { }
]

EmailController_sendUserInvitationEmailAsUnderwriter

Request Body schema: application/json
recipientId
required
string

ID of user, whom invitation email shall be sent to

tenantId
required
string

Tenant of user, whom invitation email shall be sent to

email
required
string

Email of user, whom invitation email shall be sent to (only used if user's ID is not specified)

tenantName
required
string

Tenant name, that will be displayed in the invitation email

Responses

Request samples

Content type
application/json
{
  • "recipientId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "tenantId": "eRlC....XLf",
  • "email": "[email protected]",
  • "tenantName": "Codefi"
}

Response samples

Content type
application/json
{
  • "message": "Invitation email successfully sent to user with ID 3611ab62-94a9-4782-890f-221a64518c83"
}

EmailController_sendUserInvitationEmailAsBroker

Request Body schema: application/json
recipientId
required
string

ID of user, whom invitation email shall be sent to

tenantId
required
string

Tenant of user, whom invitation email shall be sent to

email
required
string

Email of user, whom invitation email shall be sent to (only used if user's ID is not specified)

tenantName
required
string

Tenant name, that will be displayed in the invitation email

Responses

Request samples

Content type
application/json
{
  • "recipientId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "tenantId": "eRlC....XLf",
  • "email": "[email protected]",
  • "tenantName": "Codefi"
}

Response samples

Content type
application/json
{
  • "message": "Invitation email successfully sent to user with ID 3611ab62-94a9-4782-890f-221a64518c83"
}

NavController_listAllNavs

query Parameters
offset
required
number >= 0

Index of first NAV to fetch

limit
required
number <= 50
Example: limit=100

Max amount of NAVs to fetch

userType
required
string
Enum: "SUPERADMIN" "ADMIN" "ISSUER" "UNDERWRITER" "BROKER" "INVESTOR" "VEHICLE" "NOTARY" "VERIFIER" "NAV_MANAGER"
Example: userType=ISSUER

Must be a valid user type: ISSUER | INVESTOR

tokenId
required
string
Example: tokenId=423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token, user wants to retrieve list of NAVs (net asset value) for

assetClass
required
string
Example: assetClass=classA

Asset class of token, issuer wants to retrieve list of NAVs (net asset value) for

filterValidatedNavs
required
boolean
Example: filterValidatedNavs=true

If set to 'true', only NAVs with state 'validated' will be returned

Responses

Response samples

Content type
application/json
{
  • "navs": [
    ],
  • "count": 3,
  • "total": 543,
  • "message": "5 NAV(s) listed successfully"
}

NavController_createNav

Request Body schema: application/json
idempotencyKey
required
string

[OPTIONAL] Idempotency key (shall be unique and generated on client side), used to ensure object is not created twice

tokenId
required
string

ID of token, issuer wants to define the NAV (net asset value) for

assetClass
required
string

Asset class of token, issuer wants to define the NAV (net asset value) for

navValue
required
number >= 0

New NAV value

navDate
required
string <date-time>

Date after which value can be used as NAV

data
required
object

Object to store any additional data (potentially use case related data)

Responses

Request samples

Content type
application/json
{
  • "idempotencyKey": "ae5a189f-bcb4-4170-8122-de3a9fe62e94",
  • "tokenId": "423baf7e-66fc-4e40-a5d6-4b7384bd665d",
  • "assetClass": "classA",
  • "navValue": 10000,
  • "navDate": "1990-09-19T08:24:00.000Z",
  • "data": {
    }
}

Response samples

Content type
application/json
{
  • "nav": {
    },
  • "message": "Nav created successfully"
}

NavController_createNavM2M

query Parameters
userId
required
string
Example: userId=3611ab62-94a9-4782-890f-221a64518c83

Id of the issuer

tenantId
required
string
Example: tenantId=eRlC....XLf

Id of the tenant

Request Body schema: application/json
idempotencyKey
required
string

[OPTIONAL] Idempotency key (shall be unique and generated on client side), used to ensure object is not created twice

tokenId
required
string

ID of token, issuer wants to define the NAV (net asset value) for

assetClass
required
string

Asset class of token, issuer wants to define the NAV (net asset value) for

navValue
required
number >= 0

New NAV value

navDate
required
string <date-time>

Date after which value can be used as NAV

data
required
object

Object to store any additional data (potentially use case related data)

Responses

Request samples

Content type
application/json
{
  • "idempotencyKey": "ae5a189f-bcb4-4170-8122-de3a9fe62e94",
  • "tokenId": "423baf7e-66fc-4e40-a5d6-4b7384bd665d",
  • "assetClass": "classA",
  • "navValue": 10000,
  • "navDate": "1990-09-19T08:24:00.000Z",
  • "data": {
    }
}

Response samples

Content type
application/json
{
  • "nav": {
    },
  • "message": "Nav created successfully"
}

NavController_retrieveNav

path Parameters
navId
required
number
Example: 423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of NAV (net asset value), user wants to retrieve

Responses

Response samples

Content type
application/json
{
  • "nav": {
    },
  • "message": "NAV 1398 listed successfully"
}

SubscriptionController_listAllSubscriptions

Responses

Response samples

Content type
application/json
[
  • { }
]

SubscriptionController_createSubscription

Responses

Response samples

Content type
application/json
{ }

SubscriptionController_deleteSubscription

path Parameters
id
required
string

Responses

CycleController_listAllCycles

query Parameters
offset
required
number >= 0

Index of first cycle to fetch

limit
required
number <= 50
Example: limit=100

Max amount of cycles to fetch

tenantId
required
string
Example: tenantId=eRlC....XLf

ID of tenant, cycles list shall be filtered for

tokenId
required
string
Example: tokenId=423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token, cycles list shall be filtered for

Responses

Response samples

Content type
application/json
{
  • "cycles": [
    ],
  • "count": 3,
  • "total": 543,
  • "message": "Cycles listed successfully, filtered for token 423baf7e-66fc-4e40-a5d6-4b7384bd665d"
}

CycleController_retrieveCycle

path Parameters
cycleId
required
string
Example: 3491

ID of cycle to retrieve

query Parameters
tenantId
required
string
Example: tenantId=eRlC....XLf

ID of tenant, of cycle to retrieve

Responses

Response samples

Content type
application/json
{
  • "cycle": {
    },
  • "message": "Cycle with index id retrieved successfully"
}

AssetDataController_saveAssetData

Request Body schema: application/json
tokenId
required
string
templateId
required
string
data
object
issuerId
string

ID of issuer of the token (required when issuer is not defined, e.g. not already linked to the token)

elementInstances
required
Array of objects

Responses

Request samples

Content type
application/json
{
  • "tokenId": "string",
  • "templateId": "string",
  • "data": { },
  • "issuerId": "string",
  • "elementInstances": [
    ]
}

Response samples

Content type
application/json
{
  • "assetData": [
    ],
  • "message": "Asset data saved successfully (5 elements saved)"
}

AssetDataController_retrieveAssetData

query Parameters
templateId
required
string

Asset template ID

tokenId
required
string

Asset token ID

issuerId
string

ID of issuer of the token (required when issuer is not defined, e.g. not already linked to the token)

Responses

Response samples

Content type
application/json
{
  • "assetData": [
    ],
  • "message": "Asset data retrieved successfully for token 423baf7e-66fc-4e40-a5d6-4b7384bd665d and asset template 739d619a-36b1-421e-b78e-a1a6573b101a"
}

ActionController_listAllActions

query Parameters
offset
required
number >= 0

Index of first action to fetch

limit
required
number <= 50
Example: limit=100

Max amount of actions to fetch

tokenId
required
string
Example: tokenId=423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token, actions list shall be filtered for

assetClass
required
string
Example: assetClass=classA

Asset class of token, actions list shall be filtered for

tokenIds
required
string
Example: tokenIds=["423baf7e-66fc-4e40-a5d6-4b7384bd665d"]

Filter parameter to retrieve actions of specific tokens. The parameter shall be a stringified array of tokenIds.

states
required
string
Example: states=["executed"]

Filter parameter to retrieve actions with specific states. The parameter shall be a stringified array of states.

functionNames
required
string
Example: functionNames=["mint"]

Filter parameter to retrieve actions with specific function names. The parameter shall be a stringified array of functionNames.

userIds
required
string
Example: userIds=["3611ab62-94a9-4782-890f-221a64518c83"]

Filter parameter to retrieve actions of specific users. The parameter shall be a stringified array of userIds.

dates
required
string
Example: dates=["Sun Dec 17 1995"]

Filter parameter to retrieve actions of specific dates. The parameter shall be a stringified array of dates.

Responses

Response samples

Content type
application/json
{
  • "actions": [
    ],
  • "count": 3,
  • "total": 543,
  • "message": "Actions listed successfully for user 3611ab62-94a9-4782-890f-221a64518c83, filtered for token 423baf7e-66fc-4e40-a5d6-4b7384bd665d"
}

ActionController_retrieveAction

path Parameters
actionIndex
required
number
Example: 3491

Index of action to retrieve

Responses

Response samples

Content type
application/json
{
  • "action": {
    },
  • "message": "Action with index id retrieved successfully"
}

ActionController_retrieveHistory

path Parameters
actionIndex
required
number
Example: 3491

Index of action to retrieve

Responses

Response samples

Content type
application/json
{
  • "transitions": [
    ],
  • "message": "string"
}

TokenController_listAllTokens

query Parameters
offset
required
number >= 0

Index of first tokens to fetch

limit
required
number <= 10
Example: limit=100

Max amount of tokens to fetch

withBalances
required
boolean
Example: withBalances=true

If set 'true', user's balances for the specified token are retrieved as well [OPTION ONLY AVAILABLE FOR INVESTOR]

withCycles
required
boolean

Responses

Response samples

Content type
application/json
{
  • "tokens": [
    ],
  • "count": 3,
  • "total": 543,
  • "message": "5 token(s) listed successfully"
}

TokenController_listAllTokenInvestors

path Parameters
tokenId
required
string
Example: 423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token, investors shall be retrieved from

query Parameters
offset
required
number >= 0

Index of first investors to fetch

limit
required
number <= 50
Example: limit=100

Max amount of investors to fetch

assetClass
required
string
Example: assetClass=classa

Asset class of token, investors shall be retrieved from ('undefined' if investors from all asset classes shall be retrieved)

withVehicles
required
boolean
Example: withVehicles=true

If set 'true', user's vehicles, linked to the specified token, are retrieved as well

withBalances
required
boolean
Example: withBalances=true

If set 'true', user's balances for the specified token are retrieved as well

Responses

Response samples

Content type
application/json
{
  • "users": [
    ],
  • "count": 3,
  • "total": 543,
  • "message": "5 investors(s) listed successfully"
}

TokenController_listAllTokenAum

path Parameters
tokenId
required
string
Example: 423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token, investors shall be retrieved from

Responses

Response samples

Content type
application/json
{
  • "aums": [ ],
  • "total": 366,
  • "message": "5 token aum(s) listed successfully"
}

TokenController_retrieveCurrentTotalPrice

path Parameters
tokenId
required
string
Example: 423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token, price shall be retrieved from

Responses

Response samples

Content type
application/json
{
  • "price": 3,
  • "quantity": 543
}

TokenController_addAllowlisted

path Parameters
tokenId
required
string
Example: 423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token, the user shall be allowlisted for

Request Body schema: application/json
idempotencyKey
required
string

[OPTIONAL] Idempotency key (shall be unique and generated on client side), used to ensure object is not created twice

submitterId
required
string

ID of user, whom wallet shall be added on token's on-chain allowlist

Responses

Request samples

Content type
application/json
{
  • "idempotencyKey": "ae5a189f-bcb4-4170-8122-de3a9fe62e94",
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83"
}

Response samples

Content type
application/json
{
  • "tokenAction": {
    },
  • "created": true,
  • "transactionId": "b8cb9c69-0996-4a01-b94e-fe4e8b90dbac",
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 successfully added on on-chain allowlist for token 423baf7e-66fc-4e40-a5d6-4b7384bd665d (tx sent)"
}

TokenController_removeAllowlisted

path Parameters
tokenId
required
string
Example: 423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token, the user shall be allowlisted for

Request Body schema: application/json
idempotencyKey
required
string

[OPTIONAL] Idempotency key (shall be unique and generated on client side), used to ensure object is not created twice

submitterId
required
string

ID of user, whom wallet shall be added on token's on-chain allowlist

Responses

Request samples

Content type
application/json
{
  • "idempotencyKey": "ae5a189f-bcb4-4170-8122-de3a9fe62e94",
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83"
}

Response samples

Content type
application/json
{
  • "tokenAction": {
    },
  • "created": true,
  • "transactionId": "b8cb9c69-0996-4a01-b94e-fe4e8b90dbac",
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 successfully added on on-chain allowlist for token 423baf7e-66fc-4e40-a5d6-4b7384bd665d (tx sent)"
}

TokenController_transferContractOwnership

path Parameters
tokenId
required
string
Example: 423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token, the ownership shall be transferred from

Request Body schema: application/json
idempotencyKey
required
string

[OPTIONAL] Idempotency key (shall be unique and generated on client side), used to ensure object is not created twice

newOwnerAddress
required
string

[CAUTION - RISK] Address, the contract ownership shall be transferred to (you shall make sure you control the address before transferring contract ownership to it)

Responses

Request samples

Content type
application/json
{
  • "idempotencyKey": "ae5a189f-bcb4-4170-8122-de3a9fe62e94",
  • "newOwnerAddress": "423baf7e-66fc-4e40-a5d6-4b7384bd665d"
}

Response samples

Content type
application/json
{
  • "tokenAction": {
    },
  • "created": true,
  • "transactionId": "b8cb9c69-0996-4a01-b94e-fe4e8b90dbac",
  • "message": "Contract ownership of token 423baf7e-66fc-4e40-a5d6-4b7384bd665d successfully transferred to address 0xd200b5d89f719473573be585eadedc8c916e5515 (tx sent)"
}

TokenController_setCustomTokenExtension

path Parameters
tokenId
required
string
Example: 423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token, the extension shall be setup for

Request Body schema: application/json
idempotencyKey
required
string

[OPTIONAL] Idempotency key (shall be unique and generated on client side), used to ensure object is not created twice

customExtensionAddress
required
string

[OPTIONAL] Address of "custom" extension contract, the token contract shall be linked to.

Responses

Request samples

Content type
application/json
{
  • "idempotencyKey": "ae5a189f-bcb4-4170-8122-de3a9fe62e94",
  • "customExtensionAddress": "0x0089d53F703f7E0843953D48133f74cE247184c2"
}

Response samples

Content type
application/json
{
  • "tokenAction": {
    },
  • "created": true,
  • "transactionId": "b8cb9c69-0996-4a01-b94e-fe4e8b90dbac",
  • "message": "Custom extension 0x8e59a2a50795730ad80fe60c8894fa836bf26fcc of token 423baf7e-66fc-4e40-a5d6-4b7384bd665d successfully setup (tx sent)"
}

TokenController_addNotaryForToken

path Parameters
tokenId
required
string
Example: 423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token, the notary shall be added to

Request Body schema: application/json
notaryId
required
string

ID of user, who shall be added as notary to token

Responses

Request samples

Content type
application/json
{
  • "notaryId": "3611ab62-94a9-4782-890f-221a64518c83"
}

Response samples

Content type
application/json
{
  • "link": {
    },
  • "newLink": true,
  • "message": "Notary 3611ab62-94a9-4782-890f-221a64518c83 successfully added to token 423baf7e-66fc-4e40-a5d6-4b7384bd665d"
}

TokenController_addKycVerifierForToken

path Parameters
tokenId
required
string
Example: 423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token, the verifier shall be added to

Request Body schema: application/json
verifierId
required
string

ID of user, who shall be added as verifier to token

Responses

Request samples

Content type
application/json
{
  • "verifierId": "3611ab62-94a9-4782-890f-221a64518c83"
}

Response samples

Content type
application/json
{
  • "link": {
    },
  • "newLink": true,
  • "message": "Verifier 3611ab62-94a9-4782-890f-221a64518c83 successfully added to token 423baf7e-66fc-4e40-a5d6-4b7384bd665d"
}

TokenController_addNavManagerForToken

path Parameters
tokenId
required
string
Example: 423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token, the NAV manager shall be added to

Request Body schema: application/json
navManagerId
required
string

ID of user, who shall be added as NAV manager to token

Responses

Request samples

Content type
application/json
{
  • "navManagerId": "3611ab62-94a9-4782-890f-221a64518c83"
}

Response samples

Content type
application/json
{
  • "link": {
    },
  • "newLink": true,
  • "message": "NAV manager 3611ab62-94a9-4782-890f-221a64518c83 successfully added to token 423baf7e-66fc-4e40-a5d6-4b7384bd665d"
}

AssetTemplateController_listAllAssetTemplates

query Parameters
withDefaultTemplates
required
boolean

Responses

Response samples

Content type
application/json
{
  • "templates": [
    ],
  • "message": "5 asset template(s) listed successfully"
}

AssetTemplateController_retrieveAssetTemplate

path Parameters
assetTemplateId
required
string
Example: 739d619a-36b1-421e-b78e-a1a6573b101a

ID of asset template

Responses

Response samples

Content type
application/json
{
  • "template": {
    },
  • "message": "Asset template 739d619a-36b1-421e-b78e-a1a6573b101a retrieved successfully"
}

AssetTemplateController_deleteAssetTemplateById

path Parameters
assetTemplateId
required
string
Example: 739d619a-36b1-421e-b78e-a1a6573b101a

ID of asset template

Responses

FeesController_createOrUpdateTokenFees

path Parameters
tokenId
required
string
Example: 423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token, fees shall be created/updated for

Request Body schema: application/json
assetClass
required
string

Asset class of token, fees shall be created/updated for

investorId
required
string

ID of the user, fees shall be created/updated for

fees
required
object

Fees that shall be created/updated

elementInstances
required
Array of objects

Responses

Request samples

Content type
application/json
{
  • "assetClass": "classa",
  • "investorId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "fees": {
    },
  • "elementInstances": [
    ]
}

Response samples

Content type
application/json
{
  • "fees": [
    ],
  • "elementInstances": [
    ],
  • "scope": [
    ],
  • "message": "5 token(s) created/updated successfully"
}

FeesController_retrieveTokenFees

path Parameters
tokenId
required
string
Example: 423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token, fees shall be retrieved from

query Parameters
assetClass
required
string
Example: assetClass=classa

Asset class of token, fees shall be retrieved from

investorId
required
string
Example: investorId=3611ab62-94a9-4782-890f-221a64518c83

ID of the user, fees shall be retrieved for

Responses

Response samples

Content type
application/json
{
  • "fees": [
    ],
  • "scope": [
    ],
  • "message": "5 token(s) listed successfully"
}

AumController_retrieveSlicedTotalAum

query Parameters
offset
required
number >= 0

Index of first token with Aum to fetch

limit
required
number <= 10
Example: limit=100

Max amount of tokens with Aum to fetch

Responses

Response samples

Content type
application/json
{
  • "aum": 10000000,
  • "count": 3,
  • "total": 543,
  • "message": "5 token(s) with Aum listed successfully"
}

ProjectController_listAllProjects

query Parameters
offset
required
number >= 0

Index of first project to fetch

limit
required
number <= 50
Example: limit=100

Max amount of projects to fetch

withVehicles
required
boolean
Example: withVehicles=true

If set 'true', user's vehicles, linked to the specified token, are retrieved as well

Responses

Response samples

Content type
application/json
{
  • "projects": [
    ],
  • "count": 3,
  • "total": 543,
  • "message": "5 project(s) listed successfully"
}

ProjectController_createProject

Request Body schema: application/json
key
required
string

Project's key [NEEDS TO BE UNIQUE]

name
required
string

Project's name

kycTemplateId
required
string

ID of KYC template, which will be used for the onboarding of users attached to the project

description
required
string

Description of the project

picture
required
Array of strings

Picture of the project

bankAccount
required
object

Bank account information for the project

data
required
object

Object to store any additional data (potentially use case related data)

wallet
required
string

Address of wallet to use to create the token (only required if not the default wallet)

Responses

Request samples

Content type
application/json
{
  • "key": "regCamp-6657422",
  • "name": "RegCamp",
  • "kycTemplateId": "745c87fb-f281-4359-8f00-239dad79cac3",
  • "description": "A KYT solution",
  • "picture": [
    ],
  • "bankAccount": {
    },
  • "data": { },
  • "wallet": "0xd200b5d89f719473573be585eadedc8c916e5515"
}

Response samples

Content type
application/json
{
  • "project": {
    },
  • "newProject": true,
  • "message": "Project d4192b60-79b5-429c-9160-e862b5a3e370 successfully created"
}

ProjectController_listAllProjectInvestors

path Parameters
projectId
required
string
Example: d4192b60-79b5-429c-9160-e862b5a3e370

ID of project, investors shall be retrieved from

query Parameters
offset
required
number >= 0

Index of first investors to fetch

limit
required
number <= 50
Example: limit=100

Max amount of investors to fetch

withVehicles
required
boolean
Example: withVehicles=true

If set 'true', user's vehicles, linked to the specified project, are retrieved as well

withBalances
required
boolean
Example: withBalances=true

If set 'true', user's balances for the specified project are retrieved as well

Responses

Response samples

Content type
application/json
{
  • "users": [
    ],
  • "count": 3,
  • "total": 543,
  • "message": "5 investors(s) listed successfully"
}

ProjectController_retrieveProject

path Parameters
projectId
required
string
Example: d4192b60-79b5-429c-9160-e862b5a3e370

Id of project to retrieve

query Parameters
userType
required
string
Enum: "SUPERADMIN" "ADMIN" "ISSUER" "UNDERWRITER" "BROKER" "INVESTOR" "VEHICLE" "NOTARY" "VERIFIER" "NAV_MANAGER"
Example: userType=ISSUER

Must be a valid user type: | ADMIN | ISSUER | INVESTOR | VEHICLE

withVehicles
required
boolean
Example: withVehicles=true

If set 'true', user's vehicles, linked to the specified project, are retrieved as well

Responses

Response samples

Content type
application/json
{
  • "project": {
    },
  • "message": "Project d4192b60-79b5-429c-9160-e862b5a3e370 retrieved successfully"
}

ProjectController_updateProject

path Parameters
projectId
required
string
Example: d4192b60-79b5-429c-9160-e862b5a3e370

Id of project to update

Request Body schema: application/json
updatedParameters
required
object

Project parameters to update

Responses

Request samples

Content type
application/json
{
  • "updatedParameters": {
    }
}

Response samples

Content type
application/json
{
  • "project": {
    },
  • "message": "Project d4192b60-79b5-429c-9160-e862b5a3e370 updated successfully"
}

ProjectController_deleteProject

path Parameters
projectId
required
string
Example: d4192b60-79b5-429c-9160-e862b5a3e370

Id of project to delete

Responses

Response samples

Content type
application/json
{
  • "deletedElementReviews": [
    ],
  • "deletedTemplateReviews": [
    ],
  • "deletedLinks": [
    ],
  • "message": "Project d4192b60-79b5-429c-9160-e862b5a3e370 deleted successfully"
}

WorkFlowsDigitalAssetController_submitNavValue

Request Body schema: application/json
idempotencyKey
required
string

[OPTIONAL] Idempotency key (shall be unique and generated on client side), used to ensure object is not created twice

tokenId
required
string

ID of token, NAV manager wants to submit the NAV (net asset value) for

assetClass
required
string

Asset class of token, NAV manager wants to submit the NAV (net asset value) for

navValue
required
number

New NAV value

navDate
required
string <date-time>

Date after which value can be used as NAV

data
required
object

Object to store any additional data (potentially use case related data)

Responses

Request samples

Content type
application/json
{
  • "idempotencyKey": "ae5a189f-bcb4-4170-8122-de3a9fe62e94",
  • "tokenId": "423baf7e-66fc-4e40-a5d6-4b7384bd665d",
  • "assetClass": "classA",
  • "navValue": 10000,
  • "navDate": "2020-07-22T08:29:56.009Z",
  • "data": {
    }
}

Response samples

Content type
application/json
{
  • "nav": {
    },
  • "created": true,
  • "message": "Nav submitted successfully"
}

WorkFlowsDigitalAssetController_validateNavValue

Request Body schema: application/json
navId
required
string

ID of nav value, issuer wants to validate (previously submitted by NAV manager)

Responses

Request samples

Content type
application/json
{
  • "navId": "423baf7e-66fc-4e40-a5d6-4b7384bd665d"
}

Response samples

Content type
application/json
{
  • "nav": {
    },
  • "updated": true,
  • "message": "Nav validated successfully"
}

WorkFlowsDigitalAssetController_rejectNavValue

Request Body schema: application/json
navId
required
string

ID of nav value, issuer wants to reject (previously submitted by NAV manager)

comment
required
string

Comment provided by the issuer, to indicate why the NAV has been rejected

Responses

Request samples

Content type
application/json
{
  • "navId": "423baf7e-66fc-4e40-a5d6-4b7384bd665d",
  • "comment": "Value is not correct: NAV can never be higher than 999,999€"
}

Response samples

Content type
application/json
{
  • "nav": {
    },
  • "updated": true,
  • "message": "Nav rejected successfully"
}

WorkFlowsDigitalAssetController_createSubscriptionOrder

Request Body schema: application/json
idempotencyKey
required
string

[OPTIONAL] Idempotency key (shall be unique and generated on client side), used to ensure object is not created twice

tokenId
required
string

ID of token, investor wants to create a primary trade order for

assetClass
required
string

Asset class of token, investor wants to create a primary trade order for

orderType
required
string
Enum: "QUANTITY" "AMOUNT"

Type of order (AMOUNT | QUANTITY)

quantity
required
number

Quantity of tokens, investor wants to trade for (if orderType = QUANTITY) on primary market

amount
required
number

Value of tokens, investor wants to trade for (if orderType = AMOUNT) on primary

tradeType
required
string
Enum: "subscription" "redemption"

Type of trade order the investor wants to create subscription or redemption

data
required
object

Object to store any additional data (potentially use case related data)

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "idempotencyKey": "ae5a189f-bcb4-4170-8122-de3a9fe62e94",
  • "tokenId": 1398,
  • "assetClass": "classA",
  • "orderType": "AMOUNT",
  • "quantity": 10000,
  • "amount": 0,
  • "tradeType": "subscription",
  • "data": {
    },
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "order": {
    },
  • "created": true,
  • "message": "Subscription order 1398 created successfully"
}

WorkFlowsDigitalAssetController_validatePayment

Request Body schema: application/json
orderId
required
string

ID of subscription order, payment shall be set as received for

paymentAmount
required
number

Amount paid by the investor

paymentId
required
string

[OPTIONAL] Payment identifier, indicated in the order. The investor is supposed to provide this paymentId in the label of his bank wire transfer

forcePrice
required
number

If defined, the order's price will be set to this value. Otherwise, order's price will be calculated based on NAV value

data
required
object

Object to store any additional data (potentially use case related data)

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "orderId": 1398,
  • "paymentAmount": 0,
  • "paymentId": 0,
  • "forcePrice": 113,
  • "data": { },
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "order": {
    },
  • "updated": true,
  • "message": "Subscription order 1398 updated successfully (payment received)"
}

WorkFlowsDigitalAssetController_settleOrder

Request Body schema: application/json
orderId
required
string

ID of subscription order, which shall be settled

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "orderId": 1398,
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "order": {
    },
  • "updated": true,
  • "transactionId": "b8cb9c69-0996-4a01-b94e-fe4e8b90dbac",
  • "message": "Creation of 10000 issued token(s) (settlement order), for investor 3611ab62-94a9-4782-890f-221a64518c83"
}

WorkFlowsDigitalAssetController_settleOrderBatch

Request Body schema: application/json
cycleId
required
string

ID of cycle, which shall be settled

orderIds
required
Array of numbers

IDs of orders, which shall be settled

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

states
required
Array of strings

states of orders which we want to settle

limit
required
number

batch limit of orders that we want to settle

Responses

Request samples

Content type
application/json
{
  • "cycleId": "4861ab62-94a9-4782-890f-221a64518b21",
  • "orderIds": [
    ],
  • "sendNotification": true,
  • "states": [
    ],
  • "limit": 50
}

Response samples

Content type
application/json
{
  • "orders": [
    ],
  • "count": 50,
  • "remaining": 50,
  • "total": 50,
  • "message": "Settlement of 50 orders of cycle with id 4861ab62-94a9-4782-890f-221a64518b21 of token e621d692-3b45-43a6-8ad9-9fc13f203802 has been successfully requested (10 orders in cycle, including 8 to settle)"
}

WorkFlowsDigitalAssetController_rejectOrder

Request Body schema: application/json
orderId
required
string

ID of subscription order, that shall be rejected

comment
required
string

Comment, explaining why the order has been rejected

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "orderId": 1398,
  • "comment": 0,
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "order": {
    },
  • "updated": true,
  • "message": "Subscription order 1398 updated successfully (order rejected)"
}

WorkFlowsDigitalAssetController_cancelOrder

Request Body schema: application/json
orderId
required
string

ID of subscription order, that shall be cancelled

comment
required
string

Comment, explaining why the order shall be cancelled

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "orderId": 1398,
  • "comment": 0,
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "order": {
    },
  • "updated": true,
  • "message": "Subscription order 1398 updated successfully (order cancelled)"
}

WorkFlowsDigitalAssetController_createTradeOrder

Request Body schema: application/json
idempotencyKey
required
string

[OPTIONAL] Idempotency key (shall be unique and generated on client side), used to ensure object is not created twice

recipientId
required
string

ID of recipient, the trade is destined to

recipientEmail
required
string

EMAIL of recipient, the trade is destined to

tokenId
required
string

ID of token, investor wants to create a trade order for

assetClass
required
string

Asset class of token, investor wants to create a trade order for

orderType
required
string
Enum: "QUANTITY" "AMOUNT"

Type of order (AMOUNT | QUANTITY)

orderSide
required
string
Enum: "BUY" "SELL"

Order side (BUY | SELL)

quantity
required
number

Quantity of tokens, investor wants to trade (if orderType = QUANTITY)

amount
required
number

Value of tokens, investor wants to trade (if orderType = AMOUNT)

dvpType
required
string
Enum: "ATOMIC" "NON_ATOMIC"

Type of delivery-vs-payment. Shall be chosen amongst ATOMIC and NON_ATOMIC

paymentTokenAddress
required
string

[Optional] Address of token smart contract, where payment hold has been created by the recipient of the trade (only if payment is done on-chain)

paymentTokenStandard
required
string
Enum: "BatchBalanceReader" "BatchReader" "BatchTokenIssuer" "ERC20Token" "ERC721Token" "ERC1400ERC20" "ERC1400CertificateNonce" "ERC1400CertificateSalt" "ERC1400HoldableCertificateToken" "ERC1400TokensValidator" "DVPHoldableLockable"

Must be a valid token standard: ERC1400HoldableCertificateToken

senderId
required
string

Id of the token sender for this order, Applicable to Buy Orders only

data
required
object

Object to store any additional data (potentially use case related data)

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "idempotencyKey": "ae5a189f-bcb4-4170-8122-de3a9fe62e94",
  • "recipientId": 1398,
  • "recipientEmail": "[email protected]",
  • "tokenId": 1398,
  • "assetClass": "classA",
  • "orderType": "AMOUNT",
  • "orderSide": "SELL",
  • "quantity": 10000,
  • "amount": 0,
  • "dvpType": "ATOMIC",
  • "paymentTokenAddress": 1398,
  • "paymentTokenStandard": "ERC1400HoldableCertificateToken",
  • "senderId": "string",
  • "data": {
    },
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "order": {
    },
  • "created": true,
  • "message": "Trade order 1398 created successfully"
}

WorkFlowsDigitalAssetController_approveTradeOrder

Request Body schema: application/json
orderId
required
string

ID of trade order, which shall be approved by issuer

data
required
object

Object to store any additional data (potentially use case related data)

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

sendInviteNotification
required
boolean

Send invite notification flag (if true user will be notified by mail to join the platform)

Responses

Request samples

Content type
application/json
{
  • "orderId": 1398,
  • "data": {
    },
  • "sendNotification": true,
  • "sendInviteNotification": true
}

Response samples

Content type
application/json
{
  • "order": {
    },
  • "updated": true,
  • "message": "Trade order 1398 approved successfully by issuer"
}

WorkFlowsDigitalAssetController_submitTradeOrderNegotiation

Request Body schema: application/json
orderId
required
string

ID of trade order, which shall be accepted by recipient

price
required
number

Price/unit offered for this non-binding enquiry negotiation

expirationDate
required
string <date-time>

Expiration date for this negotiation offer

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "orderId": 1398,
  • "price": 0,
  • "expirationDate": "2019-08-24T14:15:22Z",
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "order": {
    },
  • "updated": true,
  • "message": "Trade order 1398 accepted successfully by recipient"
}

WorkFlowsDigitalAssetController_acceptTradeOrder

Request Body schema: application/json
orderId
required
string

ID of trade order, which shall be accepted by recipient

data
required
object

Object to store any additional data (potentially use case related data)

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "orderId": 1398,
  • "data": {
    },
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "order": {
    },
  • "updated": true,
  • "message": "Trade order 1398 accepted successfully by recipient"
}

WorkFlowsDigitalAssetController_cancelSecondaryOrder

Request Body schema: application/json
orderId
required
string

ID of subscription order, that shall be cancelled

comment
required
string

Comment, explaining why the order shall be cancelled

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "orderId": 1398,
  • "comment": 0,
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "order": {
    },
  • "updated": true,
  • "message": "Subscription order 1398 updated successfully (order cancelled)"
}

WorkFlowsDigitalAssetController_holdTradeOrderDelivery

Request Body schema: application/json
orderId
required
string

ID of trade order, for which delivery token hold shall be created

timeToExpiration
required
number

When the hold will be expired "default value 604800 seconds (7 days)"

data
required
object

Object to store any additional data (potentially use case related data)

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "orderId": 1398,
  • "timeToExpiration": "604800",
  • "data": {
    },
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "order": {
    },
  • "updated": true,
  • "transactionId": "b8cb9c69-0996-4a01-b94e-fe4e8b90dbac",
  • "message": "Hold trade order delivery, including creation of token hold of 10000 issued token(s), for investor 3611ab62-94a9-4782-890f-221a64518c83, has been successfully requested (transaction sent)"
}

WorkFlowsDigitalAssetController_holdTradeOrderPayment

Request Body schema: application/json
orderId
required
string

ID of trade order, for which payment token hold shall be provided

paymentHoldId
required
string

ID of payment token hold

data
required
object

Object to store any additional data (potentially use case related data)

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "orderId": 1398,
  • "paymentHoldId": "0xdee57eec5fa3e15df2c65a1600b5b5fad62700d6696996d31a3da528549e265b",
  • "data": {
    },
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "order": {
    },
  • "updated": true,
  • "message": "Trade order 1398 updated successfully (payment hold ID provided by recipient)"
}

WorkFlowsDigitalAssetController_settleAtomicTradeOrder

Request Body schema: application/json
orderId
required
string

ID of trade order, which shall be settled

paymentHoldId
required
string

[Optional] ID of payment hold ID, that has been created by the recipient of the trade (only if payment is done on-chain)

data
required
object

Object to store any additional data (potentially use case related data)

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "orderId": 1398,
  • "paymentHoldId": 1398,
  • "data": {
    },
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "order": {
    },
  • "updated": true,
  • "transactionId": "b8cb9c69-0996-4a01-b94e-fe4e8b90dbac",
  • "message": "Trade order settlement, including execution of token holds, has been successfully requested (transaction sent)"
}

WorkFlowsDigitalAssetController_sendTradeOrderPayment

Request Body schema: application/json
orderId
required
string

ID of trade order, which payment has been sent for

paymentAmount
required
number

Amount paid by the payer (recipient of the trade)

paymentId
required
string

[OPTIONAL] Payment identifier, indicated in the order. The payer (recipient of the trade) is supposed to provide this paymentId in the label of his bank wire transfer

paymentProof
required
Array of strings

[OPTIONAL] Payment proof, uploaded by the payer (recipient of the trade) as a confirmation of his bank wire transfer

data
required
object

Object to store any additional data (potentially use case related data)

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "orderId": 1398,
  • "paymentAmount": 0,
  • "paymentId": 0,
  • "paymentProof": 0,
  • "data": {
    },
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "order": {
    },
  • "updated": true,
  • "message": "Trade order 1398 updated successfully (payment sent)"
}

WorkFlowsDigitalAssetController_receiveTradeOrderPayment

Request Body schema: application/json
orderId
required
string

ID of trade order, which payment has been received for

paymentAmount
required
number

Amount paid by the payer (recipient of the trade)

paymentId
required
string

[OPTIONAL] Payment identifier, indicated in the order. The payer (recipient of the trade) is supposed to provide this paymentId in the label of his bank wire transfer

data
required
object

Object to store any additional data (potentially use case related data)

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "orderId": 1398,
  • "paymentAmount": 0,
  • "paymentId": 0,
  • "data": {
    },
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "order": {
    },
  • "updated": true,
  • "message": "Trade order 1398 updated successfully (payment received)"
}

WorkFlowsDigitalAssetController_settleNonAtomicTradeOrder

Request Body schema: application/json
orderId
required
string

ID of trade order, which shall be settled

htlcSecret
required
string

[OPTIONAL] In case the user calling the endpoint is not the secret owner(e.g. the one who created the secret), he needs to provide the secret

data
required
object

Object to store any additional data (potentially use case related data)

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "orderId": 1398,
  • "htlcSecret": "0xdee57eec5fa3e15df2c65a1600b5b5fad62700d6696996d31a3da528549e265b",
  • "data": {
    },
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "order": {
    },
  • "updated": true,
  • "transactionId": "b8cb9c69-0996-4a01-b94e-fe4e8b90dbac",
  • "message": "Trade order settlement, including execution of token hold, has been successfully requested (transaction sent)"
}

WorkFlowsDigitalAssetController_rejectTradeOrder

Request Body schema: application/json
orderId
required
string

ID of trade order, which shall be rejected

comment
required
string

Comment provided by the issuer, to indicate why the submitter has been validated/rejected

data
required
object

Object to store any additional data (potentially use case related data)

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "orderId": 1398,
  • "comment": "string",
  • "data": {
    },
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "order": {
    },
  • "updated": true,
  • "transactionId": "b8cb9c69-0996-4a01-b94e-fe4e8b90dbac",
  • "message": "Trade order rejection, including release of token hold of 10000 issued token(s), for investor 3611ab62-94a9-4782-890f-221a64518c83, has been successfully requested (transaction sent)"
}

WorkFlowsDigitalAssetController_createOffer

Request Body schema: application/json
idempotencyKey
required
string

[OPTIONAL] Idempotency key (shall be unique and generated on client side), used to ensure object is not created twice

tokenId
required
string

ID of token, investor wants to create a primary trade order for

assetClass
required
string

Asset class of token, investor wants to create a primary trade order for

price
required
number

Price/unit for this sale offer

quantity
required
number

Quantity of tokens, investor wants to offer for sale

offerStatus
required
string
Enum: "OPEN" "PAUSED" "CLOSED"

Flag denoting if Tokens advertised/offered is available for purchase/not

enableAtPriceOrder
required
boolean

Flag denoting if Tokens advertised/offered is available for direct purchase order

enableBidPriceOrder
required
boolean

Flag denoting if Tokens advertised/offered is available for bid order

enableNegotiation
required
boolean

Flag denoting if Tokens advertised/offered is available for negotiation order

automateRetirement
required
boolean

Flag denoting if auto retirement is available for all orders after settlement

dvpType
required
string
Enum: "ATOMIC" "NON_ATOMIC"

Type of delivery-vs-payment. Shall be chosen amongst ATOMIC and NON_ATOMIC

paymentTokenAddress
required
string

[Optional] Address of token smart contract, where payment hold has been created by the recipient of the trade (only if payment is done on-chain)

paymentTokenStandard
required
string
Enum: "BatchBalanceReader" "BatchReader" "BatchTokenIssuer" "ERC20Token" "ERC721Token" "ERC1400ERC20" "ERC1400CertificateNonce" "ERC1400CertificateSalt" "ERC1400HoldableCertificateToken" "ERC1400TokensValidator" "DVPHoldableLockable"

Must be a valid token standard: ERC1400HoldableCertificateToken

data
required
object

Object to store any additional data (potentially use case related data)

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "idempotencyKey": "ae5a189f-bcb4-4170-8122-de3a9fe62e94",
  • "tokenId": 1398,
  • "assetClass": "default",
  • "price": 0,
  • "quantity": 10000,
  • "offerStatus": "OPEN",
  • "enableAtPriceOrder": true,
  • "enableBidPriceOrder": true,
  • "enableNegotiation": true,
  • "automateRetirement": true,
  • "dvpType": "ATOMIC",
  • "paymentTokenAddress": 1398,
  • "paymentTokenStandard": "ERC1400HoldableCertificateToken",
  • "data": {
    },
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "offer": {
    },
  • "created": true,
  • "message": "Offer 1398 created successfully"
}

WorkFlowsDigitalAssetController_updateOffer

Request Body schema: application/json
offerId
required
number

ID of offer to be updated

price
required
number

Value of tokens, investor wants to trade for (if orderType = AMOUNT) on primary

quantity
required
number

Quantity of tokens, investor wants to trade for (if orderType = QUANTITY) on primary market

offerStatus
required
string
Enum: "OPEN" "PAUSED" "CLOSED"

Object to store any additional data (potentially use case related data)

enableAtPriceOrder
required
boolean

Flag denoting if Tokens advertised/offered is available for direct purchase order

enableBidPriceOrder
required
boolean

Flag denoting if Tokens advertised/offered is available for bid order

enableNegotiation
required
boolean

Flag denoting if Tokens advertised/offered is available for negotiation order

automateRetirement
required
boolean

Flag denoting if auto retirement is available for all orders after settlement

data
required
object

Object to store any additional data (potentially use case related data)

Responses

Request samples

Content type
application/json
{
  • "offerId": 1398,
  • "price": 0,
  • "quantity": 10000,
  • "offerStatus": {
    },
  • "enableAtPriceOrder": true,
  • "enableBidPriceOrder": true,
  • "enableNegotiation": true,
  • "automateRetirement": true,
  • "data": {
    }
}

Response samples

Content type
application/json
{
  • "offer": {
    },
  • "message": "Offer 1398 updated successfully"
}

WorkFlowsDigitalAssetController_purchaseOffer

Request Body schema: application/json
idempotencyKey
required
string

[OPTIONAL] Idempotency key (shall be unique and generated on client side), used to ensure object is not created twice

offerId
required
number

ID of offer

quantity
required
number

Quantity of tokens, investor wants to purchase

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "idempotencyKey": "ae5a189f-bcb4-4170-8122-de3a9fe62e94",
  • "offerId": 1398,
  • "quantity": 10000,
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "offer": {
    },
  • "created": true,
  • "message": "Offer 1398 created successfully"
}

WorkFlowsDigitalAssetController_bindOffer

Request Body schema: application/json
idempotencyKey
required
string

[OPTIONAL] Idempotency key (shall be unique and generated on client side), used to ensure object is not created twice

offerId
required
number

ID of offer

bindOfferQuantity
required
number

Quantity of tokens, investor wants to purchase for this binding offer

bindOfferPrice
required
number

Price/unit for this binding offer

bindOfferExpiryDate
required
string <date-time>

Binding offer expiration date

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "idempotencyKey": "ae5a189f-bcb4-4170-8122-de3a9fe62e94",
  • "offerId": 1398,
  • "bindOfferQuantity": 10000,
  • "bindOfferPrice": 0,
  • "bindOfferExpiryDate": "2019-08-24T14:15:22Z",
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "order": {
    },
  • "created": true,
  • "message": "Order 1398 created successfully based on Offer 1398 "
}

WorkFlowsDigitalAssetController_negotiate

Request Body schema: application/json
idempotencyKey
required
string

[OPTIONAL] Idempotency key (shall be unique and generated on client side), used to ensure object is not created twice

offerId
required
number

ID of offer

negotiationQuantity
required
number

Quantity of tokens, investor wants to purchase thru this negotiating order

negotiationPrice
required
number

Price/unit offered for this negotiating order

negotiationHoldRequested
required
boolean

Request to hold inventory

recipientEmail
required
string

Receiver Email for non binding enquiry

recipientPhoneNumber
required
string

Receiver phone number for non binding enquiry

enquiryNotes
required
string

Notes for non binding enquiry

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "idempotencyKey": "ae5a189f-bcb4-4170-8122-de3a9fe62e94",
  • "offerId": 1398,
  • "negotiationQuantity": 10000,
  • "negotiationPrice": 0,
  • "negotiationHoldRequested": true,
  • "recipientEmail": "string",
  • "recipientPhoneNumber": "string",
  • "enquiryNotes": "string",
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "order": {
    },
  • "created": true,
  • "message": "Order 1398 created successfully based on Offer 1398 "
}

WorkFlowsDigitalAssetController_initializeAssetInstance

Request Body schema: application/json
wallet
required
string

Address of wallet to use to create the token (only required if not the default wallet)

tokenStandard
required
string
Enum: "BatchBalanceReader" "BatchReader" "BatchTokenIssuer" "ERC20Token" "ERC721Token" "ERC1400ERC20" "ERC1400CertificateNonce" "ERC1400CertificateSalt" "ERC1400HoldableCertificateToken" "ERC1400TokensValidator" "DVPHoldableLockable"

Must be a valid token standard: ERC1400HoldableCertificateToken

name
required
string

Token name

symbol
required
string

Must be a less than 12 characters long

chainId
required
string

ID of the chain/network where the token shall be created

kycTemplateId
required
string

ID of the KYC template investors that will be applied to investors (leave undefined if no KYC will be requested from investors)

certificateActivated
required
boolean

[DEPRECATED - Replaced by certificateType] If set to true, token actions can not be performed without certificates signed by this API (security), thus empowering issuers with strong control capabilities over issued assets, as those can not be transferred without Codefi API

certificateType
required
string
Enum: "NONE" "NONCE" "SALT" "NONE_OR_NONCE_OR_SALT"

Type of certificate validation. Shall be chosen amongst NONE, NONCE and SALT

unregulatedERC20transfersActivated
required
boolean

If set to true, tokens from default partitions can be transferred without restriction, e.g. with unregulated ERC20 transfers

customExtensionAddress
required
string

[OPTIONAL] Address of "custom" extension contract, the token contract will be linked to. If undefined, token contract will be linked to "generic" extension contract by default.

initialOwnerAddress
required
string

[OPTIONAL] Address, the token contract ownership shall be transferred to. If undefined, token contract will not be transferred (but this can still be done afterwards).

assetTemplateId
required
string

ID of asset template

bypassSecondaryTradeIssuerApproval
required
boolean

If set 'true', Issuer is not required to approve secondary trade orders

referenceDataSchemaId
required
string

Flag for using Reference Data API (with a specific schema)

referenceData
required
object

Object containing reference data to store in Reference-Data-Api

referenceDataOptionsType
required
string

Type of Reference Data that is retrieved

automateHoldCreation
required
boolean

If set 'true', tokens/credits will be automatically held on creation of accepted order

automateSettlement
required
boolean

If set 'true', tokens/credits will be transferred automatically on payment Confirmation

automateRetirement
required
boolean

If set 'true', tokens will be automatically retired on purchase

automateForceBurn
required
Array of arrays

If defined, tokens of secondary trade order of defined order side(s) will be automatically burnt after a successful settlement

initialSupplies
required
Array of objects

Array of initial supplies to be minted right after asset creation

data
required
object

Object to store any additional data (potentially use case related data)

issuerId
required
string

id of the issuer who is responsible to review & deploy the asset (only required when the asset is initialized by an investor or underwriter, which is the case for assets of the bi-party or tri-party flow)

reviewerId
required
string

id of the reviewer who is responsible to review the asset (only required when the asset is initialized by an underwriter, which is the case in the tri-party flow)

elementInstances
required
Array of objects
assetClasses
required
Array of strings

Responses

Request samples

Content type
application/json
{
  • "wallet": "0xd200b5d89f719473573be585eadedc8c916e5515",
  • "tokenStandard": "ERC1400HoldableCertificateToken",
  • "name": "CodefiToken",
  • "symbol": "CODEFI",
  • "chainId": "1",
  • "kycTemplateId": "b32f6346-53b5-4cc6-a3f3-0012ed5e67a3",
  • "certificateActivated": true,
  • "certificateType": true,
  • "unregulatedERC20transfersActivated": true,
  • "customExtensionAddress": "0x0089d53F703f7E0843953D48133f74cE247184c2",
  • "initialOwnerAddress": "0x0089d53F703f7E0843953D48133f74cE247184c2",
  • "assetTemplateId": "739d619a-36b1-421e-b78e-a1a6573b101a",
  • "bypassSecondaryTradeIssuerApproval": true,
  • "referenceDataSchemaId": "f706c986-f5c8-4503-baf8-959dbac2dd40",
  • "referenceData": [ ],
  • "referenceDataOptionsType": "NewImpactTargetOptions",
  • "automateHoldCreation": true,
  • "automateSettlement": true,
  • "automateRetirement": true,
  • "automateForceBurn": true,
  • "initialSupplies": [
    ],
  • "data": {
    },
  • "issuerId": "string",
  • "reviewerId": "string",
  • "elementInstances": [
    ],
  • "assetClasses": [
    ]
}

Response samples

Content type
application/json
{
  • "token": {
    },
  • "tokenAction": {
    },
  • "message": "Asset instance 423baf7e-66fc-4e40-a5d6-4b7384bd665d initialized successfully"
}

WorkFlowsDigitalAssetController_updateAssetInstance

Request Body schema: application/json
tokenId
required
string

ID of asset instance, that shall be updated

wallet
required
string

Address of wallet to use to create the token (only required if not the default wallet)

tokenStandard
required
string
Enum: "BatchBalanceReader" "BatchReader" "BatchTokenIssuer" "ERC20Token" "ERC721Token" "ERC1400ERC20" "ERC1400CertificateNonce" "ERC1400CertificateSalt" "ERC1400HoldableCertificateToken" "ERC1400TokensValidator" "DVPHoldableLockable"

Must be a valid token standard: ERC1400HoldableCertificateToken

name
required
string

Token name

symbol
required
string

Must be a less than 12 characters long

chainId
required
string

ID of the chain/network where the token shall be created

kycTemplateId
required
string

ID of the KYC template investors that will be applied to investors (leave undefined if no KYC will be requested from investors)

certificateActivated
required
boolean

[DEPRECATED - Replaced by certificateType] If set to true, token actions can not be performed without certificates signed by this API (security), thus empowering issuers with strong control capabilities over issued assets, as those can not be transferred without Codefi API

certificateType
required
string
Enum: "NONE" "NONCE" "SALT" "NONE_OR_NONCE_OR_SALT"

Type of certificate validation. Shall be chosen amongst NONE, NONCE and SALT

unregulatedERC20transfersActivated
required
boolean

If set to true, tokens from default partitions can be transferred without restriction, e.g. with unregulated ERC20 transfers

customExtensionAddress
required
string

[OPTIONAL] Address of "custom" extension contract, the token contract will be linked to. If undefined, token contract will be linked to "generic" extension contract by default.

initialOwnerAddress
required
string

[OPTIONAL] Address, the token contract ownership shall be transferred to. If undefined, token contract will not be transferred (but this can still be done afterwards).

assetTemplateId
required
string

ID of asset template

bypassSecondaryTradeIssuerApproval
required
boolean

If set 'true', Issuer is not required to approve secondary trade orders

automateHoldCreation
required
boolean

If set 'true', tokens/credits will be automatically held on creation of accepted order

automateSettlement
required
boolean

If set 'true', tokens/credits will be transferred automatically on payment Confirmation

automateRetirement
required
boolean

If set 'true', tokens will be automatically retired on purchase

automateForceBurn
required
Array of arrays

If defined, tokens of secondary trade order of defined order side(s) will be automatically burnt after a successful settlement

initialSupplies
required
Array of objects

Array of initial supplies to be minted right after asset creation

data
required
object

Object to store any additional data (potentially use case related data)

issuerId
required
string

id of the issuer who is responsible to review & deploy the asset (only required when the asset is initialized by an investor or underwriter, which is the case for assets of the bi-party or tri-party flow)

reviewerId
required
string

id of the reviewer who is responsible to review the asset (only required when the asset is initialized by an underwriter, which is the case in the tri-party flow)

elementInstances
required
Array of objects
assetClasses
required
Array of strings

Responses

Request samples

Content type
application/json
{
  • "tokenId": "423baf7e-66fc-4e40-a5d6-4b7384bd665d",
  • "wallet": "0xd200b5d89f719473573be585eadedc8c916e5515",
  • "tokenStandard": "ERC1400HoldableCertificateToken",
  • "name": "CodefiToken",
  • "symbol": "CODEFI",
  • "chainId": "1",
  • "kycTemplateId": "b32f6346-53b5-4cc6-a3f3-0012ed5e67a3",
  • "certificateActivated": true,
  • "certificateType": true,
  • "unregulatedERC20transfersActivated": true,
  • "customExtensionAddress": "0x0089d53F703f7E0843953D48133f74cE247184c2",
  • "initialOwnerAddress": "0x0089d53F703f7E0843953D48133f74cE247184c2",
  • "assetTemplateId": "739d619a-36b1-421e-b78e-a1a6573b101a",
  • "bypassSecondaryTradeIssuerApproval": true,
  • "automateHoldCreation": true,
  • "automateSettlement": true,
  • "automateRetirement": true,
  • "automateForceBurn": true,
  • "initialSupplies": [
    ],
  • "data": {
    },
  • "issuerId": "string",
  • "reviewerId": "string",
  • "elementInstances": [
    ],
  • "assetClasses": [
    ]
}

Response samples

Content type
application/json
{
  • "token": {
    },
  • "tokenAction": {
    },
  • "message": "Asset instance 423baf7e-66fc-4e40-a5d6-4b7384bd665d updated successfully"
}

WorkFlowsDigitalAssetController_submitAssetInstance

Request Body schema: application/json
tokenId
required
string

ID of token to be submitted for deployment

sendNotification
required
boolean

Send notification flag (if true user need to be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "tokenId": "423baf7e-66fc-4e40-a5d6-4b7384bd665d",
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "token": {
    },
  • "tokenAction": {
    },
  • "message": "Asset instance 423baf7e-66fc-4e40-a5d6-4b7384bd665d initialized successfully"
}

WorkFlowsDigitalAssetController_rejectAssetInstance

Request Body schema: application/json
tokenId
required
string

ID of token to be rejected

comment
required
string

Comment, explaining why the asset has been rejected

sendNotification
required
boolean

Send notification flag (if true user need to be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "tokenId": "423baf7e-66fc-4e40-a5d6-4b7384bd665d",
  • "comment": "[\"Project Owner Incorrect\",\"Project Link/ Registry link is incorrect\"]",
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "token": {
    },
  • "tokenAction": {
    },
  • "message": "Asset instance 423baf7e-66fc-4e40-a5d6-4b7384bd665d initialized successfully"
}

WorkFlowsDigitalAssetController_deployAssetInstance

Request Body schema: application/json
tokenId
required
string

ID of token, that shall be deployed

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "tokenId": "423baf7e-66fc-4e40-a5d6-4b7384bd665d",
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "token": {
    },
  • "tokenAction": {
    },
  • "updated": true,
  • "transactionId": "b8cb9c69-0996-4a01-b94e-fe4e8b90dbac",
  • "message": "Asset 423baf7e-66fc-4e40-a5d6-4b7384bd665d deployed successfully"
}

WorkFlowsDigitalAssetController_offerLockedTokens

Request Body schema: application/json
idempotencyKey
required
string

[OPTIONAL] Idempotency key (shall be unique and generated on client side), used to ensure object is not created twice

tokenId
required
string

ID of token, that shall be offered to the investor

investorId
required
string

ID of investor, token shall be offered to

quantity
required
number

Quantity of token, that shall be offered

assetClass
required
string

Asset class of token, that shall be offered

forcePrice
required
number

Optional parameter to force the price of the operation. If not defined, price will be set automatically, based on NAV value (recommended).

data
required
object

Object to store any additional data (potentially use case related data)

Responses

Request samples

Content type
application/json
{
  • "idempotencyKey": "ae5a189f-bcb4-4170-8122-de3a9fe62e94",
  • "tokenId": "423baf7e-66fc-4e40-a5d6-4b7384bd665d",
  • "investorId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "quantity": 10000,
  • "assetClass": "classA",
  • "forcePrice": 10,
  • "data": { }
}

Response samples

Content type
application/json
{
  • "tokenAction": {
    },
  • "created": true,
  • "transactionId": "b8cb9c69-0996-4a01-b94e-fe4e8b90dbac",
  • "message": "Creation of 10000 locked token(s) (pre-issuance), for investor 3611ab62-94a9-4782-890f-221a64518c83, has been successfully requested (transaction sent)"
}

WorkFlowsDigitalAssetController_distributeLockedTokens

Request Body schema: application/json
tokenActionId
required
string

ID of workflow instance, that shall be updated

vehicleId
required
string

ID of investor's vehicle, token shall be distributed to (by the investor)

quantity
required
number

Quantity of token, that shall be distributed

data
required
object

Object to store any additional data (potentially use case related data)

Responses

Request samples

Content type
application/json
{
  • "tokenActionId": 1398,
  • "vehicleId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "quantity": 10000,
  • "data": { }
}

Response samples

Content type
application/json
{
  • "tokenAction1": {
    },
  • "tokenAction2": {
    },
  • "updated": true,
  • "transactionId": "b8cb9c69-0996-4a01-b94e-fe4e8b90dbac",
  • "message": "Distribution of 10000 locked token(s) (pre-issuance), from investor 3611ab62-94a9-4782-890f-221a64518c83, to vehicle 3611ab62-94a9-4782-890f-221a64518c83, has been successfully requested (transaction sent)"
}

WorkFlowsDigitalAssetController_createUnlockedTokens

Request Body schema: application/json
idempotencyKey
required
string

[OPTIONAL] Idempotency key (shall be unique and generated on client side), used to ensure object is not created twice

tokenId
required
string

ID of token, that shall be created for the investor

investorId
required
string

ID of investor, token shall be created for

quantity
required
number

Quantity of token, that shall be created

assetClass
required
string

Asset class of token, that shall be created

forcePrice
required
number

Optional parameter to force the price of the operation. If not defined, price will be set automatically, based on NAV value (recommended).

data
required
object

Object to store any additional data (potentially use case related data)

Responses

Request samples

Content type
application/json
{
  • "idempotencyKey": "ae5a189f-bcb4-4170-8122-de3a9fe62e94",
  • "tokenId": "423baf7e-66fc-4e40-a5d6-4b7384bd665d",
  • "investorId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "quantity": 10000,
  • "assetClass": "classA",
  • "forcePrice": 10,
  • "data": { }
}

Response samples

Content type
application/json
{
  • "tokenAction": {
    },
  • "created": true,
  • "transactionId": "b8cb9c69-0996-4a01-b94e-fe4e8b90dbac",
  • "message": "Creation of 10000 locked token(s), for investor 3611ab62-94a9-4782-890f-221a64518c83, has been successfully requested (transaction sent)"
}

WorkFlowsDigitalAssetController_createLockedTokens

Request Body schema: application/json
idempotencyKey
required
string

[OPTIONAL] Idempotency key (shall be unique and generated on client side), used to ensure object is not created twice

tokenId
required
string

ID of token, that shall be created for the investor

investorId
required
string

ID of investor, token shall be created for

quantity
required
number

Quantity of token, that shall be created

assetClass
required
string

Asset class of token, that shall be created

forcePrice
required
number

Optional parameter to force the price of the operation. If not defined, price will be set automatically, based on NAV value (recommended).

data
required
object

Object to store any additional data (potentially use case related data)

Responses

Request samples

Content type
application/json
{
  • "idempotencyKey": "ae5a189f-bcb4-4170-8122-de3a9fe62e94",
  • "tokenId": "423baf7e-66fc-4e40-a5d6-4b7384bd665d",
  • "investorId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "quantity": 10000,
  • "assetClass": "classA",
  • "forcePrice": 10,
  • "data": { }
}

Response samples

Content type
application/json
{
  • "tokenAction": {
    },
  • "created": true,
  • "transactionId": "b8cb9c69-0996-4a01-b94e-fe4e8b90dbac",
  • "message": "Creation of 10000 locked token(s), for investor 3611ab62-94a9-4782-890f-221a64518c83, has been successfully requested (transaction sent)"
}

WorkFlowsDigitalAssetController_reserveLockedTokens

Request Body schema: application/json
tokenActionId
required
string

ID of workflow instance, that shall be updated

quantity
required
number

Quantity of tokens to reserve

documentId
required
string

ID of legal agreement, that got signed by the investor to reserve tokens

Responses

Request samples

Content type
application/json
{
  • "tokenActionId": 1398,
  • "quantity": 10000,
  • "documentId": "3611ab62-94a9-4782-890f-221a64518c83"
}

Response samples

Content type
application/json
{
  • "tokenAction": {
    },
  • "updated": true,
  • "transactionId": "b8cb9c69-0996-4a01-b94e-fe4e8b90dbac",
  • "message": "Reservation of 10000 locked token(s), for investor 3611ab62-94a9-4782-890f-221a64518c83, has been successfully requested (transaction sent)"
}

WorkFlowsDigitalAssetController_releaseReservedTokens

Request Body schema: application/json
tokenActionId
required
string

ID of workflow instance, that shall be updated

Responses

Request samples

Content type
application/json
{
  • "tokenActionId": 1398
}

Response samples

Content type
application/json
{
  • "tokenAction": {
    },
  • "updated": true,
  • "transactionId": "b8cb9c69-0996-4a01-b94e-fe4e8b90dbac",
  • "message": "Release of 10000 reserved token(s), for investor 3611ab62-94a9-4782-890f-221a64518c83, has been successfully requested (transaction sent)"
}

WorkFlowsDigitalAssetController_destroyUnreservedTokens

Request Body schema: application/json
tokenActionId
required
string

ID of workflow instance, that shall be updated

Responses

Request samples

Content type
application/json
{
  • "tokenActionId": 1398
}

Response samples

Content type
application/json
{
  • "tokenAction": {
    },
  • "updated": true,
  • "transactionId": "b8cb9c69-0996-4a01-b94e-fe4e8b90dbac",
  • "message": "Destruction of 10000 unreserved token(s), for investor 3611ab62-94a9-4782-890f-221a64518c83, has been successfully requested (transaction sent)"
}

WorkFlowsDigitalAssetController_sendNotaryReceipt

Request Body schema: application/json
tokenActionId
required
string

ID of workflow instance, that shall be updated

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "tokenActionId": 1398,
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "tokenAction": {
    },
  • "updated": true,
  • "message": "Notary receipt successfully sent for action #1398, already 60 blocks past since transaction validation"
}

WorkFlowsDigitalAssetController_createEvents

Request Body schema: application/json
idempotencyKey
required
string

[OPTIONAL] Idempotency key (shall be unique and generated on client side), used to ensure object is not created twice

tokenId
required
string

ID of token, issuer wants to create a event for

assetClass
required
string

Asset class of token, issuer wants to create a event for

eventType
required
string
Enum: "COUPON" "REDEMPTION"

Type of event (COUPON | REDEMPTION)

settlementDate
required
string <date-time>

Settlement date for event that issuer wants to create

amount
required
string

Amount for event that issuer wants to create

data
required
object

Object to store any additional data (potentially use case related data)

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "idempotencyKey": "ae5a189f-bcb4-4170-8122-de3a9fe62e94",
  • "tokenId": 1398,
  • "assetClass": "classA",
  • "eventType": "COUPON",
  • "settlementDate": "1990-09-19T08:24:00.000Z",
  • "amount": 10,
  • "data": {
    },
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "event": {
    },
  • "created": true,
  • "message": "Event 1398 created successfully"
}

WorkFlowsDigitalAssetController_settleEvent

Request Body schema: application/json
eventId
required
string

ID of event, which shall be settled

investorsId
required
Array of strings

IDs of investors, for which issuer settle events

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "eventId": 1398,
  • "investorsId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "event": {
    },
  • "updated": true,
  • "message": "Settle of COUPON event is successful"
}

WorkFlowsDigitalAssetController_cancelEvent

Request Body schema: application/json
eventId
required
string

ID of event, which shall be settled

investorsId
required
Array of strings

IDs of investors, for which issuer settle events

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "eventId": 1398,
  • "investorsId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "event": {
    },
  • "updated": true,
  • "message": "Event 1398 updated successfully (event cancelled)"
}

OfferController_listAllOffers

query Parameters
offset
required
number >= 0

Index of first offer to fetch

limit
required
number <= 50
Example: limit=100

Max amount of offers to fetch

issuerId
required
string
Example: issuerId=3611ab62-94a9-4782-890f-221a64518c83

ID of issuer, offers list shall be filtered for

tokenId
required
string
Example: tokenId=423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token, offers list shall be filtered for

assetClass
required
string
Example: assetClass=default

Asset class of token, offers list shall be filtered for

withAssetData
required
boolean
Example: withAssetData=true

If set 'true', asset data of the token of the specified offer are retrieved as well

tokenIds
required
string
Example: tokenIds=["423baf7e-66fc-4e40-a5d6-4b7384bd665d"]

Filter parameter to retrieve offers of specific tokens. The parameter shall be a stringified array of tokenIds.

states
required
string
Example: states=["subscribed"]

Filter parameter to retrieve offers with specific states. The parameter shall be a stringified array of states.

functionNames
required
string
Example: functionNames=["createOffer"]

Filter parameter to retrieve offers with specific function names. The parameter shall be a stringified array of functionNames.

userIds
required
string
Example: userIds=["3611ab62-94a9-4782-890f-221a64518c83"]

Filter parameter to retrieve offers of specific users. The parameter shall be a stringified array of userIds.

dates
required
string
Example: dates=["Sun Dec 17 1995"]

Filter parameter to retrieve offers of specific dates. The parameter shall be a stringified array of dates.

Responses

Response samples

Content type
application/json
{
  • "offers": [
    ],
  • "count": 3,
  • "total": 543,
  • "message": "Offers listed successfully, filtered for token 423baf7e-66fc-4e40-a5d6-4b7384bd665d"
}

OfferController_retrieveOffer

path Parameters
offerIndex
required
number
Example: 3491

Index of offer to retrieve

query Parameters
withAssetData
required
boolean
Example: withAssetData=true

If set 'true', asset data of the token of the specified offer are retrieved as well

Responses

Response samples

Content type
application/json
{
  • "offer": {
    },
  • "message": "Offer with index id retrieved successfully"
}

OrderController_listAllOrders

query Parameters
offset
required
number >= 0

Index of first order to fetch

limit
required
number <= 50
Example: limit=100

Max amount of orders to fetch

tokenId
required
string
Example: tokenId=423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token, orders list shall be filtered for

assetClass
required
string
Example: assetClass=classA

Asset class of token, orders list shall be filtered for

tokenIds
required
string
Example: tokenIds=["423baf7e-66fc-4e40-a5d6-4b7384bd665d"]

Filter parameter to retrieve orders of specific tokens. The parameter shall be a stringified array of tokenIds.

states
required
string
Example: states=["subscribed"]

Filter parameter to retrieve orders with specific states. The parameter shall be a stringified array of states.

functionNames
required
string
Example: functionNames=["createPrimaryTradeOrder"]

Filter parameter to retrieve orders with specific function names. The parameter shall be a stringified array of functionNames.

userIds
required
string
Example: userIds=["3611ab62-94a9-4782-890f-221a64518c83"]

Filter parameter to retrieve orders of specific users. The parameter shall be a stringified array of userIds.

dates
required
string
Example: dates=["Sun Dec 17 1995"]

Filter parameter to retrieve orders of specific dates. The parameter shall be a stringified array of dates.

Responses

Response samples

Content type
application/json
{
  • "orders": [
    ],
  • "count": 3,
  • "total": 543,
  • "message": "Orders listed successfully for user 3611ab62-94a9-4782-890f-221a64518c83, filtered for token 423baf7e-66fc-4e40-a5d6-4b7384bd665d"
}

OrderController_retrieveOrder

path Parameters
orderIndex
required
number
Example: 3491

Index of order to retrieve

Responses

Response samples

Content type
application/json
{
  • "order": {
    },
  • "message": "Order with index id retrieved successfully"
}

KYCWorkflowIssuerRelatedController_inviteForIssuerAsReviewer

Request Body schema: application/json
submitterId
required
string

ID of submitter (investor, underwriter, etc.), who shall be invited

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83"
}

Response samples

Content type
application/json
{
  • "link": {
    },
  • "newLink": true,
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 successfully invited to provide KYC elements for issuer 3611ab62-94a9-4782-890f-221a64518c83"
}

KYCWorkflowIssuerRelatedController_inviteForIssuerAsUnderwriter

Request Body schema: application/json
submitterId
required
string

ID of submitter (investor, underwriter, etc.), who shall be invited

issuerId
required
string

ID of issuer, KYC shall be submitted for

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "issuerId": "3611ab62-94a9-4782-890f-221a64518c83"
}

Response samples

Content type
application/json
{
  • "link": {
    },
  • "newLink": true,
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 successfully invited to provide KYC elements for issuer 3611ab62-94a9-4782-890f-221a64518c83"
}

KYCWorkflowIssuerRelatedController_inviteForIssuerAsBroker

Request Body schema: application/json
submitterId
required
string

ID of submitter (investor, underwriter, etc.), who shall be invited

issuerId
required
string

ID of issuer, KYC shall be submitted for

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "issuerId": "3611ab62-94a9-4782-890f-221a64518c83"
}

Response samples

Content type
application/json
{
  • "link": {
    },
  • "newLink": true,
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 successfully invited to provide KYC elements for issuer 3611ab62-94a9-4782-890f-221a64518c83"
}

KYCWorkflowIssuerRelatedController_submitForIssuer

Request Body schema: application/json
issuerId
required
string

ID of issuer, KYC shall be submitted for

elements
required
Array of strings

Array of KYC element instances to submit

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "issuerId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "elements": [
    ],
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "link": {
    },
  • "message": "Issuer-related KYC successfully submitted by user 3611ab62-94a9-4782-890f-221a64518c83 for issuer 3611ab62-94a9-4782-890f-221a64518c83"
}

KYCWorkflowIssuerRelatedController_reviewForIssuerAsReviewer

Request Body schema: application/json
submitterId
required
string

ID of submitter (investor, underwriter, etc.), whom KYC shall be reviewed

validations
required
Array of strings

Array of KYC element reviews to submit

clientCategory
required
string
Enum: "ELIGIBLE_COUNTER_PARTIES" "PROFESSIONAL_CLIENTS" "RETAIL_CUSTOMERS"

Client category (assessed by reviewer)

riskProfile
required
string
Enum: "CONSERVATIVE" "MODERATE" "BALANCED" "DYNAMIC" "AGGRESSIVE"

Client risk profile (assessed by reviewer)

validityDate
required
string <date-time>

Validity date

comment
required
string

Comment provided by the reviewer, to indicate why the submitter has been validated/rejected

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "validations": [
    ],
  • "clientCategory": "PROFESSIONAL_CLIENTS",
  • "riskProfile": "MODERATE",
  • "validityDate": "2022-12-19T08:24:00.000Z",
  • "comment": "Validity date is past, please re-submit this document",
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "link": {
    },
  • "message": "Issuer-related successfully validated by user 3611ab62-94a9-4782-890f-221a64518c83 for issuer 3611ab62-94a9-4782-890f-221a64518c83"
}

KYCWorkflowIssuerRelatedController_reviewForIssuerAsVerifier

Request Body schema: application/json
submitterId
required
string

ID of submitter (investor, underwriter, etc.), whom KYC shall be reviewed

validations
required
Array of strings

Array of KYC element reviews to submit

clientCategory
required
string
Enum: "ELIGIBLE_COUNTER_PARTIES" "PROFESSIONAL_CLIENTS" "RETAIL_CUSTOMERS"

Client category (assessed by reviewer)

riskProfile
required
string
Enum: "CONSERVATIVE" "MODERATE" "BALANCED" "DYNAMIC" "AGGRESSIVE"

Client risk profile (assessed by reviewer)

validityDate
required
string <date-time>

Validity date

comment
required
string

Comment provided by the reviewer, to indicate why the submitter has been validated/rejected

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

issuerId
required
string

ID of issuer, KYC shall be reviewed for

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "validations": [
    ],
  • "clientCategory": "PROFESSIONAL_CLIENTS",
  • "riskProfile": "MODERATE",
  • "validityDate": "2022-12-19T08:24:00.000Z",
  • "comment": "Validity date is past, please re-submit this document",
  • "sendNotification": true,
  • "issuerId": "3611ab62-94a9-4782-890f-221a64518c83"
}

Response samples

Content type
application/json
{
  • "link": {
    },
  • "message": "Issuer-related successfully validated by user 3611ab62-94a9-4782-890f-221a64518c83 for issuer 3611ab62-94a9-4782-890f-221a64518c83"
}

KYCWorkflowIssuerRelatedController_reviewForIssuerAsUnderwriter

Request Body schema: application/json
submitterId
required
string

ID of submitter (investor, underwriter, etc.), whom KYC shall be reviewed

validations
required
Array of strings

Array of KYC element reviews to submit

clientCategory
required
string
Enum: "ELIGIBLE_COUNTER_PARTIES" "PROFESSIONAL_CLIENTS" "RETAIL_CUSTOMERS"

Client category (assessed by reviewer)

riskProfile
required
string
Enum: "CONSERVATIVE" "MODERATE" "BALANCED" "DYNAMIC" "AGGRESSIVE"

Client risk profile (assessed by reviewer)

validityDate
required
string <date-time>

Validity date

comment
required
string

Comment provided by the reviewer, to indicate why the submitter has been validated/rejected

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

issuerId
required
string

ID of issuer, KYC shall be reviewed for

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "validations": [
    ],
  • "clientCategory": "PROFESSIONAL_CLIENTS",
  • "riskProfile": "MODERATE",
  • "validityDate": "2022-12-19T08:24:00.000Z",
  • "comment": "Validity date is past, please re-submit this document",
  • "sendNotification": true,
  • "issuerId": "3611ab62-94a9-4782-890f-221a64518c83"
}

Response samples

Content type
application/json
{
  • "link": {
    },
  • "message": "Issuer-related successfully validated by user 3611ab62-94a9-4782-890f-221a64518c83 for issuer 3611ab62-94a9-4782-890f-221a64518c83"
}

KYCWorkflowIssuerRelatedController_reviewForIssuerAsBroker

Request Body schema: application/json
submitterId
required
string

ID of submitter (investor, underwriter, etc.), whom KYC shall be reviewed

validations
required
Array of strings

Array of KYC element reviews to submit

clientCategory
required
string
Enum: "ELIGIBLE_COUNTER_PARTIES" "PROFESSIONAL_CLIENTS" "RETAIL_CUSTOMERS"

Client category (assessed by reviewer)

riskProfile
required
string
Enum: "CONSERVATIVE" "MODERATE" "BALANCED" "DYNAMIC" "AGGRESSIVE"

Client risk profile (assessed by reviewer)

validityDate
required
string <date-time>

Validity date

comment
required
string

Comment provided by the reviewer, to indicate why the submitter has been validated/rejected

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

issuerId
required
string

ID of issuer, KYC shall be reviewed for

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "validations": [
    ],
  • "clientCategory": "PROFESSIONAL_CLIENTS",
  • "riskProfile": "MODERATE",
  • "validityDate": "2022-12-19T08:24:00.000Z",
  • "comment": "Validity date is past, please re-submit this document",
  • "sendNotification": true,
  • "issuerId": "3611ab62-94a9-4782-890f-221a64518c83"
}

Response samples

Content type
application/json
{
  • "link": {
    },
  • "message": "Issuer-related successfully validated by user 3611ab62-94a9-4782-890f-221a64518c83 for issuer 3611ab62-94a9-4782-890f-221a64518c83"
}

KYCWorkflowIssuerRelatedController_allowListUserForIssuerAsReviewer

Request Body schema: application/json
submitterId
required
string

ID of submitter(investor, underwriter, etc.), who shall be allowListed

clientCategory
required
string
Enum: "ELIGIBLE_COUNTER_PARTIES" "PROFESSIONAL_CLIENTS" "RETAIL_CUSTOMERS"

Client category (assessed by issuer)

riskProfile
required
string
Enum: "CONSERVATIVE" "MODERATE" "BALANCED" "DYNAMIC" "AGGRESSIVE"

Client risk profile (assessed by issuer)

validityDate
required
string <date-time>

Validity date

comment
required
string

Comment provided by the issuer, to indicate why the submitter has been validated/rejected

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "clientCategory": "PROFESSIONAL_CLIENTS",
  • "riskProfile": "MODERATE",
  • "validityDate": "2022-12-19T08:24:00.000Z",
  • "comment": "Validity date is past, please re-submit this document",
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "link": {
    },
  • "newLink": true,
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 successfully allowListed for issuer 3611ab62-94a9-4782-890f-221a64518c83"
}

KYCWorkflowIssuerRelatedController_allowListUserForIssuerAsVerifier

Request Body schema: application/json
submitterId
required
string

ID of submitter(investor, underwriter, etc.), who shall be allowListed

clientCategory
required
string
Enum: "ELIGIBLE_COUNTER_PARTIES" "PROFESSIONAL_CLIENTS" "RETAIL_CUSTOMERS"

Client category (assessed by issuer)

riskProfile
required
string
Enum: "CONSERVATIVE" "MODERATE" "BALANCED" "DYNAMIC" "AGGRESSIVE"

Client risk profile (assessed by issuer)

validityDate
required
string <date-time>

Validity date

comment
required
string

Comment provided by the issuer, to indicate why the submitter has been validated/rejected

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

issuerId
required
string

ID of issuer, KYC shall be validated for

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "clientCategory": "PROFESSIONAL_CLIENTS",
  • "riskProfile": "MODERATE",
  • "validityDate": "2022-12-19T08:24:00.000Z",
  • "comment": "Validity date is past, please re-submit this document",
  • "sendNotification": true,
  • "issuerId": "3611ab62-94a9-4782-890f-221a64518c83"
}

Response samples

Content type
application/json
{
  • "link": {
    },
  • "newLink": true,
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 successfully allowListed for issuer 3611ab62-94a9-4782-890f-221a64518c83"
}

KYCWorkflowIssuerRelatedController_allowListUserForIssuerAsUnderwriter

Request Body schema: application/json
submitterId
required
string

ID of submitter(investor, underwriter, etc.), who shall be allowListed

clientCategory
required
string
Enum: "ELIGIBLE_COUNTER_PARTIES" "PROFESSIONAL_CLIENTS" "RETAIL_CUSTOMERS"

Client category (assessed by issuer)

riskProfile
required
string
Enum: "CONSERVATIVE" "MODERATE" "BALANCED" "DYNAMIC" "AGGRESSIVE"

Client risk profile (assessed by issuer)

validityDate
required
string <date-time>

Validity date

comment
required
string

Comment provided by the issuer, to indicate why the submitter has been validated/rejected

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

issuerId
required
string

ID of issuer, KYC shall be validated for

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "clientCategory": "PROFESSIONAL_CLIENTS",
  • "riskProfile": "MODERATE",
  • "validityDate": "2022-12-19T08:24:00.000Z",
  • "comment": "Validity date is past, please re-submit this document",
  • "sendNotification": true,
  • "issuerId": "3611ab62-94a9-4782-890f-221a64518c83"
}

Response samples

Content type
application/json
{
  • "link": {
    },
  • "newLink": true,
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 successfully allowListed for issuer 3611ab62-94a9-4782-890f-221a64518c83"
}

KYCWorkflowIssuerRelatedController_allowListUserForIssuerAsBroker

Request Body schema: application/json
submitterId
required
string

ID of submitter(investor, underwriter, etc.), who shall be allowListed

clientCategory
required
string
Enum: "ELIGIBLE_COUNTER_PARTIES" "PROFESSIONAL_CLIENTS" "RETAIL_CUSTOMERS"

Client category (assessed by issuer)

riskProfile
required
string
Enum: "CONSERVATIVE" "MODERATE" "BALANCED" "DYNAMIC" "AGGRESSIVE"

Client risk profile (assessed by issuer)

validityDate
required
string <date-time>

Validity date

comment
required
string

Comment provided by the issuer, to indicate why the submitter has been validated/rejected

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

issuerId
required
string

ID of issuer, KYC shall be validated for

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "clientCategory": "PROFESSIONAL_CLIENTS",
  • "riskProfile": "MODERATE",
  • "validityDate": "2022-12-19T08:24:00.000Z",
  • "comment": "Validity date is past, please re-submit this document",
  • "sendNotification": true,
  • "issuerId": "3611ab62-94a9-4782-890f-221a64518c83"
}

Response samples

Content type
application/json
{
  • "link": {
    },
  • "newLink": true,
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 successfully allowListed for issuer 3611ab62-94a9-4782-890f-221a64518c83"
}

KYCWorkflowIssuerRelatedController_unvalidateUserForIssuerAsReviewer

Request Body schema: application/json
submitterId
required
string

ID of submitter(investor, underwriter, etc.)

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "links": {
    },
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 unvalidated successfully for issuer 3611ab62-94a9-4782-890f-221a64518c83"
}

KYCWorkflowIssuerRelatedController_unvalidateUserForIssuerAsVerifier

Request Body schema: application/json
submitterId
required
string

ID of submitter(investor, underwriter, etc.)

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

issuerId
required
string

ID of issuer, KYC shall be unvalidated for

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "sendNotification": true,
  • "issuerId": "3611ab62-94a9-4782-890f-221a64518c83"
}

Response samples

Content type
application/json
{
  • "links": {
    },
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 unvalidated successfully for issuer 3611ab62-94a9-4782-890f-221a64518c83"
}

KYCWorkflowIssuerRelatedController_unvalidateUserForIssuerAsUnderwriter

Request Body schema: application/json
submitterId
required
string

ID of submitter(investor, underwriter, etc.)

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

issuerId
required
string

ID of issuer, KYC shall be unvalidated for

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "sendNotification": true,
  • "issuerId": "3611ab62-94a9-4782-890f-221a64518c83"
}

Response samples

Content type
application/json
{
  • "links": {
    },
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 unvalidated successfully for issuer 3611ab62-94a9-4782-890f-221a64518c83"
}

KYCWorkflowIssuerRelatedController_unvalidateUserForIssuerAsBroker

Request Body schema: application/json
submitterId
required
string

ID of submitter(investor, underwriter, etc.)

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

issuerId
required
string

ID of issuer, KYC shall be unvalidated for

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "sendNotification": true,
  • "issuerId": "3611ab62-94a9-4782-890f-221a64518c83"
}

Response samples

Content type
application/json
{
  • "links": {
    },
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 unvalidated successfully for issuer 3611ab62-94a9-4782-890f-221a64518c83"
}

KYCWorkflowIssuerRelatedController_rejectUserForIssuerAsReviewer

Request Body schema: application/json
submitterId
required
string

ID of submitter(investor, underwriter, etc.)

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "links": {
    },
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 unvalidated successfully for issuer 3611ab62-94a9-4782-890f-221a64518c83"
}

KYCWorkflowIssuerRelatedController_rejectUserForIssuerAsVerifier

Request Body schema: application/json
submitterId
required
string

ID of submitter(investor, underwriter, etc.)

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

issuerId
required
string

ID of issuer, KYC shall be unvalidated for

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "sendNotification": true,
  • "issuerId": "3611ab62-94a9-4782-890f-221a64518c83"
}

Response samples

Content type
application/json
{
  • "links": {
    },
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 unvalidated successfully for issuer 3611ab62-94a9-4782-890f-221a64518c83"
}

KYCWorkflowIssuerRelatedController_rejectUserForIssuerAsUnderwriter

Request Body schema: application/json
submitterId
required
string

ID of submitter(investor, underwriter, etc.)

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

issuerId
required
string

ID of issuer, KYC shall be unvalidated for

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "sendNotification": true,
  • "issuerId": "3611ab62-94a9-4782-890f-221a64518c83"
}

Response samples

Content type
application/json
{
  • "links": {
    },
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 unvalidated successfully for issuer 3611ab62-94a9-4782-890f-221a64518c83"
}

KYCWorkflowIssuerRelatedController_rejectUserForIssuerAsBroker

Request Body schema: application/json
submitterId
required
string

ID of submitter(investor, underwriter, etc.)

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

issuerId
required
string

ID of issuer, KYC shall be unvalidated for

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "sendNotification": true,
  • "issuerId": "3611ab62-94a9-4782-890f-221a64518c83"
}

Response samples

Content type
application/json
{
  • "links": {
    },
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 unvalidated successfully for issuer 3611ab62-94a9-4782-890f-221a64518c83"
}

KYCWorkflowIssuerRelatedController_deleteUserTokenLinkAsReviewer

Request Body schema: application/json
submitterId
required
string

ID of submitter(investor, underwriter, etc.), who shall be deleted from issuer

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83"
}

Response samples

Content type
application/json
{
  • "deletedElementReviews": [
    ],
  • "deletedTemplateReviews": [
    ],
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 unlinked successfully from issuer 3611ab62-94a9-4782-890f-221a64518c83"
}

KYCWorkflowIssuerRelatedController_deleteUserTokenLinkAsUnderwriter

Request Body schema: application/json
submitterId
required
string

ID of submitter(investor, underwriter, etc.), who shall be deleted from issuer

issuerId
required
string

ID of issuer, KYC is submitted for

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "issuerId": "3611ab62-94a9-4782-890f-221a64518c83"
}

Response samples

Content type
application/json
{
  • "deletedElementReviews": [
    ],
  • "deletedTemplateReviews": [
    ],
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 unlinked successfully from issuer 3611ab62-94a9-4782-890f-221a64518c83"
}

KYCWorkflowIssuerRelatedController_deleteUserTokenLinkAsBroker

Request Body schema: application/json
submitterId
required
string

ID of submitter(investor, underwriter, etc.), who shall be deleted from issuer

issuerId
required
string

ID of issuer, KYC is submitted for

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "issuerId": "3611ab62-94a9-4782-890f-221a64518c83"
}

Response samples

Content type
application/json
{
  • "deletedElementReviews": [
    ],
  • "deletedTemplateReviews": [
    ],
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 unlinked successfully from issuer 3611ab62-94a9-4782-890f-221a64518c83"
}

KYCWorkflowTokenRelatedController_inviteForTokenAsReviewer

Request Body schema: application/json
submitterId
required
string

ID of submitter (investor, underwriter, etc.), who shall be invited

tokenId
required
string

ID of token, KYC shall be submitted for

assetClass
required
string

Asset class of token, KYC shall be submitted for

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "tokenId": "423baf7e-66fc-4e40-a5d6-4b7384bd665d",
  • "assetClass": "classa"
}

Response samples

Content type
application/json
{
  • "link": {
    },
  • "newLink": true,
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 successfully invited to provide KYC elements for token 423baf7e-66fc-4e40-a5d6-4b7384bd665d"
}

KYCWorkflowTokenRelatedController_inviteForTokenAsUnderwriter

Request Body schema: application/json
submitterId
required
string

ID of submitter (investor, underwriter, etc.), who shall be invited

tokenId
required
string

ID of token, KYC shall be submitted for

assetClass
required
string

Asset class of token, KYC shall be submitted for

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "tokenId": "423baf7e-66fc-4e40-a5d6-4b7384bd665d",
  • "assetClass": "classa"
}

Response samples

Content type
application/json
{
  • "link": {
    },
  • "newLink": true,
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 successfully invited to provide KYC elements for token 423baf7e-66fc-4e40-a5d6-4b7384bd665d"
}

KYCWorkflowTokenRelatedController_inviteForTokenAsBroker

Request Body schema: application/json
submitterId
required
string

ID of submitter (investor, underwriter, etc.), who shall be invited

tokenId
required
string

ID of token, KYC shall be submitted for

assetClass
required
string

Asset class of token, KYC shall be submitted for

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "tokenId": "423baf7e-66fc-4e40-a5d6-4b7384bd665d",
  • "assetClass": "classa"
}

Response samples

Content type
application/json
{
  • "link": {
    },
  • "newLink": true,
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 successfully invited to provide KYC elements for token 423baf7e-66fc-4e40-a5d6-4b7384bd665d"
}

KYCWorkflowTokenRelatedController_submitForToken

Request Body schema: application/json
tokenId
required
string

ID of token, KYC shall be submitted for

elements
required
Array of strings

Array of KYC element instances to submit

assetClass
required
string

Asset class of token, KYC shall be submitted for

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "tokenId": "423baf7e-66fc-4e40-a5d6-4b7384bd665d",
  • "elements": [
    ],
  • "assetClass": "classa",
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "link": {
    },
  • "message": "Token-related KYC successfully submitted by user 3611ab62-94a9-4782-890f-221a64518c83 for token 423baf7e-66fc-4e40-a5d6-4b7384bd665d"
}

KYCWorkflowTokenRelatedController_reviewForTokenAsReviewer

Request Body schema: application/json
submitterId
required
string

ID of submitter (investor, underwriter, etc.), whom KYC shall be reviewed

tokenId
required
string

ID of token, KYC shall be validated for

validations
required
Array of strings

Array of KYC element instances to submit

assetClass
required
string

Asset class of token, KYC shall be validated for

clientCategory
required
string
Enum: "ELIGIBLE_COUNTER_PARTIES" "PROFESSIONAL_CLIENTS" "RETAIL_CUSTOMERS"

Client category (assessed by reviewer)

riskProfile
required
string
Enum: "CONSERVATIVE" "MODERATE" "BALANCED" "DYNAMIC" "AGGRESSIVE"

Client risk profile (assessed by reviewer)

validityDate
required
string <date-time>

Validity date

comment
required
string

Comment provided by the reviewer, to indicate why the submitter has been validated/rejected

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "tokenId": "423baf7e-66fc-4e40-a5d6-4b7384bd665d",
  • "validations": [
    ],
  • "assetClass": "classa",
  • "clientCategory": "PROFESSIONAL_CLIENTS",
  • "riskProfile": "MODERATE",
  • "validityDate": "2022-12-19T08:24:00.000Z",
  • "comment": "Validity date is past, please re-submit this document",
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "link": {
    },
  • "message": "Token-related KYC successfully validated by user 3611ab62-94a9-4782-890f-221a64518c83 for token 423baf7e-66fc-4e40-a5d6-4b7384bd665d"
}

KYCWorkflowTokenRelatedController_reviewForTokenAsVerifier

Request Body schema: application/json
submitterId
required
string

ID of submitter (investor, underwriter, etc.), whom KYC shall be reviewed

tokenId
required
string

ID of token, KYC shall be validated for

validations
required
Array of strings

Array of KYC element instances to submit

assetClass
required
string

Asset class of token, KYC shall be validated for

clientCategory
required
string
Enum: "ELIGIBLE_COUNTER_PARTIES" "PROFESSIONAL_CLIENTS" "RETAIL_CUSTOMERS"

Client category (assessed by reviewer)

riskProfile
required
string
Enum: "CONSERVATIVE" "MODERATE" "BALANCED" "DYNAMIC" "AGGRESSIVE"

Client risk profile (assessed by reviewer)

validityDate
required
string <date-time>

Validity date

comment
required
string

Comment provided by the reviewer, to indicate why the submitter has been validated/rejected

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "tokenId": "423baf7e-66fc-4e40-a5d6-4b7384bd665d",
  • "validations": [
    ],
  • "assetClass": "classa",
  • "clientCategory": "PROFESSIONAL_CLIENTS",
  • "riskProfile": "MODERATE",
  • "validityDate": "2022-12-19T08:24:00.000Z",
  • "comment": "Validity date is past, please re-submit this document",
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "link": {
    },
  • "message": "Token-related KYC successfully validated by user 3611ab62-94a9-4782-890f-221a64518c83 for token 423baf7e-66fc-4e40-a5d6-4b7384bd665d"
}

KYCWorkflowTokenRelatedController_reviewForTokenAsUnderwriter

Request Body schema: application/json
submitterId
required
string

ID of submitter (investor, underwriter, etc.), whom KYC shall be reviewed

tokenId
required
string

ID of token, KYC shall be validated for

validations
required
Array of strings

Array of KYC element instances to submit

assetClass
required
string

Asset class of token, KYC shall be validated for

clientCategory
required
string
Enum: "ELIGIBLE_COUNTER_PARTIES" "PROFESSIONAL_CLIENTS" "RETAIL_CUSTOMERS"

Client category (assessed by reviewer)

riskProfile
required
string
Enum: "CONSERVATIVE" "MODERATE" "BALANCED" "DYNAMIC" "AGGRESSIVE"

Client risk profile (assessed by reviewer)

validityDate
required
string <date-time>

Validity date

comment
required
string

Comment provided by the reviewer, to indicate why the submitter has been validated/rejected

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "tokenId": "423baf7e-66fc-4e40-a5d6-4b7384bd665d",
  • "validations": [
    ],
  • "assetClass": "classa",
  • "clientCategory": "PROFESSIONAL_CLIENTS",
  • "riskProfile": "MODERATE",
  • "validityDate": "2022-12-19T08:24:00.000Z",
  • "comment": "Validity date is past, please re-submit this document",
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "link": {
    },
  • "message": "Token-related KYC successfully validated by user 3611ab62-94a9-4782-890f-221a64518c83 for token 423baf7e-66fc-4e40-a5d6-4b7384bd665d"
}

KYCWorkflowTokenRelatedController_reviewForTokenAsBroker

Request Body schema: application/json
submitterId
required
string

ID of submitter (investor, underwriter, etc.), whom KYC shall be reviewed

tokenId
required
string

ID of token, KYC shall be validated for

validations
required
Array of strings

Array of KYC element instances to submit

assetClass
required
string

Asset class of token, KYC shall be validated for

clientCategory
required
string
Enum: "ELIGIBLE_COUNTER_PARTIES" "PROFESSIONAL_CLIENTS" "RETAIL_CUSTOMERS"

Client category (assessed by reviewer)

riskProfile
required
string
Enum: "CONSERVATIVE" "MODERATE" "BALANCED" "DYNAMIC" "AGGRESSIVE"

Client risk profile (assessed by reviewer)

validityDate
required
string <date-time>

Validity date

comment
required
string

Comment provided by the reviewer, to indicate why the submitter has been validated/rejected

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "tokenId": "423baf7e-66fc-4e40-a5d6-4b7384bd665d",
  • "validations": [
    ],
  • "assetClass": "classa",
  • "clientCategory": "PROFESSIONAL_CLIENTS",
  • "riskProfile": "MODERATE",
  • "validityDate": "2022-12-19T08:24:00.000Z",
  • "comment": "Validity date is past, please re-submit this document",
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "link": {
    },
  • "message": "Token-related KYC successfully validated by user 3611ab62-94a9-4782-890f-221a64518c83 for token 423baf7e-66fc-4e40-a5d6-4b7384bd665d"
}

KYCWorkflowTokenRelatedController_allowListUserForTokenAsReviewer

Request Body schema: application/json
submitterId
required
string

ID of submitter(investor, underwriter, etc.), who shall be allowListed

tokenId
required
string

ID of token, KYC shall be validated for

assetClass
required
string

Asset class of token, KYC shall be validated for

clientCategory
required
string
Enum: "ELIGIBLE_COUNTER_PARTIES" "PROFESSIONAL_CLIENTS" "RETAIL_CUSTOMERS"

Client category (assessed by issuer)

riskProfile
required
string
Enum: "CONSERVATIVE" "MODERATE" "BALANCED" "DYNAMIC" "AGGRESSIVE"

Client risk profile (assessed by issuer)

validityDate
required
string <date-time>

Validity date

comment
required
string

Comment provided by the issuer, to indicate why the submitter has been validated/rejected

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "tokenId": "423baf7e-66fc-4e40-a5d6-4b7384bd665d",
  • "assetClass": "classa",
  • "clientCategory": "PROFESSIONAL_CLIENTS",
  • "riskProfile": "MODERATE",
  • "validityDate": "2022-12-19T08:24:00.000Z",
  • "comment": "Validity date is past, please re-submit this document",
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "link": {
    },
  • "newLink": true,
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 successfully allowListed for token 423baf7e-66fc-4e40-a5d6-4b7384bd665d"
}

KYCWorkflowTokenRelatedController_allowListUserForTokenAsVerifier

Request Body schema: application/json
submitterId
required
string

ID of submitter(investor, underwriter, etc.), who shall be allowListed

tokenId
required
string

ID of token, KYC shall be validated for

assetClass
required
string

Asset class of token, KYC shall be validated for

clientCategory
required
string
Enum: "ELIGIBLE_COUNTER_PARTIES" "PROFESSIONAL_CLIENTS" "RETAIL_CUSTOMERS"

Client category (assessed by issuer)

riskProfile
required
string
Enum: "CONSERVATIVE" "MODERATE" "BALANCED" "DYNAMIC" "AGGRESSIVE"

Client risk profile (assessed by issuer)

validityDate
required
string <date-time>

Validity date

comment
required
string

Comment provided by the issuer, to indicate why the submitter has been validated/rejected

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "tokenId": "423baf7e-66fc-4e40-a5d6-4b7384bd665d",
  • "assetClass": "classa",
  • "clientCategory": "PROFESSIONAL_CLIENTS",
  • "riskProfile": "MODERATE",
  • "validityDate": "2022-12-19T08:24:00.000Z",
  • "comment": "Validity date is past, please re-submit this document",
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "link": {
    },
  • "newLink": true,
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 successfully allowListed for token 423baf7e-66fc-4e40-a5d6-4b7384bd665d"
}

KYCWorkflowTokenRelatedController_allowListUserForTokenAsUnderwriter

Request Body schema: application/json
submitterId
required
string

ID of submitter(investor, underwriter, etc.), who shall be allowListed

tokenId
required
string

ID of token, KYC shall be validated for

assetClass
required
string

Asset class of token, KYC shall be validated for

clientCategory
required
string
Enum: "ELIGIBLE_COUNTER_PARTIES" "PROFESSIONAL_CLIENTS" "RETAIL_CUSTOMERS"

Client category (assessed by issuer)

riskProfile
required
string
Enum: "CONSERVATIVE" "MODERATE" "BALANCED" "DYNAMIC" "AGGRESSIVE"

Client risk profile (assessed by issuer)

validityDate
required
string <date-time>

Validity date

comment
required
string

Comment provided by the issuer, to indicate why the submitter has been validated/rejected

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "tokenId": "423baf7e-66fc-4e40-a5d6-4b7384bd665d",
  • "assetClass": "classa",
  • "clientCategory": "PROFESSIONAL_CLIENTS",
  • "riskProfile": "MODERATE",
  • "validityDate": "2022-12-19T08:24:00.000Z",
  • "comment": "Validity date is past, please re-submit this document",
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "link": {
    },
  • "newLink": true,
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 successfully allowListed for token 423baf7e-66fc-4e40-a5d6-4b7384bd665d"
}

KYCWorkflowTokenRelatedController_allowListUserForTokenAsBroker

Request Body schema: application/json
submitterId
required
string

ID of submitter(investor, underwriter, etc.), who shall be allowListed

tokenId
required
string

ID of token, KYC shall be validated for

assetClass
required
string

Asset class of token, KYC shall be validated for

clientCategory
required
string
Enum: "ELIGIBLE_COUNTER_PARTIES" "PROFESSIONAL_CLIENTS" "RETAIL_CUSTOMERS"

Client category (assessed by issuer)

riskProfile
required
string
Enum: "CONSERVATIVE" "MODERATE" "BALANCED" "DYNAMIC" "AGGRESSIVE"

Client risk profile (assessed by issuer)

validityDate
required
string <date-time>

Validity date

comment
required
string

Comment provided by the issuer, to indicate why the submitter has been validated/rejected

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "tokenId": "423baf7e-66fc-4e40-a5d6-4b7384bd665d",
  • "assetClass": "classa",
  • "clientCategory": "PROFESSIONAL_CLIENTS",
  • "riskProfile": "MODERATE",
  • "validityDate": "2022-12-19T08:24:00.000Z",
  • "comment": "Validity date is past, please re-submit this document",
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "link": {
    },
  • "newLink": true,
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 successfully allowListed for token 423baf7e-66fc-4e40-a5d6-4b7384bd665d"
}

KYCWorkflowTokenRelatedController_unvalidateUserForTokenAsReviewer

Request Body schema: application/json
submitterId
required
string

ID of submitter(investor, underwriter, etc.), who shall be unvalidated

tokenId
required
string

ID of token, user shall be unvalidated for

assetClass
required
string

Asset class of token, user shall be unvalidated for

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "tokenId": "423baf7e-66fc-4e40-a5d6-4b7384bd665d",
  • "assetClass": "classa",
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "links": {
    },
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 unvalidated successfully for token 423baf7e-66fc-4e40-a5d6-4b7384bd665d"
}

KYCWorkflowTokenRelatedController_unvalidateUserForTokenAsVerifier

Request Body schema: application/json
submitterId
required
string

ID of submitter(investor, underwriter, etc.), who shall be unvalidated

tokenId
required
string

ID of token, user shall be unvalidated for

assetClass
required
string

Asset class of token, user shall be unvalidated for

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "tokenId": "423baf7e-66fc-4e40-a5d6-4b7384bd665d",
  • "assetClass": "classa",
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "links": {
    },
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 unvalidated successfully for token 423baf7e-66fc-4e40-a5d6-4b7384bd665d"
}

KYCWorkflowTokenRelatedController_unvalidateUserForTokenAsUnderwriter

Request Body schema: application/json
submitterId
required
string

ID of submitter(investor, underwriter, etc.), who shall be unvalidated

tokenId
required
string

ID of token, user shall be unvalidated for

assetClass
required
string

Asset class of token, user shall be unvalidated for

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "tokenId": "423baf7e-66fc-4e40-a5d6-4b7384bd665d",
  • "assetClass": "classa",
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "links": {
    },
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 unvalidated successfully for token 423baf7e-66fc-4e40-a5d6-4b7384bd665d"
}

KYCWorkflowTokenRelatedController_unvalidateUserForTokenAsBroker

Request Body schema: application/json
submitterId
required
string

ID of submitter(investor, underwriter, etc.), who shall be unvalidated

tokenId
required
string

ID of token, user shall be unvalidated for

assetClass
required
string

Asset class of token, user shall be unvalidated for

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "tokenId": "423baf7e-66fc-4e40-a5d6-4b7384bd665d",
  • "assetClass": "classa",
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "links": {
    },
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 unvalidated successfully for token 423baf7e-66fc-4e40-a5d6-4b7384bd665d"
}

KYCWorkflowTokenRelatedController_rejectUserForTokenAsReviewer

Request Body schema: application/json
submitterId
required
string

ID of submitter(investor, underwriter, etc.), who shall be unvalidated

tokenId
required
string

ID of token, user shall be unvalidated for

assetClass
required
string

Asset class of token, user shall be unvalidated for

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "tokenId": "423baf7e-66fc-4e40-a5d6-4b7384bd665d",
  • "assetClass": "classa",
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "links": {
    },
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 unvalidated successfully for token 423baf7e-66fc-4e40-a5d6-4b7384bd665d"
}

KYCWorkflowTokenRelatedController_rejectUserForTokenAsVerifier

Request Body schema: application/json
submitterId
required
string

ID of submitter(investor, underwriter, etc.), who shall be unvalidated

tokenId
required
string

ID of token, user shall be unvalidated for

assetClass
required
string

Asset class of token, user shall be unvalidated for

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "tokenId": "423baf7e-66fc-4e40-a5d6-4b7384bd665d",
  • "assetClass": "classa",
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "links": {
    },
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 unvalidated successfully for token 423baf7e-66fc-4e40-a5d6-4b7384bd665d"
}

KYCWorkflowTokenRelatedController_rejectUserForTokenAsUnderwriter

Request Body schema: application/json
submitterId
required
string

ID of submitter(investor, underwriter, etc.), who shall be unvalidated

tokenId
required
string

ID of token, user shall be unvalidated for

assetClass
required
string

Asset class of token, user shall be unvalidated for

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "tokenId": "423baf7e-66fc-4e40-a5d6-4b7384bd665d",
  • "assetClass": "classa",
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "links": {
    },
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 unvalidated successfully for token 423baf7e-66fc-4e40-a5d6-4b7384bd665d"
}

KYCWorkflowTokenRelatedController_rejectUserForTokenAsBroker

Request Body schema: application/json
submitterId
required
string

ID of submitter(investor, underwriter, etc.), who shall be unvalidated

tokenId
required
string

ID of token, user shall be unvalidated for

assetClass
required
string

Asset class of token, user shall be unvalidated for

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "tokenId": "423baf7e-66fc-4e40-a5d6-4b7384bd665d",
  • "assetClass": "classa",
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "links": {
    },
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 unvalidated successfully for token 423baf7e-66fc-4e40-a5d6-4b7384bd665d"
}

KYCWorkflowTokenRelatedController_deleteUserTokenLinkAsReviewer

Request Body schema: application/json
submitterId
required
string

ID of submitter(investor, underwriter, etc.)

tokenId
required
string

ID of token

assetClass
required
string

Asset class of token, user shall be unlinked from

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "tokenId": "423baf7e-66fc-4e40-a5d6-4b7384bd665d",
  • "assetClass": "classa"
}

Response samples

Content type
application/json
{
  • "deletedElementReviews": [
    ],
  • "deletedTemplateReviews": [
    ],
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 unlinked successfully from token 423baf7e-66fc-4e40-a5d6-4b7384bd665d"
}

KYCWorkflowTokenRelatedController_deleteUserTokenLinkAsUnderwriter

Request Body schema: application/json
submitterId
required
string

ID of submitter(investor, underwriter, etc.)

tokenId
required
string

ID of token

assetClass
required
string

Asset class of token, user shall be unlinked from

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "tokenId": "423baf7e-66fc-4e40-a5d6-4b7384bd665d",
  • "assetClass": "classa"
}

Response samples

Content type
application/json
{
  • "deletedElementReviews": [
    ],
  • "deletedTemplateReviews": [
    ],
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 unlinked successfully from token 423baf7e-66fc-4e40-a5d6-4b7384bd665d"
}

KYCWorkflowTokenRelatedController_deleteUserTokenLinkAsBroker

Request Body schema: application/json
submitterId
required
string

ID of submitter(investor, underwriter, etc.)

tokenId
required
string

ID of token

assetClass
required
string

Asset class of token, user shall be unlinked from

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "tokenId": "423baf7e-66fc-4e40-a5d6-4b7384bd665d",
  • "assetClass": "classa"
}

Response samples

Content type
application/json
{
  • "deletedElementReviews": [
    ],
  • "deletedTemplateReviews": [
    ],
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 unlinked successfully from token 423baf7e-66fc-4e40-a5d6-4b7384bd665d"
}

KYCWorkflowProjectRelatedController_inviteForProjectAsReviewer

Request Body schema: application/json
submitterId
required
string

ID of submitter (investor, underwriter, etc.), who shall be invited

projectId
required
string

ID of project, KYC shall be submitted for

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "projectId": "d4192b60-79b5-429c-9160-e862b5a3e370"
}

Response samples

Content type
application/json
{
  • "link": {
    },
  • "newLink": true,
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 successfully invited to provide KYC elements for project d4192b60-79b5-429c-9160-e862b5a3e370"
}

KYCWorkflowProjectRelatedController_submitForProject

Request Body schema: application/json
projectId
required
string

ID of project, KYC shall be submitted for

elements
required
Array of strings

Array of KYC element instances to submit

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "projectId": "d4192b60-79b5-429c-9160-e862b5a3e370",
  • "elements": [
    ],
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "link": {
    },
  • "message": "Project-related KYC successfully submitted by user 3611ab62-94a9-4782-890f-221a64518c83 for project d4192b60-79b5-429c-9160-e862b5a3e370"
}

KYCWorkflowProjectRelatedController_reviewForProjectAsReviewer

Request Body schema: application/json
submitterId
required
string

ID of submitter (investor, underwriter, etc.), KYC shall be validated for

projectId
required
string

ID of project, KYC shall be validated for

validations
required
Array of strings

Array of KYC element instances to submit

clientCategory
required
string
Enum: "ELIGIBLE_COUNTER_PARTIES" "PROFESSIONAL_CLIENTS" "RETAIL_CUSTOMERS"

Client category (assessed by reviewer)

riskProfile
required
string
Enum: "CONSERVATIVE" "MODERATE" "BALANCED" "DYNAMIC" "AGGRESSIVE"

Client risk profile (assessed by reviewer)

validityDate
required
string <date-time>

Validity date

comment
required
string

Comment provided by the reviewer, to indicate why the submitter has been validated/rejected

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "projectId": "d4192b60-79b5-429c-9160-e862b5a3e370",
  • "validations": [
    ],
  • "clientCategory": "PROFESSIONAL_CLIENTS",
  • "riskProfile": "MODERATE",
  • "validityDate": "2022-12-19T08:24:00.000Z",
  • "comment": "Validity date is past, please re-submit this document",
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "link": {
    },
  • "message": "KYC (project-related) successfully validated by user 3611ab62-94a9-4782-890f-221a64518c83 for project d4192b60-79b5-429c-9160-e862b5a3e370"
}

KYCWorkflowProjectRelatedController_reviewForProjectAsVerifier

Request Body schema: application/json
submitterId
required
string

ID of submitter (investor, underwriter, etc.), KYC shall be validated for

projectId
required
string

ID of project, KYC shall be validated for

validations
required
Array of strings

Array of KYC element instances to submit

clientCategory
required
string
Enum: "ELIGIBLE_COUNTER_PARTIES" "PROFESSIONAL_CLIENTS" "RETAIL_CUSTOMERS"

Client category (assessed by reviewer)

riskProfile
required
string
Enum: "CONSERVATIVE" "MODERATE" "BALANCED" "DYNAMIC" "AGGRESSIVE"

Client risk profile (assessed by reviewer)

validityDate
required
string <date-time>

Validity date

comment
required
string

Comment provided by the reviewer, to indicate why the submitter has been validated/rejected

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "projectId": "d4192b60-79b5-429c-9160-e862b5a3e370",
  • "validations": [
    ],
  • "clientCategory": "PROFESSIONAL_CLIENTS",
  • "riskProfile": "MODERATE",
  • "validityDate": "2022-12-19T08:24:00.000Z",
  • "comment": "Validity date is past, please re-submit this document",
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "link": {
    },
  • "message": "KYC (project-related) successfully validated by user 3611ab62-94a9-4782-890f-221a64518c83 for project d4192b60-79b5-429c-9160-e862b5a3e370"
}

KYCWorkflowProjectRelatedController_allowListUserForProjectAsReviewer

Request Body schema: application/json
submitterId
required
string

ID of submitter(investor, underwriter, etc.), who shall be allowListed

projectId
required
string

ID of project, KYC shall be validated for

clientCategory
required
string
Enum: "ELIGIBLE_COUNTER_PARTIES" "PROFESSIONAL_CLIENTS" "RETAIL_CUSTOMERS"

Client category (assessed by issuer)

riskProfile
required
string
Enum: "CONSERVATIVE" "MODERATE" "BALANCED" "DYNAMIC" "AGGRESSIVE"

Client risk profile (assessed by issuer)

validityDate
required
string <date-time>

Validity date

comment
required
string

Comment provided by the issuer, to indicate why the submitter has been validated/rejected

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "projectId": "d4192b60-79b5-429c-9160-e862b5a3e370",
  • "clientCategory": "PROFESSIONAL_CLIENTS",
  • "riskProfile": "MODERATE",
  • "validityDate": "2022-12-19T08:24:00.000Z",
  • "comment": "Validity date is past, please re-submit this document",
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "link": {
    },
  • "newLink": true,
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 successfully allowListed for project d4192b60-79b5-429c-9160-e862b5a3e370"
}

KYCWorkflowProjectRelatedController_allowListUserForProjectAsVerifier

Request Body schema: application/json
submitterId
required
string

ID of submitter(investor, underwriter, etc.), who shall be allowListed

projectId
required
string

ID of project, KYC shall be validated for

clientCategory
required
string
Enum: "ELIGIBLE_COUNTER_PARTIES" "PROFESSIONAL_CLIENTS" "RETAIL_CUSTOMERS"

Client category (assessed by issuer)

riskProfile
required
string
Enum: "CONSERVATIVE" "MODERATE" "BALANCED" "DYNAMIC" "AGGRESSIVE"

Client risk profile (assessed by issuer)

validityDate
required
string <date-time>

Validity date

comment
required
string

Comment provided by the issuer, to indicate why the submitter has been validated/rejected

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "projectId": "d4192b60-79b5-429c-9160-e862b5a3e370",
  • "clientCategory": "PROFESSIONAL_CLIENTS",
  • "riskProfile": "MODERATE",
  • "validityDate": "2022-12-19T08:24:00.000Z",
  • "comment": "Validity date is past, please re-submit this document",
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "link": {
    },
  • "newLink": true,
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 successfully allowListed for project d4192b60-79b5-429c-9160-e862b5a3e370"
}

KYCWorkflowProjectRelatedController_unvalidateUserForProjectAsReviewer

Request Body schema: application/json
submitterId
required
string

ID of submitter(investor, underwriter, etc.), who shall be unvalidated

projectId
required
string

ID of project, user shall be unvalidated for

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "projectId": "d4192b60-79b5-429c-9160-e862b5a3e370",
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "links": {
    },
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 unvalidated successfully for project d4192b60-79b5-429c-9160-e862b5a3e370"
}

KYCWorkflowProjectRelatedController_unvalidateUserForProjectAsVerifier

Request Body schema: application/json
submitterId
required
string

ID of submitter(investor, underwriter, etc.), who shall be unvalidated

projectId
required
string

ID of project, user shall be unvalidated for

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "projectId": "d4192b60-79b5-429c-9160-e862b5a3e370",
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "links": {
    },
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 unvalidated successfully for project d4192b60-79b5-429c-9160-e862b5a3e370"
}

KYCWorkflowProjectRelatedController_rejectUserForProjectAsReviewer

Request Body schema: application/json
submitterId
required
string

ID of submitter(investor, underwriter, etc.), who shall be unvalidated

projectId
required
string

ID of project, user shall be unvalidated for

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "projectId": "d4192b60-79b5-429c-9160-e862b5a3e370",
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "links": {
    },
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 unvalidated successfully for project d4192b60-79b5-429c-9160-e862b5a3e370"
}

KYCWorkflowProjectRelatedController_rejectUserForProjectAsVerifier

Request Body schema: application/json
submitterId
required
string

ID of submitter(investor, underwriter, etc.), who shall be unvalidated

projectId
required
string

ID of project, user shall be unvalidated for

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "projectId": "d4192b60-79b5-429c-9160-e862b5a3e370",
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "links": {
    },
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 unvalidated successfully for project d4192b60-79b5-429c-9160-e862b5a3e370"
}

KYCWorkflowProjectRelatedController_deleteUserProjectLinkAsReviewer

Request Body schema: application/json
submitterId
required
string

ID of submitter(investor, underwriter, etc.)

projectId
required
string

ID of project

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "projectId": "d4192b60-79b5-429c-9160-e862b5a3e370"
}

Response samples

Content type
application/json
{
  • "deletedElementReviews": [
    ],
  • "deletedTemplateReviews": [
    ],
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 unlinked successfully from project d4192b60-79b5-429c-9160-e862b5a3e370"
}

KYCWorkflowPlatformRelatedController_inviteForPlatformAsReviewer

Request Body schema: application/json
submitterId
required
string

ID of submitter, who shall be invited

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83"
}

Response samples

Content type
application/json
{
  • "link": {
    },
  • "newLink": true,
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 successfully invited to provide KYC elements for platform"
}

KYCWorkflowPlatformRelatedController_submitForPlatform

Request Body schema: application/json
elements
required
Array of strings

Array of KYC element instances to submit

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "elements": [
    ],
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "link": {
    },
  • "message": "Platform-related KYC successfully submitted by issuer 3611ab62-94a9-4782-890f-221a64518c83 for issuer 3611ab62-94a9-4782-890f-221a64518c83"
}

KYCWorkflowPlatformRelatedController_reviewForPlatformAsReviewer

Request Body schema: application/json
submitterId
required
string

ID of submitter, KYC shall be validated for

validations
required
Array of strings

Array of KYC element instances to submit

clientCategory
required
string
Enum: "ELIGIBLE_COUNTER_PARTIES" "PROFESSIONAL_CLIENTS" "RETAIL_CUSTOMERS"

Client category (assessed by reviewer)

riskProfile
required
string
Enum: "CONSERVATIVE" "MODERATE" "BALANCED" "DYNAMIC" "AGGRESSIVE"

Client risk profile (assessed by reviewer)

validityDate
required
string <date-time>

Validity date

comment
required
string

Comment provided by the reviewer, to indicate why the submitter has been validated/rejected

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "validations": [
    ],
  • "clientCategory": "PROFESSIONAL_CLIENTS",
  • "riskProfile": "MODERATE",
  • "validityDate": "2022-12-19T08:24:00.000Z",
  • "comment": "Validity date is past, please re-submit this document",
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "link": {
    },
  • "message": "Platform-related KYC successfully validated by admin 3611ab62-94a9-4782-890f-221a64518c83 for issuer 3611ab62-94a9-4782-890f-221a64518c83"
}

KYCWorkflowPlatformRelatedController_validateForPlatformAsVerifier

Request Body schema: application/json
submitterId
required
string

ID of submitter, KYC shall be validated for

validations
required
Array of strings

Array of KYC element instances to submit

clientCategory
required
string
Enum: "ELIGIBLE_COUNTER_PARTIES" "PROFESSIONAL_CLIENTS" "RETAIL_CUSTOMERS"

Client category (assessed by reviewer)

riskProfile
required
string
Enum: "CONSERVATIVE" "MODERATE" "BALANCED" "DYNAMIC" "AGGRESSIVE"

Client risk profile (assessed by reviewer)

validityDate
required
string <date-time>

Validity date

comment
required
string

Comment provided by the reviewer, to indicate why the submitter has been validated/rejected

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "validations": [
    ],
  • "clientCategory": "PROFESSIONAL_CLIENTS",
  • "riskProfile": "MODERATE",
  • "validityDate": "2022-12-19T08:24:00.000Z",
  • "comment": "Validity date is past, please re-submit this document",
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "link": {
    },
  • "message": "Platform-related KYC successfully validated by user 3611ab62-94a9-4782-890f-221a64518c83 for verifier 3611ab62-94a9-4782-890f-221a64518c83"
}

KYCWorkflowPlatformRelatedController_allowListInvestorForPlatformAsReviewer

Request Body schema: application/json
submitterId
required
string

ID of submitter, who shall be allowListed

clientCategory
required
string
Enum: "ELIGIBLE_COUNTER_PARTIES" "PROFESSIONAL_CLIENTS" "RETAIL_CUSTOMERS"

Client category (assessed by issuer)

riskProfile
required
string
Enum: "CONSERVATIVE" "MODERATE" "BALANCED" "DYNAMIC" "AGGRESSIVE"

Client risk profile (assessed by issuer)

validityDate
required
string <date-time>

Validity date

comment
required
string

Comment provided by the reviewer, to indicate why the submitter has been validated/rejected

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "clientCategory": "PROFESSIONAL_CLIENTS",
  • "riskProfile": "MODERATE",
  • "validityDate": "2022-12-19T08:24:00.000Z",
  • "comment": "Validity date is past, please re-submit this document",
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "link": {
    },
  • "newLink": true,
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 successfully allowListed globally for issuer 3611ab62-94a9-4782-890f-221a64518c83"
}

KYCWorkflowPlatformRelatedController_allowListInvestorForPlatformAsVerifier

Request Body schema: application/json
submitterId
required
string

ID of submitter, who shall be allowListed

clientCategory
required
string
Enum: "ELIGIBLE_COUNTER_PARTIES" "PROFESSIONAL_CLIENTS" "RETAIL_CUSTOMERS"

Client category (assessed by issuer)

riskProfile
required
string
Enum: "CONSERVATIVE" "MODERATE" "BALANCED" "DYNAMIC" "AGGRESSIVE"

Client risk profile (assessed by issuer)

validityDate
required
string <date-time>

Validity date

comment
required
string

Comment provided by the reviewer, to indicate why the submitter has been validated/rejected

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "clientCategory": "PROFESSIONAL_CLIENTS",
  • "riskProfile": "MODERATE",
  • "validityDate": "2022-12-19T08:24:00.000Z",
  • "comment": "Validity date is past, please re-submit this document",
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "link": {
    },
  • "newLink": true,
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 successfully allowListed globally for issuer 3611ab62-94a9-4782-890f-221a64518c83"
}

KYCWorkflowPlatformRelatedController_unvalidateUserForPlatformAsReviewer

Request Body schema: application/json
submitterId
required
string

ID of submitter

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "links": {
    },
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 unvalidated successfully for platform"
}

KYCWorkflowPlatformRelatedController_unvalidateUserForPlatformAsVerifier

Request Body schema: application/json
submitterId
required
string

ID of submitter

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "links": {
    },
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 unvalidated successfully for platform"
}

KYCWorkflowPlatformRelatedController_rejectUserForPlatformAsReviewer

Request Body schema: application/json
submitterId
required
string

ID of submitter

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "links": {
    },
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 unvalidated successfully for platform"
}

KYCWorkflowPlatformRelatedController_rejectUserForPlatformAsVerifier

Request Body schema: application/json
submitterId
required
string

ID of submitter

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "links": {
    },
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 unvalidated successfully for platform"
}

KYCWorkflowPlatformRelatedController_deleteUserPlatformLinkAsReviewer

Request Body schema: application/json
submitterId
required
string

ID of submitter, who shall be removed from platform

Responses

Request samples

Content type
application/json
{
  • "submitterId": "3611ab62-94a9-4782-890f-221a64518c83"
}

Response samples

Content type
application/json
{
  • "deletedElementReviews": [
    ],
  • "deletedTemplateReviews": [
    ],
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 unlinked successfully from platform"
}

DocumentController_uploadDocument

Responses

DocumentController_downloadDocument

path Parameters
fileName
required
string

Responses

Response samples

Content type
application/json
{ }

DocumentController_downloadDocumentAsVerifier

path Parameters
fileName
required
string
query Parameters
submitterId
required
string
Example: submitterId=3611ab62-94a9-4782-890f-221a64518c83

ID of document submitter

tokenId
required
string
Example: tokenId=423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token - optional - used to retrieve a user's token-related data

projectId
required
string
Example: projectId=423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of project - optional - used to retrieve a user's project-related data

issuerId
required
string
Example: issuerId=3611ab62-94a9-4782-890f-221a64518c83

ID of issuer - optional - used to retrieve a user's issuer-related data as a verifier

Responses

Response samples

Content type
application/json
{ }

LegalController_createTemplate

Responses

LegalController_createEnvelope

Responses

Response samples

Content type
application/json
{ }

LegalController_retrieveUrl

path Parameters
envelopeId
required
string

Responses

Response samples

Content type
application/json
{ }

LegalController_retrieveEnvelopeStatusById

path Parameters
envelopeId
required
string
query Parameters
docusignId
required
string

Responses

Response samples

Content type
application/json
{ }

LegalController_retrieveEnvelopePdfById

path Parameters
envelopeId
required
string
query Parameters
docusignId
required
string

Responses

Response samples

Content type
application/json
{ }

UtilsController_cleanAllTestTenants

query Parameters
deleteTestTenants
required
boolean

Set to 'true' if test tenants shall be deleted

Responses

UtilsController_cleanTenantInitialCodefiUsers

path Parameters
tenantId
required
string
Example: eRlC....XLf

ID of tenant, where initial users shall be cleaned

Responses

UtilsController_cleanAllInvalidTokens

query Parameters
deleteInvalidTokens
required
boolean

Set to 'true' if invalid tokens shall be deleted

Responses

UtilsController_cleanAllInvalidTokens2

query Parameters
deleteInvalidTokens
required
boolean

Set to 'true' if invalid tokens shall be deleted

Responses

UtilsController_cleanAllClientApplications

Responses

UtilsController_cleanAllClientGrants

query Parameters
requiredAudiences
required
string
Example: requiredAudiences=["https://codefi.eu.auth0.com/api/v2/","https://api.codefi.network"]

Stringified array of audiences, grants shall be created for, for the client application

createMissingGrants
required
boolean

Set to 'true' if missing grants shall be created in Auth0 (identity provider)

recreateDeprecatedGrants
required
boolean

Set to 'true' if deprecated grants shall be deleted and re-created in Auth0 (identity provider)

deleteUnusedGrants
required
boolean

Set to 'true' if unused grants shall be deleted in Auth0 (identity provider)

Responses

UtilsController_cleanAllInvalidUserWallets

query Parameters
deprecateInvalidWallets
required
boolean

Set to 'true' if invalid wallets shall be deprecated

Responses

UtilsController_cleanAllInvalidUserWallets2

query Parameters
deprecateInvalidWallets
required
boolean

Set to 'true' if invalid wallets shall be deprecated

deleteCodefiUsers
required
boolean

Set to 'true' if public users shall be deleted

offset
required
number
Example: offset=200

Number of invalid wallets to skip

limit
required
number
Example: limit=200

Max number of invalid wallets to return

Responses

UtilsController_cleanAllInvalidKycTemplateIds

query Parameters
cleanConfigs
required
boolean

Set to 'true' if invalid configs shall be fixed

cleanUsers
required
boolean

Set to 'true' if invalid users shall be fixed

Responses

UtilsController_cleanAllCodefiUsers

query Parameters
deleteCodefiUsers
required
boolean

Set to 'true' if codefi users shall be deleted

Responses

UtilsController_cleanAllUsersMetadata

query Parameters
updateInvalidUserMetadata
required
boolean

Set to 'true' if invalid users shall be updated in Auth0 (identity provider)

userMigratedFlag
required
string
Example: userMigratedFlag=userMigratedInAuthO

Flag to add in user's metadata to indicate, he's been migrated

userMigratedFlagClean
required
string
Example: userMigratedFlagClean=userMigratedInAuthO

Flag to clean from user's metadata

Responses

UtilsController_withdrawAllEtherFromUserAccount

Request Body schema: application/json
userId
required
string

Id of user, ETH shall be withdrawn from

withdrawalAddress
required
string

Address, where ETH shall be sent to

chainId
required
string

ID of the chain/network where the ETH shall be withdrawn

Responses

Request samples

Content type
application/json
{
  • "userId": "3611ab62-94a9-4782-890f-221a64518c83",
  • "withdrawalAddress": "0xd200b5d89f719473573be585eadedc8c916e5515",
  • "chainId": "1"
}

Response samples

Content type
application/json
{
  • "transactionId": "b8cb9c69-0996-4a01-b94e-fe4e8b90dbac",
  • "message": "Withdrawal of 5 ETH from address 0xd200b5d89f719473573be585eadedc8c916e5515 to address 0xd200b5d89f719473573be585eadedc8c916e5515 has been successfully requested (transaction sent)"
}

UtilsController_createHtlc

Responses

Response samples

Content type
application/json
{
  • "htlc": {
    },
  • "message": "New HTLC with hash 0x created successfully (the HTLC secret has not been saved by the API)"
}

UtilsController_retrieveIdentity

query Parameters
userType
required
string
Enum: "SUPERADMIN" "ADMIN" "ISSUER" "UNDERWRITER" "BROKER" "INVESTOR" "VEHICLE" "NOTARY" "VERIFIER" "NAV_MANAGER"
Example: userType=INVESTOR

Must be a valid user type: ISSUER | INVESTOR

firstConnectionCode
required
string
Example: firstConnectionCode=po2LcDbR-cSCoVZ7F-TCmVs0nx-kLotkoAG

Identifier to retrieve user at first connection (when his authId - ID provided by auth0 identity provider - is not set yet)

Responses

Response samples

Content type
application/json
{
  • "user": {
    },
  • "newUser": true,
  • "message": "User 3611ab62-94a9-4782-890f-221a64518c83 successfully created"
}

UtilsController_retrievePartitions

query Parameters
assetClass
required
string
Example: assetClass=classa

Asset class of token, partitions shall be returned for

Responses

Response samples

Content type
application/json
{
  • "partitions": {
    },
  • "message": "Partitions retrieved successfully for class A"
}

UtilsController_retrieveCertificate

query Parameters
senderAddress
required
string
Example: senderAddress=0xd200b5d89f719473573be585eadedc8c916e5515

Ethereum address of the transaction sender

contractAddress
required
string
Example: contractAddress=0xb76b40231c176cd6435f83153796d1af18b4c9a7

Ethereum address of the token smart contract

txPayload
required
string
Example: txPayload=0x...

Transaction payload

tokenStandard
required
string
Enum: "BatchBalanceReader" "BatchReader" "BatchTokenIssuer" "ERC20Token" "ERC721Token" "ERC1400ERC20" "ERC1400CertificateNonce" "ERC1400CertificateSalt" "ERC1400HoldableCertificateToken" "ERC1400TokensValidator" "DVPHoldableLockable"
Example: tokenStandard=ERC1400HoldableCertificateToken

Token smart contract name

chainId
required
string
Example: chainId=1

Chain ID of Ethereum network where the transaction will be sent

message
required
string
Example: message=User 3611ab62-94a9-4782-890f-221a64518c83 successfully created

Response message

Responses

Response samples

Content type
application/json
{
  • "certificate": "Ox...",
  • "message": "Certificate retrieved successfully"
}

UtilsController_retrieveTokenStates

Responses

Response samples

Content type
application/json
{
  • "tokenStates": {
    },
  • "message": "Token states listed successfully"
}

UtilsController_retrieveConfig

query Parameters
userConfiguration
required
boolean
Example: userConfiguration=true/false

Should fach user configuration

tenantId
required
string
Example: tenantId=fQPeYS1BhXQUbEKqBUGv0EXj7mluOfPa

Tenant id of the config we would like to fetch

Responses

Response samples

Content type
application/json
{
  • "config": {
    },
  • "message": "Custom config 0b776e4c-1af7-40de-b70e-96023a74ae42 retrieved successfully for tenant MQp8....Fa5"
}

UtilsController_createOrUpdateConfig

query Parameters
userConfiguration
required
boolean
Example: userConfiguration=true/false

Should fach user configuration

tenantId
required
string
Example: tenantId=fQPeYS1BhXQUbEKqBUGv0EXj7mluOfPa

Tenant id of the config we would like to fetch

Request Body schema: application/json
name
required
string

Name of the tenant

logo
required
string

Logo of the tenant

mailLogo
required
string

Mail logo of the tenant

mailColor
required
string

Mail color of the tenant

mainColor
required
string

Color for the tenant

mainColorLight
required
string

Color for the tenant

mainColorLighter
required
string

Color for the tenant

mainColorDark
required
string

Color for the tenant

mainColorDarker
required
string

Color for the tenant

data
required
object

Object to store any additional data (potentially use case related data)

preferences
required
object

Object to store any preferences

language
required
string

Language

region
required
string

Region

restrictedAssetTypes
Array of strings
Items Enum: "OPEN_END_FUND" "CLOSED_END_FUND" "FIXED_RATE_BOND" "CARBON_CREDITS" "PHYSICAL_ASSET" "CURRENCY" "SYNDICATED_LOAN"
restrictedUserTypes
Array of strings
Items Enum: "SUPERADMIN" "ADMIN" "ISSUER" "UNDERWRITER" "BROKER" "INVESTOR" "VEHICLE" "NOTARY" "VERIFIER" "NAV_MANAGER"

Responses

Request samples

Content type
application/json
{
  • "name": "Codefi Assets",
  • "logo": "Config created successfully",
  • "mailLogo": "any valid url https://www.exemple.com",
  • "mailColor": "any valid hex color #ffffff",
  • "mainColor": { },
  • "mainColorLight": { },
  • "mainColorLighter": { },
  • "mainColorDark": { },
  • "mainColorDarker": { },
  • "data": { },
  • "preferences": { },
  • "language": { },
  • "region": { },
  • "restrictedAssetTypes": [
    ],
  • "restrictedUserTypes": [
    ]
}

Response samples

Content type
application/json
{
  • "config": {
    },
  • "newConfig": true,
  • "message": "Config created successfully for tenant MQp8....Fa5"
}

UtilsController_listAllTenants

query Parameters
offset
required
number >= 0

Index of first tenant to fetch

limit
required
number <= 50
Example: limit=100

Max amount of orders to fetch

Responses

Response samples

Content type
application/json
{
  • "tenants": [
    ],
  • "count": 3,
  • "total": 543,
  • "message": "3 Codefi Assets tenants listed successfully"
}

UtilsController_createTenant

Request Body schema: application/json
tenantName
required
string

Name of the tenant to create

email
required
string

Email of the tenant admin

password
required
string

Password of the tenant admin

enableMarketplace
required
boolean

enable market place for the platform

usecase
required
string

The primary use case for the platform

firstName
required
string

First name of the tenant admin

lastName
required
string

Last name of the tenant admin

region
required
string

Region where the data are stored

defaultAlias
required
string

Default alias

aliases
required
Array of strings

Alias URLs

tenantType
required
string
Enum: "platform_multi_issuer" "platform_single_issuer" "api"

Type of tenant. Not a technical field, it is used for internal accounting.

kycTemplateId
required
string

Optional parameter to define a default KYC template for a given tenant

faucetNetworksKeys
Array of strings

List of Networks (keys) for which we want to create a Faucet

createM2mClientApplication
required
boolean

If set to 'true', a machine-to-machine client application shall be created for the tenant

sendNotification
required
boolean

Send notification flag (if true user will be notified by mail)

Responses

Request samples

Content type
application/json
{
  • "tenantName": "Codefi",
  • "email": "[email protected]",
  • "password": "xxx-xxx-xxx",
  • "enableMarketplace": "true",
  • "usecase": "collectables",
  • "firstName": "Codefi",
  • "lastName": "Codefi",
  • "region": "EU",
  • "defaultAlias": "my-tenant-name.assets.codefi.network",
  • "aliases": "[\"my-tenant-name.assets.codefi.network\", \"my-tenant-name.payments.codefi.network\"]",
  • "tenantType": "API",
  • "kycTemplateId": "string",
  • "faucetNetworksKeys": [
    ],
  • "createM2mClientApplication": true,
  • "sendNotification": true
}

Response samples

Content type
application/json
{
  • "config": {
    },
  • "tenant": {
    },
  • "newTenant": true,
  • "firstUser": {
    },
  • "codefiUsers": {
    },
  • "postmanCredentials": {
    },
  • "clientApplication": {
    },
  • "m2mClientApplication": {
    },
  • "faucetIds": [
    ],
  • "message": "Tenant with ID eRlC....XLf has been successfully created for Codefi"
}

UtilsController_retrieveTenant

path Parameters
tenantIdOrAlias
required
string
Example: eRlC....XLf

Id of tenant OR alias

Responses

Response samples

Content type
application/json
{
  • "tenant": {
    },
  • "clientApplications": {
    },
  • "config": {
    },
  • "configType": "custom",
  • "firstUser": {
    },
  • "codefiUsers": {},
  • "message": "Codefi Assets tenant with ID eRlC....XLf retrieved successfully"
}

UtilsController_createM2mApplicationForTenant

path Parameters
tenantId
required
string
Example: eRlC....XLf

ID of tenant, an m2m client application shall be created for

Responses

Response samples

Content type
application/json
{
  • "m2mClientApplication": {
    },
  • "newM2mClientApplication": true,
  • "message": "M2M client application has been successfully created for tenant with id eRlC....XLf"
}

UtilsController_deleteTenant

path Parameters
tenantId
required
string
Example: eRlC....XLf

ID of tenant to delete

Responses

Response samples

Content type
application/json
{
  • "message": "Codefi Assets tenant with ID eRlC....XLf has been successfully deleted"
}

UtilsController_deleteTenantData

path Parameters
tenantId
required
string
Example: eRlC....XLf

ID of tenant for data cleanup

query Parameters
deleteTenantKYCTemplateData
boolean

delete tenant's KYC template data?

deleteTenantWorkflowData
boolean
Example: deleteTenantWorkflowData=true

delete tenant's workflow data?

deleteTenantMetaData
boolean

delete tenant's Metadata?

doNotDeleteTenantConfigs
boolean
Example: doNotDeleteTenantConfigs=true

Do Not delete Tenant Configs (Micro control parameter for MetaData)?

doNotDeleteTenantUsers
boolean
Example: doNotDeleteTenantUsers=true

Do Not delete Tenant Users (Micro control parameter for MetaData)?

doNotDeleteTenantAssetTemplates
boolean
Example: doNotDeleteTenantAssetTemplates=true

Do Not delete Tenant Asset Templates (Micro control parameter for MetaData)?

doNotDeleteTenantAssetElements
boolean
Example: doNotDeleteTenantAssetElements=true

Do Not delete Tenant Asset Elements (Micro control parameter for MetaData)?

Responses

Response samples

Content type
application/json
{
  • "message": "Data for Codefi Assets tenant with ID eRlC....XLf has been successfully deleted"
}

UtilsController_getPostmanCredentials

path Parameters
tenantId
required
string
Example: eRlC....XLf

ID of tenant from which we want to retrieve postman credentials

Responses

Response samples

Content type
application/json
{
  • "postmanCredentials": {
    }
}

HooksController_triggerHookFunction

Request Body schema: application/json
tenantId
required
string

ID of tenant that sent the transaction

txIdentifier
required
string

Transaction identifier (can be an orchestrateId, a txHash or a ledger transaction identifier)

txHash
required
string

Transaction hash (only if transaction has been validated)

receipt
required
object

Transaction receipt (only if transaction has been validated)

txStatus
required
string
Enum: "pending" "processing" "validated" "reverted" "failed"

Status of the transaction, chosen amongst pending,processing,validated,reverted,failed

errors
required
object

Errors provided by Orchestrate

Responses

Request samples

Content type
application/json
{
  • "tenantId": true,
  • "txIdentifier": true,
  • "txHash": "{\"type\":\"orchestrate\",\"data\":{\"tenantId\":\"codefi\",\"name\":\"Main Ethereum Network\",\"key\":\"mainnet\",\"chainId\":\"1\",\"type\":\"pow\",\"description\":\"Frontier, Homestead, Metropolis, the Ethereum public PoW main network\",\"ethRequired\":true,\"kaleido\":false,\"faucetMinEthValue\":\"300000000000000000\",\"isAlive\":true}}",
  • "receipt": {
    },
  • "txStatus": "validated",
  • "errors": {
    }
}

Response samples

Content type
application/json
{ }

EventController_listAllEvents

query Parameters
offset
required
number >= 0

Index of first event to fetch

limit
required
number <= 50
Example: limit=100

Max amount of events to fetch

tokenId
required
string
Example: tokenId=423baf7e-66fc-4e40-a5d6-4b7384bd665d

ID of token, events list shall be filtered for

states
required
string
Example: states=["scheduled"]

Filter parameter to retrieve events with specific states. The parameter shall be a stringified array of states.

functionNames
required
string
Example: functionNames=["createEvent"]

Filter parameter to retrieve events with specific function names. The parameter shall be a stringified array of functionNames.

types
required
string
Example: types=["COUPON"]

Filter parameter to retrieve events of specific type. The parameter shall be a stringified array of types.

userIds
required
string
Example: userIds=["3611ab62-94a9-4782-890f-221a64518c83"]

Filter parameter to retrieve events of specific users. The parameter shall be a stringified array of userIds.

dates
required
string
Example: dates=["Sun Dec 17 1995"]

Filter parameter to retrieve events of specific dates. The parameter shall be a stringified array of dates.

Responses

Response samples

Content type
application/json
{
  • "events": [
    ],
  • "count": 3,
  • "total": 543,
  • "message": "Events listed successfully for user 3611ab62-94a9-4782-890f-221a64518c83, filtered for token 423baf7e-66fc-4e40-a5d6-4b7384bd665d"
}

EventController_retrieveEvent

path Parameters
eventIndex
required
number
Example: 3491

Index of event to retrieve

Responses

Response samples

Content type
application/json
{
  • "event": {
    },
  • "message": "Event with index id retrieved successfully"
}

EventController_deleteEvent

path Parameters
eventIndex
required
number
Example: 3491

Index of event to delete

Responses

Response samples

Content type
application/json
{
  • "event": {
    },
  • "message": "Event with index id deleted successfully"
}

Usecases

List all usecases

path Parameters
usecase
required
string

Responses

Response samples

Content type
application/json
[
  • { }
]

Edit a usecase

path Parameters
usecase
required
string

Responses

Response samples

Content type
application/json
[
  • { }
]

Delete a usecase

path Parameters
usecase
required
string

Responses

Response samples

Content type
application/json
[
  • { }
]

List all usecases

Responses

Response samples

Content type
application/json
[
  • { }
]

Create a usecase

Responses

Response samples

Content type
application/json
[
  • { }
]