Theme templates
Returns all available themeables for theme template
Lists the company’s records of the template’s type (for example products or pages) that can be assigned to this template, with the template currently assigned to each. Records already using this template are listed first, then by title. Requires the application_themes view permission. Paginated with page and per_page (default 20); only shareable template types are supported (400 otherwise).
GET
/
api
/
application_theme_templates
/
{id}
/
available_themeables
Returns all available themeables for theme template
curl --request GET \
--url https://api.fluid.app/api/application_theme_templates/{id}/available_themeables \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.fluid.app/api/application_theme_templates/{id}/available_themeables"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.fluid.app/api/application_theme_templates/{id}/available_themeables', 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.fluid.app/api/application_theme_templates/{id}/available_themeables",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.fluid.app/api/application_theme_templates/{id}/available_themeables"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.fluid.app/api/application_theme_templates/{id}/available_themeables")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.fluid.app/api/application_theme_templates/{id}/available_themeables")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"available_themeables": [
{
"id": 30117,
"title": "Dunder Mifflin 20lb Copy Paper",
"sku": "DM-20LB-CASE",
"image": "https://cdn.fluid.app/dunder-mifflin/products/20lb-copy-paper.jpg",
"themeable_type": "product",
"application_theme_template_id": 48213
},
{
"id": 30121,
"title": "Scranton Branch Mug",
"sku": "DM-MUG-SCR",
"image": "https://cdn.fluid.app/dunder-mifflin/products/scranton-branch-mug.jpg",
"themeable_type": "product",
"application_theme_template_id": null
}
],
"meta": {
"request_id": "4f1c2a9e-7b3d-4e8a-9c61-2d5f8a0b3e17",
"timestamp": "2026-09-22T15:04:12Z",
"pagination": {
"current_page": 1,
"total_pages": 1,
"total_count": 2,
"per_page": 20
}
}
}{
"message": "<string>",
"error": "<string>",
"error_message": "<string>",
"errors": "<string>",
"meta": {
"request_id": "<string>",
"timestamp": "2023-11-07T05:31:56Z"
}
}{
"error_message": "<string>",
"errors": "<string>",
"meta": {
"request_id": "<string>",
"timestamp": "2023-11-07T05:31:56Z"
}
}Query Parameters
⌘I
Returns all available themeables for theme template
curl --request GET \
--url https://api.fluid.app/api/application_theme_templates/{id}/available_themeables \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.fluid.app/api/application_theme_templates/{id}/available_themeables"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.fluid.app/api/application_theme_templates/{id}/available_themeables', 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.fluid.app/api/application_theme_templates/{id}/available_themeables",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.fluid.app/api/application_theme_templates/{id}/available_themeables"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.fluid.app/api/application_theme_templates/{id}/available_themeables")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.fluid.app/api/application_theme_templates/{id}/available_themeables")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"available_themeables": [
{
"id": 30117,
"title": "Dunder Mifflin 20lb Copy Paper",
"sku": "DM-20LB-CASE",
"image": "https://cdn.fluid.app/dunder-mifflin/products/20lb-copy-paper.jpg",
"themeable_type": "product",
"application_theme_template_id": 48213
},
{
"id": 30121,
"title": "Scranton Branch Mug",
"sku": "DM-MUG-SCR",
"image": "https://cdn.fluid.app/dunder-mifflin/products/scranton-branch-mug.jpg",
"themeable_type": "product",
"application_theme_template_id": null
}
],
"meta": {
"request_id": "4f1c2a9e-7b3d-4e8a-9c61-2d5f8a0b3e17",
"timestamp": "2026-09-22T15:04:12Z",
"pagination": {
"current_page": 1,
"total_pages": 1,
"total_count": 2,
"per_page": 20
}
}
}{
"message": "<string>",
"error": "<string>",
"error_message": "<string>",
"errors": "<string>",
"meta": {
"request_id": "<string>",
"timestamp": "2023-11-07T05:31:56Z"
}
}{
"error_message": "<string>",
"errors": "<string>",
"meta": {
"request_id": "<string>",
"timestamp": "2023-11-07T05:31:56Z"
}
}