The Webex APIs are RESTful. They use HTTP methods like GET, POST, PUT, and DELETE to perform actions on resources.
The API endpoints use base URLs like /messages
and accept request parameters in either JSON or x-www-form-urlencoded formats.
The Webex REST API requires authentication using an Authorization HTTP header with an access token.
The Search API for Webex Contact Center is a GraphQL-powered REST API that provides access to historical and real-time data.
This GraphQL API is used for reporting and analytics purposes in the Webex Contact Center.
There are also some REST APIs specifically for reporting in Webex Contact Center, such as Queue Statistics API, Agent Statistics API, and Agent Activities API.
There is mention of a SOAP API for Webex Meetings Network-Based Recording (NBR) Web Services. However, this appears to be a legacy or specific-use API rather than the primary API for Webex.
The primary API type for Cisco Webex is REST. While there are some specific use cases that employ GraphQL (for Webex Contact Center reporting) and SOAP (for Webex Meetings NBR), the main Webex platform APIs are RESTful.
Yes, the official Cisco Webex API does support webhooks. Here are the key points about Webex webhooks:
Webex provides a Webhooks API that allows you to subscribe to events in Webex and receive notifications when those events occur.
Webhooks allow your application to receive real-time data from Webex, keeping you updated on the state of your resources (e.g., rooms, messages, memberships).
You can subscribe to various types of events in Webex, including:
To create a webhook, you need to provide:
You can add a secret when creating a webhook, which Webex will use to generate an HMAC-SHA1 signature for each payload, allowing you to verify that the webhook came from Cisco.
In summary, the Cisco Webex API offers robust webhook support, allowing you to subscribe to a wide range of events and receive real-time notifications about changes in your Webex resources.
Here are the key points about the API rate limits for the Cisco Webex API:
The Webex API implements rate limiting to maintain appropriate service levels for all users [1].
Rate limiting policies are fine-grained and often overlap, making them complex to document exactly [1].
Most REST APIs enforce a rate limit of around 300 requests per minute, with higher dynamic quotas for the /people
and /messages
APIs [1].
When an API rate limit is hit, the API returns a 429 Too Many Requests response [1].
The 429 response includes a Retry-After
header indicating how long to wait before retrying the request [1].
Applications should implement logic to handle 429 errors and respect the Retry-After
header [1].
The Create a Meeting API has a limit of 3,000 calls per 24 hours [2].
There is a general limit of 2,400 requests per minute per account across the whole API [2].
Don't use end-user accounts for large workloads - use dedicated admin or bot accounts instead [1].
Bot accounts have less restrictive rate limits than end-user accounts [1].
Partition concurrent API workloads across separate users, as rate limits are shared per user [1].
Rate limits may vary depending on the specific API call and resource intensity [3].
The rate limiting system uses a rolling count strategy rather than resetting after a fixed time period [2].
Webex is collecting usage data to establish baselines and may adjust rate limits in the future [4].
In summary, while there are some specific documented limits, the overall rate limiting system is complex and dynamic. Applications should be designed to gracefully handle 429 errors and implement appropriate retry logic.
Based on the search results provided, I couldn't find a specific mention of the most recent version of the Cisco Webex API. However, I can provide some relevant information about the Webex API:
The Webex REST API is the modern API for Webex services [^2].
For Webex Meetings, there are XML API versions mentioned, with the latest versions being:
The Webex REST API provides direct access to the Cisco Webex Platform, allowing developers to create spaces, search for people, post messages, and more [^2].
Authentication for the Webex REST API requires a Webex account backed by Cisco Webex Common Identity (CI) [^2].
For Webex Meetings, there are different XML API versions for different Webex Business Suites [^3].
Cisco has been decommissioning older XML API versions. For example, XML API 10.0.0 for T31 sites was planned to be decommissioned in the 41.9.0 update [^4].
Use the most recent API version available for your specific Webex service (REST API for general Webex services, latest XML API for Webex Meetings).
Keep track of API updates and deprecations through Cisco's developer documentation and release notes.
Ensure your authentication methods are up-to-date, especially if transitioning from classic Webex sites to Control Hub managed sites [^4].
When using XML APIs, make sure to use the correct URL format: https://{siteName}.webex.com/WBXService/XMLService
[^4].
While I couldn't provide the exact most recent version number, this information should help you understand the current state of Webex APIs and guide you towards using the most appropriate and up-to-date version for your needs.
[^2]: Getting Started with the Webex REST API [^3]: Webex Meetings Release Notes [^4]: Cisco Webex Meetings API Updates Overview (API 41)
To get a developer account for Cisco Webex and create an API integration, follow these steps:
If you don't already have one, sign up for a free Webex account at developer.webex.com.
Go to developer.webex.com and log in with your Webex credentials.
Provide the following information:
Click the "Add Integration" button at the bottom of the page.
After successful registration, you'll receive:
Based on the search results provided, here is a list of data models you can interact with using the Cisco Webex API, along with what is possible for each:
This list covers the main data models and capabilities exposed by the Cisco Webex API. Each of these areas allows for various operations such as creating, reading, updating, and deleting (CRUD) data, as well as more specialized actions specific to each domain.