---
title: "Update a DIR to resolve an infringement concern"
method: PUT
path: "/dir/{dir_id}/infringement_update"
tags: ["Infringement Claims"]
---

# Update a DIR to resolve an infringement concern

`PUT /dir/{dir_id}/infringement_update`

Push a fix for a DIR that is `suspended` with an open infringement claim back into vetting. `POST /dir/{dir_id}/submit` is blocked while a claim is open, so this is the customer-callable path to update the DIR's content and re-certify before Telnyx adjudicates the claim. All four certification booleans must be `true`. Optional content fields (`display_name`, `logo_url`, `call_reasons`, `documents`) update the DIR; documents are append-only.

## Path parameters

- `dir_id` string, uuid, required

## Request body

- DirInfringementUpdateRequest
  - `certify_no_infringement` true, required — Must be `true`.
  - `certify_brand_is_accurate` true, required — Must be `true`.
  - `certify_no_shaft_content` true, required — Must be `true`.
  - `certify_ip_ownership` true, required — Must be `true`.
  - `infringement_resolution_notes` string, required — Explanation of how the infringement concern was addressed.
  - `display_name` string, nullable
  - `logo_url` string, nullable — Publicly accessible HTTPS URL (max 128 chars) to a 256x256 BMP logo (max 1 MB).
  - `call_reasons` string[], nullable
  - `documents` Document[], nullable — Append-only supporting documents to attach while resolving the claim (e.g. authorization or licensing proof).
    - `document_id` string, uuid, required — Id returned by the Telnyx Documents API after you upload the file (upload via `POST /v2/documents`; see https://developers.telnyx.com/api/documents).
    - `document_type` 'letter_of_authorization' | 'business_registration' | 'articles_of_incorporation' | 'tax_document' | 'ein_letter' | 'trademark_registration' | 'website_ownership' | 'business_license' | 'professional_license' | 'government_id' | 'utility_bill' | 'bank_statement' | 'other', required — Type of supporting document. Pick the closest match to what the file actually contains; `other` triggers manual vetting and may slow approval. The matching short_name reference list is at `GET /v2/dir/document_types`.
    - `description` string

## Response `200`

DIR updated and re-submitted for vetting.

- DirWrapped
  - `data` Dir, required
    - `id` string, uuid
    - `enterprise_id` string, uuid
    - `display_name` string
    - `reselling` boolean
    - `certify_brand_is_accurate` boolean
    - `certify_no_shaft_content` boolean
    - `certify_ip_ownership` boolean
    - `authorizer_name` string, nullable
    - `authorizer_email` string, email, nullable
    - `logo_url` string, uri, nullable
    - `call_reasons` CallReason[]
      - `reason` string
      - `created_at` string, date-time
    - `documents` Document[], nullable
      - `document_id` string, uuid, required — Id returned by the Telnyx Documents API after you upload the file (upload via `POST /v2/documents`; see https://developers.telnyx.com/api/documents).
      - `document_type` 'letter_of_authorization' | 'business_registration' | 'articles_of_incorporation' | 'tax_document' | 'ein_letter' | 'trademark_registration' | 'website_ownership' | 'business_license' | 'professional_license' | 'government_id' | 'utility_bill' | 'bank_statement' | 'other', required — Type of supporting document. Pick the closest match to what the file actually contains; `other` triggers manual vetting and may slow approval. The matching short_name reference list is at `GET /v2/dir/document_types`.
      - `description` string
    - `status` 'draft' | 'submitted' | 'in_review' | 'verified' | 'rejected' | 'unsuccessful' | 'suspended' | 'expired' | 'infringement_claimed' | 'permanently_rejected' — 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.
    - `rejection_reasons` RejectionReason[], nullable — Populated when `status` is `rejected`; cleared on `/submit` or successful approval.
      - `code` string
      - `title` string
      - `detail` string
      - `message` string, nullable — Customer-visible free-text comment from the Telnyx vetting team. Only the first entry of `rejection_reasons` carries this; the rest are `null`.
    - `rejected_at` string, date-time, nullable
    - `created_at` string, date-time
    - `updated_at` string, date-time
    - `submitted_at` string, date-time, nullable
    - `verified_at` string, date-time, nullable
    - `expiring_at` string, date-time, nullable

## Other responses

- `400` — An error occurred. The response carries the standard Telnyx error envelope.
- `401` — An error occurred. The response carries the standard Telnyx error envelope.
- `404` — An error occurred. The response carries the standard Telnyx error envelope.
- `409` — An error occurred. The response carries the standard Telnyx error envelope.
- `422` — An error occurred. The response carries the standard Telnyx error envelope.

---

[API](https://skmtc.net/team-telnyx/apis/telnyx-api-2.md) · [All operations](https://skmtc.net/team-telnyx/apis/telnyx-api-2/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/team-telnyx/telnyx-api-2/versions/8f5f4e537994/schema)
