naftiko: 1.0.0-alpha2 info: label: Telnyx API — Brands description: 'Telnyx API — Brands. 15 operations. Lead operation: List Brands. Self-contained Naftiko capability covering one Telnyx business surface.' tags: - Telnyx - Brands created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: TELNYX_API_KEY: TELNYX_API_KEY capability: consumes: - type: http namespace: telnyx-brands baseUri: https://api.telnyx.com/v2 description: Telnyx API — Brands business capability. Self-contained, no shared references. resources: - name: 10dlc-brand path: /10dlc/brand operations: - name: getbrands method: GET description: List Brands outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: page in: query type: integer - name: recordsPerPage in: query type: integer description: number of records per page. maximum of 500 - name: sort in: query type: string description: Specifies the sort order for results. If not given, results are sorted by createdAt in descending order. - name: displayName in: query type: string - name: entityType in: query type: string - name: state in: query type: string - name: country in: query type: string - name: brandId in: query type: string description: Filter results by the Telnyx Brand id - name: tcrBrandId in: query type: string description: Filter results by the TCR Brand id - name: createbrandpost method: POST description: Create Brand outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: 10dlc-brand-feedback-brandId path: /10dlc/brand/feedback/{brandId} operations: - name: getbrandfeedbackbyid method: GET description: Get Brand Feedback By Id outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: brandId in: path type: string required: true - name: 10dlc-brand-smsOtp-referenceId path: /10dlc/brand/smsOtp/{referenceId} operations: - name: getbrandsmsotpstatus method: GET description: Get Brand SMS OTP Status outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: referenceId in: path type: string description: The reference ID returned when the OTP was initially triggered required: true - name: brandId in: query type: string description: Filter by Brand ID for easier lookup in portal applications - name: 10dlc-brand-brandId path: /10dlc/brand/{brandId} operations: - name: deletebrand method: DELETE description: Delete Brand outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: brandId in: path type: string required: true - name: getbrand method: GET description: Get Brand outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: brandId in: path type: string required: true - name: updatebrand method: PUT description: Update Brand outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: brandId in: path type: string required: true - name: body in: body type: object description: Request body (JSON). required: true - name: 10dlc-brand-brandId-2faEmail path: /10dlc/brand/{brandId}/2faEmail operations: - name: resendbrand2faemail method: POST description: Resend brand 2FA email outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: brandId in: path type: string required: true - name: 10dlc-brand-brandId-externalVetting path: /10dlc/brand/{brandId}/externalVetting operations: - name: listexternalvettings method: GET description: List External Vettings outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: brandId in: path type: string required: true - name: postorderexternalvetting method: POST description: Order Brand External Vetting outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: brandId in: path type: string required: true - name: body in: body type: object description: Request body (JSON). required: true - name: putexternalvettingrecord method: PUT description: Import External Vetting Record outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: brandId in: path type: string required: true - name: body in: body type: object description: Request body (JSON). required: true - name: 10dlc-brand-brandId-revet path: /10dlc/brand/{brandId}/revet operations: - name: revetbrand method: PUT description: Revet Brand outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: brandId in: path type: string required: true - name: 10dlc-brand-brandId-smsOtp path: /10dlc/brand/{brandId}/smsOtp operations: - name: getbrandsmsotpstatusbybrandid method: GET description: Get Brand SMS OTP Status by Brand ID outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: brandId in: path type: string description: The Brand ID for which to query OTP status required: true - name: triggerbrandsmsotp method: POST description: Trigger Brand SMS OTP outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: brandId in: path type: string description: The Brand ID for which to trigger the OTP required: true - name: body in: body type: object description: Request body (JSON). required: true - name: verifybrandsmsotp method: PUT description: Verify Brand SMS OTP outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: brandId in: path type: string description: The Brand ID for which to verify the OTP required: true - 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-brands-rest port: 8080 description: REST adapter for Telnyx API — Brands. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/10dlc/brand name: 10dlc-brand description: REST surface for 10dlc-brand. operations: - method: GET name: getbrands description: List Brands call: telnyx-brands.getbrands with: page: rest.page recordsPerPage: rest.recordsPerPage sort: rest.sort displayName: rest.displayName entityType: rest.entityType state: rest.state country: rest.country brandId: rest.brandId tcrBrandId: rest.tcrBrandId outputParameters: - type: object mapping: $. - method: POST name: createbrandpost description: Create Brand call: telnyx-brands.createbrandpost with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/10dlc/brand/feedback/{brandid} name: 10dlc-brand-feedback-brandid description: REST surface for 10dlc-brand-feedback-brandId. operations: - method: GET name: getbrandfeedbackbyid description: Get Brand Feedback By Id call: telnyx-brands.getbrandfeedbackbyid with: brandId: rest.brandId outputParameters: - type: object mapping: $. - path: /v1/10dlc/brand/smsotp/{referenceid} name: 10dlc-brand-smsotp-referenceid description: REST surface for 10dlc-brand-smsOtp-referenceId. operations: - method: GET name: getbrandsmsotpstatus description: Get Brand SMS OTP Status call: telnyx-brands.getbrandsmsotpstatus with: referenceId: rest.referenceId brandId: rest.brandId outputParameters: - type: object mapping: $. - path: /v1/10dlc/brand/{brandid} name: 10dlc-brand-brandid description: REST surface for 10dlc-brand-brandId. operations: - method: DELETE name: deletebrand description: Delete Brand call: telnyx-brands.deletebrand with: brandId: rest.brandId outputParameters: - type: object mapping: $. - method: GET name: getbrand description: Get Brand call: telnyx-brands.getbrand with: brandId: rest.brandId outputParameters: - type: object mapping: $. - method: PUT name: updatebrand description: Update Brand call: telnyx-brands.updatebrand with: brandId: rest.brandId body: rest.body outputParameters: - type: object mapping: $. - path: /v1/10dlc/brand/{brandid}/2faemail name: 10dlc-brand-brandid-2faemail description: REST surface for 10dlc-brand-brandId-2faEmail. operations: - method: POST name: resendbrand2faemail description: Resend brand 2FA email call: telnyx-brands.resendbrand2faemail with: brandId: rest.brandId outputParameters: - type: object mapping: $. - path: /v1/10dlc/brand/{brandid}/externalvetting name: 10dlc-brand-brandid-externalvetting description: REST surface for 10dlc-brand-brandId-externalVetting. operations: - method: GET name: listexternalvettings description: List External Vettings call: telnyx-brands.listexternalvettings with: brandId: rest.brandId outputParameters: - type: object mapping: $. - method: POST name: postorderexternalvetting description: Order Brand External Vetting call: telnyx-brands.postorderexternalvetting with: brandId: rest.brandId body: rest.body outputParameters: - type: object mapping: $. - method: PUT name: putexternalvettingrecord description: Import External Vetting Record call: telnyx-brands.putexternalvettingrecord with: brandId: rest.brandId body: rest.body outputParameters: - type: object mapping: $. - path: /v1/10dlc/brand/{brandid}/revet name: 10dlc-brand-brandid-revet description: REST surface for 10dlc-brand-brandId-revet. operations: - method: PUT name: revetbrand description: Revet Brand call: telnyx-brands.revetbrand with: brandId: rest.brandId outputParameters: - type: object mapping: $. - path: /v1/10dlc/brand/{brandid}/smsotp name: 10dlc-brand-brandid-smsotp description: REST surface for 10dlc-brand-brandId-smsOtp. operations: - method: GET name: getbrandsmsotpstatusbybrandid description: Get Brand SMS OTP Status by Brand ID call: telnyx-brands.getbrandsmsotpstatusbybrandid with: brandId: rest.brandId outputParameters: - type: object mapping: $. - method: POST name: triggerbrandsmsotp description: Trigger Brand SMS OTP call: telnyx-brands.triggerbrandsmsotp with: brandId: rest.brandId body: rest.body outputParameters: - type: object mapping: $. - method: PUT name: verifybrandsmsotp description: Verify Brand SMS OTP call: telnyx-brands.verifybrandsmsotp with: brandId: rest.brandId body: rest.body outputParameters: - type: object mapping: $. - type: mcp namespace: telnyx-brands-mcp port: 9090 transport: http description: MCP adapter for Telnyx API — Brands. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: list-brands description: List Brands hints: readOnly: true destructive: false idempotent: true call: telnyx-brands.getbrands with: page: tools.page recordsPerPage: tools.recordsPerPage sort: tools.sort displayName: tools.displayName entityType: tools.entityType state: tools.state country: tools.country brandId: tools.brandId tcrBrandId: tools.tcrBrandId outputParameters: - type: object mapping: $. - name: create-brand description: Create Brand hints: readOnly: false destructive: false idempotent: false call: telnyx-brands.createbrandpost with: body: tools.body outputParameters: - type: object mapping: $. - name: get-brand-feedback-id description: Get Brand Feedback By Id hints: readOnly: true destructive: false idempotent: true call: telnyx-brands.getbrandfeedbackbyid with: brandId: tools.brandId outputParameters: - type: object mapping: $. - name: get-brand-sms-otp-status description: Get Brand SMS OTP Status hints: readOnly: true destructive: false idempotent: true call: telnyx-brands.getbrandsmsotpstatus with: referenceId: tools.referenceId brandId: tools.brandId outputParameters: - type: object mapping: $. - name: delete-brand description: Delete Brand hints: readOnly: false destructive: true idempotent: true call: telnyx-brands.deletebrand with: brandId: tools.brandId outputParameters: - type: object mapping: $. - name: get-brand description: Get Brand hints: readOnly: true destructive: false idempotent: true call: telnyx-brands.getbrand with: brandId: tools.brandId outputParameters: - type: object mapping: $. - name: update-brand description: Update Brand hints: readOnly: false destructive: false idempotent: true call: telnyx-brands.updatebrand with: brandId: tools.brandId body: tools.body outputParameters: - type: object mapping: $. - name: resend-brand-2fa-email description: Resend brand 2FA email hints: readOnly: false destructive: false idempotent: false call: telnyx-brands.resendbrand2faemail with: brandId: tools.brandId outputParameters: - type: object mapping: $. - name: list-external-vettings description: List External Vettings hints: readOnly: true destructive: false idempotent: true call: telnyx-brands.listexternalvettings with: brandId: tools.brandId outputParameters: - type: object mapping: $. - name: order-brand-external-vetting description: Order Brand External Vetting hints: readOnly: false destructive: false idempotent: false call: telnyx-brands.postorderexternalvetting with: brandId: tools.brandId body: tools.body outputParameters: - type: object mapping: $. - name: import-external-vetting-record description: Import External Vetting Record hints: readOnly: false destructive: false idempotent: true call: telnyx-brands.putexternalvettingrecord with: brandId: tools.brandId body: tools.body outputParameters: - type: object mapping: $. - name: revet-brand description: Revet Brand hints: readOnly: false destructive: false idempotent: true call: telnyx-brands.revetbrand with: brandId: tools.brandId outputParameters: - type: object mapping: $. - name: get-brand-sms-otp-status-2 description: Get Brand SMS OTP Status by Brand ID hints: readOnly: true destructive: false idempotent: true call: telnyx-brands.getbrandsmsotpstatusbybrandid with: brandId: tools.brandId outputParameters: - type: object mapping: $. - name: trigger-brand-sms-otp description: Trigger Brand SMS OTP hints: readOnly: false destructive: false idempotent: false call: telnyx-brands.triggerbrandsmsotp with: brandId: tools.brandId body: tools.body outputParameters: - type: object mapping: $. - name: verify-brand-sms-otp description: Verify Brand SMS OTP hints: readOnly: false destructive: false idempotent: true call: telnyx-brands.verifybrandsmsotp with: brandId: tools.brandId body: tools.body outputParameters: - type: object mapping: $.