Quick Start
1. Create System Prompt
curl -X POST https://api.cuadra.ai/v1/system-prompts \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "Customer Support",
"description": "Professional support with safety guardrails"
}'
import httpx
response = httpx.post(
"https://api.cuadra.ai/v1/system-prompts",
headers={"Authorization": "Bearer YOUR_TOKEN"},
json={"name": "Customer Support", "description": "Professional support with safety guardrails"}
)
system_prompt = response.json()
print(f"Created: {system_prompt['id']}")
const response = await fetch('https://api.cuadra.ai/v1/system-prompts', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_TOKEN',
'Content-Type': 'application/json'
},
body: JSON.stringify({
name: 'Customer Support',
description: 'Professional support with safety guardrails'
})
});
const systemPrompt = await response.json();
console.log(`Created: ${systemPrompt.id}`);
2. Add Particles
curl -X POST https://api.cuadra.ai/v1/system-prompts/sp_abc123/particles \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{"particleId": "part_role_001", "order": 1}'
import httpx
response = httpx.post(
"https://api.cuadra.ai/v1/system-prompts/sp_abc123/particles",
headers={"Authorization": "Bearer YOUR_TOKEN"},
json={"particleId": "part_role_001", "order": 1}
)
print("Particle added")
await fetch('https://api.cuadra.ai/v1/system-prompts/sp_abc123/particles', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_TOKEN',
'Content-Type': 'application/json'
},
body: JSON.stringify({ particleId: 'part_role_001', order: 1 })
});
console.log('Particle added');
3. View Composed Prompt
curl https://api.cuadra.ai/v1/system-prompts/sp_abc123/compose \
-H "Authorization: Bearer YOUR_TOKEN"
import httpx
response = httpx.get(
"https://api.cuadra.ai/v1/system-prompts/sp_abc123/compose",
headers={"Authorization": "Bearer YOUR_TOKEN"}
)
composed = response.json()
print(f"Total tokens: {composed['totalTokens']}")
const response = await fetch('https://api.cuadra.ai/v1/system-prompts/sp_abc123/compose', {
headers: { 'Authorization': 'Bearer YOUR_TOKEN' }
});
const composed = await response.json();
console.log(`Total tokens: ${composed.totalTokens}`);
{
"composedPrompt": "You are a professional customer support agent...",
"totalTokens": 150,
"particles": [
{ "id": "part_abc", "category": "role", "version": 2, "tokenCount": 25 }
]
}
Version Pinning
| Environment | Strategy | Why |
|---|---|---|
| Development | Unpinned | Always test latest particle versions |
| Staging | Unpinned | Catch issues before production |
| Production | Pinned | Stability and predictability |
curl -X POST https://api.cuadra.ai/v1/system-prompts/sp_abc123/particles \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"particleId": "part_xyz789",
"particleVersionId": "pv_v2"
}'
import httpx
response = httpx.post(
"https://api.cuadra.ai/v1/system-prompts/sp_abc123/particles",
headers={"Authorization": "Bearer YOUR_TOKEN"},
json={"particleId": "part_xyz789", "particleVersionId": "pv_v2"}
)
print("Pinned particle added")
await fetch('https://api.cuadra.ai/v1/system-prompts/sp_abc123/particles', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_TOKEN',
'Content-Type': 'application/json'
},
body: JSON.stringify({ particleId: 'part_xyz789', particleVersionId: 'pv_v2' })
});
console.log('Pinned particle added');
Related
Particles API
Create reusable prompt components
System Prompts Guide
Best practices