curl --request POST \
--url https://api.storyapis.com/api/v4/licenses/tokens \
--header 'Content-Type: application/json' \
--header 'X-Api-Key: <api-key>' \
--data '
{
"orderBy": "blockNumber",
"orderDirection": "desc",
"pagination": {
"limit": 100,
"offset": 0
},
"where": {
"licensorIpId": "<string>",
"ownerAddress": "<string>"
}
}
'import requests
url = "https://api.storyapis.com/api/v4/licenses/tokens"
payload = {
"orderBy": "blockNumber",
"orderDirection": "desc",
"pagination": {
"limit": 100,
"offset": 0
},
"where": {
"licensorIpId": "<string>",
"ownerAddress": "<string>"
}
}
headers = {
"X-Api-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-Api-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
orderBy: 'blockNumber',
orderDirection: 'desc',
pagination: {limit: 100, offset: 0},
where: {licensorIpId: '<string>', ownerAddress: '<string>'}
})
};
fetch('https://api.storyapis.com/api/v4/licenses/tokens', 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 => "https://api.storyapis.com/api/v4/licenses/tokens",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'orderBy' => 'blockNumber',
'orderDirection' => 'desc',
'pagination' => [
'limit' => 100,
'offset' => 0
],
'where' => [
'licensorIpId' => '<string>',
'ownerAddress' => '<string>'
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-Api-Key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.storyapis.com/api/v4/licenses/tokens"
payload := strings.NewReader("{\n \"orderBy\": \"blockNumber\",\n \"orderDirection\": \"desc\",\n \"pagination\": {\n \"limit\": 100,\n \"offset\": 0\n },\n \"where\": {\n \"licensorIpId\": \"<string>\",\n \"ownerAddress\": \"<string>\"\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-Api-Key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.storyapis.com/api/v4/licenses/tokens")
.header("X-Api-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"orderBy\": \"blockNumber\",\n \"orderDirection\": \"desc\",\n \"pagination\": {\n \"limit\": 100,\n \"offset\": 0\n },\n \"where\": {\n \"licensorIpId\": \"<string>\",\n \"ownerAddress\": \"<string>\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.storyapis.com/api/v4/licenses/tokens")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-Api-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"orderBy\": \"blockNumber\",\n \"orderDirection\": \"desc\",\n \"pagination\": {\n \"limit\": 100,\n \"offset\": 0\n },\n \"where\": {\n \"licensorIpId\": \"<string>\",\n \"ownerAddress\": \"<string>\"\n }\n}"
response = http.request(request)
puts response.read_body{
"data": [
{
"blockNumber": "<string>",
"blockTime": "<string>",
"burntAt": "<string>",
"id": "<string>",
"licenseTemplate": "<string>",
"licenseTermsId": "<string>",
"licensorIpId": "<string>",
"owner": "<string>",
"transferable": "<string>"
}
],
"$schema": "<string>",
"pagination": {
"hasMore": true,
"limit": 123,
"offset": 123,
"total": 123
}
}{
"$schema": "<string>",
"detail": "<string>",
"errors": [
{
"location": "<string>",
"message": "<string>",
"value": "<unknown>"
}
],
"instance": "<string>",
"status": 123,
"title": "<string>",
"type": "about:blank"
}Get License Tokens
Retrieve license tokens with optional filtering. If no filters are provided, returns all license tokens. Supports filtering by owner wallet address and/or licensor IP ID. Results are paginated and can be ordered by ‘blockNumber’ (default: descending).
curl --request POST \
--url https://api.storyapis.com/api/v4/licenses/tokens \
--header 'Content-Type: application/json' \
--header 'X-Api-Key: <api-key>' \
--data '
{
"orderBy": "blockNumber",
"orderDirection": "desc",
"pagination": {
"limit": 100,
"offset": 0
},
"where": {
"licensorIpId": "<string>",
"ownerAddress": "<string>"
}
}
'import requests
url = "https://api.storyapis.com/api/v4/licenses/tokens"
payload = {
"orderBy": "blockNumber",
"orderDirection": "desc",
"pagination": {
"limit": 100,
"offset": 0
},
"where": {
"licensorIpId": "<string>",
"ownerAddress": "<string>"
}
}
headers = {
"X-Api-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-Api-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
orderBy: 'blockNumber',
orderDirection: 'desc',
pagination: {limit: 100, offset: 0},
where: {licensorIpId: '<string>', ownerAddress: '<string>'}
})
};
fetch('https://api.storyapis.com/api/v4/licenses/tokens', 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 => "https://api.storyapis.com/api/v4/licenses/tokens",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'orderBy' => 'blockNumber',
'orderDirection' => 'desc',
'pagination' => [
'limit' => 100,
'offset' => 0
],
'where' => [
'licensorIpId' => '<string>',
'ownerAddress' => '<string>'
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-Api-Key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.storyapis.com/api/v4/licenses/tokens"
payload := strings.NewReader("{\n \"orderBy\": \"blockNumber\",\n \"orderDirection\": \"desc\",\n \"pagination\": {\n \"limit\": 100,\n \"offset\": 0\n },\n \"where\": {\n \"licensorIpId\": \"<string>\",\n \"ownerAddress\": \"<string>\"\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-Api-Key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.storyapis.com/api/v4/licenses/tokens")
.header("X-Api-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"orderBy\": \"blockNumber\",\n \"orderDirection\": \"desc\",\n \"pagination\": {\n \"limit\": 100,\n \"offset\": 0\n },\n \"where\": {\n \"licensorIpId\": \"<string>\",\n \"ownerAddress\": \"<string>\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.storyapis.com/api/v4/licenses/tokens")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-Api-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"orderBy\": \"blockNumber\",\n \"orderDirection\": \"desc\",\n \"pagination\": {\n \"limit\": 100,\n \"offset\": 0\n },\n \"where\": {\n \"licensorIpId\": \"<string>\",\n \"ownerAddress\": \"<string>\"\n }\n}"
response = http.request(request)
puts response.read_body{
"data": [
{
"blockNumber": "<string>",
"blockTime": "<string>",
"burntAt": "<string>",
"id": "<string>",
"licenseTemplate": "<string>",
"licenseTermsId": "<string>",
"licensorIpId": "<string>",
"owner": "<string>",
"transferable": "<string>"
}
],
"$schema": "<string>",
"pagination": {
"hasMore": true,
"limit": 123,
"offset": 123,
"total": 123
}
}{
"$schema": "<string>",
"detail": "<string>",
"errors": [
{
"location": "<string>",
"message": "<string>",
"value": "<unknown>"
}
],
"instance": "<string>",
"status": 123,
"title": "<string>",
"type": "about:blank"
}Authorizations
Body
Field to order results by (only 'blockNumber' is supported)
blockNumber Order direction for results ('asc' for ascending, 'desc' for descending)
asc, desc Pagination configuration (optional, defaults: limit=100, offset=0)
Show child attributes
Show child attributes
Optional filter options for license tokens
Show child attributes
Show child attributes
Response
OK
List of license tokens matching the filter criteria
Show child attributes
Show child attributes
A URL to the JSON Schema for this object.
"https://api.storyapis.com/api/v4/LicenseTokensResponseHumaBody.json"
Pagination metadata including total count and hasMore flag
Show child attributes
Show child attributes