Cisco APIs for Commerce Operations: A Brain Dump

Huh?

This is a post that I’m sure that only a few people in the Cisco partner community care about, but as someone who was looking to start inhaling Cisco back-end APIs around their commerce platforms (CCW, CCW-R, etc.), I spent a couple days kicking tires and figured I’d share what I learned. Brace yourself.

(There may be bullet points here that are wrong, so if you have something to add, please correct me.)

I needed to make API calls to do the following tasks:

  1. Lookup a serial number and have it return the part number and SMARTnet coverage status.
  2. Download a CCW Estimate and/or Quote.
  3. Download a CCW-R SMARTnet renewal Estimate and/or Quote.

The use cases for this are pretty obvious — it’s all about not having to manually duplicate data between our platforms. With a somewhat moderate level of effort, you can use these APIs to create a BOM estimate and bring it right into your eCommerce/CRM platform for quoting.

Legacy API Platform

I started with the legacy API Console (apiconsole.cisco.com). When you log in and click Documentation and External APIs, you get a list of a zillion APIs. Which you may or may not have access to, or may or may not have any documentation listed. Or may or may not have any contact information for access.

You’ll see a bunch of stuff like this:

There are three environments for the same catalog. CCW Catalog is the production/real-time, POE stands for Partner Onboarding Environment — a testbed, and UAT is (I’m assuming) User Acceptance Testing. I don’t know where to get URLs for the UAT environment.

Based on what I’ve read, Cisco takes the POE environments offline every quarter for a couple of weeks, so as of writing this, the POE environment is offline.

Moving on….

Let’s say you want to leverage the CCW Catalog. Click through until you see the Request Access button, and an email form will pop up. To request access to the Commerce APIs (including CCW Catalog, Quote, Estimate), you need to email cisco_commerce_api_request@cisco.com with an email form.

As another side note, there’s an application called Hello. It’s the API Hello World. You need to be able to authenticate to the OAUTH2 endpoint with your credentials and then it’ll echo whatever you send to it back to you. Before you get access, you have to demonstrate that you can do this.

It appears that the APIs that are used with CCW (specifically Estimate and Quoting) and all contained here.

The New Portal for CCW-R

Moving on to CCW-R, that API is handled out of a different API Console (http://cs.co/apiplatform). The support email address is cisco_commerce_renewals_api_request@cisco.com.

The API to request access to is ccwrenewalsquote. You have to search for it in the list of 233 APIs.

This API is for CCW Renewals only. If you want Contract Management (merging, moving and quoting, that’s done out of the apiconsole.cisco.com portal.

Note as of January 2021 I have not personally verified this. It’s next on my CCW list of things to tackle. If you have information to confirm or deny this, please let me know!

You email the same alias (cisco_commerce_renewals_api_request@cisco.com) for access to both.

Skipping ahead, in the API Docs Portal, Cisco lists two different APIs:

Quoting-Mulesoft refer to the SMARTnet APIs that are available on this site:

Quoting-Mashery refer to the SMARTnet APIs that are available on this site:

The Good Stuff — API Docs Portal

I stumbled on the API Docs portal (https://apidocs-prod.cisco.com/) which *should* have all the documentation and links for APIs as well as how to request access. Note that they say it’s in beta, but it seems complete.

It allows you to run sample queries against the POE environments, and helps you view the queries and responses in XML or JSON formatting.

API Nirvana.

This seems to be the central repository for all things CCW and CCW-R, but it doesn’t have anything to do with looking up serial numbers.

Onwards to….

Service and Support APIs

Cisco publishes Service and Support APIs. Broadly, here’s what each of these do:

Support APIs (https://developer.cisco.com/site/support-apis/) allow you to access bug information, support cases, end of sale, product information (including serial numbers) and RMA information, all through APIs.

To get access to the Support APIs, you need to either be a Cisco Partner Support Service (PSS) customer — which is a Cisco partner that runs its own NOC where they take the first line calls for SMARTnet, or have ANY Cisco SMARTnet Total Care (SNT, SNTP, etc) contract.

To get API access, you need to provision your account at https://services.cisco.com, or if you already have an account, you need to get your Delegated Administrator to set you up with API access in the https://cdceb.cloudapps.cisco.com/csam/ portal.

January 2021 Update: This seems to be the biggest pain point if you want serial number/device coverage info. Here’s the cheat sheet:

  • If your company already has a Delegated Administrator, that person needs to go into the cdceb portal and grant your CCO login access to the API Developer role. That opens up the API access within Cisco’s API Console.
  • If your company does not have a Delegated Administrator (if you don’t do anything with the Total Care portion of SMARTnet — specifically deploying the collectors — you may not have an account), you will need to sign up and become the Designated Administrator. At that point, you can then assign API access to those in need, but be aware that as the DA, all requests need to come through you unless you add additional admins.

Once you’re in that portal, you need to make sure that any user that needs API access is assigned the API Developer role.

Top Gear Top Tip: When I assigned myself the API Developer role, it wiped out my CCW API access. Heed caution, or better yet, use discreet accounts.

When you are assigning users, make sure the user is associated to the company first, then assign the role. You’d think that the CCOs would sync, but NOPE!

Once the user is associated, go to User Role Assignments and assign that user the Smart Net Total Care: API Developer role.

Make sure the user is here first.
The user needs the Smart Net Total Care: API Developer role attached.

Service APIs (https://developer.cisco.com/docs/service-apis) are the other consumable API, consisting of customer information, collections, etc. You can read about each service description at the link, but it does have APIs for inventory and customer information.

In Summary

I hope this helps people looking for Cisco Commerce and Endpoint API information. Please send updates/corrections.

Links and Email Addresses

(2/23/2020) This is the link for CCW and CCW-R training. If you need to understand quotes, estimates or deals (CCW), or contract entitlement and management (CCW-R), the documents in that link will point you in the right direction.

(1/22/2021) Updated by fixing screenshots and adding a whole bunch of new stuff.

(4/27/2021) Added CCW-R Contract Management API doc to links list.

If there are questions, reach out to me on Twitter or on Webex Teams (look in the screenshots for my email).

--

--

--

Data center/security/collab hack, CCIE #5026, focusing on automation, programmability, operational efficiency and getting rid of technical debt.

Love podcasts or audiobooks? Learn on the go with our new app.

Exploring AWS Secret Manager

Agile Software Development & Scrum

Alana’s R‘n’O Column°1

Creating a Terraform Remote State Backend on Amazon S3.

5 key points in enjoying writing code for a living

From Flutter to Flight 6: Remodeling

How to use Python to Create Financial Chart in Excel

Week 4: feature engineering

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Liam Keegan

Liam Keegan

Data center/security/collab hack, CCIE #5026, focusing on automation, programmability, operational efficiency and getting rid of technical debt.

More from Medium

Storing Money and Float Precision

Project Manager absence best practices

More Like This Query (MLT) — Java API Client

Benefits of Outsourcing Java Development Services

Advantages of Outsourcing Java Development Services