Card

Update a rule from card

Update card by creating a new card rule. When creating a card rule with a type that already exists, it will override the previous one.

Both partner and enduser can set a rule of the same type. The more restrictive one will be applied.

SecurityLinkcy-Auth
Request
path Parameters
cardId
required
string <uuid>
Request Body schema: application/json
type
required
string
Enum: "DAILY_MAX_COUNT" "DAILY_MAX_SPEND" "LIFETIME_MAX_COUNT" "LIFETIME_MAX_SPEND" "MONTHLY_MAX_COUNT" "MONTHLY_MAX_SPEND" "TRANSACTION_MAX_SPEND" "WEEKLY_MAX_COUNT" "WEEKLY_MAX_SPEND"
value
required
integer <int64> [ 1 .. 999999999 ]
name
string
Responses
204

No Content

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

409

Conflict

500

Internal Server Error

put/api/partner/cards/{cardId}/rules
Request samples
application/json
{
  • "type": "DAILY_MAX_COUNT",
  • "value": 1,
  • "name": "string"
}
Response samples
application/json
{
  • "status": 400,
  • "details": [
    ],
  • "error": "linkcy.bad.request",
  • "timestamp": "2019-08-24T14:15:22Z"
}

Create a default card profile rule

When creating a card with this profile, profile rules will by default be applied to the card.

Any modification on a rule type will ONLY apply to new created cards.

Any card created PRIOR to that modification will NOT be affected by it, and will retain all rules applied on creation.

SecurityLinkcy-Auth
Request
path Parameters
cardProfileId
required
string <uuid>
Request Body schema: application/json
type
required
string
Enum: "DAILY_MAX_COUNT" "DAILY_MAX_SPEND" "LIFETIME_MAX_COUNT" "LIFETIME_MAX_SPEND" "MONTHLY_MAX_COUNT" "MONTHLY_MAX_SPEND" "TRANSACTION_MAX_SPEND" "WEEKLY_MAX_COUNT" "WEEKLY_MAX_SPEND"
value
required
integer <int64> [ 1 .. 999999999 ]
name
string
Responses
204

No Content

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

409

Conflict

500

Internal Server Error

put/api/partner/card-profiles/{cardProfileId}/rules
Request samples
application/json
{
  • "type": "DAILY_MAX_COUNT",
  • "value": 1,
  • "name": "string"
}
Response samples
application/json
{
  • "status": 400,
  • "details": [
    ],
  • "error": "linkcy.bad.request",
  • "timestamp": "2019-08-24T14:15:22Z"
}

List cards

Fetch all cards based on parameters. More options will be added in the near future.

SecurityLinkcy-Auth
Request
query Parameters
sortAttribute
string
Value: "CREATION_DATE"
endUserId
string <uuid>
ledgerId
string <uuid>
pageSize
integer <int32> [ 0 .. 100 ]
Default: 20

The size of the page to be returned.

page
integer <int32> >= 0
Default: 0

The page number.

sortDirection
string
Enum: "ASC" "DESC"
Responses
200

OK

400

Bad Request

401

Unauthorized

403

Forbidden

409

Conflict

500

Internal Server Error

get/api/partner/cards
Request samples
Response samples
application/json
{
  • "content": [
    ],
  • "totalElements": 1,
  • "page": 0,
  • "pageSize": 0
}

Create a card

Create a card for a specific ledger.

SecurityLinkcy-Auth
Request
Request Body schema: application/json
Any of:
deliveryMethod
required
string
Enum: "UK_MAIL" "INTERNATIONAL_MAIL" "DHL"
ledgerId
required
string <uuid>
profileId
required
string <uuid>

The card profile id. Must be an active card profile.

nameOnCard
string^[A-Z\s]{1,21}$
Default: "FIRSTNAME LASTNAME"

The name that will be printed on the card. Can only contain ISO basic Latin alphabet and can be up to 21 characters long including spaces.

friendlyName
string
Array of objects

You can add rules when creating a card. You can only send one rule by type in the list.

As a partner, this rules take priority over the rules set in the profile

Responses
201

Created

400

Bad Request

401

Unauthorized

403

Forbidden

409
500

Internal Server Error

post/api/partner/cards
Request samples
application/json
{
  • "deliveryMethod": "UK_MAIL",
  • "ledgerId": "a2873d47-59a8-4daf-a325-cb2c04557dd7",
  • "profileId": "faebe71b-2bf8-4bdb-9b67-258e4d6aa00a",
  • "nameOnCard": "FIRSTNAME LASTNAME",
  • "friendlyName": "string",
  • "rules": [
    ]
}
Response samples
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}

Suspend a card

Suspend a card, all transactions on it will be blocked until it is reactivated.

