{ "opencollection": "1.0.0", "info": { "name": "Webex Admin Address Book Recordings API", "version": "1.0.0" }, "items": [ { "info": { "name": "Recordings", "type": "folder" }, "items": [ { "info": { "name": "List Recordings", "type": "http" }, "http": { "method": "GET", "url": "{{baseUrl}}/recordings", "headers": [ { "name": "timezone", "value": "UTC" } ], "params": [ { "name": "max", "value": "", "type": "query", "description": "Maximum number of recordings to return in a single page. `max` must be equal to or greater than `1` and equal to or less than `100`." }, { "name": "from", "value": "2020-07-12T09:30:00+08:00", "type": "query", "description": "Starting date and time (inclusive) for recordings to return, in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. `from` cannot be after `to`." }, { "name": "to", "value": "2020-07-31T09:30:00+08:00", "type": "query", "description": "Ending date and time (exclusive) for List recordings to return, in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. `to` cannot be before `from`." }, { "name": "meetingId", "value": "f91b6edce9864428af084977b7c68291_I_166641849979635652", "type": "query", "description": "Unique identifier for the parent meeting series, scheduled meeting, or meeting instance for which recordings are being requested. If a meeting series ID is specified, the operation returns an array of recordings for the specified meeting series. If a scheduled meeting ID is specified, the operation returns an array of recordings for the specified scheduled meeting. If a meeting instance ID is specified, the operation returns an array of recordings for the specified meeting instance. If no ID is specified, the operation returns an array of recordings for all meetings of the current user. When `meetingId` is specified, the `siteUrl` parameter is ignored." }, { "name": "hostEmail", "value": "john.andersen@example.com", "type": "query", "description": "Email address for the meeting host. This parameter is only used if the user or application calling the API has the required [admin-level meeting scopes](/docs/meetings#adminorganization-level-authentication-and-scopes). If set, the admin may specify the email of a user in a site they manage and the API will return recordings of that user." }, { "name": "siteUrl", "value": "example.webex.com", "type": "query", "description": "URL of the Webex site from which the API lists recordings. If not specified, the API lists recordings from all of a user's sites. All available Webex sites and the preferred site of the user can be retrieved by the [Get Site List](/docs/api/v1/meeting-preferences/get-site-list) API." }, { "name": "integrationTag", "value": "dbaeceebea5c4a63ac9d5ef1edfe36b9", "type": "query", "description": "External key of the parent meeting created by an integration application. This parameter is used by the integration application to query recordings by a key in its own domain, such as a Zendesk ticket ID, a Jira ID, a Salesforce Opportunity ID, etc. An integrationTag created by one client cannot be accessed or used as a filtering parameter by another client. For example, if a meeting has an `integrationTag` of \"Sales\" which is created by the client behind the developer portal, then this integrationTag can't be accessed on the meeting or its recordings by another client. Neither can it be used to filter meetings or recordings by a client other than the one that created the integrationTag of \"Sales\"." }, { "name": "topic", "value": "John's Meeting", "type": "query", "description": "Recording's topic. If specified, the API filters recordings by topic in a case-insensitive manner." }, { "name": "format", "value": "ARF", "type": "query", "description": "Recording's file format. If specified, the API filters recordings by format." }, { "name": "serviceType", "value": "MeetingCenter", "type": "query", "description": "The service type for recordings. If this item is specified, the API filters recordings by service-type." }, { "name": "status", "value": "available", "type": "query", "description": "Recording's status. If not specified or `available`, retrieves recordings that are available. Otherwise, if specified as `deleted`, retrieves recordings that have been moved into the recycle bin. The `purged` status only applies if the user calling the API is a Compliance Officer and `meetingId` is specified." } ] }, "docs": "Lists recordings. You can specify a date range, a parent meeting ID, and the maximum number of recordings to return.\n\nOnly recordings of meetings hosted by or shared with the authenticated user will be listed.\n\nThe list returned is sorted in descending order by the date and time that the recordings were created.\n\nLong result sets are split into [pages](/docs/basics#pagination).\n\n* If `meetingId` is specified, only recordings associated with the specified meeting will be listed. **NOTE**: when `m" }, { "info": { "name": "List Recordings For an Admin or Compliance Officer", "type": "http" }, "http": { "method": "GET", "url": "{{baseUrl}}/admin/recordings", "headers": [ { "name": "timezone", "value": "UTC" } ], "params": [ { "name": "max", "value": "", "type": "query", "description": "Maximum number of recordings to return in a single page. `max` must be equal to or greater than `1` and equal to or less than `100`." }, { "name": "from", "value": "2020-07-12T09:30:00+08:00", "type": "query", "description": "Starting date and time (inclusive) for recordings to return, in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. `from` cannot be after `to`. The interval between `from` and `to` must be within 30 days. If `to` is specified, the default value for `from` is `to` minus 7 days. If `to` is also not specified, the default value for `from` is current date and time minus 7 days." }, { "name": "to", "value": "2020-07-31T09:30:00+08:00", "type": "query", "description": "Ending date and time (exclusive) for List recordings to return, in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. `to` cannot be before `from`. The interval between `from` and `to` must be within 30 days. If `from` is specified, the default value for `to` is `from` plus 7 days. If `from` is also not specified, the default value for `to` is the current date and time." }, { "name": "meetingId", "value": "f91b6edce9864428af084977b7c68291_I_166641849979635652", "type": "query", "description": "Unique identifier for the parent meeting series, scheduled meeting, or meeting instance for which recordings are being requested. If a meeting series ID is specified, the operation returns an array of recordings for the specified meeting series. If a scheduled meeting ID is specified, the operation returns an array of recordings for the specified scheduled meeting. If a meeting instance ID is specified, the operation returns an array of recordings for the specified meeting instance. If not specified, the operation returns an array of recordings for all the current user's meetings. When `meetingId` is specified, the `siteUrl` parameter is ignored." }, { "name": "siteUrl", "value": "example.webex.com", "type": "query", "description": "URL of the Webex site which the API lists recordings from. If not specified, the API lists recordings from user's preferred site. All available Webex sites and preferred site of the user can be retrieved by [Get Site List](/docs/api/v1/meeting-preferences/get-site-list) API." }, { "name": "integrationTag", "value": "dbaeceebea5c4a63ac9d5ef1edfe36b9", "type": "query", "description": "External key of the parent meeting created by an integration application. This parameter is used by the integration application to query recordings by a key in its own domain such as a Zendesk ticket ID, a Jira ID, a Salesforce Opportunity ID, etc. An integrationTag created by one client cannot be accessed or used as a filtering parameter by another client. For example, if a meeting has an `integrationTag` of \"Sales\" which is created by the client behind the developer portal, then this integrationTag can't be accessed on the meeting or its recordings by another client. Neither can it be used to filter meetings or recordings by a client other than the one that created the integrationTag of \"Sales\"." }, { "name": "topic", "value": "John's Meeting", "type": "query", "description": "Recording topic. If specified, the API filters recordings by topic in a case-insensitive manner." }, { "name": "format", "value": "ARF", "type": "query", "description": "Recording's file format. If specified, the API filters recordings by format." }, { "name": "serviceType", "value": "MeetingCenter", "type": "query", "description": "The service type for recordings. If specified, the API filters recordings by service type." }, { "name": "status", "value": "available", "type": "query", "description": "Recording's status. If not specified or `available`, retrieves recordings that are available. If specified as `deleted`, retrieves recordings that have been moved to the recycle bin. Otherwise, if specified as `purged`, retrieves recordings that have been purged from the recycle bin." } ] }, "docs": "List recordings for an admin or compliance officer. You can specify a date range, a parent meeting ID, and the maximum number of recordings to return.\n\nThe list returned is sorted in descending order by the date and time that the recordings were created.\n\nLong result sets are split into [pages](/docs/basics#pagination).\n\n* If `meetingId` is specified, only recordings associated with the specified meeting will be listed. Please note that when `meetingId` is specified, parameters of `siteUrl`, `fr" }, { "info": { "name": "Delete a Recording By an Admin", "type": "http" }, "http": { "method": "DELETE", "url": "{{baseUrl}}/admin/recordings/:recordingId", "params": [ { "name": "recordingId", "value": "4f914b1dfe3c4d11a61730f18c0f5387", "type": "path", "description": "A unique identifier for the recording." } ] }, "docs": "Removes a recording with a specified recording ID by an admin. The deleted recording cannot be recovered. It will be inaccessible to regular users (host, attendees and shared) or an admin, but it will be still available to the Compliance Officer.\n\nAny recording on a site which is managed by the admin can be deleted by him.\n\nThe `temporaryDirectDownloadLinks` of a recording which are retrieved by the [Get Recording Details](/docs/api/v1/recordings/get-recording-details) API are still available to" }, { "info": { "name": "Get Recording Details", "type": "http" }, "http": { "method": "GET", "url": "{{baseUrl}}/recordings/:recordingId", "headers": [ { "name": "timezone", "value": "UTC" }, { "name": "siteUrl", "value": "example.webex.com" } ], "params": [ { "name": "recordingId", "value": "4f914b1dfe3c4d11a61730f18c0f5387", "type": "path", "description": "A unique identifier for the recording." }, { "name": "hostEmail", "value": "john.andersen@example.com", "type": "query", "description": "Email address for the meeting host. Only used if the user or application calling the API has required [admin-level meeting scopes](/docs/meetings#adminorganization-level-authentication-and-scopes). If set, the admin may specify the email of a user in a site they manage, and the API will return recording details of that user." } ] }, "docs": "Retrieves details for a recording with a specified recording ID.\n\nOnly recordings of meetings hosted by or shared with the authenticated user may be retrieved.\n\n#### Request Header\n\n* `timezone`: *[Time zone](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List) in conformance with the [IANA time zone database](https://www.iana.org/time-zones). The default is UTC if `timezone` is not defined.*\n\n* `siteUrl`: Optional request header parameter. If specified, retrieve the recording deta" }, { "info": { "name": "Delete a Recording", "type": "http" }, "http": { "method": "DELETE", "url": "{{baseUrl}}/recordings/:recordingId", "params": [ { "name": "recordingId", "value": "4f914b1dfe3c4d11a61730f18c0f5387", "type": "path", "description": "A unique identifier for the recording." }, { "name": "hostEmail", "value": "john.andersen@example.com", "type": "query", "description": "Email address for the meeting host. Only used if the user or application calling the API has the required [admin-level meeting scopes](/docs/meetings#adminorganization-level-authentication-and-scopes). If set, the admin may specify the email of a user in a site they manage and the API will delete a recording of that user." } ], "body": { "type": "json", "data": "{}" } }, "docs": "Removes a recording with a specified recording ID. The deleted recording cannot be recovered. If a Compliance Officer deletes another user's recording, the recording will be inaccessible to regular users (host, attendees and shared), but will be still available to the Compliance Officer.\n\nOnly recordings of meetings hosted by the authenticated user can be deleted.\n\nThe `temporaryDirectDownloadLinks` of a recording which are retrieved by the [Get Recording Details](/docs/api/v1/recordings/get-rec" }, { "info": { "name": "Move Recordings into the Recycle Bin", "type": "http" }, "http": { "method": "POST", "url": "{{baseUrl}}/recordings/softDelete", "params": [ { "name": "hostEmail", "value": "john.andersen@example.com", "type": "query", "description": "Email address for the meeting host. Only used if the user or application calling the API has the required [admin-level meeting scopes](/docs/meetings#adminorganization-level-authentication-and-scopes). If set, the admin may specify the email of a user in a site they manage and the API will move recordings into recycle bin of that user" } ], "body": { "type": "json", "data": "{}" } }, "docs": "Move recordings into the recycle bin with recording IDs. Recordings in the recycle bin can be recovered by [Restore Recordings from Recycle Bin](/docs/api/v1/recordings/restore-recordings-from-recycle-bin) API. If you'd like to empty recordings from the recycle bin, you can use [Purge Recordings from Recycle Bin](/docs/api/v1/recordings/purge-recordings-from-recycle-bin) API to purge all or some of them.\n\nOnly recordings of meetings hosted by the authenticated user can be moved into the recycle " }, { "info": { "name": "Restore Recordings from Recycle Bin", "type": "http" }, "http": { "method": "POST", "url": "{{baseUrl}}/recordings/restore", "params": [ { "name": "hostEmail", "value": "john.andersen@example.com", "type": "query", "description": "Email address for the meeting host. This parameter is only used if the user or application calling the API has the required [admin-level meeting scopes](/docs/meetings#adminorganization-level-authentication-and-scopes). If set, the admin may specify the email of a user in a site they manage and the API will restore recordings of that user." } ], "body": { "type": "json", "data": "{}" } }, "docs": "Restore all or some recordings from the recycle bin. Only recordings of meetings hosted by the authenticated user can be restored from recycle bin.\n\n* If `restoreAll` is `true`, `recordingIds` should be empty.\n\n* If `restoreAll` is `false`, `recordingIds` should not be empty and its maximum size is `100`.\n\n* All the IDs of `recordingIds` should belong to the site of `siteUrl` or the user's preferred site if `siteUrl` is not specified." }, { "info": { "name": "Purge Recordings from Recycle Bin", "type": "http" }, "http": { "method": "POST", "url": "{{baseUrl}}/recordings/purge", "params": [ { "name": "hostEmail", "value": "john.andersen@example.com", "type": "query", "description": "Email address for the meeting host. Only used if the user or application calling the API has the required [admin-level meeting scopes](/docs/meetings#adminorganization-level-authentication-and-scopes). If set, the admin may specify the email of a user in a site they manage and the API will purge recordings from recycle bin of that user." } ], "body": { "type": "json", "data": "{}" } }, "docs": "Purge recordings from recycle bin with recording IDs or purge all the recordings that are in the recycle bin.\n\nOnly recordings of meetings hosted by the authenticated user can be purged from recycle bin.\n\n* If `purgeAll` is `true`, `recordingIds` should be empty.\n\n* If `purgeAll` is `false`, `recordingIds` should not be empty and its maximum size is `100`.\n\n* All the IDs of `recordingIds` should belong to the site of `siteUrl` or the user's preferred site if `siteUrl` is not specified." }, { "info": { "name": "Share a Recording", "type": "http" }, "http": { "method": "POST", "url": "{{baseUrl}}/recordings/:recordingId/accessList", "params": [ { "name": "recordingId", "value": "4f914b1dfe3c4d11a61730f18c0f5387", "type": "path", "description": "A unique identifier for the recording." } ], "body": { "type": "json", "data": "{}" } }, "docs": "Share or unshare a recording with other users by recording ID and email addresses." }, { "info": { "name": "Share a Recording Link", "type": "http" }, "http": { "method": "POST", "url": "{{baseUrl}}/recordings/accessList", "body": { "type": "json", "data": "{}" } }, "docs": "Share or unshare a recording with other users by recording link and email addresses." }, { "info": { "name": "List Group Recordings", "type": "http" }, "http": { "method": "GET", "url": "{{baseUrl}}/group/recordings", "headers": [ { "name": "timezone", "value": "UTC" }, { "name": "hostEmail", "value": "john.andersen@example.com" } ], "params": [ { "name": "personId", "value": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9kNDdiMmU3ZC01ZTBmLTRmNjktYWVmNC1lNGZmOTBhZWE3Yzk", "type": "query", "description": "Person ID of the user whose recordings will be retrieved. The person ID can be retrieved from the [People APIs](/docs/api/v1/people), e.g. [Lit People](/docs/api/v1/people/list-people). Note that a person ID retrieved from the People APIs is a Base64-encoded string, e.g. `Y2lzY29zcGFyazovL3VzL1BFT1BMRS9kNDdiMmU3ZC01ZTBmLTRmNjktYWVmNC1lNGZmOTBhZWE3Yzk`. The person ID in the raw UUID format which is the last part of the Base64-decoded string, e.g. `d47b2e7d-5e0f-4f69-aef4-e4ff90aea7c9`, is also supported. The `personId` parameter is optional, but one of the `personId` parameter and `hostEmail` header must be specified." }, { "name": "max", "value": "", "type": "query", "description": "Maximum number of recordings to return in a single page. `max` must be equal to or greater than `1` and equal to or less than `100`." }, { "name": "from", "value": "2020-07-12T09:30:00+08:00", "type": "query", "description": "Starting date and time (inclusive) for recordings to return, in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. `from` cannot be after `to`. The interval between `from` and `to` must be within 30 days." }, { "name": "to", "value": "2020-07-31T09:30:00+08:00", "type": "query", "description": "Ending date and time (exclusive) for List recordings to return, in any [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. `to` cannot be before `from`. The interval between `from` and `to` must be within 30 days." }, { "name": "siteUrl", "value": "example.webex.com", "type": "query", "description": "URL of the Webex site which the API lists recordings from. If not specified, the API lists recordings from user's preferred site. All available Webex sites and preferred site of the user can be retrieved by [Get Site List](/docs/api/v1/meeting-preferences/get-site-list) API." }, { "name": "integrationTag", "value": "dbaeceebea5c4a63ac9d5ef1edfe36b9", "type": "query", "description": "External key of the parent meeting created by an integration application. This parameter is used by the integration application to query recordings by a key in its own domain such as a Zendesk ticket ID, a Jira ID, a Salesforce Opportunity ID, etc. An integrationTag created by one client cannot be accessed or used as a filtering parameter by another client. For example, if a meeting has an `integrationTag` of \"Sales\" which is created by the client behind the developer portal, then this integrationTag can't be accessed on the meeting or its recordings by another client. Neither can it be used to filter meetings or recordings by a client other than the one that created the integrationTag of \"Sales\"." }, { "name": "topic", "value": "John's Meeting", "type": "query", "description": "Recording topic. If specified, the API filters recordings by topic in a case-insensitive manner." }, { "name": "format", "value": "ARF", "type": "query", "description": "Recording's file format. If specified, the API filters recordings by format." }, { "name": "serviceType", "value": "MeetingCenter", "type": "query", "description": "The service type for recordings. If specified, the API filters recordings by service type." } ] }, "docs": "List group recordings for a service app which has group recording access. You can specify a date range, the maximum number of recordings to return, and `personId` or `hostEmail` of whom the recordings will be retrieved.\n\n* The list returned is sorted in descending order by the date and time that the recordings were created.\n\n* Only recordings which are in the `available` status and not shared by others can be listed. Those in the `deleted` or `purged` status or shared by others can't be listed.\n" }, { "info": { "name": "Get Group Recording Details", "type": "http" }, "http": { "method": "GET", "url": "{{baseUrl}}/group/recordings/:recordingId", "headers": [ { "name": "timezone", "value": "UTC" }, { "name": "hostEmail", "value": "john.andersen@example.com" } ], "params": [ { "name": "personId", "value": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9kNDdiMmU3ZC01ZTBmLTRmNjktYWVmNC1lNGZmOTBhZWE3Yzk", "type": "query", "description": "Person ID of the user whose recordings will be retrieved. The person ID can be retrieved from the [People APIs](/docs/api/v1/people), e.g. [Lit People](/docs/api/v1/people/list-people). Note that a person ID retrieved from the People APIs is a Base64-encoded string, e.g. `Y2lzY29zcGFyazovL3VzL1BFT1BMRS9kNDdiMmU3ZC01ZTBmLTRmNjktYWVmNC1lNGZmOTBhZWE3Yzk`. The person ID in the raw UUID format which is the last part of the Base64-decoded string, e.g. `d47b2e7d-5e0f-4f69-aef4-e4ff90aea7c9`, is also supported. The `personId` parameter is optional, but one of the `personId` parameter and `hostEmail` header must be specified." }, { "name": "recordingId", "value": "4f914b1dfe3c4d11a61730f18c0f5387", "type": "path", "description": "A unique identifier for the recording." } ] }, "docs": "Retrieves details for a group recording for a service app which has group recording access.\n\n* Only recordings which are in the `available` status and not shared by others can be listed. Those in the `deleted` or `purged` status or shared by others can't be listed.\n\n* One of the `personId` parameter and `hostEmail` header must be specified so that only recordings of meetings hosted by the person of `personId` or `hostEmail` will be returned.\n\n#### Request Header\n\n* `timezone`: *[Time zone](https" } ] } ], "bundled": true }