PUT
/
external-api
/
v1
/
debtors
/
{id}
Update Debtor
curl --request PUT \
  --url https://getbill.io/external-api/v1/debtors/{id} \
  --header 'Authorization: <authorization>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "firstName": "<string>",
  "lastName": "<string>",
  "email": "<string>",
  "phone": "<string>",
  "address": "<string>",
  "dateOfBirth": "<string>"
}
'
{
  "error": false,
  "message": "Success",
  "data": {
    "data": {
      "id": "def456ghi789",
      "firstName": "John",
      "lastName": "Doe",
      "email": "john.newemail@example.com",
      "phone": "+33699999999",
      "address": "456 New Street, 75002 Paris, France",
      "dateOfBirth": "1985-03-15",
      "firstSeenAt": "2024-01-15 10:30:00",
      "lastSeenAt": "2024-01-20 14:22:00",
      "lastUpdatedAt": "2024-02-01 15:45:00",
      "totalDebtAmount": 2500.00,
      "totalPaidAmount": 750.00,
      "averageRepaymentScore": 65,
      "debtsCount": 3
    },
    "message": "Debtor updated successfully"
  }
}

Overview

This endpoint allows you to update debtor information. You can use either PUT (full update) or PATCH (partial update) methods.

Authentication

Requires a valid OAuth 2.0 access token with the debtors:write scope.

Request

Authorization
string
required
Bearer token for authentication

Path Parameters

id
string
required
The encrypted debtor ID

Request Body

All fields are optional. Only include the fields you want to update.
firstName
string
Debtor’s first name
lastName
string
Debtor’s last name
email
string
Debtor’s email address
phone
string
Debtor’s phone number (E.164 format recommended)
address
string
Debtor’s full address
dateOfBirth
string
Debtor’s date of birth (YYYY-MM-DD format)

Example Request

curl -X PUT "/external-api/v1/debtors/def456ghi789" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "email": "john.newemail@example.com",
    "phone": "+33699999999",
    "address": "456 New Street, 75002 Paris, France"
  }'

Response

error
boolean
Always false for successful requests
message
string
Success message
data
object
Response data wrapper

Success Response

{
  "error": false,
  "message": "Success",
  "data": {
    "data": {
      "id": "def456ghi789",
      "firstName": "John",
      "lastName": "Doe",
      "email": "john.newemail@example.com",
      "phone": "+33699999999",
      "address": "456 New Street, 75002 Paris, France",
      "dateOfBirth": "1985-03-15",
      "firstSeenAt": "2024-01-15 10:30:00",
      "lastSeenAt": "2024-01-20 14:22:00",
      "lastUpdatedAt": "2024-02-01 15:45:00",
      "totalDebtAmount": 2500.00,
      "totalPaidAmount": 750.00,
      "averageRepaymentScore": 65,
      "debtsCount": 3
    },
    "message": "Debtor updated successfully"
  }
}

Error Responses

{
  "error": true,
  "message": "Invalid dateOfBirth format. Use YYYY-MM-DD",
  "code": 400
}

Rate Limiting

This endpoint is subject to rate limiting. See the Rate Limits documentation for details. Rate Limit: 1,000 requests per hour