Case
A support case.
Operations
Every route this entity exposes. Each route links to its own reference on this page.
| Method | Route | SDK operation | Returns |
|---|---|---|---|
POST |
/cases |
create |
Created case |
GET |
/cases/{caseId} |
load |
Case details retrieved successfully |
Examples
One example per SDK, generated from the API model. The argument names are the parameters and fields of this entity, and the values are placeholders. The examples are not compiled or executed.
Golang
Construct client as shown in the Golang setup, then call the operations:
case_, err := client.Case(nil).Load(map[string]any{"id": 1}, nil)
if err != nil {
panic(err)
}
fmt.Println(case_)
created, err := client.Case(nil).Create(map[string]any{"description": "example", "details": map[string]any{}, "externalId": "example"}, nil)
if err != nil {
panic(err)
}
fmt.Println(created)
Lua
Construct client as shown in the Lua setup, then call the operations:
local case, err = client:Case():load({ id = 1 })
local created, err = client:Case():create({ description = "example", details = {}, externalId = "example" })
PHP
Construct client as shown in the PHP setup, then call the operations:
$case = $client->Case()->load(["id" => 1]);
$created = $client->Case()->create(["description" => "example", "details" => [], "externalId" => "example"]);
Python
Construct client as shown in the Python setup, then call the operations:
case = client.Case().load({"id": 1})
created = client.Case().create({ "description": "example", "details": {}, "externalId": "example" })
Ruby
Construct client as shown in the Ruby setup, then call the operations:
case_ = client.Case.load({ "id" => 1 })
created = client.Case.create({ "description" => "example", "details" => {}, "externalId" => "example" })
TypeScript
Construct client as shown in the TypeScript setup, then call the operations:
const case_ = await client.Case().load({ id: 1 })
const created = await client.Case().create({ description: "example", details: {}, externalId: "example" })
Fields
| Field | Type | Required | Description |
|---|---|---|---|
createdAt |
string |
Yes | Timestamp when the case was created. |
description |
string |
No | The description of the request. |
details |
object |
No | Details related to the case. |
externalId |
string |
No | Partner-created identifier for this case, if applicable. |
id |
integer |
Yes | Unique identifier of the case. |
messages |
array |
Yes | List of messages associated with this case. |
profileId |
integer |
Yes | The profile ID associated with this case. |
reference |
object |
Yes | Reference information linking the case to a related entity. |
status |
string |
Yes | The current status of the support case. |
subType |
string |
No | The sub-type of the support case. |
subject |
string |
No | The subject of the case. |
type |
string |
Yes | The type of the support case. |
updatedAt |
string |
No | Timestamp when the case was last updated. |
create
POST /cases
Operation ID: caseCreate.
Authentication: bearer token (ClientCredentialsToken).
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
X-External-Correlation-Id |
header |
string (uuid) |
No | Optional UUID for correlating requests across systems. If provided, Wise echoes it back in the response. Maximum 36 characters. Learn more. |
Request body
application/json
| Property | Type | Required | Description |
|---|---|---|---|
description |
string |
No | The description of the request. The maximum size of the description is 65,535 characters. If additional characters are sent, the field will be truncated. |
details |
object |
No | Details related to the case. |
details.profileId |
integer,null (int64) |
No | ID of the profile the case relates to. Can also be null. |
details.transferId |
integer,null (int64) |
No | ID of the transfer the case relates to. Can also be null. |
details.userId |
integer (int64) |
No | ID of the user the case relates to. Can not be null. |
externalId |
string |
No | An ID provided by the external partner for partner internal tracking. |
subject |
string |
No | The subject of the case. Do not include PII in the subject of cases. |
type |
string |
No | Type of the case. Value must be GENERAL_ENQUIRY. More case types will be added in the future. |
Responses
200: Created case
application/json
| Property | Type | Required | Description |
|---|---|---|---|
createdAt |
string (date-time) |
No | When the case was originally created. |
externalId |
string |
No | An ID provided by the external partner for partner internal tracking. |
id |
integer (int64) |
No | Case ID. Generated by Wise. |
status |
enum: CREATING, PENDING |
No | Status of the case |
type |
enum: GENERAL_ENQUIRY |
No | Type of the case. More case types will be added in the future. |
updatedAt |
string (date-time) |
No | When the case was last updated. |
429: Rate limit exceeded. Retry after the number of seconds specified in the Retry-After header
application/json
The response is object.
load
GET /cases/{caseId}
Operation ID: caseGet.
Authentication: bearer token (ClientCredentialsToken).
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
caseId |
path |
integer (int64) |
Yes | The unique identifier of the case. |
X-External-Correlation-Id |
header |
string (uuid) |
No | Optional UUID for correlating requests across systems. If provided, Wise echoes it back in the response. Maximum 36 characters. Learn more. |
Responses
200: Case details retrieved successfully
application/json
| Property | Type | Required | Description |
|---|---|---|---|
createdAt |
string (date-time) |
Yes | Timestamp when the case was created. Format: ISO 8601 datetime without timezone (YYYY-MM-DDTHH:mm:ss.SSS). |
externalId |
string |
No | Partner-created identifier for this case, if applicable. |
id |
integer (int64) |
Yes | Unique identifier of the case. |
messages |
array of object |
Yes | List of messages associated with this case. |
messages[].author |
enum: WISE_SYSTEM, PARTNER, WISE_AGENT |
Yes | The author of the case message. |
messages[].caseId |
integer (int64) |
Yes | The ID of the case this message belongs to. |
messages[].content |
object or object or object |
Yes | The content of a case message. The structure varies based on the message type: - attributes: Present in *_REQUEST messages. Contains dynamic attributes defining required information. - submissionData: Present in *_SUBMISSION messages. Contains partner-submitted data. - text: Present in FREEFORM messages. Contains free text conversation. |
messages[].createdAt |
string (date-time) |
Yes | Timestamp when the message was created. Format: ISO 8601 datetime without timezone (YYYY-MM-DDTHH:mm:ss.SSS). |
messages[].id |
string (uuid) |
Yes | Unique identifier of the message (UUID v4). |
messages[].type |
enum: FREEFORM, RECIPIENT_LOCATION_HIT_REQUEST, REFERENCE_LOCATION_HIT_REQUEST, RECIPIENT_SANCTION_HIT_REQUEST, REFERENCE_SANCTION_HIT_REQUEST, DEPOSIT_SANCTION_HIT_REQUEST, ... |
Yes | The type of the case message. |
profileId |
integer (int64) |
Yes | The profile ID associated with this case. |
reference |
object |
No | Reference information linking the case to a related entity. |
reference.referenceId |
string |
Yes | |
reference.type |
enum: TRANSFER |
Yes | |
status |
enum: CREATING, IN_REVIEW, WAITING_CUSTOMER_INPUT, RESOLVED, FAILED |
Yes | The current status of the support case. |
subType |
enum: RECIPIENT_LOCATION_HIT, REFERENCE_LOCATION_HIT, RECIPIENT_SANCTION_HIT, REFERENCE_SANCTION_HIT, DEPOSIT_SANCTION_HIT |
No | The sub-type of the support case. |
type |
enum: SANCTIONS, GENERAL_ENQUIRY |
Yes | The type of the support case. |
updatedAt |
string (date-time) |
No | Timestamp when the case was last updated. Format: ISO 8601 datetime without timezone (YYYY-MM-DDTHH:mm:ss.SSS). |
401: Unauthorized - missing or invalid authentication
application/json
The response is object and object.
Example response:
{
"detail": "Authentication required",
"status": 401,
"title": "Unauthorized",
"type": "/errors/types/access"
}
403: Forbidden - insufficient permissions
application/json
The response is object and object.
Example response:
{
"code": "forbidden",
"detail": "Unauthorized",
"status": 403,
"title": "Forbidden",
"type": "/errors/types/access"
}
404: Not found - case does not exist
application/json
The response is object and object.
Example response:
{
"code": "resource_not_found",
"detail": "case not found: 12345678",
"instance": "/public/v2/cases/12345678",
"status": 404,
"title": "Not Found",
"type": "/errors/types/domain"
}
429: Rate limit exceeded. Retry after the number of seconds specified in the Retry-After header
application/json
The response is object.