GET
List todos

Overview

The Todo Lists API allows you to retrieve and manage todo items including:
  • Agreements - Active payment plans with debtors
  • Debtor Requests - Portal submissions requiring human review (disputes, hardship declarations, payment plan proposals)
  • AI Detections - Items flagged by AI during calls (disputes, objections)
The legacy type names blocking_dispute and non_blocking_dispute are still accepted as query parameters and URL path segments for backward compatibility. However, all responses now use the canonical names debtor_request and ai_detection.

Todo Types

Agreements (agreement)

Payment plans reached with debtors, including:
  • Installment schedules
  • Payment tracking
  • Plan duration and start dates
  • Grouped debts (multiple debts under a single payment plan return extra fields: is_group, debt_count, total_amount, currency, debts)

Debtor Requests (debtor_request)

Items submitted by debtors through the portal. Collection is paused. Sub-types:

AI Detections (ai_detection)

Items flagged by AI during automated calls. Collection is not paused. Sub-types:

Dispute Statuses

  • suggested - Pending review
  • validated - Dispute has been validated
  • rejected - Dispute was rejected

List Todos

Query Parameters

Legacy type values blocking_dispute and non_blocking_dispute are automatically mapped to debtor_request and ai_detection.

Response

Grouped agreement fields

When an agreement covers multiple debts, the response includes additional fields:

Debtor Request sub-type fields

Depending on sub_type, debtor requests include different fields: portal_dispute: status, severity, title, description, theme, detected_content, ai_confidence, proof_files hardship: employment_status, is_temporary, expected_recovery_period, check_in_date, check_in_due payment_plan: monthly_amount, start_date, number_of_installments, first_payment_amount, debtor_message

AI Detection sub-type fields

ai_dispute: status, severity, title, description, theme, detected_content, ai_confidence, source, audio_url, followup_id, call_id objection: objection_type, detected_content, ai_confidence, severity, theme, audio_url, followup_id, call_id

Error Responses

Example: Processing Todos

Webhooks

You can configure webhooks to be notified when:
  • New disputes are detected
  • Agreements are created or modified
  • Dispute status changes
See the Webhooks documentation for more information.

Authentication

This endpoint requires a valid Bearer token with the debts:read scope.

Rate Limits

  • 1,000 requests per hour

Best Practices

  1. Process debtor requests first - These pause collection and need immediate attention
  2. Use period filters - Focus on recent todos to avoid processing old data
  3. Monitor agreement installments - Check for overdue payments regularly
  4. Include admin notes - Always document status changes for audit trail
  5. Use stats endpoint - Get a quick overview before fetching detailed lists
  6. Handle media URL expiry - Pre-signed URLs for audio/PDF expire after 1 hour; re-fetch if needed