Skip to main content
PacketMentor logo
Open menu
← All topics
Automation & Programmability Foundational

Cisco Collaboration APIs: Webex, Devices, CUCM AXL and UDS

The Cisco collaboration APIs on CCNAAUTO 200-901 3.4: Webex (REST + webhooks), Webex Devices (xAPI over WebSocket or SSH), CUCM with AXL (SOAP) and UDS (REST). What each is, and when you reach for which.

Quick summary
  • Webex REST API = send messages, create rooms, build bots. Bearer token auth. Simple JSON.
  • Webex Devices xAPI = control the room system (volume, call, join a meeting). Over SSH, WebSocket, or HTTP.
  • CUCM has two APIs: AXL (SOAP/XML, provisioning + admin) and UDS (REST/JSON, read-only user data).

Mental model

Cisco objective 3.4 says “Describe the capabilities of Cisco collaboration platforms and APIs (Webex, Webex devices, Cisco Unified Communications Manager including AXL and UDS interfaces)”. Four APIs on the list.

APIWhat you doShape
Webex REST APISend messages, create rooms, build chat bots, admin usersREST + JSON + Bearer token
Webex Devices xAPIControl a Webex Room device (join a meeting, change volume, show branding)JSON RPC over SSH / WebSocket / HTTP
CUCM AXLAdmin + provisioning for on-prem phones (create a user, add a line, change a device pool)SOAP XML over HTTPS
CUCM UDSRead user data for self-care portals and phone directory lookupsREST + XML/JSON

Webex REST API

Hosted at https://webexapis.com. One of the friendliest APIs Cisco publishes.

Common endpoints

MethodURLPurpose
GET/v1/roomsList rooms (spaces) you are in
POST/v1/messagesSend a message to a room or person
POST/v1/webhooksRegister a webhook (push instead of poll)
GET/v1/people/meWho am I
POST/v1/roomsCreate a new space
GET/v1/membershipsList people in a room

Auth

Bearer token. For your own account go to developer.webex.com → My Webex Apps → Personal Access Token. For a bot or integration, OAuth2 flow issues the token.

Hello world: send a message

curl -X POST \
  -H "Authorization: Bearer $WEBEX_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"toPersonEmail":"you@example.com","text":"hello from the API"}' \
  https://webexapis.com/v1/messages

Why it is on the exam

Objective 3.9.b asks you to “Manage spaces, participants, and messages in Webex”. Two or three REST calls. See the Webex messages lab.

Webex Devices xAPI

The programmable control plane for the physical Webex Room / Desk / Board devices.

  • xStatus reads a status: current volume, who is logged in, meeting running yes/no.
  • xCommand runs an action: join a meeting, dial a number, start a presentation.
  • xConfiguration reads or sets a config value.

Access via:

  • SSH (ssh admin@device, then type xCommand ...).
  • WebSocket (programmable from code, auto-reconnects).
  • HTTP (one-shot calls).
  • Macros (JavaScript running inside the device for always-on local control).

Typical use: automate meeting join / leave; integrate with scheduling systems; display custom branding; listen for a specific event (person entered the room) and react.

CUCM AXL

AXL (Administrative XML) is the SOAP API for Cisco Unified Communications Manager. It is big (hundreds of endpoints) and old (SOAP from the WSDL era). You will use it for provisioning phones and users on-prem.

Example (simplified):

POST /axl/
Authorization: Basic <base64 user:pass>
Content-Type: text/xml
SOAPAction: "CUCM:DB ver=14.0 addUser"

<soapenv:Envelope xmlns:soapenv="...">
  <soapenv:Body>
    <ns:addUser>
      <user>
        <userid>alice</userid>
        <firstName>Alice</firstName>
        ...
      </user>
    </ns:addUser>
  </soapenv:Body>
</soapenv:Envelope>

Most teams wrap AXL with Python (zeep, requests + XML) rather than typing SOAP by hand.

CUCM UDS

UDS (User Data Services) is the REST read-only API, mainly used by self-service portals and phone client directory lookups.

Example:

curl https://cucm.example.com:8443/cucm-uds/users?last=smith

Returns an XML or JSON list of users matching the search.

When you reach for which

ScenarioAPI
”Build a chat bot that answers questions in Webex”Webex REST + webhooks
”List all my team’s Webex spaces and clean up old ones”Webex REST
”Press a button and have the Webex Room auto-join the next meeting”Webex Devices xAPI (xCommand Dial)
“Provision 500 new phones for a new office”CUCM AXL
”Build a phone directory search for the intranet”CUCM UDS

FAQ

Is Webex Teams the same as Webex? Cisco renamed Webex Teams → Webex Messaging a few years back. The messaging API is the same.

Can I run xAPI commands from the Webex REST API? Partially. Webex REST has a Devices resource for discovery and some control; for deep per-device automation you still use xAPI directly.

Is SOAP really still used? For CUCM provisioning, yes. The AXL interface has been around for 15+ years and vendors / integrators keep it alive. Nothing new in Cisco collab is being built on SOAP.

What dropped from the v1.1 blueprint? The 2020 DEVASC blueprint mentioned ChatBots explicitly; v1.1 removed it (bots are just a Webex REST + webhook use case, not a separate product). AXL and UDS interfaces were added to the CUCM mention.

Master this on a real network

Want this drilled into reflex?

1:1 weekly sessions, live feedback on your labs, and US interview prep: built around the CCNA Automation® exam blueprint. Free first session. No card on file until you decide.

Claim my free session →

Get the free CCNA 12-week roadmap

You're already reading up on Cisco Collaboration APIs: Webex, Devices, CUCM AXL and UDS. The roadmap is the order I recommend studying every CCNA topic in: with what to lab each week and where Cisco Collaboration APIs: Webex, Devices, CUCM AXL and UDS fits. A written personal reply, not an autoresponder. Expect it within one business day.

Personal reply from a senior network engineer. No third-party tracking. Unsubscribe any time.