SecurityLinkcy-Auth
Request
path Parameters
cardId
required
string <uuid>

The card id

Request Body schema: application/json
operator
required
string (Operator)
Default: "END_USER"

The operator of the operation. If the operation can be reverted, the same or higher authorization level will be required.Can be END_USER for when requesting as consumer or corporate. Can be END_USER or PARTNER when requesting as a partner.

Enum: "END_USER" "PARTNER" "LINKCY"
reason
string

Optional reason of the card suspension.

Enum: "STOLEN" "LOST" "DAMAGED" "OTHER"
otherReason
string [ 0 .. 511 ] characters

Description of reason if 'OTHER' was chosen.

Responses
204

Card is being suspended

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

409
500

Internal Server Error

post/api/partner/cards/{cardId}/suspend
Request samples
application/json
{
  • "operator": "END_USER",
  • "reason": "STOLEN",
  • "otherReason": "string"
}
Response samples
application/json
{
  • "status": 400,
  • "details": [
    ],
  • "error": "linkcy.bad.request",
  • "timestamp": "2019-08-24T14:15:22Z"
}

Renew a card

Renew a card for any reason. Whether it is damaged, lost, stolen, expiring or something else, you should use this endpoint.

SecurityLinkcy-Auth
Request
path Parameters
cardId
required
string <uuid>

The card id

Request Body schema: application/json
reason
required
string

Reason of the card replacement.

Enum: "LOST" "STOLEN" "DAMAGED" "EXPIRATION" "OTHER"
otherReasonDescription
string [ 0 .. 511 ] characters

Description of reason if 'OTHER' was chosen.

operator
required
string (Operator)
Default: "END_USER"

The operator of the operation. If the operation can be reverted, the same or higher authorization level will be required.Can be END_USER for when requesting as consumer or corporate. Can be END_USER or PARTNER when requesting as a partner.

Enum: "END_USER" "PARTNER" "LINKCY"
deliveryMethod
string

If not set, we will use the same as the replaced card.

Enum: "UK_MAIL" "INTERNATIONAL_MAIL" "DHL"
nameOnCard
string^[A-Z\s]{1,21}$

The name that will be printed on the card. Can only contain ISO basic Latin alphabet and can be up to 21 characters long including spaces.
If not set, the card will have the same as the replaced card.

Responses
201

Card is being renewed

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

409
500

Internal Server Error

post/api/partner/cards/{cardId}/renew
Request samples
application/json
{
  • "reason": "LOST",
  • "otherReasonDescription": "string",
  • "operator": "END_USER",
  • "deliveryMethod": "UK_MAIL",
  • "nameOnCard": "string"
}
Response samples
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}

Reset physical card's PIN attempts

Reset the number of PIN attempts for a physical card.

SecurityLinkcy-Auth
Request
path Parameters
cardId
required
string <uuid>
Responses
204

Card PIN attempts are being reset

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

409
500

Internal Server Error

post/api/partner/cards/{cardId}/pin/reset
Request samples
Response samples
application/json
{
  • "status": 400,
  • "details": [
    ],
  • "error": "linkcy.bad.request",
  • "timestamp": "2019-08-24T14:15:22Z"
}

Close a card

Permanently close a card.

SecurityLinkcy-Auth
Request
path Parameters
cardId
required
string <uuid>

The card id

Request Body schema: application/json
operator
required
string (Operator)
Default: "END_USER"

The operator of the operation. If the operation can be reverted, the same or higher authorization level will be required.Can be END_USER for when requesting as consumer or corporate. Can be END_USER or PARTNER when requesting as a partner.

Enum: "END_USER" "PARTNER" "LINKCY"
reason
required
string
Enum: "STOLEN" "LOST" "DAMAGED" "OTHER"
otherReason
string [ 0 .. 511 ] characters

Description of reason if 'OTHER' was chosen.

Responses
204

Card is being closed

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

409
500

Internal Server Error

post/api/partner/cards/{cardId}/close
Request samples
application/json
{
  • "operator": "END_USER",
  • "reason": "STOLEN",
  • "otherReason": "string"
}
Response samples
application/json
{
  • "status": 400,
  • "details": [
    ],
  • "error": "linkcy.bad.request",
  • "timestamp": "2019-08-24T14:15:22Z"
}

Activate a card

When activating a card for the first time, you must retrieve its truncated PAN from the end user. In Sandbox, you can retrieve the PAN here.

SecurityLinkcy-Auth
Request
path Parameters
cardId
required
string <uuid>

The card id

Request Body schema: application/json
truncatedPan
string^[0-9]{4}$

Last 4 digits of the card. This value is only available when the card has been received by the end-user.

