curl --request GET \
--url 'https://example.com/registry/metadata/v1/instruments'
import json
import requests
url = "https://example.com/registry/metadata/v1/instruments"
response = requests.request("GET", url)
print(response.text)
const response = await fetch('https://example.com/registry/metadata/v1/instruments', {
method: 'GET',
});
console.log(await response.text());
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://example.com/registry/metadata/v1/instruments',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => 'GET',
]);
$response = curl_exec($curl);
echo $response;
package main
import (
"fmt"
"io"
"net/http"
)
func main() {
req, _ := http.NewRequest("GET", "https://example.com/registry/metadata/v1/instruments", nil)
response, _ := http.DefaultClient.Do(req)
defer response.Body.Close()
body, _ := io.ReadAll(response.Body)
fmt.Println(string(body))
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
var request = HttpRequest.newBuilder()
.uri(URI.create("https://example.com/registry/metadata/v1/instruments"))
.method("GET", HttpRequest.BodyPublishers.noBody())
.build();
var response = HttpClient.newHttpClient().send(
request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
require 'net/http'
require 'uri'
uri = URI('https://example.com/registry/metadata/v1/instruments')
request = Net::HTTP::Get.new(uri)
response = Net::HTTP.start(uri.hostname, uri.port) do |http|
http.request(request)
end
puts response.body
{
"instruments": [
{
"id": "<string>",
"name": "<string>",
"symbol": "<string>",
"totalSupply": "<string>",
"totalSupplyAsOf": "2026-01-01T00:00:00Z",
"decimals": 10,
"paused": false,
"pauseInfo": {
"reason": "<string>",
"until": "2026-01-01T00:00:00Z"
},
"supportedApis": {},
"showAccountInputFields": false,
"accountInputFieldsToShow": [
"provider"
]
}
],
"nextPageToken": "<string>"
}
{
"error": "<string>"
}
{
"error": "<string>"
}
GET /registry/metadata/v1/instruments
List all instruments managed by this instrument admin.
GET
/
registry
/
metadata
/
v1
/
instruments
curl --request GET \
--url 'https://example.com/registry/metadata/v1/instruments'
import json
import requests
url = "https://example.com/registry/metadata/v1/instruments"
response = requests.request("GET", url)
print(response.text)
const response = await fetch('https://example.com/registry/metadata/v1/instruments', {
method: 'GET',
});
console.log(await response.text());
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://example.com/registry/metadata/v1/instruments',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => 'GET',
]);
$response = curl_exec($curl);
echo $response;
package main
import (
"fmt"
"io"
"net/http"
)
func main() {
req, _ := http.NewRequest("GET", "https://example.com/registry/metadata/v1/instruments", nil)
response, _ := http.DefaultClient.Do(req)
defer response.Body.Close()
body, _ := io.ReadAll(response.Body)
fmt.Println(string(body))
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
var request = HttpRequest.newBuilder()
.uri(URI.create("https://example.com/registry/metadata/v1/instruments"))
.method("GET", HttpRequest.BodyPublishers.noBody())
.build();
var response = HttpClient.newHttpClient().send(
request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
require 'net/http'
require 'uri'
uri = URI('https://example.com/registry/metadata/v1/instruments')
request = Net::HTTP::Get.new(uri)
response = Net::HTTP.start(uri.hostname, uri.port) do |http|
http.request(request)
end
puts response.body
{
"instruments": [
{
"id": "<string>",
"name": "<string>",
"symbol": "<string>",
"totalSupply": "<string>",
"totalSupplyAsOf": "2026-01-01T00:00:00Z",
"decimals": 10,
"paused": false,
"pauseInfo": {
"reason": "<string>",
"until": "2026-01-01T00:00:00Z"
},
"supportedApis": {},
"showAccountInputFields": false,
"accountInputFieldsToShow": [
"provider"
]
}
],
"nextPageToken": "<string>"
}
{
"error": "<string>"
}
{
"error": "<string>"
}
List all instruments managed by this instrument admin.
curl --request GET \
--url 'https://example.com/registry/metadata/v1/instruments'
import json
import requests
url = "https://example.com/registry/metadata/v1/instruments"
response = requests.request("GET", url)
print(response.text)
const response = await fetch('https://example.com/registry/metadata/v1/instruments', {
method: 'GET',
});
console.log(await response.text());
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://example.com/registry/metadata/v1/instruments',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => 'GET',
]);
$response = curl_exec($curl);
echo $response;
package main
import (
"fmt"
"io"
"net/http"
)
func main() {
req, _ := http.NewRequest("GET", "https://example.com/registry/metadata/v1/instruments", nil)
response, _ := http.DefaultClient.Do(req)
defer response.Body.Close()
body, _ := io.ReadAll(response.Body)
fmt.Println(string(body))
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
var request = HttpRequest.newBuilder()
.uri(URI.create("https://example.com/registry/metadata/v1/instruments"))
.method("GET", HttpRequest.BodyPublishers.noBody())
.build();
var response = HttpClient.newHttpClient().send(
request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
require 'net/http'
require 'uri'
uri = URI('https://example.com/registry/metadata/v1/instruments')
request = Net::HTTP::Get.new(uri)
response = Net::HTTP.start(uri.hostname, uri.port) do |http|
http.request(request)
end
puts response.body
{
"instruments": [
{
"id": "<string>",
"name": "<string>",
"symbol": "<string>",
"totalSupply": "<string>",
"totalSupplyAsOf": "2026-01-01T00:00:00Z",
"decimals": 10,
"paused": false,
"pauseInfo": {
"reason": "<string>",
"until": "2026-01-01T00:00:00Z"
},
"supportedApis": {},
"showAccountInputFields": false,
"accountInputFieldsToShow": [
"provider"
]
}
],
"nextPageToken": "<string>"
}
{
"error": "<string>"
}
{
"error": "<string>"
}
Query parameters
number
default:"25"
OpenAPI type:
integer (int32).Number of instruments per page.string
The
nextPageToken received from the response for the previous page.Responses
200
okapplication/json
Instrument[]
required
Show child attributes
Show child attributes
string
required
The unique identifier assigned by the admin to the instrument.
string
required
The display name for the instrument recommended by the instrument admin. This is not necessarily unique.
string
required
The symbol for the instrument recommended by the instrument admin. This is not necessarily unique.
string
Decimal encoded current total supply of the instrument.
string (date-time)
The timestamp when the total supply was last computed.
integer (int8)
default:"10"
required
The number of decimal places used by the instrument. Must be a number between 0 and 10, as the Daml interfaces represent holding amounts as
Decimal values, which use 10 decimal places and are precise for 38 digits. Setting this to 0 means that the instrument can only be held in whole units. This number SHOULD be used for display purposes in a wallet to decide how many decimal places to show and accept when displaying or entering amounts.boolean
default:"false"
Indicates whether the instrument is currently paused. A paused instrument cannot be transferred or allocated.
PauseInfo
SupportedApis
required
Map from token standard API name to the minor version of the API supported, e.g., splice-api-token-metadata-v1 -> 1 where the
1 corresponds to the minor version.boolean
default:"false"
Informs wallets whether the instrument supports non-basic accounts and the wallet should thus show input fields for both the account provider and the account id in input forms for transfers and allocations. Note that wallets should always show non-null account providers and account ids when displaying transfers and allocations. This property is deprecated in favor of the more fine-grained
accountInputFieldsToShow property.AccountInputFieldsToShow
Which account input field(s) wallets should show in forms.
string
The token for the next page of results, to be used as the lastInstrumentId for the next page.
404
not foundapplication/json
string
required
500
Internal server errorapplication/json
string
required
History
Updated
0.6.12The GET /registry/metadata/v1/instruments operation changed in this snapshot.
Updated
0.6.11The GET /registry/metadata/v1/instruments operation changed in this snapshot.
Added
0.5.10