List DIRs in an enterprise
Return the DIRs (Display Identity Records) belonging to a single enterprise. Pagination is JSON:API style (page[number], page[size], max 250). Supports filter[] query params: filter[status], filter[display_name][contains], filter[call_reason][contains], plus the renewal-window filters filter[expiring_at][gte] / filter[expiring_at][lte] and the convenience filter[expiring_within_days] (mutually exclusive with the explicit gte/lte form). Sortable by created_at, updated_at, display_name, status, submitted_at, verified_at, expiring_at (prefix - for descending; default -created_at).
Path parameters
The enterprise id. Lowercase UUID.
Query parameters
1-based page number. Out-of-range values return an empty page with correct meta.
Items per page. Maximum 250; values above are clamped to 250.
Sort field. Allowed: created_at, updated_at, display_name, status, submitted_at, verified_at, expiring_at. Prefix with - for descending. Default -created_at.
Return only DIRs whose expiring_at is at or after this ISO-8601 timestamp.
Return only DIRs whose expiring_at is at or before this ISO-8601 timestamp.
Convenience: returns DIRs whose expiring_at falls within the next N days (1–365). Equivalent to setting filter[expiring_at][gte]=<now> + filter[expiring_at][lte]=<now+N>. Mutually exclusive with the explicit [gte]/[lte] filters - combining returns 400.
DIR lifecycle status.
- draft - newly created; editable; not yet submitted.
- submitted / in_review - Telnyx is reviewing.
- verified - approved; phone numbers may be attached.
- rejected - Telnyx rejected this submission; rejection_reasons is populated; customer can edit and resubmit.
- unsuccessful - system-side error during processing; customer can edit and resubmit.
- suspended - temporarily disabled (e.g. by an active infringement claim).
- expired - verification expired; customer must resubmit.
- infringement_claimed - a trademark/impersonation claim is open against this DIR.
- permanently_rejected - terminal; cannot be resubmitted.
Filter by DIR status.
Case-insensitive partial match on display name.
Case-insensitive partial match on call reason.
Response
Paginated list of DIRs.
Example response
{
"data": [
{
"authorizer_email": "sam@acmeplumbing.example.com",
"authorizer_name": "Sam Owner",
"call_reasons": [
{
"created_at": "2026-04-26T18:06:51.940749Z",
"reason": "Appointment reminders"
}
],
"certify_brand_is_accurate": true,
"certify_ip_ownership": true,
"certify_no_shaft_content": true,
"created_at": "2026-04-26T18:06:51.940749Z",
"display_name": "Acme Plumbing",
"documents": [
{
"description": "Certificate of incorporation.",
"document_id": "2a7e8337-e803-4057-a4ae-26c40eb0bc6c",
"document_type": "business_registration"
}
],
"enterprise_id": "4a6192a4-573d-446d-b3ce-aff9117272a6",
"expiring_at": "2027-04-26T18:07:29.537981Z",
"id": "16635d38-75a6-4481-82e8-69af60e05011",
"logo_url": "https://acmeplumbing.example.com/logo-256.bmp",
"rejection_reasons": [
{
"code": "documentation_incomplete",
"detail": "Provided documents do not establish business identity.",
"message": "Please re-upload a clearer scan of the certificate.",
"title": "Documentation incomplete"
}
],
"submitted_at": "2026-04-26T18:07:03.716411Z",
"updated_at": "2026-04-26T18:09:24.785211Z",
"verified_at": "2026-04-26T18:07:29.537926Z"
}
],
"meta": {
"page_number": 1,
"page_size": 20,
"total_pages": 3,
"total_results": 42
}
}