Telnyx Number Reputation Settings API
Manage Number Reputation enrollment and check frequency settings for an enterprise
Manage Number Reputation enrollment and check frequency settings for an enterprise
openapi: 3.1.0
info:
contact:
email: support@telnyx.com
description: Telnyx provides global communications and connectivity APIs for developers — including SIP trunking, programmable voice, SMS, MMS, WhatsApp Business Messaging, Call Control, Fax, Wireless (IoT & eSIM), Phone Numbers (DID provisioning & porting), Emergency Services, and Network APIs for private interconnects and edge connectivity. Build, scale, and manage voice, messaging, and data networks with Telnyx's carrier-grade global infrastructure and API-first platform.
title: Telnyx Access Tokens Number Reputation Settings API
version: 2.0.0
x-endpoint-cost: light
servers:
- description: Version 2.0.0 of the Telnyx API
url: https://api.telnyx.com/v2
security:
- bearerAuth: []
tags:
- description: Manage Number Reputation enrollment and check frequency settings for an enterprise
name: Number Reputation Settings
paths:
/enterprises/{enterprise_id}/reputation:
delete:
description: 'Disable Number Reputation for an enterprise.
This will:
- Delete the reputation settings record
- Log the deletion for audit purposes
- Stop all future automated reputation checks
**Note:** Can only be performed on `approved` reputation settings.'
operationId: DisableReputationSettings
parameters:
- $ref: '#/components/parameters/EnterpriseId'
responses:
'204':
description: Reputation settings disabled successfully
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'404':
$ref: '#/components/responses/NotFound'
summary: Disable Number Reputation
tags:
- Number Reputation Settings
x-latency-category: responsive
get:
description: 'Retrieve the current Number Reputation settings for an enterprise.
Returns the enrollment status (`pending`, `approved`, `rejected`, `deleted`), check frequency, and any rejection reasons.
Returns `404` if reputation has not been enabled for this enterprise.'
operationId: GetReputationSettings
parameters:
- $ref: '#/components/parameters/EnterpriseId'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/EnterpriseReputationPublicWrapped'
description: Reputation settings
'401':
$ref: '#/components/responses/Unauthorized'
'404':
content:
application/json:
schema:
$ref: '#/components/schemas/branded-calling_ErrorResponse'
description: Reputation settings not found for this enterprise
summary: Get reputation settings
tags:
- Number Reputation Settings
x-latency-category: responsive
post:
description: 'Enable Number Reputation service for an enterprise.
**Requirements:**
- Signed LOA (Letter of Authorization) document ID
- Reputation check frequency (defaults to `business_daily`)
- Number Reputation Terms of Service must be accepted
**Flow:**
1. Registers the enterprise for reputation monitoring
2. Creates reputation settings with `pending` status
3. Awaits admin approval before monitoring begins
**Resubmission After Rejection:**
If a previously rejected record exists, this endpoint will delete it and create a new `pending` record.
**Available Frequencies:**
- `business_daily` — Monday–Friday
- `daily` — Every day
- `weekly` — Once per week
- `biweekly` — Once every two weeks
- `monthly` — Once per month
- `never` — Manual refresh only'
operationId: EnableReputationSettings
parameters:
- $ref: '#/components/parameters/EnterpriseId'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/EnterpriseReputationCreate'
required: true
responses:
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/EnterpriseReputationPublicWrapped'
description: Reputation settings created (pending admin approval)
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'404':
$ref: '#/components/responses/NotFound'
'409':
content:
application/json:
schema:
$ref: '#/components/schemas/branded-calling_ErrorResponse'
description: Reputation settings already exist for this enterprise
summary: Enable Number Reputation
tags:
- Number Reputation Settings
x-latency-category: responsive
/enterprises/{enterprise_id}/reputation/frequency:
patch:
description: 'Update how often reputation data is automatically refreshed.
**Note:** The enterprise must have `approved` reputation settings. Updating frequency on `pending` or `rejected` settings will return an error.
**Available Frequencies:**
- `business_daily` — Monday–Friday
- `daily` — Every day including weekends
- `weekly` — Once per week
- `biweekly` — Once every two weeks
- `monthly` — Once per month
- `never` — Manual refresh only (no automatic checks)'
operationId: UpdateReputationFrequency
parameters:
- $ref: '#/components/parameters/EnterpriseId'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/EnterpriseReputationUpdateFrequency'
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/EnterpriseReputationPublicWrapped'
description: Reputation frequency updated
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'404':
$ref: '#/components/responses/NotFound'
summary: Update reputation check frequency
tags:
- Number Reputation Settings
x-latency-category: responsive
components:
schemas:
EnterpriseReputationCreate:
properties:
check_frequency:
default: business_daily
description: Frequency for automatically refreshing reputation data
enum:
- business_daily
- daily
- weekly
- biweekly
- monthly
- never
type: string
loa_document_id:
description: ID of the signed Letter of Authorization (LOA) document uploaded to the document service
example: doc_01HXYZ1234ABCDEF
maxLength: 255
minLength: 1
type: string
required:
- loa_document_id
type: object
EnterpriseReputationPublicWrapped:
properties:
data:
$ref: '#/components/schemas/EnterpriseReputationPublic'
type: object
EnterpriseReputationUpdateFrequency:
properties:
check_frequency:
description: New frequency for refreshing reputation data
enum:
- business_daily
- daily
- weekly
- biweekly
- monthly
- never
type: string
required:
- check_frequency
type: object
branded-calling_ErrorResponse:
properties:
errors:
items:
$ref: '#/components/schemas/TelnyxError'
type: array
type: object
EnterpriseReputationPublic:
properties:
check_frequency:
description: Frequency for refreshing reputation data
enum:
- business_daily
- daily
- weekly
- biweekly
- monthly
- never
type: string
created_at:
description: When the reputation settings were created
format: date-time
type: string
enterprise_id:
description: ID of the associated enterprise
example: 6a09cdc3-8948-47f0-aa62-74ac943d6c58
format: uuid
type: string
loa_document_id:
description: ID of the signed LOA document
nullable: true
type: string
rejection_reasons:
description: Reasons for rejection (present when status is rejected)
items:
type: string
nullable: true
type: array
status:
description: Current enrollment status
enum:
- pending
- approved
- rejected
- deleted
type: string
updated_at:
description: When the reputation settings were last updated
format: date-time
type: string
type: object
TelnyxError:
properties:
code:
description: Telnyx error code
example: '10015'
type: string
detail:
description: Human-readable error detail
example: User has already agreed to Terms of Service version v1.0.0
type: string
meta:
properties:
url:
description: Link to error documentation
format: uri
type: string
type: object
source:
description: Reference to the field that caused the error
properties:
pointer:
description: JSON pointer (RFC6901) to the field that caused the error
example: /body/organization_type
type: string
type: object
title:
description: Short error title
example: Bad Request
type: string
required:
- code
- title
type: object
responses:
Unauthorized:
content:
application/json:
schema:
$ref: '#/components/schemas/branded-calling_ErrorResponse'
description: Unauthorized — missing or invalid API key
BadRequest:
content:
application/json:
schema:
$ref: '#/components/schemas/branded-calling_ErrorResponse'
description: Bad request — invalid input or validation error
NotFound:
content:
application/json:
schema:
$ref: '#/components/schemas/branded-calling_ErrorResponse'
description: Resource not found
parameters:
EnterpriseId:
description: Unique identifier of the enterprise (UUID)
in: path
name: enterprise_id
required: true
schema:
example: 6a09cdc3-8948-47f0-aa62-74ac943d6c58
format: uuid
type: string
securitySchemes:
bearerAuth:
scheme: bearer
type: http
branded-calling_bearerAuth:
description: API key passed as a Bearer token in the Authorization header
scheme: bearer
type: http
oauthClientAuth:
description: OAuth 2.0 authentication for Telnyx API and MCP integrations
flows:
authorizationCode:
authorizationUrl: https://api.telnyx.com/v2/oauth/authorize
refreshUrl: https://api.telnyx.com/v2/oauth/token
scopes:
admin: Administrative access to Telnyx resources
tokenUrl: https://api.telnyx.com/v2/oauth/token
clientCredentials:
scopes:
admin: Administrative access to Telnyx resources
tokenUrl: https://api.telnyx.com/v2/oauth/token
type: oauth2
outbound-voice-profiles_bearerAuth:
bearerFormat: JWT
scheme: bearer
type: http
pronunciation-dicts_bearerAuth:
description: Telnyx API v2 key. Obtain from https://portal.telnyx.com
scheme: bearer
type: http
stored-payment-transactions_bearerAuth:
bearerFormat: JWT
scheme: bearer
type: http