naftiko: 1.0.0-alpha2 info: label: Twilio - Proxy — Services description: 'Twilio - Proxy — Services. 30 operations. Lead operation: Services. Self-contained Naftiko capability covering one Twilio business surface.' tags: - Twilio - Services created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: TWILIO_API_KEY: TWILIO_API_KEY capability: consumes: - type: http namespace: proxy-services baseUri: https://proxy.twilio.com description: Twilio - Proxy — Services business capability. Self-contained, no shared references. resources: - name: v1-Services path: /v1/Services operations: - name: listservice method: GET description: Retrieve a list of all Services for Twilio Proxy. A maximum of 100 records will be returned per page. 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: createservice method: POST description: Create a new Service for Twilio Proxy outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: false - name: v1-Services-ServiceSid-PhoneNumbers path: /v1/Services/{ServiceSid}/PhoneNumbers operations: - name: createphonenumber method: POST description: Add a Phone Number to a Service's Proxy Number Pool. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: ServiceSid in: path type: string description: The SID parent [Service](https://www.twilio.com/docs/proxy/api/service) resource of the new PhoneNumber resource. required: true - name: body in: body type: object description: Request body (JSON). required: false - name: listphonenumber method: GET description: Retrieve a list of all Phone Numbers in the Proxy Number Pool for a Service. A maximum of 100 records will be returned per page. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: ServiceSid in: path type: string description: The SID of the parent [Service](https://www.twilio.com/docs/proxy/api/service) of the PhoneNumber resources 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: v1-Services-ServiceSid-PhoneNumbers-Sid path: /v1/Services/{ServiceSid}/PhoneNumbers/{Sid} operations: - name: deletephonenumber method: DELETE description: Delete a specific Phone Number from a Service. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: ServiceSid in: path type: string description: The SID of the parent [Service](https://www.twilio.com/docs/proxy/api/service) of the PhoneNumber resource to delete. required: true - name: Sid in: path type: string description: The Twilio-provided string that uniquely identifies the PhoneNumber resource to delete. required: true - name: fetchphonenumber method: GET description: Fetch a specific Phone Number. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: ServiceSid in: path type: string description: The SID of the parent [Service](https://www.twilio.com/docs/proxy/api/service) of the PhoneNumber resource to fetch. required: true - name: Sid in: path type: string description: The Twilio-provided string that uniquely identifies the PhoneNumber resource to fetch. required: true - name: updatephonenumber method: POST description: Update a specific Proxy Number. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: ServiceSid in: path type: string description: The SID of the parent [Service](https://www.twilio.com/docs/proxy/api/service) of the PhoneNumber resource to update. required: true - name: Sid in: path type: string description: The Twilio-provided string that uniquely identifies the PhoneNumber resource to update. required: true - name: body in: body type: object description: Request body (JSON). required: false - name: v1-Services-ServiceSid-Sessions path: /v1/Services/{ServiceSid}/Sessions operations: - name: listsession method: GET description: Retrieve a list of all Sessions for the Service. A maximum of 100 records will be returned per page. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: ServiceSid in: path type: string description: The SID of the parent [Service](https://www.twilio.com/docs/proxy/api/service) of the resource 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: createsession method: POST description: Create a new Session outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: ServiceSid in: path type: string description: The SID of the parent [Service](https://www.twilio.com/docs/proxy/api/service) resource. required: true - name: body in: body type: object description: Request body (JSON). required: false - name: v1-Services-ServiceSid-Sessions-SessionSid-Interactions path: /v1/Services/{ServiceSid}/Sessions/{SessionSid}/Interactions operations: - name: listinteraction method: GET description: Retrieve a list of all Interactions for a Session. A maximum of 100 records will be returned per page. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: ServiceSid in: path type: string description: The SID of the parent [Service](https://www.twilio.com/docs/proxy/api/service) to read the resources from. required: true - name: SessionSid in: path type: string description: The SID of the parent [Session](https://www.twilio.com/docs/proxy/api/session) to read the resources from. 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: v1-Services-ServiceSid-Sessions-SessionSid-Interactions-Sid path: /v1/Services/{ServiceSid}/Sessions/{SessionSid}/Interactions/{Sid} operations: - name: fetchinteraction method: GET description: Retrieve a list of Interactions for a given [Session](https://www.twilio.com/docs/proxy/api/session). outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: ServiceSid in: path type: string description: The SID of the parent [Service](https://www.twilio.com/docs/proxy/api/service) of the resource to fetch. required: true - name: SessionSid in: path type: string description: The SID of the parent [Session](https://www.twilio.com/docs/proxy/api/session) of the resource to fetch. required: true - name: Sid in: path type: string description: The Twilio-provided string that uniquely identifies the Interaction resource to fetch. required: true - name: deleteinteraction method: DELETE description: Delete a specific Interaction. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: ServiceSid in: path type: string description: The SID of the parent [Service](https://www.twilio.com/docs/proxy/api/service) of the resource to delete. required: true - name: SessionSid in: path type: string description: The SID of the parent [Session](https://www.twilio.com/docs/proxy/api/session) of the resource to delete. required: true - name: Sid in: path type: string description: The Twilio-provided string that uniquely identifies the Interaction resource to delete. required: true - name: v1-Services-ServiceSid-Sessions-SessionSid-Participants path: /v1/Services/{ServiceSid}/Sessions/{SessionSid}/Participants operations: - name: listparticipant method: GET description: Retrieve a list of all Participants in a Session. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: ServiceSid in: path type: string description: The SID of the parent [Service](https://www.twilio.com/docs/proxy/api/service) of the resources to read. required: true - name: SessionSid in: path type: string description: The SID of the parent [Session](https://www.twilio.com/docs/proxy/api/session) of the resources 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: createparticipant method: POST description: Add a new Participant to the Session outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: ServiceSid in: path type: string description: The SID of the parent [Service](https://www.twilio.com/docs/proxy/api/service) resource. required: true - name: SessionSid in: path type: string description: The SID of the parent [Session](https://www.twilio.com/docs/proxy/api/session) resource. required: true - name: body in: body type: object description: Request body (JSON). required: false - name: v1-Services-ServiceSid-Sessions-SessionSid-Participants-ParticipantSid-MessageIn path: /v1/Services/{ServiceSid}/Sessions/{SessionSid}/Participants/{ParticipantSid}/MessageInteractions operations: - name: createmessageinteraction method: POST description: Create a new message Interaction to send directly from your system to one [Participant](https://www.twilio.com/docs/proxy/api/participant). The `inbound` properties for the Interaction will always be empty. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: ServiceSid in: path type: string description: The SID of the parent [Service](https://www.twilio.com/docs/proxy/api/service) resource. required: true - name: SessionSid in: path type: string description: The SID of the parent [Session](https://www.twilio.com/docs/proxy/api/session) resource. required: true - name: ParticipantSid in: path type: string description: The SID of the [Participant](https://www.twilio.com/docs/proxy/api/participant) resource. required: true - name: body in: body type: object description: Request body (JSON). required: false - name: listmessageinteraction method: GET description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: ServiceSid in: path type: string description: The SID of the parent [Service](https://www.twilio.com/docs/proxy/api/service) to read the resources from. required: true - name: SessionSid in: path type: string description: The SID of the parent [Session](https://www.twilio.com/docs/proxy/api/session) to read the resources from. required: true - name: ParticipantSid in: path type: string description: The SID of the [Participant](https://www.twilio.com/docs/proxy/api/participant) to read the resources from. 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: v1-Services-ServiceSid-Sessions-SessionSid-Participants-ParticipantSid-MessageIn path: /v1/Services/{ServiceSid}/Sessions/{SessionSid}/Participants/{ParticipantSid}/MessageInteractions/{Sid} operations: - name: fetchmessageinteraction method: GET description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: ServiceSid in: path type: string description: The SID of the parent [Service](https://www.twilio.com/docs/proxy/api/service) of the resource to fetch. required: true - name: SessionSid in: path type: string description: The SID of the parent [Session](https://www.twilio.com/docs/proxy/api/session) of the resource to fetch. required: true - name: ParticipantSid in: path type: string description: The SID of the [Participant](https://www.twilio.com/docs/proxy/api/participant) resource. required: true - name: Sid in: path type: string description: The Twilio-provided string that uniquely identifies the MessageInteraction resource to fetch. required: true - name: v1-Services-ServiceSid-Sessions-SessionSid-Participants-Sid path: /v1/Services/{ServiceSid}/Sessions/{SessionSid}/Participants/{Sid} operations: - name: fetchparticipant method: GET description: Fetch a specific Participant. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: ServiceSid in: path type: string description: The SID of the parent [Service](https://www.twilio.com/docs/proxy/api/service) of the resource to fetch. required: true - name: SessionSid in: path type: string description: The SID of the parent [Session](https://www.twilio.com/docs/proxy/api/session) of the resource to fetch. required: true - name: Sid in: path type: string description: The Twilio-provided string that uniquely identifies the Participant resource to fetch. required: true - name: deleteparticipant method: DELETE description: Delete a specific Participant. This is a soft-delete. The participant remains associated with the session and cannot be re-added. Participants are only permanently deleted when the [Session](https://www.twilio.com/docs/proxy/api/session) is outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: ServiceSid in: path type: string description: The SID of the parent [Service](https://www.twilio.com/docs/proxy/api/service) of the resource to delete. required: true - name: SessionSid in: path type: string description: The SID of the parent [Session](https://www.twilio.com/docs/proxy/api/session) of the resource to delete. required: true - name: Sid in: path type: string description: The Twilio-provided string that uniquely identifies the Participant resource to delete. required: true - name: v1-Services-ServiceSid-Sessions-Sid path: /v1/Services/{ServiceSid}/Sessions/{Sid} operations: - name: fetchsession method: GET description: Fetch a specific Session. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: ServiceSid in: path type: string description: The SID of the parent [Service](https://www.twilio.com/docs/proxy/api/service) of the resource to fetch. required: true - name: Sid in: path type: string description: The Twilio-provided string that uniquely identifies the Session resource to fetch. required: true - name: deletesession method: DELETE description: Delete a specific Session. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: ServiceSid in: path type: string description: The SID of the parent [Service](https://www.twilio.com/docs/proxy/api/service) of the resource to delete. required: true - name: Sid in: path type: string description: The Twilio-provided string that uniquely identifies the Session resource to delete. required: true - name: updatesession method: POST description: Update a specific Session. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: ServiceSid in: path type: string description: The SID of the parent [Service](https://www.twilio.com/docs/proxy/api/service) of the resource to update. required: true - name: Sid in: path type: string description: The Twilio-provided string that uniquely identifies the Session resource to update. required: true - name: body in: body type: object description: Request body (JSON). required: false - name: v1-Services-ServiceSid-ShortCodes path: /v1/Services/{ServiceSid}/ShortCodes operations: - name: createshortcode method: POST description: Add a Short Code to the Proxy Number Pool for the Service. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: ServiceSid in: path type: string description: The SID of the parent [Service](https://www.twilio.com/docs/proxy/api/service) resource. required: true - name: body in: body type: object description: Request body (JSON). required: false - name: listshortcode method: GET description: Retrieve a list of all Short Codes in the Proxy Number Pool for the Service. A maximum of 100 records will be returned per page. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: ServiceSid in: path type: string description: The SID of the parent [Service](https://www.twilio.com/docs/proxy/api/service) to read the resources from. 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: v1-Services-ServiceSid-ShortCodes-Sid path: /v1/Services/{ServiceSid}/ShortCodes/{Sid} operations: - name: deleteshortcode method: DELETE description: Delete a specific Short Code from a Service. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: ServiceSid in: path type: string description: The SID of the parent [Service](https://www.twilio.com/docs/proxy/api/service) resource to delete the ShortCode resource from. required: true - name: Sid in: path type: string description: The Twilio-provided string that uniquely identifies the ShortCode resource to delete. required: true - name: fetchshortcode method: GET description: Fetch a specific Short Code. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: ServiceSid in: path type: string description: The SID of the parent [Service](https://www.twilio.com/docs/proxy/api/service) to fetch the resource from. required: true - name: Sid in: path type: string description: The Twilio-provided string that uniquely identifies the ShortCode resource to fetch. required: true - name: updateshortcode method: POST description: Update a specific Short Code. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: ServiceSid in: path type: string description: The SID of the parent [Service](https://www.twilio.com/docs/proxy/api/service) of the resource to update. required: true - name: Sid in: path type: string description: The Twilio-provided string that uniquely identifies the ShortCode resource to update. required: true - name: body in: body type: object description: Request body (JSON). required: false - name: v1-Services-Sid path: /v1/Services/{Sid} operations: - name: fetchservice method: GET description: Fetch a specific Service. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: Sid in: path type: string description: The Twilio-provided string that uniquely identifies the Service resource to fetch. required: true - name: deleteservice method: DELETE description: Delete a specific Service. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: Sid in: path type: string description: The Twilio-provided string that uniquely identifies the Service resource to delete. required: true - name: updateservice method: POST description: Update a specific Service. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: Sid in: path type: string description: The Twilio-provided string that uniquely identifies the Service 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: proxy-services-rest port: 8080 description: REST adapter for Twilio - Proxy — Services. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/v1/services name: v1-services description: REST surface for v1-Services. operations: - method: GET name: listservice description: Retrieve a list of all Services for Twilio Proxy. A maximum of 100 records will be returned per page. call: proxy-services.listservice with: PageSize: rest.PageSize Page: rest.Page PageToken: rest.PageToken outputParameters: - type: object mapping: $. - method: POST name: createservice description: Create a new Service for Twilio Proxy call: proxy-services.createservice with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/v1/services/{servicesid}/phonenumbers name: v1-services-servicesid-phonenumbers description: REST surface for v1-Services-ServiceSid-PhoneNumbers. operations: - method: POST name: createphonenumber description: Add a Phone Number to a Service's Proxy Number Pool. call: proxy-services.createphonenumber with: ServiceSid: rest.ServiceSid body: rest.body outputParameters: - type: object mapping: $. - method: GET name: listphonenumber description: Retrieve a list of all Phone Numbers in the Proxy Number Pool for a Service. A maximum of 100 records will be returned per page. call: proxy-services.listphonenumber with: ServiceSid: rest.ServiceSid PageSize: rest.PageSize Page: rest.Page PageToken: rest.PageToken outputParameters: - type: object mapping: $. - path: /v1/v1/services/{servicesid}/phonenumbers/{sid} name: v1-services-servicesid-phonenumbers-sid description: REST surface for v1-Services-ServiceSid-PhoneNumbers-Sid. operations: - method: DELETE name: deletephonenumber description: Delete a specific Phone Number from a Service. call: proxy-services.deletephonenumber with: ServiceSid: rest.ServiceSid Sid: rest.Sid outputParameters: - type: object mapping: $. - method: GET name: fetchphonenumber description: Fetch a specific Phone Number. call: proxy-services.fetchphonenumber with: ServiceSid: rest.ServiceSid Sid: rest.Sid outputParameters: - type: object mapping: $. - method: POST name: updatephonenumber description: Update a specific Proxy Number. call: proxy-services.updatephonenumber with: ServiceSid: rest.ServiceSid Sid: rest.Sid body: rest.body outputParameters: - type: object mapping: $. - path: /v1/v1/services/{servicesid}/sessions name: v1-services-servicesid-sessions description: REST surface for v1-Services-ServiceSid-Sessions. operations: - method: GET name: listsession description: Retrieve a list of all Sessions for the Service. A maximum of 100 records will be returned per page. call: proxy-services.listsession with: ServiceSid: rest.ServiceSid PageSize: rest.PageSize Page: rest.Page PageToken: rest.PageToken outputParameters: - type: object mapping: $. - method: POST name: createsession description: Create a new Session call: proxy-services.createsession with: ServiceSid: rest.ServiceSid body: rest.body outputParameters: - type: object mapping: $. - path: /v1/v1/services/{servicesid}/sessions/{sessionsid}/interactions name: v1-services-servicesid-sessions-sessionsid-interactions description: REST surface for v1-Services-ServiceSid-Sessions-SessionSid-Interactions. operations: - method: GET name: listinteraction description: Retrieve a list of all Interactions for a Session. A maximum of 100 records will be returned per page. call: proxy-services.listinteraction with: ServiceSid: rest.ServiceSid SessionSid: rest.SessionSid PageSize: rest.PageSize Page: rest.Page PageToken: rest.PageToken outputParameters: - type: object mapping: $. - path: /v1/v1/services/{servicesid}/sessions/{sessionsid}/interactions/{sid} name: v1-services-servicesid-sessions-sessionsid-interactions-sid description: REST surface for v1-Services-ServiceSid-Sessions-SessionSid-Interactions-Sid. operations: - method: GET name: fetchinteraction description: Retrieve a list of Interactions for a given [Session](https://www.twilio.com/docs/proxy/api/session). call: proxy-services.fetchinteraction with: ServiceSid: rest.ServiceSid SessionSid: rest.SessionSid Sid: rest.Sid outputParameters: - type: object mapping: $. - method: DELETE name: deleteinteraction description: Delete a specific Interaction. call: proxy-services.deleteinteraction with: ServiceSid: rest.ServiceSid SessionSid: rest.SessionSid Sid: rest.Sid outputParameters: - type: object mapping: $. - path: /v1/v1/services/{servicesid}/sessions/{sessionsid}/participants name: v1-services-servicesid-sessions-sessionsid-participants description: REST surface for v1-Services-ServiceSid-Sessions-SessionSid-Participants. operations: - method: GET name: listparticipant description: Retrieve a list of all Participants in a Session. call: proxy-services.listparticipant with: ServiceSid: rest.ServiceSid SessionSid: rest.SessionSid PageSize: rest.PageSize Page: rest.Page PageToken: rest.PageToken outputParameters: - type: object mapping: $. - method: POST name: createparticipant description: Add a new Participant to the Session call: proxy-services.createparticipant with: ServiceSid: rest.ServiceSid SessionSid: rest.SessionSid body: rest.body outputParameters: - type: object mapping: $. - path: /v1/v1/services/{servicesid}/sessions/{sessionsid}/participants/{participantsid}/messageinteractions name: v1-services-servicesid-sessions-sessionsid-participants-participantsid-messagein description: REST surface for v1-Services-ServiceSid-Sessions-SessionSid-Participants-ParticipantSid-MessageIn. operations: - method: POST name: createmessageinteraction description: Create a new message Interaction to send directly from your system to one [Participant](https://www.twilio.com/docs/proxy/api/participant). The `inbound` properties for the Interaction will always be empty. call: proxy-services.createmessageinteraction with: ServiceSid: rest.ServiceSid SessionSid: rest.SessionSid ParticipantSid: rest.ParticipantSid body: rest.body outputParameters: - type: object mapping: $. - method: GET name: listmessageinteraction description: listmessageinteraction call: proxy-services.listmessageinteraction with: ServiceSid: rest.ServiceSid SessionSid: rest.SessionSid ParticipantSid: rest.ParticipantSid PageSize: rest.PageSize Page: rest.Page PageToken: rest.PageToken outputParameters: - type: object mapping: $. - path: /v1/v1/services/{servicesid}/sessions/{sessionsid}/participants/{participantsid}/messageinteractions/{sid} name: v1-services-servicesid-sessions-sessionsid-participants-participantsid-messagein description: REST surface for v1-Services-ServiceSid-Sessions-SessionSid-Participants-ParticipantSid-MessageIn. operations: - method: GET name: fetchmessageinteraction description: fetchmessageinteraction call: proxy-services.fetchmessageinteraction with: ServiceSid: rest.ServiceSid SessionSid: rest.SessionSid ParticipantSid: rest.ParticipantSid Sid: rest.Sid outputParameters: - type: object mapping: $. - path: /v1/v1/services/{servicesid}/sessions/{sessionsid}/participants/{sid} name: v1-services-servicesid-sessions-sessionsid-participants-sid description: REST surface for v1-Services-ServiceSid-Sessions-SessionSid-Participants-Sid. operations: - method: GET name: fetchparticipant description: Fetch a specific Participant. call: proxy-services.fetchparticipant with: ServiceSid: rest.ServiceSid SessionSid: rest.SessionSid Sid: rest.Sid outputParameters: - type: object mapping: $. - method: DELETE name: deleteparticipant description: Delete a specific Participant. This is a soft-delete. The participant remains associated with the session and cannot be re-added. Participants are only permanently deleted when the [Session](https://www.twilio.com/docs/proxy/api/session) is call: proxy-services.deleteparticipant with: ServiceSid: rest.ServiceSid SessionSid: rest.SessionSid Sid: rest.Sid outputParameters: - type: object mapping: $. - path: /v1/v1/services/{servicesid}/sessions/{sid} name: v1-services-servicesid-sessions-sid description: REST surface for v1-Services-ServiceSid-Sessions-Sid. operations: - method: GET name: fetchsession description: Fetch a specific Session. call: proxy-services.fetchsession with: ServiceSid: rest.ServiceSid Sid: rest.Sid outputParameters: - type: object mapping: $. - method: DELETE name: deletesession description: Delete a specific Session. call: proxy-services.deletesession with: ServiceSid: rest.ServiceSid Sid: rest.Sid outputParameters: - type: object mapping: $. - method: POST name: updatesession description: Update a specific Session. call: proxy-services.updatesession with: ServiceSid: rest.ServiceSid Sid: rest.Sid body: rest.body outputParameters: - type: object mapping: $. - path: /v1/v1/services/{servicesid}/shortcodes name: v1-services-servicesid-shortcodes description: REST surface for v1-Services-ServiceSid-ShortCodes. operations: - method: POST name: createshortcode description: Add a Short Code to the Proxy Number Pool for the Service. call: proxy-services.createshortcode with: ServiceSid: rest.ServiceSid body: rest.body outputParameters: - type: object mapping: $. - method: GET name: listshortcode description: Retrieve a list of all Short Codes in the Proxy Number Pool for the Service. A maximum of 100 records will be returned per page. call: proxy-services.listshortcode with: ServiceSid: rest.ServiceSid PageSize: rest.PageSize Page: rest.Page PageToken: rest.PageToken outputParameters: - type: object mapping: $. - path: /v1/v1/services/{servicesid}/shortcodes/{sid} name: v1-services-servicesid-shortcodes-sid description: REST surface for v1-Services-ServiceSid-ShortCodes-Sid. operations: - method: DELETE name: deleteshortcode description: Delete a specific Short Code from a Service. call: proxy-services.deleteshortcode with: ServiceSid: rest.ServiceSid Sid: rest.Sid outputParameters: - type: object mapping: $. - method: GET name: fetchshortcode description: Fetch a specific Short Code. call: proxy-services.fetchshortcode with: ServiceSid: rest.ServiceSid Sid: rest.Sid outputParameters: - type: object mapping: $. - method: POST name: updateshortcode description: Update a specific Short Code. call: proxy-services.updateshortcode with: ServiceSid: rest.ServiceSid Sid: rest.Sid body: rest.body outputParameters: - type: object mapping: $. - path: /v1/v1/services/{sid} name: v1-services-sid description: REST surface for v1-Services-Sid. operations: - method: GET name: fetchservice description: Fetch a specific Service. call: proxy-services.fetchservice with: Sid: rest.Sid outputParameters: - type: object mapping: $. - method: DELETE name: deleteservice description: Delete a specific Service. call: proxy-services.deleteservice with: Sid: rest.Sid outputParameters: - type: object mapping: $. - method: POST name: updateservice description: Update a specific Service. call: proxy-services.updateservice with: Sid: rest.Sid body: rest.body outputParameters: - type: object mapping: $. - type: mcp namespace: proxy-services-mcp port: 9090 transport: http description: MCP adapter for Twilio - Proxy — Services. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: retrieve-list-all-services-twilio description: Retrieve a list of all Services for Twilio Proxy. A maximum of 100 records will be returned per page. hints: readOnly: true destructive: false idempotent: true call: proxy-services.listservice with: PageSize: tools.PageSize Page: tools.Page PageToken: tools.PageToken outputParameters: - type: object mapping: $. - name: create-new-service-twilio-proxy description: Create a new Service for Twilio Proxy hints: readOnly: false destructive: false idempotent: false call: proxy-services.createservice with: body: tools.body outputParameters: - type: object mapping: $. - name: add-phone-number-service-s-proxy description: Add a Phone Number to a Service's Proxy Number Pool. hints: readOnly: false destructive: false idempotent: false call: proxy-services.createphonenumber with: ServiceSid: tools.ServiceSid body: tools.body outputParameters: - type: object mapping: $. - name: retrieve-list-all-phone-numbers description: Retrieve a list of all Phone Numbers in the Proxy Number Pool for a Service. A maximum of 100 records will be returned per page. hints: readOnly: true destructive: false idempotent: true call: proxy-services.listphonenumber with: ServiceSid: tools.ServiceSid PageSize: tools.PageSize Page: tools.Page PageToken: tools.PageToken outputParameters: - type: object mapping: $. - name: delete-specific-phone-number-service description: Delete a specific Phone Number from a Service. hints: readOnly: false destructive: true idempotent: true call: proxy-services.deletephonenumber with: ServiceSid: tools.ServiceSid Sid: tools.Sid outputParameters: - type: object mapping: $. - name: fetch-specific-phone-number description: Fetch a specific Phone Number. hints: readOnly: true destructive: false idempotent: true call: proxy-services.fetchphonenumber with: ServiceSid: tools.ServiceSid Sid: tools.Sid outputParameters: - type: object mapping: $. - name: update-specific-proxy-number description: Update a specific Proxy Number. hints: readOnly: false destructive: false idempotent: false call: proxy-services.updatephonenumber with: ServiceSid: tools.ServiceSid Sid: tools.Sid body: tools.body outputParameters: - type: object mapping: $. - name: retrieve-list-all-sessions-service description: Retrieve a list of all Sessions for the Service. A maximum of 100 records will be returned per page. hints: readOnly: true destructive: false idempotent: true call: proxy-services.listsession with: ServiceSid: tools.ServiceSid PageSize: tools.PageSize Page: tools.Page PageToken: tools.PageToken outputParameters: - type: object mapping: $. - name: create-new-session description: Create a new Session hints: readOnly: false destructive: false idempotent: false call: proxy-services.createsession with: ServiceSid: tools.ServiceSid body: tools.body outputParameters: - type: object mapping: $. - name: retrieve-list-all-interactions-session description: Retrieve a list of all Interactions for a Session. A maximum of 100 records will be returned per page. hints: readOnly: true destructive: false idempotent: true call: proxy-services.listinteraction with: ServiceSid: tools.ServiceSid SessionSid: tools.SessionSid PageSize: tools.PageSize Page: tools.Page PageToken: tools.PageToken outputParameters: - type: object mapping: $. - name: retrieve-list-interactions-given-session-https description: Retrieve a list of Interactions for a given [Session](https://www.twilio.com/docs/proxy/api/session). hints: readOnly: true destructive: false idempotent: true call: proxy-services.fetchinteraction with: ServiceSid: tools.ServiceSid SessionSid: tools.SessionSid Sid: tools.Sid outputParameters: - type: object mapping: $. - name: delete-specific-interaction description: Delete a specific Interaction. hints: readOnly: false destructive: true idempotent: true call: proxy-services.deleteinteraction with: ServiceSid: tools.ServiceSid SessionSid: tools.SessionSid Sid: tools.Sid outputParameters: - type: object mapping: $. - name: retrieve-list-all-participants-session description: Retrieve a list of all Participants in a Session. hints: readOnly: true destructive: false idempotent: true call: proxy-services.listparticipant with: ServiceSid: tools.ServiceSid SessionSid: tools.SessionSid PageSize: tools.PageSize Page: tools.Page PageToken: tools.PageToken outputParameters: - type: object mapping: $. - name: add-new-participant-session description: Add a new Participant to the Session hints: readOnly: false destructive: false idempotent: false call: proxy-services.createparticipant with: ServiceSid: tools.ServiceSid SessionSid: tools.SessionSid body: tools.body outputParameters: - type: object mapping: $. - name: create-new-message-interaction-send description: Create a new message Interaction to send directly from your system to one [Participant](https://www.twilio.com/docs/proxy/api/participant). The `inbound` properties for the Interaction will always be empty. hints: readOnly: false destructive: false idempotent: false call: proxy-services.createmessageinteraction with: ServiceSid: tools.ServiceSid SessionSid: tools.SessionSid ParticipantSid: tools.ParticipantSid body: tools.body outputParameters: - type: object mapping: $. - name: listmessageinteraction description: listmessageinteraction hints: readOnly: true destructive: false idempotent: true call: proxy-services.listmessageinteraction with: ServiceSid: tools.ServiceSid SessionSid: tools.SessionSid ParticipantSid: tools.ParticipantSid PageSize: tools.PageSize Page: tools.Page PageToken: tools.PageToken outputParameters: - type: object mapping: $. - name: fetchmessageinteraction description: fetchmessageinteraction hints: readOnly: true destructive: false idempotent: true call: proxy-services.fetchmessageinteraction with: ServiceSid: tools.ServiceSid SessionSid: tools.SessionSid ParticipantSid: tools.ParticipantSid Sid: tools.Sid outputParameters: - type: object mapping: $. - name: fetch-specific-participant description: Fetch a specific Participant. hints: readOnly: true destructive: false idempotent: true call: proxy-services.fetchparticipant with: ServiceSid: tools.ServiceSid SessionSid: tools.SessionSid Sid: tools.Sid outputParameters: - type: object mapping: $. - name: delete-specific-participant-this-is description: Delete a specific Participant. This is a soft-delete. The participant remains associated with the session and cannot be re-added. Participants are only permanently deleted when the [Session](https://www.twilio.com/docs/proxy/api/session) is hints: readOnly: false destructive: true idempotent: true call: proxy-services.deleteparticipant with: ServiceSid: tools.ServiceSid SessionSid: tools.SessionSid Sid: tools.Sid outputParameters: - type: object mapping: $. - name: fetch-specific-session description: Fetch a specific Session. hints: readOnly: true destructive: false idempotent: true call: proxy-services.fetchsession with: ServiceSid: tools.ServiceSid Sid: tools.Sid outputParameters: - type: object mapping: $. - name: delete-specific-session description: Delete a specific Session. hints: readOnly: false destructive: true idempotent: true call: proxy-services.deletesession with: ServiceSid: tools.ServiceSid Sid: tools.Sid outputParameters: - type: object mapping: $. - name: update-specific-session description: Update a specific Session. hints: readOnly: false destructive: false idempotent: false call: proxy-services.updatesession with: ServiceSid: tools.ServiceSid Sid: tools.Sid body: tools.body outputParameters: - type: object mapping: $. - name: add-short-code-proxy-number description: Add a Short Code to the Proxy Number Pool for the Service. hints: readOnly: false destructive: false idempotent: false call: proxy-services.createshortcode with: ServiceSid: tools.ServiceSid body: tools.body outputParameters: - type: object mapping: $. - name: retrieve-list-all-short-codes description: Retrieve a list of all Short Codes in the Proxy Number Pool for the Service. A maximum of 100 records will be returned per page. hints: readOnly: true destructive: false idempotent: true call: proxy-services.listshortcode with: ServiceSid: tools.ServiceSid PageSize: tools.PageSize Page: tools.Page PageToken: tools.PageToken outputParameters: - type: object mapping: $. - name: delete-specific-short-code-service description: Delete a specific Short Code from a Service. hints: readOnly: false destructive: true idempotent: true call: proxy-services.deleteshortcode with: ServiceSid: tools.ServiceSid Sid: tools.Sid outputParameters: - type: object mapping: $. - name: fetch-specific-short-code description: Fetch a specific Short Code. hints: readOnly: true destructive: false idempotent: true call: proxy-services.fetchshortcode with: ServiceSid: tools.ServiceSid Sid: tools.Sid outputParameters: - type: object mapping: $. - name: update-specific-short-code description: Update a specific Short Code. hints: readOnly: false destructive: false idempotent: false call: proxy-services.updateshortcode with: ServiceSid: tools.ServiceSid Sid: tools.Sid body: tools.body outputParameters: - type: object mapping: $. - name: fetch-specific-service description: Fetch a specific Service. hints: readOnly: true destructive: false idempotent: true call: proxy-services.fetchservice with: Sid: tools.Sid outputParameters: - type: object mapping: $. - name: delete-specific-service description: Delete a specific Service. hints: readOnly: false destructive: true idempotent: true call: proxy-services.deleteservice with: Sid: tools.Sid outputParameters: - type: object mapping: $. - name: update-specific-service description: Update a specific Service. hints: readOnly: false destructive: false idempotent: false call: proxy-services.updateservice with: Sid: tools.Sid body: tools.body outputParameters: - type: object mapping: $.