Get Debt
curl --request GET \
--url https://getbill.io/external-api/v1/debts/{id} \
--header 'Authorization: <authorization>'import requests
url = "https://getbill.io/external-api/v1/debts/{id}"
headers = {"Authorization": "<authorization>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<authorization>'}};
fetch('https://getbill.io/external-api/v1/debts/{id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://getbill.io/external-api/v1/debts/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: <authorization>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://getbill.io/external-api/v1/debts/{id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<authorization>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://getbill.io/external-api/v1/debts/{id}")
.header("Authorization", "<authorization>")
.asString();require 'uri'
require 'net/http'
url = URI("https://getbill.io/external-api/v1/debts/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<authorization>'
response = http.request(request)
puts response.read_body{
"error": false,
"message": "Success",
"data": {
"id": "abc123def456",
"civility": "Mr",
"firstname": "John",
"lastname": "Doe",
"phone": "+33123456789",
"email": "john.doe@example.com",
"birthdate": "1985-03-15",
"amount": 1250.00,
"amount_text": "1250.00",
"currency": "EUR",
"object": "Outstanding invoice #INV-2024-001",
"internal_id": "DEBT-2024-001",
"invoice_reference": "INV-2024-001",
"debtor_reference": "DEB-DOE-001",
"invoice_date": "2023-12-01",
"due_date": "2023-12-31",
"address": "123 Main Street, 75001 Paris, France",
"street_address": "Main Street",
"street_number": "123",
"postal_code": "75001",
"city": "Paris",
"country": "FR",
"status": "status.default.in_progress",
"timeline_id": "YOUR_TIMELINE_ID",
"nb_reminders": 3,
"nb_answered": 1,
"summary": "Customer acknowledged debt, payment plan in discussion",
"iban": "FR1420041010050500013M02606",
"followups_count": 5,
"company": "Acme Corp",
"debtor_company": "ACME Corporation",
"payment_link": "https://pay.example.com/debt/abc123",
"import_date": "2023-11-15T10:30:00+00:00",
"last_timeline_restart": "2023-12-01T09:00:00+00:00",
"payment_plan_active": false,
"plan_start_date": null
}
}
Debts API
Get Debt
Retrieve detailed information about a specific debt
GET
/
external-api
/
v1
/
debts
/
{id}
Get Debt
curl --request GET \
--url https://getbill.io/external-api/v1/debts/{id} \
--header 'Authorization: <authorization>'import requests
url = "https://getbill.io/external-api/v1/debts/{id}"
headers = {"Authorization": "<authorization>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<authorization>'}};
fetch('https://getbill.io/external-api/v1/debts/{id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://getbill.io/external-api/v1/debts/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: <authorization>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://getbill.io/external-api/v1/debts/{id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<authorization>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://getbill.io/external-api/v1/debts/{id}")
.header("Authorization", "<authorization>")
.asString();require 'uri'
require 'net/http'
url = URI("https://getbill.io/external-api/v1/debts/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<authorization>'
response = http.request(request)
puts response.read_body{
"error": false,
"message": "Success",
"data": {
"id": "abc123def456",
"civility": "Mr",
"firstname": "John",
"lastname": "Doe",
"phone": "+33123456789",
"email": "john.doe@example.com",
"birthdate": "1985-03-15",
"amount": 1250.00,
"amount_text": "1250.00",
"currency": "EUR",
"object": "Outstanding invoice #INV-2024-001",
"internal_id": "DEBT-2024-001",
"invoice_reference": "INV-2024-001",
"debtor_reference": "DEB-DOE-001",
"invoice_date": "2023-12-01",
"due_date": "2023-12-31",
"address": "123 Main Street, 75001 Paris, France",
"street_address": "Main Street",
"street_number": "123",
"postal_code": "75001",
"city": "Paris",
"country": "FR",
"status": "status.default.in_progress",
"timeline_id": "YOUR_TIMELINE_ID",
"nb_reminders": 3,
"nb_answered": 1,
"summary": "Customer acknowledged debt, payment plan in discussion",
"iban": "FR1420041010050500013M02606",
"followups_count": 5,
"company": "Acme Corp",
"debtor_company": "ACME Corporation",
"payment_link": "https://pay.example.com/debt/abc123",
"import_date": "2023-11-15T10:30:00+00:00",
"last_timeline_restart": "2023-12-01T09:00:00+00:00",
"payment_plan_active": false,
"plan_start_date": null
}
}
Overview
This endpoint returns comprehensive information about a single debt, including all related data such as followup history, payment status, and debtor details.Authentication
Requires a valid OAuth 2.0 access token with thedebts:read scope.
Request
string
required
Bearer token for authentication
string
required
The encrypted ID of the debt to retrieve
Example Request
curl -X GET "/external-api/v1/debts/abc123def456" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/json"
const debtId = 'abc123def456';
const response = await fetch(`/external-api/v1/debts/${debtId}`, {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_ACCESS_TOKEN',
'Content-Type': 'application/json'
}
});
const debt = await response.json();
debt_id = 'abc123def456'
headers = {
'Authorization': 'Bearer YOUR_ACCESS_TOKEN',
'Content-Type': 'application/json'
}
response = requests.get(
f'/external-api/v1/debts/{debt_id}',
headers=headers
)
debt = response.json()
Response
boolean
Always
false for successful requestsstring
Success message
object
Complete debt information
Show debt object
Show debt object
string
Encrypted debt identifier
boolean
Whether the debt belongs to a group containing multiple non-archived debts
array
Encrypted IDs of the debts in the group. For an ungrouped debt, this contains only its own ID.
string
Civility/title (e.g., “Mr”, “Ms”)
string
Debtor’s first name
string
Debtor’s last name
string
Debtor’s phone number (E.164 format)
array
Non-empty only when a phone has a communication restriction. For a costly destination not allowed by its GetBill campaign configuration, each item contains
code, message, field, and the blocked phone channels. Email and postal reminders are not included because they remain eligible.string
Debtor’s email address
string
Debtor’s birth date (YYYY-MM-DD format)
number
Debt amount
string
Debt amount as text
string
Currency code (e.g., “EUR”, “USD”)
string
Description of the debt object/reason
string
Your internal reference ID for this debt
string
Invoice reference number
string
Your reference for the debtor
string
Original invoice date (YYYY-MM-DD format)
string
Payment due date (YYYY-MM-DD format)
string
Full address (legacy field)
string
Street name and type
string
Street number
string
Postal/ZIP code
string
City name
string
Country code or name
string
Current debt status. Can be set to
status.default.paid, status.default.in_progress, status.default.on_hold, status.default.failed, or status.default.archived via the Update Debt endpoint.string
Encrypted timeline ID associated with this debt (null if no timeline)
integer
Number of reminders sent
integer
Number of responses received
string
Brief summary or notes about the debt
string
IBAN for payment
integer
Number of followups for this debt
string
Creditor company name (only present for debt collection agencies collecting on behalf of other companies)
string
Debtor’s company name (for B2B debts)
string
Custom payment link URL
string
Creation/import timestamp (ISO 8601 format). Read-only - automatically set by the system.
string
Timestamp of last timeline restart (ISO 8601 format). Read-only - managed by the system based on timeline workflows.
boolean
Whether the debt has an active payment plan
string
Payment plan start date (YYYY-MM-DD format), null if no plan
Success Response
{
"error": false,
"message": "Success",
"data": {
"id": "abc123def456",
"civility": "Mr",
"firstname": "John",
"lastname": "Doe",
"phone": "+33123456789",
"email": "john.doe@example.com",
"birthdate": "1985-03-15",
"amount": 1250.00,
"amount_text": "1250.00",
"currency": "EUR",
"object": "Outstanding invoice #INV-2024-001",
"internal_id": "DEBT-2024-001",
"invoice_reference": "INV-2024-001",
"debtor_reference": "DEB-DOE-001",
"invoice_date": "2023-12-01",
"due_date": "2023-12-31",
"address": "123 Main Street, 75001 Paris, France",
"street_address": "Main Street",
"street_number": "123",
"postal_code": "75001",
"city": "Paris",
"country": "FR",
"status": "status.default.in_progress",
"timeline_id": "YOUR_TIMELINE_ID",
"nb_reminders": 3,
"nb_answered": 1,
"summary": "Customer acknowledged debt, payment plan in discussion",
"iban": "FR1420041010050500013M02606",
"followups_count": 5,
"company": "Acme Corp",
"debtor_company": "ACME Corporation",
"payment_link": "https://pay.example.com/debt/abc123",
"import_date": "2023-11-15T10:30:00+00:00",
"last_timeline_restart": "2023-12-01T09:00:00+00:00",
"payment_plan_active": false,
"plan_start_date": null
}
}
Error Responses
{
"error": true,
"message": "Authentication credentials are missing or invalid",
"code": 401
}
{
"error": true,
"message": "Access denied to this debt",
"code": 403
}
{
"error": true,
"message": "Debt not found or invalid ID",
"code": 404
}
Related Endpoints
- List Debts - Get all debts for your company
- Update Debt - Modify debt information
- Delete Debt - Remove a debt
- Get Followups by Debt - Get followups for this debt