How to make a REST API request
See also: Login API endpoints
This guide demonstrates how to login and make a request using the Landscape REST API. You need Landscape 24.04 LTS (or higher) to use the REST API. This guide provides general steps and examples using curl
.
Make a REST API request with your preferred API tool
The general steps to make a REST API request are:
- Provide your login credentials with
POST
- Copy your token from the output
- Assign your token to a new variable, such as
JWT
- Make your API request, using your token for authorisation
Password authentication: Make a REST API request with curl
See also:
/login
REST API endpoint
This method is for those using password authentication to login.
To make a REST API request with curl
:
-
Provide your login credentials with
POST
. Your request will be similar to the followingcurl -X POST "https://your-landscape.domain.com/api/v2/login" -d '{"email": "[email protected]", "password": "jane-pwd", "account": "standalone"}'
And you’ll receive output similar to:
{ "accounts": [ { "default": true, "name": "standalone", "title": "Jane-Organisation" } ], "current_account": "standalone", "email": "[email protected]", "name": "Jane Smith", "token": "qkJ0eXAiOiJKV1QiLCJhbGciOiJskdi296MTcxMDM2MTQxNiwic3ViIjoieWFuaXNhLnNjaGVyYmVyQGNhbm9uaWNhbC5jb20iLCJhY2MiOiJzdGFuZGFsb2i93nboPRfXp50" }
-
Copy your token from the output and assign it to a new variable, such as
JWT
:JWT="qkJ0eXAiOiJKV1QiLCJhbGciOiJskdi296MTcxMDM2MTQxNiwic3ViIjoieWFuaXNhLnNjaGVyYmVyQGNhbm9uaWNhbC5jb20iLCJhY2MiOiJzdGFuZGFsb2i93nboPRfXp50"
-
Make your API request, using your token as authorisation. For example:
curl -X GET https://your-landscape.domain.com/api/v2/activities -H "Authorization: Bearer $JWT"
SSO: Make a REST API request with curl
See also:
/login/access-key
REST API endpoint
This method is for those using SSO (such as Ubuntu One or an external authentication provider) to login. This includes Landscape SaaS.
To make a REST API request with curl
:
-
Provide an access and secret key to login with
POST
. You get your access and secret keys from your administrator settings page (e.g., https://landscape.canonical.com/settings), or by clicking your user name from your Landscape portal.Your request will be similar to the following
curl -X POST https://your-landscape.domain.com/api/v2/login/access-key \ -H "Content-Type: application/json" \ -d '{"access_key": "3AS5YX98J8QI9AZ8OS0V", "secret_key": "avlhg23w9HyOWOA1FMzHmrBaB8a97zafzJOApfF2"}'
And you’ll receive output similar to
{ "accounts": [ { "default": true, "name": "onward", "title": "Onward, Inc." }, { "default": false, "name": "upside", "title": "Upside Software, Ltd." } ], "current_account": "onward", "email": "[email protected]", "name": "John Smith", "self_hosted": false, "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3MjUwMzkyNzYsImlhdCI6MTcyNDk1Mjg3Niwic3ViIjoiam9obkBleGFtcGxlLmNvbSIsImFjYyI6Im9ud2FyZCIsImlkIjoxfQ.8rWW_GN1jRzKownpg4k1Zp4iZMmn_lfLjy0cX-DLh_g" }
-
Copy your token from the output and assign it to a new variable, such as
JWT
:JWT="eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3MjUwMzkyNzYsImlhdCI6MTcyNDk1Mjg3Niwic3ViIjoiam9obkBleGFtcGxlLmNvbSIsImFjYyI6Im9ud2FyZCIsImlkIjoxfQ.8rWW_GN1jRzKownpg4k1Zp4iZMmn_lfLjy0cX-DLh_g"
-
Make your API request, using your token as authorisation. For example:
curl -X GET https://your-landscape.domain.com/api/v2/activities -H "Authorization: Bearer $JWT"