Templates API
List Templates
Get Template
systemPrompt is replaced with [Protected] for non-superadmin users on system/marketplace templates.
Template Versions
Restore Template Version
{ "versionId": "ver_123" }
Documentation Index
Fetch the complete documentation index at: /llms.txt
Use this file to discover all available pages before exploring further.
Template CRUD and marketplace endpoints
GET /api/templates
| Parameter | Type | Description |
|---|---|---|
category | string | Filter by category |
search | string | Search by name/description |
type | string | Filter by template type |
curl -G https://app.thig.ai/api/templates \
-H "Authorization: Bearer YOUR_API_KEY" \
-d "category=product" \
-d "search=mobile"
const res = await fetch('https://app.thig.ai/api/templates?category=product&search=mobile', {
headers: { 'Authorization': 'Bearer YOUR_API_KEY' }
});
const data = await res.json();
GET /api/templates/{id}
systemPrompt is replaced with [Protected] for non-superadmin users on system/marketplace templates.
curl https://app.thig.ai/api/templates/tmpl_456 \
-H "Authorization: Bearer YOUR_API_KEY"
const res = await fetch('https://app.thig.ai/api/templates/tmpl_456', {
headers: { 'Authorization': 'Bearer YOUR_API_KEY' }
});
const template = await res.json();
GET /api/templates/{id}/versions
POST /api/templates/{id}/restore
{ "versionId": "ver_123" }
GET /api/admin/templates
| Parameter | Type | Description |
|---|---|---|
templateType | string | personal, organization, system, marketplace |
category | string | Template category |
visibility | string | personal, organization, public |
isActive | boolean | Active status |
isFeatured | boolean | Featured status |
pricingTier | string | Pricing tier filter |
search | string | Search query |
sortBy | string | Sort field |
sortOrder | string | asc or desc |
limit | number | Results per page |
offset | number | Pagination offset |
POST /api/admin/templates
| Field | Type | Required | Description |
|---|---|---|---|
name | string | Yes | Template name |
description | string | Yes | Description |
category | string | Yes | Category |
templateType | string | No | personal, organization, system, marketplace |
systemPrompt | string | No | AI instructions |
initialQuestion | string | No | First question AI asks |
sections | string[] | No | PRD sections |
tags | string[] | No | Tags |
features | string[] | No | Key features |
visibility | string | No | personal, organization, public |
isActive | boolean | No | Active status |
isFeatured | boolean | No | Featured status |
pricingTier | string | No | Pricing tier |
curl -X POST https://app.thig.ai/api/admin/templates \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "SaaS PRD Template",
"description": "Optimized for SaaS product requirements",
"category": "product",
"sections": ["Problem Statement", "User Personas", "Features", "Success Metrics"],
"tags": ["saas", "product"],
"visibility": "organization"
}'
const res = await fetch('https://app.thig.ai/api/admin/templates', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json'
},
body: JSON.stringify({
name: 'SaaS PRD Template',
description: 'Optimized for SaaS product requirements',
category: 'product',
sections: ['Problem Statement', 'User Personas', 'Features', 'Success Metrics'],
tags: ['saas', 'product'],
visibility: 'organization'
})
});
const template = await res.json();
PATCH /api/admin/templates/{id}
DELETE /api/admin/templates/{id}
GET /api/marketplace-templates
| Parameter | Type | Description |
|---|---|---|
category | string | Filter by category |
search | string | Search query |
featured | boolean | Featured only |
pricingTier | string | Tier filter |
sort | string | Sort order |
curl -G https://app.thig.ai/api/marketplace-templates \
-d "category=product" \
-d "featured=true"
const res = await fetch('https://app.thig.ai/api/marketplace-templates?category=product&featured=true');
const data = await res.json();
GET /api/marketplace-templates/{templateId}
POST /api/template-submissions
curl -X POST https://app.thig.ai/api/template-submissions \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"templateId": "tmpl_789"}'
const res = await fetch('https://app.thig.ai/api/template-submissions', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json'
},
body: JSON.stringify({ templateId: 'tmpl_789' })
});
const submission = await res.json();
GET /api/template-submissions