Skip to content
Get started

Promptly

List all runs
GET/api/promptly/runs
Get usage statistics
GET/api/promptly/stats

PromptlyTasks

List all tasks
GET/api/promptly/tasks
Create a new task
POST/api/promptly/tasks
Get a task
GET/api/promptly/tasks/{taskId}
Update a task
PATCH/api/promptly/tasks/{taskId}
Delete a task
DELETE/api/promptly/tasks/{taskId}
Run a task immediately
POST/api/promptly/tasks/{taskId}/run
List task runs
GET/api/promptly/tasks/{taskId}/runs
ModelsExpand Collapse
Destination = object { type, value, label }
type: "email" or "sms" or "webhook"
Accepts one of the following:
"email"
"sms"
"webhook"
value: string

Email address, phone number, or webhook URL

label: optional string

Optional human-readable label

Task = object { id, createdAt, model, 22 more }
id: string
formatuuid
createdAt: string
formatdate-time
model: string

AI model identifier (e.g., 'gpt-4o-mini')

name: string

Human-readable task name

prompt: string

The AI prompt to execute

schedule: "once" or "hourly" or "daily" or "weekly"

Task execution frequency

Accepts one of the following:
"once"
"hourly"
"daily"
"weekly"
status: "active" or "paused" or "completed"
Accepts one of the following:
"active"
"paused"
"completed"
cronExpression: optional string

Custom cron expression (overrides schedule settings)

deliveryEmail: optional boolean

Email delivery enabled

deliveryEmailAddress: optional string

Email address for delivery

formatemail
deliveryPhoneNumber: optional string

Phone number for SMS delivery

deliverySms: optional boolean

SMS delivery enabled

destinations: optional array of Destination { type, value, label }

Where to deliver task results

type: "email" or "sms" or "webhook"
Accepts one of the following:
"email"
"sms"
"webhook"
value: string

Email address, phone number, or webhook URL

label: optional string

Optional human-readable label

lastRunAt: optional string
formatdate-time
nextRunAt: optional string
formatdate-time
organizationId: optional string
formatuuid
scheduleDays: optional array of "monday" or "tuesday" or "wednesday" or 4 more

Days of week to run (for weekly schedule)

Accepts one of the following:
"monday"
"tuesday"
"wednesday"
"thursday"
"friday"
"saturday"
"sunday"
scheduleTime: optional string

Time of day to run (HH:MM format)

skillIds: optional array of string

IDs of attached skills

skills: optional array of Skill { id, content, name, 11 more }

Attached skills (when expanded)

id: string
formatuuid
content: string

Markdown instructions that guide task execution

name: string
category: optional string
createdAt: optional string
formatdate-time
description: optional string
frontmatter: optional object { author, requiredSources, tags }

Skill metadata

author: optional string
requiredSources: optional array of string

Source slugs this skill depends on

tags: optional array of string
iconUrl: optional string
formaturi
isPublic: optional boolean

Whether the skill is shared publicly

isUserInvocable: optional boolean

Whether users can manually attach this skill

organizationId: optional string
formatuuid
slug: optional string

URL-friendly identifier

updatedAt: optional string
formatdate-time
version: optional number
sourceIds: optional array of string

IDs of attached sources

sources: optional array of Source { id, config, name, 14 more }

Attached data sources (when expanded)

id: string
formatuuid
config: object { args, baseUrl, command, 3 more }

Source-specific configuration

args: optional array of string

Command arguments

baseUrl: optional string

Base URL for API sources

formaturi
command: optional string

Command to run for stdio transport

env: optional map[string]

Environment variables

transport: optional "stdio" or "http" or "websocket"

MCP transport type

Accepts one of the following:
"stdio"
"http"
"websocket"
url: optional string

URL for http/websocket transport

formaturi
name: string
type: "mcp" or "api" or "local"

Source connection type

Accepts one of the following:
"mcp"
"api"
"local"
authConfig: optional object { headerName, prefix, provider }

Authentication configuration

headerName: optional string
prefix: optional string
provider: optional string
authType: optional "none" or "oauth" or "bearer" or 5 more
Accepts one of the following:
"none"
"oauth"
"bearer"
"basic"
"header"
"query"
"api_key"
"composio"
composioConnected: optional boolean

Whether Composio OAuth is completed

composioToolkit: optional string

Composio toolkit name (e.g., 'todoist', 'github')

createdAt: optional string
formatdate-time
description: optional string
iconUrl: optional string
formaturi
isActive: optional boolean

Whether the source is connected and ready

lastConnectedAt: optional string
formatdate-time
organizationId: optional string
formatuuid
slug: optional string

URL-friendly identifier

tools: optional array of Tool { description, inputSchema, name }

Available tools from this source

description: optional string
inputSchema: optional unknown

JSON Schema for tool parameters

name: optional string
updatedAt: optional string
formatdate-time
timezone: optional string

IANA timezone (e.g., 'America/New_York')

updatedAt: optional string
formatdate-time
userId: optional string

Owner user ID

TaskRun = object { id, completedAt, costCents, 9 more }
id: optional string
formatuuid
completedAt: optional string
formatdate-time
costCents: optional number

