Skip to content

Prompts and Tags

List and manage tracked prompts and the tags used to organise them.

Requires authentication
60 req/min

List Prompts

GET/get-prompts

Returns all prompts for a brand. Use active_only=true to filter to only active prompts.

This endpoint uses Supabase UUIDs. Use the brand UUID from the Supabase database, not the Bubble ID from /get-brands.

Query Parameters

brand_idstringrequired

Brand UUID from /get-brands

active_onlyboolean

Only return active prompts

Default: false

tag_idsstring

Comma-separated tag UUIDs to filter prompts by tag

limitinteger

Results per page (1-500)

Default: 100

offsetinteger

Pagination offset

Default: 0

Create Prompt

POST/get-prompts

Create a new prompt for tracking. New prompts are included in the next research run.

Body Parameters

brand_idstringrequired

Brand UUID

textstringrequired

Prompt text (max 500 characters)

activeboolean

Enable tracking immediately

Default: true

focus_areastring

Topic category (see enum below)

intentstring

User intent type (see enum below)

audiencestring

Target audience (see enum below)

Create Prompt
Code language
1curl -X POST 'https://api.trakkr.ai/get-prompts' \
2 -H 'Authorization: Bearer $TRAKKR_API_KEY' \
3 -H 'Content-Type: application/json' \
4 -d '{
5 "brand_id": "00000000-0000-4000-8000-81f286d10c3c",
6 "text": "What are the best CRM tools for healthcare?",
7 "active": true,
8 "focus_area": "industry",
9 "intent": "recommendation"
10 }'

Update Prompt

PUT/get-prompts

Update an existing prompt. Include prompt_id in the request body.

Delete Prompt

DELETE/get-prompts?prompt_id={id}

Delete a prompt. Historical data for this prompt will be retained.

List Tags

GET/get-tags

Returns every tag owned by the brand, including unused tags. Each item includes its currentprompt_count.

Query Parameters

brand_idstringrequired

Brand UUID

List Tags
Code language
1curl -H 'Authorization: Bearer $TRAKKR_API_KEY' \
2 'https://api.trakkr.ai/get-tags?brand_id=00000000-0000-4000-8000-81f286d10c3c'
200 OK
1{
2 "tags": [
3 {
4 "id": "a1b2c3d4-...",
5 "name": "Enterprise",
6 "colour": "#2563eb",
7 "prompt_count": 6
8 }
9 ],
10 "total": 1
11}

Manage Prompt Tags

POST/manage-prompt-tags

Use create, update, ordelete to manage a tag. Use add orremove to change that tag across up to 200 prompts at once.

Add and remove are safe to retry. For add/remove, provide exactly one of tag_id ortag_name. Adding by name creates the tag when missing unlesscreate_if_missing is false. Editor access is required for every action.

Body Parameters

actionstringrequired

create, update, delete, add, or remove

brand_idstringrequired

Brand UUID

tag_idstring

Required for update/delete; optional selector for add/remove

tag_namestring

Required for create; optional selector for add/remove

colourstring

Optional six-digit hex colour such as #2563eb

prompt_idsstring[]

Required for add/remove; 1-200 brand prompt UUIDs

create_if_missingboolean

Create a missing tag when adding by name

Default: true

Add a Tag to Prompts
Code language
1curl -X POST 'https://api.trakkr.ai/manage-prompt-tags' \
2 -H 'Authorization: Bearer $TRAKKR_API_KEY' \
3 -H 'Content-Type: application/json' \
4 -d '{
5 "action": "add",
6 "brand_id": "00000000-0000-4000-8000-81f286d10c3c",
7 "tag_name": "Enterprise",
8 "prompt_ids": ["00000000-0000-4000-8000-234e03c0ef68"]
9 }'

Response Fields

Prompt Object

idstring

Unique prompt identifier (UUID)

brand_idstring

Parent brand UUID

textstring

The prompt text sent to AI models

activeboolean

Whether this prompt is being tracked

focus_areastringnullable

Topic category

intentstringnullable

User intent type

audiencestringnullable

Target audience

specificityintegernullable

How specific (1-5)

quality_scoreintegernullable

Effectiveness score (0-100)

sourcestring

"generated", "manual", or "api"

created_atstring

ISO 8601 creation timestamp

updated_atstring

ISO 8601 last update timestamp

tagsarraynullable

Tags assigned to this prompt [{id, name, colour}]

Tag Object

idstring

Unique tag identifier (UUID)

namestring

Tag name, unique by name within the brand

colourstringnullable

Six-digit hex colour

prompt_countinteger

Current number of brand prompts using the tag

Enum Values

focus_area

generalbudgetenterprisefeaturesuxintegrationscomparisonsindustrygeographictrends

intent

recommendationcomparisonalternativediscoverybest_for

audience

enterprisesmbconsumerdevelopergeneral

Rate Limits

Rate limit: 60 requests/minute for GET. Write operations (POST, PUT, DELETE) are limited to 30 requests/minute.

Code example

List Prompts
Code language
1curl -H 'Authorization: Bearer $TRAKKR_API_KEY' \
2 'https://api.trakkr.ai/get-prompts?brand_id=00000000-0000-4000-8000-234e03c0ef68'
200 OK
1{
2 "prompts": [
3 {
4 "id": "00000000-0000-4000-8000-234e03c0ef68",
5 "brand_id": "00000000-0000-4000-8000-81f286d10c3c",
6 "text": "What are the best CRM tools for enterprise?",
7 "active": true,
8 "focus_area": "enterprise",
9 "intent": "recommendation",
10 "audience": "enterprise",
11 "specificity": 3,
12 "quality_score": 85,
13 "source": "generated",
14 "created_at": "2026-01-05T08:00:00Z",
15 "updated_at": "2026-01-08T14:30:00Z",
16 "tags": [
17 { "id": "a1b2c3d4-...", "name": "Enterprise", "colour": "#2563eb" }
18 ]
19 }
20 ],
21 "total": 25,
22 "limit": 100,
23 "offset": 0
24}