naftiko: 1.0.0-alpha2 info: label: Webex Meetings — Participants description: 'Webex Meetings — Participants. 7 operations. Lead operation: List Meeting Participants. Self-contained Naftiko capability covering one Webex business surface.' tags: - Webex - Participants created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: WEBEX_API_KEY: WEBEX_API_KEY capability: consumes: - type: http namespace: meeting-participants baseUri: '' description: Webex Meetings — Participants business capability. Self-contained, no shared references. resources: - name: meetingParticipants path: /meetingParticipants operations: - name: listmeetingparticipants method: GET description: List Meeting Participants outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: max in: query type: number description: Limit the maximum number of participants in the response, up to 100. - name: meetingId in: query type: string description: The unique identifier for the meeting. Please note that currently meeting ID of a scheduled [personal room](https://help.webex.com/en-us/article/nul0wut/Webex-P required: true - name: breakoutSessionId in: query type: string description: The unique identifier for a breakout session which happened during an ended meeting instance. If the `breakoutSessionId` is specified, the operation returns par - name: meetingStartTimeFrom in: query type: string description: Meetings start from the specified date and time(exclusive) in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. If `meetingStartTimeFrom` - name: meetingStartTimeTo in: query type: string description: Meetings start before the specified date and time(exclusive) in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. If `meetingStartTimeTo` - name: hostEmail in: query type: string description: Email address for the meeting host. This parameter is only used if the user or application calling the API has the admin-level scopes, the admin may specify the - name: joinTimeFrom in: query type: string description: The time participants join a meeting starts from the specified date and time (inclusive) in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant for - name: joinTimeTo in: query type: string description: 'The time participants join a meeting before the specified date and time (exclusive) in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. ' - name: timezone in: header type: string description: e.g. UTC - name: meetingParticipants-admit path: /meetingParticipants/admit operations: - name: admitparticipants method: POST description: Admit Participants outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: false - name: meetingParticipants-callout path: /meetingParticipants/callout operations: - name: calloutasipparticipant method: POST description: Call Out a SIP Participant outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: false - name: meetingParticipants-cancelCallout path: /meetingParticipants/cancelCallout operations: - name: cancelcallingoutasipparticipant method: POST description: Cancel Calling Out a SIP Participant outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: false - name: meetingParticipants-query path: /meetingParticipants/query operations: - name: querymeetingparticipantswithemail method: POST description: Query Meeting Participants with Email outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: meetingId in: query type: string description: The unique identifier for the meeting. required: true - name: meetingStartTimeFrom in: query type: string description: Meetings start from the specified date and time(exclusive) in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. If `meetingStartTimeFrom` - name: meetingStartTimeTo in: query type: string description: Meetings start before the specified date and time(exclusive) in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. If `meetingStartTimeTo` - name: hostEmail in: query type: string description: Email address for the meeting host. This parameter is only used if the user or application calling the API has the admin-level scopes, the admin may specify the - name: timezone in: header type: string description: e.g. UTC - name: body in: body type: object description: Request body (JSON). required: false - name: meetingParticipants-participantId path: /meetingParticipants/{participantId} operations: - name: getmeetingparticipantdetails method: GET description: Get Meeting Participant Details outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: participantId in: path type: string description: The unique identifier for the meeting and the participant. required: true - name: hostEmail in: query type: string description: Email address for the meeting host. This parameter is only used if the user or application calling the API has the admin-level scopes, the admin may specify the - name: updateaparticipant method: PUT description: Update a Participant outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: participantId in: path type: string description: The unique identifier for the meeting and the participant. required: true - name: body in: body type: object description: Request body (JSON). required: false authentication: type: bearer token: '{{env.WEBEX_API_KEY}}' exposes: - type: rest namespace: meeting-participants-rest port: 8080 description: REST adapter for Webex Meetings — Participants. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/meetingparticipants name: meetingparticipants description: REST surface for meetingParticipants. operations: - method: GET name: listmeetingparticipants description: List Meeting Participants call: meeting-participants.listmeetingparticipants with: max: rest.max meetingId: rest.meetingId breakoutSessionId: rest.breakoutSessionId meetingStartTimeFrom: rest.meetingStartTimeFrom meetingStartTimeTo: rest.meetingStartTimeTo hostEmail: rest.hostEmail joinTimeFrom: rest.joinTimeFrom joinTimeTo: rest.joinTimeTo timezone: rest.timezone outputParameters: - type: object mapping: $. - path: /v1/meetingparticipants/admit name: meetingparticipants-admit description: REST surface for meetingParticipants-admit. operations: - method: POST name: admitparticipants description: Admit Participants call: meeting-participants.admitparticipants with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/meetingparticipants/callout name: meetingparticipants-callout description: REST surface for meetingParticipants-callout. operations: - method: POST name: calloutasipparticipant description: Call Out a SIP Participant call: meeting-participants.calloutasipparticipant with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/meetingparticipants/cancelcallout name: meetingparticipants-cancelcallout description: REST surface for meetingParticipants-cancelCallout. operations: - method: POST name: cancelcallingoutasipparticipant description: Cancel Calling Out a SIP Participant call: meeting-participants.cancelcallingoutasipparticipant with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/meetingparticipants/query name: meetingparticipants-query description: REST surface for meetingParticipants-query. operations: - method: POST name: querymeetingparticipantswithemail description: Query Meeting Participants with Email call: meeting-participants.querymeetingparticipantswithemail with: meetingId: rest.meetingId meetingStartTimeFrom: rest.meetingStartTimeFrom meetingStartTimeTo: rest.meetingStartTimeTo hostEmail: rest.hostEmail timezone: rest.timezone body: rest.body outputParameters: - type: object mapping: $. - path: /v1/meetingparticipants/{participantid} name: meetingparticipants-participantid description: REST surface for meetingParticipants-participantId. operations: - method: GET name: getmeetingparticipantdetails description: Get Meeting Participant Details call: meeting-participants.getmeetingparticipantdetails with: participantId: rest.participantId hostEmail: rest.hostEmail outputParameters: - type: object mapping: $. - method: PUT name: updateaparticipant description: Update a Participant call: meeting-participants.updateaparticipant with: participantId: rest.participantId body: rest.body outputParameters: - type: object mapping: $. - type: mcp namespace: meeting-participants-mcp port: 9090 transport: http description: MCP adapter for Webex Meetings — Participants. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: list-meeting-participants description: List Meeting Participants hints: readOnly: true destructive: false idempotent: true call: meeting-participants.listmeetingparticipants with: max: tools.max meetingId: tools.meetingId breakoutSessionId: tools.breakoutSessionId meetingStartTimeFrom: tools.meetingStartTimeFrom meetingStartTimeTo: tools.meetingStartTimeTo hostEmail: tools.hostEmail joinTimeFrom: tools.joinTimeFrom joinTimeTo: tools.joinTimeTo timezone: tools.timezone outputParameters: - type: object mapping: $. - name: admit-participants description: Admit Participants hints: readOnly: false destructive: false idempotent: false call: meeting-participants.admitparticipants with: body: tools.body outputParameters: - type: object mapping: $. - name: call-out-sip-participant description: Call Out a SIP Participant hints: readOnly: false destructive: false idempotent: false call: meeting-participants.calloutasipparticipant with: body: tools.body outputParameters: - type: object mapping: $. - name: cancel-calling-out-sip-participant description: Cancel Calling Out a SIP Participant hints: readOnly: false destructive: false idempotent: false call: meeting-participants.cancelcallingoutasipparticipant with: body: tools.body outputParameters: - type: object mapping: $. - name: query-meeting-participants-email description: Query Meeting Participants with Email hints: readOnly: true destructive: false idempotent: false call: meeting-participants.querymeetingparticipantswithemail with: meetingId: tools.meetingId meetingStartTimeFrom: tools.meetingStartTimeFrom meetingStartTimeTo: tools.meetingStartTimeTo hostEmail: tools.hostEmail timezone: tools.timezone body: tools.body outputParameters: - type: object mapping: $. - name: get-meeting-participant-details description: Get Meeting Participant Details hints: readOnly: true destructive: false idempotent: true call: meeting-participants.getmeetingparticipantdetails with: participantId: tools.participantId hostEmail: tools.hostEmail outputParameters: - type: object mapping: $. - name: update-participant description: Update a Participant hints: readOnly: false destructive: false idempotent: true call: meeting-participants.updateaparticipant with: participantId: tools.participantId body: tools.body outputParameters: - type: object mapping: $.