TypeScript
import { Metadata, SaladCloudImdsSdk } from '@saladtechnologies-oss/salad-cloud-imds-sdk';
(async () => {
const saladCloudImdsSdk = new SaladCloudImdsSdk({});
const metadata = Metadata.TRUE_;
const { data } = await saladCloudImdsSdk.metadata.getToken({
metadata: metadata,
});
console.log(data);
})();using Salad.Cloud.IMDS.SDK;
using Salad.Cloud.IMDS.SDK.Config;
using Salad.Cloud.IMDS.SDK.Models;
var config = new SaladCloudImdsSdkConfig{};
var client = new SaladCloudImdsSdkClient(config);
var response = await client.Metadata.GetTokenAsync(Metadata1.True_);
Console.WriteLine(response);import (
"fmt"
"encoding/json"
"context"
"github.com/saladtechnologies/salad-cloud-imds-sdk-go/pkg/saladcloudimdssdkconfig"
"github.com/saladtechnologies/salad-cloud-imds-sdk-go/pkg/saladcloudimdssdk"
"github.com/saladtechnologies/salad-cloud-imds-sdk-go/pkg/util"
"github.com/saladtechnologies/salad-cloud-imds-sdk-go/pkg/metadata"
)
config := saladcloudimdssdkconfig.NewConfig()
client := saladcloudimdssdk.NewSaladCloudImdsSdk(config)
metadata := metadata.METADATA_TRUE
params := metadata.GetTokenRequestParams{
Metadata: &metadata,
}
response, err := client.Metadata.GetToken(context.Background(), params)
if err != nil {
panic(err)
}
fmt.Println(response)from salad_cloud_imds_sdk import SaladCloudImdsSdk
from salad_cloud_imds_sdk.models import Metadata
sdk = SaladCloudImdsSdk(
timeout=10000
)
result = sdk.metadata.get_token(metadata="true")
print(result)import com.salad.cloud.imdssdk.SaladCloudImdsSdk;
import com.salad.cloud.imdssdk.models.GetTokenParameters;
import com.salad.cloud.imdssdk.models.Metadata;
import com.salad.cloud.imdssdk.models.Token;
public class Main {
public static void main(String[] args) {
SaladCloudImdsSdk saladCloudImdsSdk = new SaladCloudImdsSdk();
GetTokenParameters requestParameters = GetTokenParameters.builder().metadata(Metadata.TRUE).build();
Token response = saladCloudImdsSdk.metadata.getToken(requestParameters);
System.out.println(response);
}
}curl --request GET \
--url http://169.254.169.254/v1/token \
--header 'Metadata: <metadata>'const options = {method: 'GET', headers: {Metadata: '<metadata>'}};
fetch('http://169.254.169.254/v1/token', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "http://169.254.169.254/v1/token",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Metadata: <metadata>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}require 'uri'
require 'net/http'
url = URI("http://169.254.169.254/v1/token")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["Metadata"] = '<metadata>'
response = http.request(request)
puts response.read_body{
"jwt": "<string>"
}{
"code": "<string>",
"detail": "<string>",
"errors": {},
"instance": "<string>",
"status": 349,
"title": "<string>",
"type": "about:blank"
}{
"code": "<string>",
"detail": "<string>",
"errors": {},
"instance": "<string>",
"status": 349,
"title": "<string>",
"type": "about:blank"
}{
"code": "<string>",
"detail": "<string>",
"errors": {},
"instance": "<string>",
"status": 349,
"title": "<string>",
"type": "about:blank"
}Instance Metadata Service
Get Container Instance Token
Gets the identity token of the current container instance
GET
/
v1
/
token
TypeScript
import { Metadata, SaladCloudImdsSdk } from '@saladtechnologies-oss/salad-cloud-imds-sdk';
(async () => {
const saladCloudImdsSdk = new SaladCloudImdsSdk({});
const metadata = Metadata.TRUE_;
const { data } = await saladCloudImdsSdk.metadata.getToken({
metadata: metadata,
});
console.log(data);
})();using Salad.Cloud.IMDS.SDK;
using Salad.Cloud.IMDS.SDK.Config;
using Salad.Cloud.IMDS.SDK.Models;
var config = new SaladCloudImdsSdkConfig{};
var client = new SaladCloudImdsSdkClient(config);
var response = await client.Metadata.GetTokenAsync(Metadata1.True_);
Console.WriteLine(response);import (
"fmt"
"encoding/json"
"context"
"github.com/saladtechnologies/salad-cloud-imds-sdk-go/pkg/saladcloudimdssdkconfig"
"github.com/saladtechnologies/salad-cloud-imds-sdk-go/pkg/saladcloudimdssdk"
"github.com/saladtechnologies/salad-cloud-imds-sdk-go/pkg/util"
"github.com/saladtechnologies/salad-cloud-imds-sdk-go/pkg/metadata"
)
config := saladcloudimdssdkconfig.NewConfig()
client := saladcloudimdssdk.NewSaladCloudImdsSdk(config)
metadata := metadata.METADATA_TRUE
params := metadata.GetTokenRequestParams{
Metadata: &metadata,
}
response, err := client.Metadata.GetToken(context.Background(), params)
if err != nil {
panic(err)
}
fmt.Println(response)from salad_cloud_imds_sdk import SaladCloudImdsSdk
from salad_cloud_imds_sdk.models import Metadata
sdk = SaladCloudImdsSdk(
timeout=10000
)
result = sdk.metadata.get_token(metadata="true")
print(result)import com.salad.cloud.imdssdk.SaladCloudImdsSdk;
import com.salad.cloud.imdssdk.models.GetTokenParameters;
import com.salad.cloud.imdssdk.models.Metadata;
import com.salad.cloud.imdssdk.models.Token;
public class Main {
public static void main(String[] args) {
SaladCloudImdsSdk saladCloudImdsSdk = new SaladCloudImdsSdk();
GetTokenParameters requestParameters = GetTokenParameters.builder().metadata(Metadata.TRUE).build();
Token response = saladCloudImdsSdk.metadata.getToken(requestParameters);
System.out.println(response);
}
}curl --request GET \
--url http://169.254.169.254/v1/token \
--header 'Metadata: <metadata>'const options = {method: 'GET', headers: {Metadata: '<metadata>'}};
fetch('http://169.254.169.254/v1/token', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "http://169.254.169.254/v1/token",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Metadata: <metadata>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}require 'uri'
require 'net/http'
url = URI("http://169.254.169.254/v1/token")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["Metadata"] = '<metadata>'
response = http.request(request)
puts response.read_body{
"jwt": "<string>"
}{
"code": "<string>",
"detail": "<string>",
"errors": {},
"instance": "<string>",
"status": 349,
"title": "<string>",
"type": "about:blank"
}{
"code": "<string>",
"detail": "<string>",
"errors": {},
"instance": "<string>",
"status": 349,
"title": "<string>",
"type": "about:blank"
}{
"code": "<string>",
"detail": "<string>",
"errors": {},
"instance": "<string>",
"status": 349,
"title": "<string>",
"type": "about:blank"
}Last Updated: May 10, 2025
Headers
A custom request header required by all operations.
Allowed value:
"true"Response
OK
The identity token of the current container instance.
The JSON Web Token (JWT) that may be used to identify the running container. The JWT may be verified using the JSON Web Key Set (JWKS) available at https://matrix-rest-api.salad.com/.well-known/workload-jwks.json.
Required string length:
1 - 1000Example:
"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJhYmMxMjMiLCJpYXQiOjE1MTYyMzkwMjIsImV4cCI6MTUxNjI0OTAyMn0.8EYto39v_-5ZKVRZYPKj0S-xuxtTUfWgeQ4QIFuW8mo"
Was this page helpful?
⌘I