Cost in cents

createdAt: optional string
formatdate-time
deliveryStatus: optional "pending" or "delivered" or "failed"
Accepts one of the following:
"pending"
"delivered"
"failed"
durationMs: optional number

Execution time in milliseconds

error: optional string

Error message if failed

output: optional string

AI-generated output

startedAt: optional string
formatdate-time
status: optional "pending" or "running" or "completed" or "failed"
Accepts one of the following:
"pending"
"running"
"completed"
"failed"
taskId: optional string
formatuuid
tokensUsed: optional number

Total tokens consumed

PromptlyTasksSources

Attach a source to a task
POST/api/promptly/tasks/{taskId}/sources
Detach a source from a task
DELETE/api/promptly/tasks/{taskId}/sources/{sourceId}

PromptlyTasksSkills

Attach a skill to a task
POST/api/promptly/tasks/{taskId}/skills
Detach a skill from a task
DELETE/api/promptly/tasks/{taskId}/skills/{skillId}

PromptlySources

List all sources
GET/api/promptly/sources
Create a source
POST/api/promptly/sources
Get a source
GET/api/promptly/sources/{sourceId}
Update a source
PATCH/api/promptly/sources/{sourceId}
Delete a source
DELETE/api/promptly/sources/{sourceId}
Test a source connection
POST/api/promptly/sources/{sourceId}/test
ModelsExpand Collapse
Source = object { id, config, name, 14 more }
id: string
formatuuid
config: object { args, baseUrl, command, 3 more }

Source-specific configuration

args: optional array of string

Command arguments

baseUrl: optional string

Base URL for API sources

formaturi
command: optional string

Command to run for stdio transport

env: optional map[string]

Environment variables

transport: optional "stdio" or "http" or "websocket"

MCP transport type

Accepts one of the following:
"stdio"
"http"
"websocket"
url: optional string

URL for http/websocket transport

formaturi
name: string
type: "mcp" or "api" or "local"

Source connection type

Accepts one of the following:
"mcp"
"api"
"local"
authConfig: optional object { headerName, prefix, provider }

Authentication configuration

headerName: optional string
prefix: optional string
provider: optional string
authType: optional "none" or "oauth" or "bearer" or 5 more
Accepts one of the following:
"none"
"oauth"
"bearer"
"basic"
"header"
"query"
"api_key"
"composio"
composioConnected: optional boolean

Whether Composio OAuth is completed

composioToolkit: optional string

Composio toolkit name (e.g., 'todoist', 'github')

createdAt: optional string
formatdate-time
description: optional string
iconUrl: optional string
formaturi
isActive: optional boolean

Whether the source is connected and ready

lastConnectedAt: optional string
formatdate-time
organizationId: optional string
formatuuid
slug: optional string

URL-friendly identifier

tools: optional array of Tool { description, inputSchema, name }

Available tools from this source

description: optional string
inputSchema: optional unknown

JSON Schema for tool parameters

name: optional string
updatedAt: optional string
formatdate-time
Tool = object { description, inputSchema, name }
description: optional string
inputSchema: optional unknown

JSON Schema for tool parameters

name: optional string

PromptlySkills

List all skills
GET/api/promptly/skills
Create a skill
POST/api/promptly/skills
Get a skill
GET/api/promptly/skills/{skillId}
Update a skill
PATCH/api/promptly/skills/{skillId}
Delete a skill
DELETE/api/promptly/skills/{skillId}
ModelsExpand Collapse
Skill = object { id, content, name, 11 more }
id: string
formatuuid
content: string

Markdown instructions that guide task execution

name: string
category: optional string
createdAt: optional string
formatdate-time
description: optional string
frontmatter: optional object { author, requiredSources, tags }

Skill metadata

author: optional string
requiredSources: optional array of string

Source slugs this skill depends on

tags: optional array of string
iconUrl: optional string
formaturi
isPublic: optional boolean

Whether the skill is shared publicly

isUserInvocable: optional boolean

Whether users can manually attach this skill

organizationId: optional string
formatuuid
slug: optional string

URL-friendly identifier

updatedAt: optional string
formatdate-time
version: optional number

PromptlyModels

List available models
GET/api/promptly/models
Get a model
GET/api/promptly/models/{modelId}
ModelsExpand Collapse
Model = object { id, codingIndex, contextLength, 8 more }
id: optional string
formatuuid
codingIndex: optional number

Coding benchmark score

contextLength: optional number

Maximum context window size

intelligenceIndex: optional number

Intelligence benchmark score

minimum0
maximum100
name: optional string
openRouterId: optional string

Model identifier for OpenRouter

outputSpeed: optional number

Tokens per second

powerTier: optional number

Power tier (1 = most powerful)

minimum1
maximum5
provider: optional string

Model provider (anthropic, openai, google, etc.)

supportsInternetSearch: optional boolean
supportsToolCalling: optional boolean

PromptlyBilling

Get billing status
GET/api/promptly/billing/status
Create checkout session
POST/api/promptly/billing/checkout
Create billing portal session
POST/api/promptly/billing/portal