Responses
204

Card is being activated

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

409
500

Internal Server Error

post/api/partner/cards/{cardId}/activate
Request samples
application/json
{
  • "truncatedPan": "1111"
}
Response samples
application/json
{
  • "errorCode": "INVALID_PAN",
  • "status": 400,
  • "details": [
    ],
  • "error": "linkcy.bad.request",
  • "timestamp": "2019-08-24T14:15:22Z"
}

List card profiles

Fetch all card profiles based on parameters.

SecurityLinkcy-Auth
Request
query Parameters
sortAttribute
string
Value: "NAME"
active
boolean
pageSize
integer <int32> [ 0 .. 100 ]
Default: 20

The size of the page to be returned.

page
integer <int32> >= 0
Default: 0

The page number.

sortDirection
string
Enum: "ASC" "DESC"
Responses
200

OK

400

Bad Request

401

Unauthorized

403

Forbidden

409

Conflict

500

Internal Server Error

get/api/partner/card-profiles
Request samples
Response samples
application/json
{
  • "content": [
    ],
  • "totalElements": 1,
  • "page": 0,
  • "pageSize": 0
}

Create a card profile

Create a card profile based on a card design.

SecurityLinkcy-Auth
Request
Request Body schema: application/json
name
required
string
cardDesignId
required
string <uuid>

The card design identifier on which the new card profile will be based.

active
boolean

When active, end-users are able to see this profile and create card with it.

When disabled, it can not be used to create new cards anymore.

Responses
201

Created

400

Bad Request

401

Unauthorized

403

Forbidden

409

Conflict

500

Internal Server Error

post/api/partner/card-profiles
Request samples
application/json
{
  • "name": "string",
  • "cardDesignId": "21f1b6eb-5662-41f7-952d-3d240b7c3aed",
  • "active": true
}
Response samples
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}

Update a card profile

Patch a cardProfile.

SecurityLinkcy-Auth
Request
path Parameters
cardProfileId
required
string <uuid>
Request Body schema: application/json
active
boolean

When active, end-users are able to see this profile and create card with it.

When disabled, it can not be used to create new cards anymore.

Responses
200

OK

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

409

Conflict

500

Internal Server Error

patch/api/partner/card-profiles/{cardProfileId}
Request samples
application/json
{
  • "active": true
}
Response samples
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}

Get card's information

Get all information about a card using its ID.

SecurityLinkcy-Auth
Request
path Parameters
cardId
required
string <uuid>
Responses
200

OK

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

409

Conflict

500

Internal Server Error

get/api/partner/cards/{cardId}
Request samples
Response samples
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "endUserId": "120e9d1f-8444-4b91-85e8-5b208615a3e5",
  • "ledgerId": "a2873d47-59a8-4daf-a325-cb2c04557dd7",
  • "profile": {
    },
  • "expiryDate": "string",
  • "nameOnCard": "string",
  • "friendlyName": "string",
  • "deliveryAddress": {
    },
  • "deliveryMethod": "UK_MAIL",
  • "truncatedPan": "string",
  • "type": "PHYSICAL",
  • "scheme": "MASTERCARD",
  • "currency": "EUR",
  • "status": {
    },
  • "creationDate": "2019-08-24T14:15:22Z",
  • "updateDate": "2019-08-24T14:15:22Z",
  • "pinStatus": "LOCKED",
  • "rules": [
    ]
}

Get a physical card's PIN

Get the PIN code of a card.

This operation might require SCA.

SecurityLinkcy-Auth
Request
path Parameters
cardId
required
string <uuid>
header Parameters
Linkcy-SCA-Strategy
string
Default: PUSH_NOTIFICATION

The strategy to use when a SCA is required:

More information:
  • PUSH_NOTIFICATION: will send a notification if the SCA is required.
  • JOIN_CODE: will return a join code if SCA is required.
  • FAIL: will fail if SCA is required.
  • BY_PASS: Sandbox only - will ignore any SCA if used.
ErrorCode
  • 409 Conflict
    • SCA_REQUIRED: The operation requires SCA. Can be returned if you try to use BY_PASS while not allowed. Will be returned if strategy is FAIL.
    • SCA_ENDPOINT_NOT_SET: The operation requires SCA and strategy allows it, but the user has no sca endpoint set up. You need to enroll one first.
Enum: "PUSH_NOTIFICATION" "JOIN_CODE" "FAIL" "BY_PASS"
Linkcy-SCA-Factor
string
Default: BIOMETRY

The factor type required for the operation :

More information:
  • BIOMETRY: will require fingerprint or face recognition depending on device.
  • PIN: will require the endpoint pin. When using this factor, a pin must have been registered through the SDK first. Sca pin and end user password can differ.
