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 IPs 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: IP operations name: IPs paths: /ips: get: description: Get all IPs belonging to the user that match the given filters. operationId: ListIps parameters: - $ref: '#/components/parameters/connections_PageConsolidated' - description: 'Consolidated filter parameter (deepObject style). Originally: filter[connection_id], filter[ip_address], filter[port]' explode: true in: query name: filter schema: properties: connection_id: description: ID of the IP Connection to which this IP should be attached. type: string ip_address: description: IP adddress represented by this resource. example: 192.168.0.0 type: string port: description: Port to use when connecting to this IP. example: 5060 type: integer type: object style: deepObject responses: '200': $ref: '#/components/responses/ListIpsResponse' '400': $ref: '#/components/responses/connections_BadRequestResponse' '401': $ref: '#/components/responses/UnauthenticatedResponse' '403': $ref: '#/components/responses/connections_UnauthorizedResponse' summary: List Ips tags: - IPs x-endpoint-cost: medium x-group-parameters: 'true' x-latency-category: responsive post: description: Create a new IP object. operationId: CreateIp requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateIpRequest' responses: '201': $ref: '#/components/responses/IpResponse' '401': $ref: '#/components/responses/UnauthenticatedResponse' '403': $ref: '#/components/responses/connections_UnauthorizedResponse' '422': $ref: '#/components/responses/connections_UnprocessableEntityResponse' summary: Create an Ip tags: - IPs x-endpoint-cost: medium x-latency-category: responsive /ips/{id}: delete: description: Delete an IP. operationId: DeleteIp parameters: - $ref: '#/components/parameters/IpId' responses: '200': $ref: '#/components/responses/IpResponse' '400': $ref: '#/components/responses/connections_BadRequestResponse' '401': $ref: '#/components/responses/UnauthenticatedResponse' '403': $ref: '#/components/responses/connections_UnauthorizedResponse' '404': $ref: '#/components/responses/connections_NotFoundResponse' summary: Delete an Ip tags: - IPs x-latency-category: responsive get: description: Return the details regarding a specific IP. operationId: RetrieveIp parameters: - $ref: '#/components/parameters/IpId' responses: '200': $ref: '#/components/responses/IpResponse' '400': $ref: '#/components/responses/connections_BadRequestResponse' '401': $ref: '#/components/responses/UnauthenticatedResponse' '403': $ref: '#/components/responses/connections_UnauthorizedResponse' '404': $ref: '#/components/responses/connections_NotFoundResponse' summary: Retrieve an Ip tags: - IPs x-latency-category: responsive patch: description: Update the details of a specific IP. operationId: UpdateIp parameters: - $ref: '#/components/parameters/IpId' requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateIpRequest' responses: '200': $ref: '#/components/responses/IpResponse' '401': $ref: '#/components/responses/UnauthenticatedResponse' '403': $ref: '#/components/responses/connections_UnauthorizedResponse' '404': $ref: '#/components/responses/connections_NotFoundResponse' '422': $ref: '#/components/responses/connections_UnprocessableEntityResponse' summary: Update an Ip tags: - IPs x-latency-category: responsive components: responses: connections_BadRequestResponse: content: application/json: examples: missingParameter: value: errors: - code: '10015' detail: The request failed because it was not well-formed. meta: url: https://developers.telnyx.com/docs/overview/errors/10015 source: pointer: / title: Bad Request schema: $ref: '#/components/schemas/ErrorResponse' description: Bad request, the request was unacceptable, often due to missing a required parameter. connections_NotFoundResponse: content: application/json: examples: notFound: value: errors: - code: '10005' detail: The requested resource or URL could not be found. meta: url: https://developers.telnyx.com/docs/overview/errors/10005 source: pointer: / title: Resource not found schema: $ref: '#/components/schemas/ErrorResponse' description: The requested resource doesn't exist. ListIpsResponse: content: application/json: schema: properties: data: items: $ref: '#/components/schemas/Ip' type: array meta: $ref: '#/components/schemas/connections_PaginationMeta' title: List Ips Response type: object description: Successful response with a list of IPs. UnauthenticatedResponse: content: application/json: examples: Authentication Failed: value: errors: - code: '10009' detail: Could not understand the provided credentials. meta: url: https://developers.telnyx.com/docs/overview/errors/10009 title: Authentication failed schema: $ref: '#/components/schemas/ErrorResponse' description: Unauthorized connections_UnauthorizedResponse: content: application/json: examples: notAuthorized: value: errors: - code: '10010' detail: You are not authorized to access the requested resource. meta: url: https://developers.telnyx.com/docs/overview/errors/10010 source: pointer: / title: Not authorized schema: $ref: '#/components/schemas/ErrorResponse' description: The user doesn't have the required permissions to perform the requested action. connections_UnprocessableEntityResponse: content: application/json: examples: unprocessableEntity: value: errors: - code: '10015' detail: 'Invalid dnis_format: test, was provided. Acceptable formats are +e164, e164, national, sip_username' meta: url: https://developers.telnyx.com/docs/overview/errors/10015 source: pointer: /inbound/dnis_number_format title: Bad Request schema: $ref: '#/components/schemas/ErrorResponse' description: The request was well-formed but was unable to be followed due to semantic errors. IpResponse: content: application/json: schema: properties: data: $ref: '#/components/schemas/Ip' title: Ip Response type: object description: Successful response with details about an IP. parameters: connections_PageConsolidated: description: 'Consolidated page parameter (deepObject style). Originally: page[size], page[number]' explode: true in: query name: page schema: properties: number: default: 1 description: The page number to load minimum: 1 type: integer size: default: 250 description: The size of the page maximum: 250 minimum: 1 type: integer type: object style: deepObject IpId: description: Identifies the type of resource. in: path name: id required: true schema: example: 6a09cdc3-8948-47f0-aa62-74ac943d6c58 format: uuid type: string schemas: UpdateIpRequest: example: connection_id: 6a09cdc3-8948-47f0-aa62-74ac943d6c58 ip_address: 192.168.0.0 port: 5060 properties: connection_id: description: ID of the IP Connection to which this IP should be attached. type: string ip_address: description: IP adddress represented by this resource. example: 192.168.0.0 type: string port: default: 5060 description: Port to use when connecting to this IP. example: 5060 type: integer required: - ip_address title: Update Ip Request type: object CreateIpRequest: example: connection_id: 6a09cdc3-8948-47f0-aa62-74ac943d6c58 ip_address: 192.168.0.0 port: 5060 properties: connection_id: description: ID of the IP Connection to which this IP should be attached. type: string ip_address: description: IP adddress represented by this resource. example: 192.168.0.0 type: string port: default: 5060 description: Port to use when connecting to this IP. example: 5060 type: integer required: - ip_address title: Create Ip Request type: object ErrorResponse: properties: errors: items: properties: code: type: string detail: type: string meta: properties: url: format: uri type: string type: object source: properties: pointer: type: string type: object title: type: string type: object type: array type: object connections_PaginationMeta: properties: page_number: example: 2 type: integer page_size: example: 25 type: integer total_pages: example: 3 type: integer total_results: example: 55 type: integer title: Pagination Meta type: object Ip: example: connection_id: '3456789987654' created_at: '2018-02-02T22:25:27.521Z' id: 6a09cdc3-8948-47f0-aa62-74ac943d6c58 ip_address: 192.168.0.0 port: 5060 record_type: ip updated_at: '2018-02-02T22:25:27.521Z' properties: connection_id: description: ID of the IP Connection to which this IP should be attached. type: string created_at: description: ISO 8601 formatted date indicating when the resource was created. example: '2018-02-02T22:25:27.521Z' type: string id: description: Identifies the type of resource. example: '1293384261075731499' type: string x-format: int64 ip_address: description: IP adddress represented by this resource. example: 192.168.0.0 type: string port: default: 5060 description: Port to use when connecting to this IP. example: 5060 type: integer record_type: description: Identifies the type of the resource. example: ip type: string updated_at: description: ISO 8601 formatted date indicating when the resource was updated. example: '2018-02-02T22:25:27.521Z' type: string title: Ip type: object 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