Skip to main content
TroopyDocs
Open Troopy
Troopy

API reference / Tasks and projects

List templates

The templates of the work that the troop can take on. A routine template is a routine on a schedule: switch it on with POST /templates/{id}/on. A trigger template starts a teammate when something happens in Troopy: switch it on with POST /templates/{id}/trigger. A ready skill is a skill that a teammate writes for the troop when you ask it: GET /templates/{id} gives the message to send. A built-in template is work that Troopy does itself: disputes prepares the answers to disputes, and PATCH /dispute-settings turns it on.

get/api/v1/templates

Authorization

HeaderAuthorization: Bearer <API key>
Or the headerX-API-Key: <API key>
API keyMake one in Troopy under Settings > API keys. It acts as you, in its workspace.

Other ways to call it

CLItroopy templates list
MCP tooltroopy_list_templates
Rate limit60 calls in 60 seconds, for each key

Response

200 · application/json
data*array<object>
17 properties
id*string

A template's id, like weekly-brief or welcome-note. GET /templates lists them

At most 64 characters

kind*enum<string>

routine: a routine on a schedule that a teammate does by itself. trigger: work that a teammate does each time that something happens in Troopy. skill: a ready skill, which a teammate writes for the troop when you ask it. builtin: work that Troopy does itself, with no schedule

routineskillbuiltintrigger

title*string
about*string

What it does, in one line

role*string

The role that does it, like churn

roleTitle*string
avatar*object

Its face: a bot-avatars body type, colour (#RRGGBB), face and shading, a robot head, or an object with two eyes

6 properties
shape*enum<string>

cloverflowertrianglesquareblobghostcircledropstardroidmechalienhexagoncatcloudpilland 2 more

color*string
face*enum<string>

eyesmouth

shadingenum<string>

How its body is lit; fabric when unset

fabricplasticcrispsmoothflat

robotobject

A TV-headed robot (robot-heads) in place of the bot. shape, color, face and shading stay for the bot

5 properties
shape*enum<string>

rectanglesquarecirclehexagon

shell*string

The colour of its shell

trim*string

The colour of its ears and of the collar of its antenna

screen*string

The colour of the lights on its screen

antenna*boolean
objectobject

An object with two eyes in place of the bot. shape, color, face and shading stay for the bot

2 properties
shape*enum<string>

circlesquaretrianglepilldrophexagonpentagoncloudbeancloverflowersparkleburstapplechatbulband 13 more

color*string

The colour of the object

agent*string | null

The handle of the teammate that does it. Null when nobody holds its role yet

agentName*string | null
skill*string

The skill that it follows. Empty for a built-in template

when*string

A routine: its days and time. A ready skill: when a teammate uses it. A built-in template or a trigger: what starts it

needs*array<object>

Apps its tools read from; it can't work until each is connected (POST /apps/{provider})

3 properties
id*enum<string>

stripeposthoggithubnotionhunterlemonsqueezypolarpaddledodopaymentssearchconsolemetaadsgooglecalendargeminiopenaifalreplicate

name*string
connected*boolean
uses*array<object>

What it uses. ready: the service is connected, a payment provider is connected (payments), or a mailbox has Read all on (mailbox). Null when there is nothing to set up

3 properties
id*enum<string>

braintaskswebbrowserinboxmailboxcrmcampaignsanalyticspaymentsstripedodopaymentspaddleposthogsearchconsolemetaadsand 1 more

name*string
ready*boolean | null
on*boolean

A routine template: its routine exists. A trigger: its trigger exists. A ready skill: the workspace has a skill with its name. A built-in template: it is on

paused*boolean

Its routine or its trigger is paused, or its skill is off

routineId*string | null

A routine template that is on: its routine

page*string | null

A built-in template: the page of its work in the app, like /disputes. A trigger that is on: the page of its trigger. Null for the others

Errors

401 unauthorizedSend an API key as `Authorization: Bearer tr_live_...`. Create one in Troopy under Settings.
403 forbiddenThe key lacks a scope this operation needs, or its owner lacks the role. detail says which; create a key with the scope, or ask an organization owner or admin.
429 rate_limitedWait the number of seconds in Retry-After, then retry.