Skip to main content
POST
/
v0
/
insto
/
custody
/
tasks
/
create
Create task
curl --request POST \
  --url https://api.kraken.com/v0/insto/custody/tasks/create \
  --header 'Content-Type: application/json' \
  --header 'api-key: <api-key>' \
  --header 'api-nonce: <api-key>' \
  --header 'api-otp: <api-key>' \
  --header 'api-sign: <api-key>' \
  --data '
{
  "instructions": [
    {
      "type": "request_withdrawal",
      "version": 1,
      "intent": {
        "label": "Quarterly withdrawal",
        "categories": [
          "withdrawal"
        ]
      },
      "user": "ABCD EFGH IJKL MNOP",
      "reason": "Employee offboarding",
      "operations": [
        {
          "type": "add",
          "policy": {}
        }
      ],
      "vault_id": "VABCDEF234567A",
      "operation_type": "update",
      "org_iiban": "ABCD EFGH IJKL MNOP",
      "user_iiban": "ABCD EFGH IJKL MNOP"
    }
  ],
  "org_iiban": "ABCD EFGH IJKL MNOP",
  "duration_seconds": 86400
}
'
{
  "task_id": "TABCDEF234567A",
  "approval_id": "550E8400-E29B-41D4-A716-446655440000"
}

Authorizations

api-key
string
header
required
api-sign
string
header
required
api-nonce
string
header
required
api-otp
string
header
required

Body

application/json
instructions
object[]
required

One or more instructions that make up the task. Each item sets type and populates the matching payload field.

org_iiban
string

Organization IIBAN the task is created under.

Example:

"ABCD EFGH IJKL MNOP"

duration_seconds
number<double>

Optional task expiry, in seconds from creation.

Example:

86400

Response

Task created successfully. The instructions take effect asynchronously once the task is approved.

task_id
string
required

Identifier of the created task. A T-prefixed 14-char base32 string.

Example:

"TABCDEF234567A"

approval_id
string
required

Identifier of the approval flow associated with the task (UUID v4).

Example:

"550E8400-E29B-41D4-A716-446655440000"