naftiko: 1.0.0-alpha2 info: label: Telnyx API — Phone Number Configurations description: 'Telnyx API — Phone Number Configurations. 11 operations. Lead operation: List phone numbers. Self-contained Naftiko capability covering one Telnyx business surface.' tags: - Telnyx - Phone Number Configurations created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: TELNYX_API_KEY: TELNYX_API_KEY capability: consumes: - type: http namespace: telnyx-phone-number-configurations baseUri: https://api.telnyx.com/v2 description: Telnyx API — Phone Number Configurations business capability. Self-contained, no shared references. resources: - name: phone_numbers path: /phone_numbers operations: - name: listphonenumbers method: GET description: List phone numbers outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: sort in: query type: string description: Specifies the sort order for results. If not given, results are sorted by created_at in descending order. - name: filter in: query type: object description: 'Consolidated filter parameter (deepObject style). Originally: filter[tag], filter[phone_number], filter[status], filter[country_iso_alpha2], filter[connection_i' - name: handle_messaging_profile_error in: query type: string description: Although it is an infrequent occurrence, due to the highly distributed nature of the Telnyx platform, it is possible that there will be an issue when loading in - name: phone_numbers-actions-verify_ownership path: /phone_numbers/actions/verify_ownership operations: - name: verifyphonenumberownership method: POST description: Verify ownership of phone numbers outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: phone_numbers-slim path: /phone_numbers/slim operations: - name: slimlistphonenumbers method: GET description: Slim List phone numbers outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: include_connection in: query type: boolean description: Include the connection associated with the phone number. - name: include_tags in: query type: boolean description: Include the tags associated with the phone number. - name: sort in: query type: string description: Specifies the sort order for results. If not given, results are sorted by created_at in descending order. - name: filter in: query type: object description: 'Consolidated filter parameter (deepObject style). Originally: filter[tag], filter[phone_number], filter[status], filter[country_iso_alpha2], filter[connection_i' - name: phone_numbers-voice path: /phone_numbers/voice operations: - name: listphonenumberswithvoicesettings method: GET description: List phone numbers with voice settings outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: sort in: query type: string description: Specifies the sort order for results. If not given, results are sorted by created_at in descending order. - name: filter in: query type: object description: 'Consolidated filter parameter (deepObject style). Originally: filter[phone_number], filter[connection_name], filter[customer_reference], filter[voice.usage_paym' - name: phone_numbers-id path: /phone_numbers/{id} operations: - name: deletephonenumber method: DELETE description: Delete a phone number outputRawFormat: json outputParameters: - name: result type: object value: $. - name: retrievephonenumber method: GET description: Retrieve a phone number outputRawFormat: json outputParameters: - name: result type: object value: $. - name: updatephonenumber method: PATCH description: Update a phone number outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: phone_numbers-id-actions-bundle_status_change path: /phone_numbers/{id}/actions/bundle_status_change operations: - name: phonenumberbundlestatuschange method: PATCH description: Change the bundle status for a phone number (set to being in a bundle or remove from a bundle) outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: phone_numbers-id-actions-enable_emergency path: /phone_numbers/{id}/actions/enable_emergency operations: - name: enablephonenumberemergency method: POST description: Enable emergency for a phone number outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: phone_numbers-id-voice path: /phone_numbers/{id}/voice operations: - name: getphonenumbervoicesettings method: GET description: Retrieve a phone number with voice settings outputRawFormat: json outputParameters: - name: result type: object value: $. - name: updatephonenumbervoicesettings method: PATCH description: Update a phone number with voice settings outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true authentication: type: bearer token: '{{env.TELNYX_API_KEY}}' exposes: - type: rest namespace: telnyx-phone-number-configurations-rest port: 8080 description: REST adapter for Telnyx API — Phone Number Configurations. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/phone-numbers name: phone-numbers description: REST surface for phone_numbers. operations: - method: GET name: listphonenumbers description: List phone numbers call: telnyx-phone-number-configurations.listphonenumbers with: sort: rest.sort filter: rest.filter handle_messaging_profile_error: rest.handle_messaging_profile_error outputParameters: - type: object mapping: $. - path: /v1/phone-numbers/actions/verify-ownership name: phone-numbers-actions-verify-ownership description: REST surface for phone_numbers-actions-verify_ownership. operations: - method: POST name: verifyphonenumberownership description: Verify ownership of phone numbers call: telnyx-phone-number-configurations.verifyphonenumberownership with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/phone-numbers/slim name: phone-numbers-slim description: REST surface for phone_numbers-slim. operations: - method: GET name: slimlistphonenumbers description: Slim List phone numbers call: telnyx-phone-number-configurations.slimlistphonenumbers with: include_connection: rest.include_connection include_tags: rest.include_tags sort: rest.sort filter: rest.filter outputParameters: - type: object mapping: $. - path: /v1/phone-numbers/voice name: phone-numbers-voice description: REST surface for phone_numbers-voice. operations: - method: GET name: listphonenumberswithvoicesettings description: List phone numbers with voice settings call: telnyx-phone-number-configurations.listphonenumberswithvoicesettings with: sort: rest.sort filter: rest.filter outputParameters: - type: object mapping: $. - path: /v1/phone-numbers/{id} name: phone-numbers-id description: REST surface for phone_numbers-id. operations: - method: DELETE name: deletephonenumber description: Delete a phone number call: telnyx-phone-number-configurations.deletephonenumber outputParameters: - type: object mapping: $. - method: GET name: retrievephonenumber description: Retrieve a phone number call: telnyx-phone-number-configurations.retrievephonenumber outputParameters: - type: object mapping: $. - method: PATCH name: updatephonenumber description: Update a phone number call: telnyx-phone-number-configurations.updatephonenumber with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/phone-numbers/{id}/actions/bundle-status-change name: phone-numbers-id-actions-bundle-status-change description: REST surface for phone_numbers-id-actions-bundle_status_change. operations: - method: PATCH name: phonenumberbundlestatuschange description: Change the bundle status for a phone number (set to being in a bundle or remove from a bundle) call: telnyx-phone-number-configurations.phonenumberbundlestatuschange with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/phone-numbers/{id}/actions/enable-emergency name: phone-numbers-id-actions-enable-emergency description: REST surface for phone_numbers-id-actions-enable_emergency. operations: - method: POST name: enablephonenumberemergency description: Enable emergency for a phone number call: telnyx-phone-number-configurations.enablephonenumberemergency with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/phone-numbers/{id}/voice name: phone-numbers-id-voice description: REST surface for phone_numbers-id-voice. operations: - method: GET name: getphonenumbervoicesettings description: Retrieve a phone number with voice settings call: telnyx-phone-number-configurations.getphonenumbervoicesettings outputParameters: - type: object mapping: $. - method: PATCH name: updatephonenumbervoicesettings description: Update a phone number with voice settings call: telnyx-phone-number-configurations.updatephonenumbervoicesettings with: body: rest.body outputParameters: - type: object mapping: $. - type: mcp namespace: telnyx-phone-number-configurations-mcp port: 9090 transport: http description: MCP adapter for Telnyx API — Phone Number Configurations. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: list-phone-numbers description: List phone numbers hints: readOnly: true destructive: false idempotent: true call: telnyx-phone-number-configurations.listphonenumbers with: sort: tools.sort filter: tools.filter handle_messaging_profile_error: tools.handle_messaging_profile_error outputParameters: - type: object mapping: $. - name: verify-ownership-phone-numbers description: Verify ownership of phone numbers hints: readOnly: false destructive: false idempotent: false call: telnyx-phone-number-configurations.verifyphonenumberownership with: body: tools.body outputParameters: - type: object mapping: $. - name: slim-list-phone-numbers description: Slim List phone numbers hints: readOnly: true destructive: false idempotent: true call: telnyx-phone-number-configurations.slimlistphonenumbers with: include_connection: tools.include_connection include_tags: tools.include_tags sort: tools.sort filter: tools.filter outputParameters: - type: object mapping: $. - name: list-phone-numbers-voice-settings description: List phone numbers with voice settings hints: readOnly: true destructive: false idempotent: true call: telnyx-phone-number-configurations.listphonenumberswithvoicesettings with: sort: tools.sort filter: tools.filter outputParameters: - type: object mapping: $. - name: delete-phone-number description: Delete a phone number hints: readOnly: false destructive: true idempotent: true call: telnyx-phone-number-configurations.deletephonenumber outputParameters: - type: object mapping: $. - name: retrieve-phone-number description: Retrieve a phone number hints: readOnly: true destructive: false idempotent: true call: telnyx-phone-number-configurations.retrievephonenumber outputParameters: - type: object mapping: $. - name: update-phone-number description: Update a phone number hints: readOnly: false destructive: false idempotent: true call: telnyx-phone-number-configurations.updatephonenumber with: body: tools.body outputParameters: - type: object mapping: $. - name: change-bundle-status-phone-number description: Change the bundle status for a phone number (set to being in a bundle or remove from a bundle) hints: readOnly: false destructive: false idempotent: true call: telnyx-phone-number-configurations.phonenumberbundlestatuschange with: body: tools.body outputParameters: - type: object mapping: $. - name: enable-emergency-phone-number description: Enable emergency for a phone number hints: readOnly: false destructive: false idempotent: false call: telnyx-phone-number-configurations.enablephonenumberemergency with: body: tools.body outputParameters: - type: object mapping: $. - name: retrieve-phone-number-voice-settings description: Retrieve a phone number with voice settings hints: readOnly: true destructive: false idempotent: true call: telnyx-phone-number-configurations.getphonenumbervoicesettings outputParameters: - type: object mapping: $. - name: update-phone-number-voice-settings description: Update a phone number with voice settings hints: readOnly: false destructive: false idempotent: true call: telnyx-phone-number-configurations.updatephonenumbervoicesettings with: body: tools.body outputParameters: - type: object mapping: $.