naftiko: 1.0.0-alpha2 info: label: Twilio Marketplace API — Marketplace description: 'Twilio Marketplace API — Marketplace. 12 operations. Lead operation: Marketplace. Self-contained Naftiko capability covering one Twilio business surface.' tags: - Twilio - Marketplace created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: TWILIO_API_KEY: TWILIO_API_KEY capability: consumes: - type: http namespace: marketplace-marketplace baseUri: https://preview.twilio.com description: Twilio Marketplace API — Marketplace business capability. Self-contained, no shared references. resources: - name: marketplace-AvailableAddOns path: /marketplace/AvailableAddOns operations: - name: listmarketplaceavailableaddon method: GET description: Retrieve a list of Add-ons currently available to be installed. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: PageSize in: query type: integer description: How many resources to return in each list page. The default is 50, and the maximum is 1000. - name: Page in: query type: integer description: The page index. This value is simply for client state. - name: PageToken in: query type: string description: The page token. This is provided by the API. - name: marketplace-AvailableAddOns-AvailableAddOnSid-Extensions path: /marketplace/AvailableAddOns/{AvailableAddOnSid}/Extensions operations: - name: listmarketplaceavailableaddonextension method: GET description: Retrieve a list of Extensions for the Available Add-on. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: AvailableAddOnSid in: path type: string description: The SID of the AvailableAddOn resource with the extensions to read. required: true - name: PageSize in: query type: integer description: How many resources to return in each list page. The default is 50, and the maximum is 1000. - name: Page in: query type: integer description: The page index. This value is simply for client state. - name: PageToken in: query type: string description: The page token. This is provided by the API. - name: marketplace-AvailableAddOns-AvailableAddOnSid-Extensions-Sid path: /marketplace/AvailableAddOns/{AvailableAddOnSid}/Extensions/{Sid} operations: - name: fetchmarketplaceavailableaddonextension method: GET description: Fetch an instance of an Extension for the Available Add-on. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: AvailableAddOnSid in: path type: string description: The SID of the AvailableAddOn resource with the extension to fetch. required: true - name: Sid in: path type: string description: The SID of the AvailableAddOn Extension resource to fetch. required: true - name: marketplace-AvailableAddOns-Sid path: /marketplace/AvailableAddOns/{Sid} operations: - name: fetchmarketplaceavailableaddon method: GET description: Fetch an instance of an Add-on currently available to be installed. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: Sid in: path type: string description: The SID of the AvailableAddOn resource to fetch. required: true - name: marketplace-InstalledAddOns path: /marketplace/InstalledAddOns operations: - name: createmarketplaceinstalledaddon method: POST description: Install an Add-on for the Account specified. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: false - name: listmarketplaceinstalledaddon method: GET description: Retrieve a list of Add-ons currently installed on this Account. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: PageSize in: query type: integer description: How many resources to return in each list page. The default is 50, and the maximum is 1000. - name: Page in: query type: integer description: The page index. This value is simply for client state. - name: PageToken in: query type: string description: The page token. This is provided by the API. - name: marketplace-InstalledAddOns-InstalledAddOnSid-Extensions path: /marketplace/InstalledAddOns/{InstalledAddOnSid}/Extensions operations: - name: listmarketplaceinstalledaddonextension method: GET description: Retrieve a list of Extensions for the Installed Add-on. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: InstalledAddOnSid in: path type: string description: The SID of the InstalledAddOn resource with the extensions to read. required: true - name: PageSize in: query type: integer description: How many resources to return in each list page. The default is 50, and the maximum is 1000. - name: Page in: query type: integer description: The page index. This value is simply for client state. - name: PageToken in: query type: string description: The page token. This is provided by the API. - name: marketplace-InstalledAddOns-InstalledAddOnSid-Extensions-Sid path: /marketplace/InstalledAddOns/{InstalledAddOnSid}/Extensions/{Sid} operations: - name: fetchmarketplaceinstalledaddonextension method: GET description: Fetch an instance of an Extension for the Installed Add-on. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: InstalledAddOnSid in: path type: string description: The SID of the InstalledAddOn resource with the extension to fetch. required: true - name: Sid in: path type: string description: The SID of the InstalledAddOn Extension resource to fetch. required: true - name: updatemarketplaceinstalledaddonextension method: POST description: Update an Extension for an Add-on installation. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: InstalledAddOnSid in: path type: string description: The SID of the InstalledAddOn resource with the extension to update. required: true - name: Sid in: path type: string description: The SID of the InstalledAddOn Extension resource to update. required: true - name: body in: body type: object description: Request body (JSON). required: false - name: marketplace-InstalledAddOns-Sid path: /marketplace/InstalledAddOns/{Sid} operations: - name: deletemarketplaceinstalledaddon method: DELETE description: Remove an Add-on installation from your account outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: Sid in: path type: string description: The SID of the InstalledAddOn resource to delete. required: true - name: fetchmarketplaceinstalledaddon method: GET description: Fetch an instance of an Add-on currently installed on this Account. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: Sid in: path type: string description: The SID of the InstalledAddOn resource to fetch. required: true - name: updatemarketplaceinstalledaddon method: POST description: Update an Add-on installation for the Account specified. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: Sid in: path type: string description: The SID of the InstalledAddOn resource to update. required: true - name: body in: body type: object description: Request body (JSON). required: false authentication: type: basic username: '{{env.TWILIO_USER}}' password: '{{env.TWILIO_PASS}}' exposes: - type: rest namespace: marketplace-marketplace-rest port: 8080 description: REST adapter for Twilio Marketplace API — Marketplace. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/marketplace/availableaddons name: marketplace-availableaddons description: REST surface for marketplace-AvailableAddOns. operations: - method: GET name: listmarketplaceavailableaddon description: Retrieve a list of Add-ons currently available to be installed. call: marketplace-marketplace.listmarketplaceavailableaddon with: PageSize: rest.PageSize Page: rest.Page PageToken: rest.PageToken outputParameters: - type: object mapping: $. - path: /v1/marketplace/availableaddons/{availableaddonsid}/extensions name: marketplace-availableaddons-availableaddonsid-extensions description: REST surface for marketplace-AvailableAddOns-AvailableAddOnSid-Extensions. operations: - method: GET name: listmarketplaceavailableaddonextension description: Retrieve a list of Extensions for the Available Add-on. call: marketplace-marketplace.listmarketplaceavailableaddonextension with: AvailableAddOnSid: rest.AvailableAddOnSid PageSize: rest.PageSize Page: rest.Page PageToken: rest.PageToken outputParameters: - type: object mapping: $. - path: /v1/marketplace/availableaddons/{availableaddonsid}/extensions/{sid} name: marketplace-availableaddons-availableaddonsid-extensions-sid description: REST surface for marketplace-AvailableAddOns-AvailableAddOnSid-Extensions-Sid. operations: - method: GET name: fetchmarketplaceavailableaddonextension description: Fetch an instance of an Extension for the Available Add-on. call: marketplace-marketplace.fetchmarketplaceavailableaddonextension with: AvailableAddOnSid: rest.AvailableAddOnSid Sid: rest.Sid outputParameters: - type: object mapping: $. - path: /v1/marketplace/availableaddons/{sid} name: marketplace-availableaddons-sid description: REST surface for marketplace-AvailableAddOns-Sid. operations: - method: GET name: fetchmarketplaceavailableaddon description: Fetch an instance of an Add-on currently available to be installed. call: marketplace-marketplace.fetchmarketplaceavailableaddon with: Sid: rest.Sid outputParameters: - type: object mapping: $. - path: /v1/marketplace/installedaddons name: marketplace-installedaddons description: REST surface for marketplace-InstalledAddOns. operations: - method: POST name: createmarketplaceinstalledaddon description: Install an Add-on for the Account specified. call: marketplace-marketplace.createmarketplaceinstalledaddon with: body: rest.body outputParameters: - type: object mapping: $. - method: GET name: listmarketplaceinstalledaddon description: Retrieve a list of Add-ons currently installed on this Account. call: marketplace-marketplace.listmarketplaceinstalledaddon with: PageSize: rest.PageSize Page: rest.Page PageToken: rest.PageToken outputParameters: - type: object mapping: $. - path: /v1/marketplace/installedaddons/{installedaddonsid}/extensions name: marketplace-installedaddons-installedaddonsid-extensions description: REST surface for marketplace-InstalledAddOns-InstalledAddOnSid-Extensions. operations: - method: GET name: listmarketplaceinstalledaddonextension description: Retrieve a list of Extensions for the Installed Add-on. call: marketplace-marketplace.listmarketplaceinstalledaddonextension with: InstalledAddOnSid: rest.InstalledAddOnSid PageSize: rest.PageSize Page: rest.Page PageToken: rest.PageToken outputParameters: - type: object mapping: $. - path: /v1/marketplace/installedaddons/{installedaddonsid}/extensions/{sid} name: marketplace-installedaddons-installedaddonsid-extensions-sid description: REST surface for marketplace-InstalledAddOns-InstalledAddOnSid-Extensions-Sid. operations: - method: GET name: fetchmarketplaceinstalledaddonextension description: Fetch an instance of an Extension for the Installed Add-on. call: marketplace-marketplace.fetchmarketplaceinstalledaddonextension with: InstalledAddOnSid: rest.InstalledAddOnSid Sid: rest.Sid outputParameters: - type: object mapping: $. - method: POST name: updatemarketplaceinstalledaddonextension description: Update an Extension for an Add-on installation. call: marketplace-marketplace.updatemarketplaceinstalledaddonextension with: InstalledAddOnSid: rest.InstalledAddOnSid Sid: rest.Sid body: rest.body outputParameters: - type: object mapping: $. - path: /v1/marketplace/installedaddons/{sid} name: marketplace-installedaddons-sid description: REST surface for marketplace-InstalledAddOns-Sid. operations: - method: DELETE name: deletemarketplaceinstalledaddon description: Remove an Add-on installation from your account call: marketplace-marketplace.deletemarketplaceinstalledaddon with: Sid: rest.Sid outputParameters: - type: object mapping: $. - method: GET name: fetchmarketplaceinstalledaddon description: Fetch an instance of an Add-on currently installed on this Account. call: marketplace-marketplace.fetchmarketplaceinstalledaddon with: Sid: rest.Sid outputParameters: - type: object mapping: $. - method: POST name: updatemarketplaceinstalledaddon description: Update an Add-on installation for the Account specified. call: marketplace-marketplace.updatemarketplaceinstalledaddon with: Sid: rest.Sid body: rest.body outputParameters: - type: object mapping: $. - type: mcp namespace: marketplace-marketplace-mcp port: 9090 transport: http description: MCP adapter for Twilio Marketplace API — Marketplace. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: retrieve-list-add-ons-currently description: Retrieve a list of Add-ons currently available to be installed. hints: readOnly: true destructive: false idempotent: true call: marketplace-marketplace.listmarketplaceavailableaddon with: PageSize: tools.PageSize Page: tools.Page PageToken: tools.PageToken outputParameters: - type: object mapping: $. - name: retrieve-list-extensions-available-add description: Retrieve a list of Extensions for the Available Add-on. hints: readOnly: true destructive: false idempotent: true call: marketplace-marketplace.listmarketplaceavailableaddonextension with: AvailableAddOnSid: tools.AvailableAddOnSid PageSize: tools.PageSize Page: tools.Page PageToken: tools.PageToken outputParameters: - type: object mapping: $. - name: fetch-instance-extension-available-add description: Fetch an instance of an Extension for the Available Add-on. hints: readOnly: true destructive: false idempotent: true call: marketplace-marketplace.fetchmarketplaceavailableaddonextension with: AvailableAddOnSid: tools.AvailableAddOnSid Sid: tools.Sid outputParameters: - type: object mapping: $. - name: fetch-instance-add-currently-available description: Fetch an instance of an Add-on currently available to be installed. hints: readOnly: true destructive: false idempotent: true call: marketplace-marketplace.fetchmarketplaceavailableaddon with: Sid: tools.Sid outputParameters: - type: object mapping: $. - name: install-add-account-specified description: Install an Add-on for the Account specified. hints: readOnly: false destructive: false idempotent: false call: marketplace-marketplace.createmarketplaceinstalledaddon with: body: tools.body outputParameters: - type: object mapping: $. - name: retrieve-list-add-ons-currently-2 description: Retrieve a list of Add-ons currently installed on this Account. hints: readOnly: true destructive: false idempotent: true call: marketplace-marketplace.listmarketplaceinstalledaddon with: PageSize: tools.PageSize Page: tools.Page PageToken: tools.PageToken outputParameters: - type: object mapping: $. - name: retrieve-list-extensions-installed-add description: Retrieve a list of Extensions for the Installed Add-on. hints: readOnly: true destructive: false idempotent: true call: marketplace-marketplace.listmarketplaceinstalledaddonextension with: InstalledAddOnSid: tools.InstalledAddOnSid PageSize: tools.PageSize Page: tools.Page PageToken: tools.PageToken outputParameters: - type: object mapping: $. - name: fetch-instance-extension-installed-add description: Fetch an instance of an Extension for the Installed Add-on. hints: readOnly: true destructive: false idempotent: true call: marketplace-marketplace.fetchmarketplaceinstalledaddonextension with: InstalledAddOnSid: tools.InstalledAddOnSid Sid: tools.Sid outputParameters: - type: object mapping: $. - name: update-extension-add-installation description: Update an Extension for an Add-on installation. hints: readOnly: false destructive: false idempotent: false call: marketplace-marketplace.updatemarketplaceinstalledaddonextension with: InstalledAddOnSid: tools.InstalledAddOnSid Sid: tools.Sid body: tools.body outputParameters: - type: object mapping: $. - name: remove-add-installation-your-account description: Remove an Add-on installation from your account hints: readOnly: false destructive: true idempotent: true call: marketplace-marketplace.deletemarketplaceinstalledaddon with: Sid: tools.Sid outputParameters: - type: object mapping: $. - name: fetch-instance-add-currently-installed description: Fetch an instance of an Add-on currently installed on this Account. hints: readOnly: true destructive: false idempotent: true call: marketplace-marketplace.fetchmarketplaceinstalledaddon with: Sid: tools.Sid outputParameters: - type: object mapping: $. - name: update-add-installation-account-specified description: Update an Add-on installation for the Account specified. hints: readOnly: false destructive: false idempotent: false call: marketplace-marketplace.updatemarketplaceinstalledaddon with: Sid: tools.Sid body: tools.body outputParameters: - type: object mapping: $.