6.2. Accessing the REST API Client

In this lab, you will need to log into the Client VM desktop to launch VS Code and access the Thunder Client extension. Then, you will send REST API requests to the F5 BIG-IP Central Manager in order to create and deploy an SSL Orchestrator configuration (with an HTTPS application).

Thunder Client is a lightweight REST API client for testing APIs. It has a similar look and feel to the Postman REST API tool, but implemented as a Visual Studio Code (VS Code) extension. If you choose to use Postman outside of the F5 UDF lab environment, the Thunder Client can convert its collections and environments to Postman format.

6.2.1. Log into the Client Remote Desktop

  1. In the UDF Deployment tab, find the Ubuntu-Server resource.

  2. Under Ubuntu-Server, click on ACCESS to see the list of available access methods.

  3. Click on WebRDP to open a new browser tab that connects to the Client desktop GUI.

    ../../_images/vscode-11.png
  4. Enter the username (user) and password (user) to login.

    ../../_images/vscode-21.png

This is a basic Ubuntu Linux VM instance running an XFCE desktop environment.

6.2.2. Access Thunder Client Extension

You will now set up the Thunder Client extension in VS Code.

  1. Click on the VS Code application shortcut in the command bar (bottom of the screen).

    ../../_images/vscode-3.png

    Caution

    VS Code might display a notification (bottom-right corner) that a newer version is available for download. Do NOT install the update because it might break this lab. Just ignore the notification pop-up and it will close automatically.

  2. In VS Code , click on the Thunder Client icon in the left side bar to see the extension's interface.

    ../../_images/vscode-4.png

6.2.3. About Thunder Client Environment Variables

Environment variables provide shortcuts by substituting stored values into API requests when they are sent. Several variables are provided in the included SSL Orchestrator Environment file.

  1. To view these Environment values, click on the Env tab in the Thunder Client top menu bar (under the New Request button), and then click on sslo-environment.

    ../../_images/thunder-env.png

The list will contain both user-defined variable with static values, and variables whose values are captured/updated dynamically when certain API requests (from the SSL Orchestrator Collection) are sent.

The {{CM}} static variable contains the management IP address of the BIG-IP CM. All of the API calls in the Collection use this variable in the request URL.

The dynamic variables in the Collection are referenced by subsequent API requests that depend on data returned from a previous API request. For example, the {{authToken}} variable is updated by the CM Login API request and then used in the access token header of other API requests.

6.2.4. About Thunder Client API Collections

  1. Click on the Collections tab in the Thunder Client top menu bar, and then click on the pre-loaded collection called sslo-api-collection-v1 to expand it.

  2. There are several folders within this collection. Click on the Create SSLO Deployment folder to expand it.

    ../../_images/vscode-5.png

    These are all of the API requests that need to be sent to the BIG-IP CM API in order create an Inbound Application Mode deployment.

The Thunder Client VS Code extension is now configured for the remaining steps of the lab.

6.2.5. Additional Files (For Reference)

The API folder (/home/student/Documents/API) on the Client VM contains the Thunder Client SSL Orchestrator API Collection and related Environment files.

Filename Description
thunder-environment_sslo_environment.json Thunder Client API environment
thunder-collection_sslo-collection-v1.json Thunder Client API collection