Skip to main content

Getting started

Welcome to the CDO public API

The goal of our public API is to provide you with a simple and effective way to perform a lot of what you would normally be able to do in the CDO UI, but in code.

To use this API, you will need to know GraphQL. It is very easy to learn, and their official guide provides a thorough, light read. We chose GraphQL because it is flexible, strongly typed, and auto-documenting.

To find the full schema documentation, simply go to the GraphQL Playground, and click on the docs tab on the right hand side of the page.


Samples

To help you get started, we have prepared a bunch of sample GraphQL queries and mutations that you can experiment with right away!

important

Before running the samples, you must first provide your API token to the playground.
Click on HTTP Headers in the bottom left corner, and replace <Enter your API token here> with your token. This will fix any errors being displayed, and should perform the query successfully.

When you reload the Samples page, all of your changes, including the API token that you provided, will be reset. If you want a persistent playground session to work with, use the empty playground . However, as a current limitation, do be warned that if you visit the Samples page again, your empty playground data will reset.

Some of the queries will need modification before running them, so you don't end up with bogus data in your account. The required changes are mostly in mutation quries, where it is creating or updating data. Make sure you change any boilerplate, and ensure all the values being set are correct. (You can always delete incorrect data manually if you accidentally run the query before making these changes)


Empty Playground

For your convenience, we are also providing a raw empty playground with no preset settings. This means you will need to provide your API token by clicking HTTP Headers in the bottom left corner of the screen, and pasting this in (with the correct API token):

{
"Authorization": "Bearer <Enter your API token here>"
}

Once you have done this, you can start writing queries! Have a look at the auto-generated docs tab on the right hand side of the playground to see the kind of queries you can write. The playground's intellisense should help too.


Endpoints

How do I decide what endpoint URL to use?

We have prepared this table to help you determine what endpoint URL you should hit when making API requests. This is the same URL you need to enter in the Playground.

RegionEndpoint you should useDescription
UShttps://edge.us.cdo.cisco.com/api/publicUse if you normally access CDO from www.defenseorchestrator.com
EUhttps://edge.eu.cdo.cisco.com/api/publicUse if you normally access CDO from www.defenseorchestrator.eu
APJhttps://edge.apj.cdo.cisco.com/api/publicUse if you normally access CDO from www.apj.cdo.cisco.com

How do I start coding with the CDO Public API?

While you are able use any workflow you want with the GraphQL API, here is, in our opinion, the best way to start programming in TypeScript:

First, set up the GraphQL code generator

Once you have followed the setup wizard, make sure your codegen.yml config has the correct authorization headers, something like this:

schema:
- https://edge.<DESIRED-REGION-HERE>.cdo.cisco.com/api/public:
headers:
Authorization: Bearer <YOUR-TOKEN-HERE>

We also recommend the Apollo client library to help you write code to interface with our GraphQL API.