ErrorCode
  • 400 Bad Request
    • SCA_FACTOR_NOT_SET: The user has a sca endpoint set up, but the factor requested is not enrolled yet. You must either enroll it or change the factor.
Enum: "BIOMETRY" "PIN"
Linkcy-SCA-Id
string <uuid>

The id of the completed SCA operation.

ErrorCode
  • 404 Not Found
    • SCA_INTERACTION_NOT_FOUND: The specified id could not be found.
  • 409 Conflict
    • SCA_INTERACTION_NOT_COMPLETED: The SCA interaction is not completed (pending).
    • SCA_INTERACTION_DECLINED: The SCA interaction was declined by user or expired.
    • SCA_INTERACTION_ALREADY_CONSUMED: The SCA interaction has already been used, you need to create a new one.
    • SCA_INTERACTION_DOES_NOT_MATCH: The SCA interaction does not match the one you are trying to make. Body or url is different.
Responses
200

OK

202

Waiting SCA

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

409
500

Internal Server Error

get/api/partner/cards/{cardId}/pin
Request samples
Response samples
application/json
{
  • "pin": "string"
}

Get PAN credentials

Get temporary PAN credentials for this card.

Credentials are valid for 60 seconds, after which you will need to request new credentials again.

SecurityLinkcy-Auth
Request
path Parameters
cardId
required
string <uuid>
Responses
200

OK

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

409

Conflict

500

Internal Server Error

get/api/partner/cards/{cardId}/pan/credentials
Request samples
Response samples
application/json
{
  • "token": "237733595",
  • "secret": "066#28055031",
  • "ttl": "PT8H6M12.345S"
}

List card designs

Fetch all card designs based on parameters.

SecurityLinkcy-Auth
Request
query Parameters
sortAttribute
string
Value: "NAME"
scheme
string
Enum: "MASTERCARD" "VISA"
ledgerType
string
Enum: "EUR_ESTONIA" "EUR_LITHUANIA" "EUR_FRANCE" "USD_USA" "GBP_GREAT_BRITAIN"
cardType
string
Enum: "PHYSICAL" "VIRTUAL"
userType
string
Enum: "CORPORATE" "CONSUMER"
pageSize
integer <int32> [ 0 .. 100 ]
Default: 20

The size of the page to be returned.

page
integer <int32> >= 0
Default: 0

The page number.

sortDirection
string
Enum: "ASC" "DESC"
Responses
200

OK

400

Bad Request

401

Unauthorized

403

Forbidden

409

Conflict

500

Internal Server Error

get/api/partner/card-designs
Request samples
Response samples
application/json
{
  • "content": [
    ],
  • "totalElements": 1,
  • "page": 0,
  • "pageSize": 0
}

Remove card rule

remove rule from card

SecurityLinkcy-Auth
Request
path Parameters
cardId
required
string <uuid>
ruleType
required
string
Enum: "DAILY_MAX_COUNT" "DAILY_MAX_SPEND" "LIFETIME_MAX_COUNT" "LIFETIME_MAX_SPEND" "MONTHLY_MAX_COUNT" "MONTHLY_MAX_SPEND" "TRANSACTION_MAX_SPEND" "WEEKLY_MAX_COUNT" "WEEKLY_MAX_SPEND"
Responses
204

No Content

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

409

Conflict

500

Internal Server Error

delete/api/partner/cards/{cardId}/rules/{ruleType}
Request samples
Response samples
application/json
{
  • "status": 400,
  • "details": [
    ],
  • "error": "linkcy.bad.request",
  • "timestamp": "2019-08-24T14:15:22Z"
}

Remove default card profile rule

Remove a default card rule from card profile.

This only applies to cards created AFTER default rule deletion.

Any card created PRIOR to that modification will NOT be affected by it, and will retain all rules applied on creation.

SecurityLinkcy-Auth
Request
path Parameters
cardProfileId
required
string <uuid>
ruleType
required
string
Enum: "DAILY_MAX_COUNT" "DAILY_MAX_SPEND" "LIFETIME_MAX_COUNT" "LIFETIME_MAX_SPEND" "MONTHLY_MAX_COUNT" "MONTHLY_MAX_SPEND" "TRANSACTION_MAX_SPEND" "WEEKLY_MAX_COUNT" "WEEKLY_MAX_SPEND"
Responses
204

No Content

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

409

Conflict

500

Internal Server Error

delete/api/partner/card-profiles/{cardProfileId}/rules/{ruleType}
Request samples
Response samples
application/json
{
  • "status": 400,
  • "details": [
    ],
  • "error": "linkcy.bad.request",
  • "timestamp": "2019-08-24T14:15:22Z"
}