Skip to main content

kobana dunning protests

Commands of kobana dunning protests. Every global option (Global options) applies here.

CommandHTTPDescription
protests listGET /v1/protestsList protests
protests createPOST /v1/protestsCreate protest
protests getGET /v1/protests/{id}Get protest
protests updatePUT /v1/protests/{id}Update protest
protests cancelPOST /v1/protests/{id}/cancelRequest protest cancellation

protests list​

List protests

kobana dunning protests list [OPTIONS]

GET /v1/protests

Lists the organization’s protests with pagination and filters. Use include=person,charge to embed customer and charge summaries.

Query parameters

NameTypeRequiredDescription
pageintegernoPage number (starts at 1).
per_pageintegernoItems per page (max 100).
sort_bystringnoSort field (created_at | updated_at | amount | protest_date | sent_at). Values: createdAt, updatedAt, amount, protestDate, sentAt.
sort_orderstringnoSort direction (asc | desc). Values: asc, desc.
statusstringnoFilter by status (pending | sent | intimated | protested | paid | cancelled). Values: pending, sent, intimated, protested, paid, cancelled.
person_idstringnoFilter by customer (UUID).
charge_idstringnoFilter by charge (UUID).
includestringnoComma-separated relations to embed (person, charge).

Headers

NameTypeRequiredDescription
X-Workspace-IdstringnoWorkspace the call acts on (id or public_id, listed by GET /v1/workspaces). Optional while the organization has a single workspace; with two or more, omitting it is 400 WORKSPACE_REQUIRED. A workspace of another organization is 403 UNKNOWN_WORKSPACE.

Responses

HTTPDescription
200Paginated protest list.
404Resource not found or outside your organization.
413Request body larger than 2 MB.

protests create​

Create protest

kobana dunning protests create [OPTIONS]

POST /v1/protests

Creates a protest for a charge. The record starts as pending and is ONLY sent to the notary after human review and approval (legal workflow; protest.review_required event). Returns 409 if an active protest (pending/sent/intimated/protested) already exists for the same charge.

Headers

NameTypeRequiredDescription
X-Workspace-IdstringnoWorkspace the call acts on (id or public_id, listed by GET /v1/workspaces). Optional while the organization has a single workspace; with two or more, omitting it is 400 WORKSPACE_REQUIRED. A workspace of another organization is 403 UNKNOWN_WORKSPACE.

Request body

NameTypeRequiredDescription
person_idstring (uuid)yesProtested customer (UUID).
charge_idstring (uuid)yesProtested charge (UUID).
amountnumberyesAmount to protest (positive decimal number).
notarystringnoNotary office name.
notary_codestringnoNotary office code/identifier.
feesnumbernoNotary fees/costs (decimal number).
external_idstringnoIdentifier in YOUR system or the notary protocol number.
custom_dataobjectnoAPI-consumer custom metadata. Limits: 64 KB serialized and 16 nesting levels.
custom_metadataobjectnoUser metadata (free-form JSON object, read-write). See custom_data for the legacy field on core resources.
tagsarray<string>noFree-form tags.

More fields and nested objects: kobana schema dunning.protests.create.

Responses

HTTPDescription
201Protest created (awaiting human review).
400Invalid request (validation error).
404Resource not found or outside your organization.
409Conflict with the current resource state (or reused idempotency key).
413Request body larger than 2 MB.

protests get​

Get protest

kobana dunning protests get [ID] [OPTIONS]

GET /v1/protests/{id}

Returns a protest by ID, with customer and charge summaries.

Path arguments: id

Headers

NameTypeRequiredDescription
X-Workspace-IdstringnoWorkspace the call acts on (id or public_id, listed by GET /v1/workspaces). Optional while the organization has a single workspace; with two or more, omitting it is 400 WORKSPACE_REQUIRED. A workspace of another organization is 403 UNKNOWN_WORKSPACE.

Responses

HTTPDescription
200Protest found.
404Resource not found or outside your organization.
413Request body larger than 2 MB.

protests update​

Update protest

kobana dunning protests update [ID] [OPTIONS]

PUT /v1/protests/{id}

Updates a protest (partial). This is the approval step of the legal workflow: it requires the review (approve) permission and is where status advances from pending to sent/intimated/protested after human review.

Path arguments: id

Headers

NameTypeRequiredDescription
X-Workspace-IdstringnoWorkspace the call acts on (id or public_id, listed by GET /v1/workspaces). Optional while the organization has a single workspace; with two or more, omitting it is 400 WORKSPACE_REQUIRED. A workspace of another organization is 403 UNKNOWN_WORKSPACE.

Request body

NameTypeRequiredDescription
statusstringnoStatus (pending = awaiting mandatory human review, sent = sent to the notary, intimated = debtor notified, protested = protested, paid = paid, cancelled = cancelled). Values: pending, sent, intimated, protested, paid, cancelled.
notarystringnoNotary office name.
notary_codestringnoNotary office code/identifier.
feesnumbernoNotary fees/costs (decimal number).
external_idstringnoIdentifier in YOUR system or the notary protocol number.
sent_atstring (date-time)noDate sent to the notary (ISO 8601).
intimation_datestring (date-time)noDebtor notification date (ISO 8601).
protest_datestring (date-time)noProtest registration date (ISO 8601).
payment_datestring (date-time)noPayment date at the notary (ISO 8601).
cancellation_datestring (date-time)noProtest cancellation date (ISO 8601).
response_dataobjectnoRaw notary response (integration payload).
custom_dataobjectnoAPI-consumer custom metadata. Limits: 64 KB serialized and 16 nesting levels.
custom_metadataobjectnoUser metadata (free-form JSON object, read-write). See custom_data for the legacy field on core resources.
custom_metadata_modestringnoHow the custom_metadata sent is reconciled with the stored value: replace (default) replaces the whole object; merge deep-merges — nested objects merge, scalars and arrays replace the key, and a key sent as null is stored as null (not removed). Update only. Values: replace, merge.
tagsarray<string>noFree-form tags.

More fields and nested objects: kobana schema dunning.protests.update.

Responses

HTTPDescription
200Protest updated.
400Invalid request (validation error).
404Resource not found or outside your organization.
413Request body larger than 2 MB.

protests cancel​

Request protest cancellation

kobana dunning protests cancel [ID] [OPTIONS]

POST /v1/protests/{id}/cancel

Requests cancellation of a protest. Not allowed for protests already cancelled or paid; status becomes cancelled and the reason (if sent) is stored in responseData.cancellationReason.

Path arguments: id

Headers

NameTypeRequiredDescription
X-Workspace-IdstringnoWorkspace the call acts on (id or public_id, listed by GET /v1/workspaces). Optional while the organization has a single workspace; with two or more, omitting it is 400 WORKSPACE_REQUIRED. A workspace of another organization is 403 UNKNOWN_WORKSPACE.

Request body

NameTypeRequiredDescription
cancellation_reasonstringnoCancellation reason.

More fields and nested objects: kobana schema dunning.protests.cancel.

Responses

HTTPDescription
200Cancellation recorded; protest updated.
400Invalid request (validation error).
404Resource not found or outside your organization.
413Request body larger than 2 MB.