
This course includes our updated coding exercises so you can practice your skills as you learn.
See a demo
The main course introduction, covering a few of the key features of the BMC Discovery API and how it can be used for development.
This video covers the features of the Swagger UI and how to access it.
This video will lead you through testing the Swagger API and reviewing what the results look like without an authorised user.
This video will lead you through creating an authorised user for use with the Swagger UI, then authorising and testing an API endpoint in the Swagger UI.
This video will guide you through testing the /admin/about request and explaining more about response details, including:
The request URL
The response code
The response headers
This video will lead you through a complex GET request, which requires parameters to be set.
This video will guide you through setting up and sending JSON data via a POST request.
This video explores what happens if we try to get non-JSON data from the Swagger UI.
This video offers a summary of what has been learned about using the Swagger UI.
This video gives an overview of cURL.
You can use curl to read a webpage, write a webpage, and download a file.
This video will guide you through a quick demo of cURL on Linux or MacOS. You will learn:
How to run cURL
How to ignore self-signed certificate warnings
This video will cover how to use cURL on PowerShell.
In this video you will be guided through
Creating an API user for the command line
Generating an authorisation token
This video will cover how to generate the cURL command automatically using Swagger. You will be able to:
Use Swagger to generate a cURL command automatically
Copy and paste the the cURL command into the command line
In this bonus video, you'll be guided through the PowerShell command-line tool 'Invoke-WebRequest', in comparison to its more popular PowerShell command-line counterpart, 'curl'.
In this video, we review the fundamentals of how to call an API from the command line.
You learned how to issue requests for different endpoints, and what parameters need to be set for each different request.
This video will cover what Postman is and how to use it for web development, API development, and more.
This video will cover how to install Postman on a Linux desktop, with brief instructions on where to find Postman for MacOS and Windows.
This video will cover how to configure Postman for Discovery API access. This includes:
Adding a Bearer Token
Creating a Collection
Creating a Request
This video will guide you through setting up a GET request which will include:
Setting the URL
Adding query parameters
SSL certificates
Sending the request
Reading body output
This video will guide you through setting up a PATCH request which will include:
Setting the URL
Adding and editing a JSON body parameter
Sending the request
Reading the status of the request
This video provides a summary of what we've learned about using Postman.
This video provides an overview of the basics of the Python Requests module.
This video will lead you through making a simple GET request using Python IDLE prompt. You will be able to:
Install Python3
Install Requests
Import requests and make an API call
Print the results
This video will lead you through making a simple GET request using Python IDLE prompt. You will be able to:
Make a POST request
Pass a JSON body parameter in to the requests API call
Print the results
This video gives an overview of another module developed by Traversys called Tideway which uses the 'requests' module.
You will be able to:
Use pip to install tideway
Import tideway
Change the API version used in tideway
Run a search query using tideway
This video will guide you through building your first API script with Python. With this script you will be able to:
Create a new Oauth2 credential
Run a command to retrieve a list of credentials from the vault
This video will guide you through preparing the JSON payload for a Data Source credential. You will learn and understand
The parameters needed for an Oauth2 credential
The format of the JSON body
This video will guide you through updating your API script to POST the new Data Source credential. You will learn:
The tideway command needed to generate a new Data Source Oauth2 credential
How to view the generated Data Source credential
This video will guide you through creating the login user for the Oauth2 API and testing the credentials.
This video summarises Python Scripting for the Discovery API and some of the things you've learned so far.
This video will provide an overview of data sources and how they're used.
This video will provide detailed explanation of the discovery.dataSource() function in TPL. In this session, you will:
Create a new pattern module which will use the data source created in the last section to make an API call
Review the Data Source Access results
This video will show how to handle results from a TPL API call. In this session, you will:
Add debug logging to your pattern
Review the logging output in a manual run
This video will expand on the last and show you how to parse JSON results the API call. In this session, you will:
Learn to use the json.decode() function
Learn to use the json.jmespath() function
Log the maximum API version from '/api/about' output
This video will expand on the last and show you how to encode JSON for a POST call from TPL. In this session, you will:
Use the json.encode() function
Send a search query via API
Log the results of the search query
This video will summarise what we've learned about integrating the Discovery API with TPL.
This video will summarise Event Sources, what they are and how to use them.
This video will guide you through creating an Event Source.
This video will guide you to create the first part of a validation script to generate a random number. You will:
Create a new Python script
Import the randint function to generate a random number
In this video you'll be guided to generate an Event using your validation script. In this session you will:
Generate a new file that contains the random number
Create the Event body JSON
Send an Event to Discovery with the random number
Building on the previous sessions, you will generate a new Data Source for SSH to your Linux server. You will:
Utilise the script from the last section for the new Data Source
Add a function to check for the existence of the Data Source before posting
This video will guide you through validating the random Event number using TPL.
You will create a TPL file that will trigger on the ExternalEvent and compare the number value against the generated file.
This video will take you through the final part of the script to upload the TPL file from the previous session. In conclusion you will be able to:
Generate a random number and store it in a local file
Create a new Data Source credential, if necessary
Upload a TPL file which will trigger from your Event
Send the Event to Discovery with the random number
Trigger the TPL which will compare value on the Event with the value in the File
Update the ExternalEvent with a confirmation of the validity
This final summary covers what you've learned about using Event Sources with the Discovery API.
A full-length course to learn how to use the BMC Discovery API.
This course is designed to help professionals work with the BMC Discovery API. It includes hands-on lessons that show you how to use well-known tools like Postman and cURL to interact with the API, as well as more advanced sessions on using Python and working with data.
BMC Discovery provides a discovery engine that uncovers insights and relationships across heterogeneous data. The BMC Discovery API provides a simple RESTful interface for accessing data from a BMC Discovery instance.
The course material will guide you through the steps for getting started with the API, including authentication and authorisation, as well as basic CRUD operations. This will enable you to use the API to create custom queries, explore your data and manage administration through automated API integrations.
Features:
Quick introduction to Swagger UI and Postman
How to use API with Python
How to integrate API with TPL
How to push events to Discovery via the API
Practical code assignments and exercises
At the end of this course you will have:
Thorough understanding of how to use Swagger
Thorough understanding of how to setup an API integration
Built python scripts for automating stop/start of scanning, uploading knowledge
Built a TPL pattern module that integrates data sources and the API
Built an integration to push Events into Discovery
If you're a developer who wants to try out the BMC Discovery API for the first time, this course is for you. You'll get hands-on experience in building simple API requests from scratch and then deploying it to a production environment.