Frontline User Tasks API
User tasks — the account 'To-dos' inbox: create, list, update, complete, and delete tasks, optionally linked to an object record. Distinct from object-row tasks (Object tasks) and from Max tasks.
User tasks — the account 'To-dos' inbox: create, list, update, complete, and delete tasks, optionally linked to an object record. Distinct from object-row tasks (Object tasks) and from Max tasks.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/frontline-user-tasks-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
openapi: 3.2.0
info:
title: Public User Tasks API
version: 1.0.0
description: 'Public API for accessing agents, flows, and analytics.
## Authentication
The Public API supports two API key types. Pass the key as a Bearer token:
```
Authorization: Bearer <YOUR_API_KEY>
```
### Account API key (GENERAL)
Account-level key that acts on behalf of the entire account. Required for account-level endpoints unless noted otherwise.
### User API key (USER)
User-level key tied to a specific user. Required for write operations and user-owned resources. **Also accepted on all account-level endpoints.**
Each operation documents which key type(s) it accepts in its **Security** section.'
license:
name: Proprietary
url: https://www.getfrontline.ai/terms-and-conditions
servers:
- url: https://prod-api.getfrontline.ai
tags:
- name: User Tasks
description: 'User tasks — the account ''To-dos'' inbox: create, list, update, complete, and delete tasks, optionally linked to an object record. Distinct from object-row tasks (Object tasks) and from Max tasks.'
paths:
/public/v1/tasks:
get:
summary: List user tasks
operationId: listTasks
description: Lists user tasks — the account 'To-dos' inbox. Filter by `assigned_to_me`, `completed`, `object_name` (tasks linked to an object), or `people_ids`/`team_ids`. Each task includes assignees and the linked object record (if any). Requires a USER API key. Distinct from object-row tasks (`/objects/{object}/rows/{rowId}/tasks`) and from Max tasks.
security:
- userApiKey: []
tags:
- User Tasks
parameters:
- schema:
type: string
enum:
- 'true'
- 'false'
description: Only tasks assigned to the calling user.
example: 'true'
required: false
name: assigned_to_me
in: query
- schema:
type: string
enum:
- 'true'
- 'false'
description: Filter by completion state.
example: 'false'
required: false
name: completed
in: query
- schema:
type: string
minLength: 1
description: Only tasks linked to this object.
example: companies
required: false
name: object_name
in: query
- schema:
type: string
description: CSV of People record IDs linked to the task.
example: 12,15
required: false
name: people_ids
in: query
- schema:
type: string
description: CSV of team IDs the task is shared with.
example: '3'
required: false
name: team_ids
in: query
responses:
'200':
description: A list of tasks
content:
application/json:
schema:
type: object
properties:
results:
type: array
items:
$ref: '#/components/schemas/PublicUserTask'
required:
- results
description: Standard list response
post:
summary: Create a user task
operationId: createTask
description: Creates a user task (to-do). Optionally link it to an object record by passing `object_name` + `row_id` together. `assignee_ids` are user IDs (see GET /users). Requires a USER API key.
security:
- userApiKey: []
tags:
- User Tasks
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PublicUserTaskCreateInput'
responses:
'201':
description: Created task
content:
application/json:
schema:
$ref: '#/components/schemas/PublicUserTask'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/public/v1/tasks/{taskId}:
get:
summary: Get a user task
operationId: getTask
description: Returns a single user task by ID. Requires a USER API key.
security:
- userApiKey: []
tags:
- User Tasks
parameters:
- schema:
type:
- number
- 'null'
example: 101
required: false
name: taskId
in: path
responses:
'200':
description: Task details
content:
application/json:
schema:
$ref: '#/components/schemas/PublicUserTask'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
patch:
summary: Update a user task
operationId: updateTask
description: 'Updates a task. Send only the fields to change. Pass `due_date: null` to clear the due date, or `object_name: null` + `row_id: null` to unlink the related object record. Requires a USER API key.'
security:
- userApiKey: []
tags:
- User Tasks
parameters:
- schema:
type:
- number
- 'null'
example: 101
required: false
name: taskId
in: path
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PublicUserTaskUpdateInput'
responses:
'200':
description: Updated task
content:
application/json:
schema:
$ref: '#/components/schemas/PublicUserTask'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
delete:
summary: Delete a user task
operationId: deleteTask
description: Permanently deletes a user task. Requires a USER API key.
security:
- userApiKey: []
tags:
- User Tasks
parameters:
- schema:
type:
- number
- 'null'
example: 101
required: false
name: taskId
in: path
responses:
'200':
description: Deletion result
content:
application/json:
schema:
type: object
properties:
success:
type: boolean
id:
type: number
required:
- success
- id
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/public/v1/tasks/{taskId}/complete:
post:
summary: Complete a user task
operationId: completeTask
description: Marks a task as completed. Only a user assigned to the task can complete it. Requires a USER API key.
security:
- userApiKey: []
tags:
- User Tasks
parameters:
- schema:
type:
- number
- 'null'
example: 101
required: false
name: taskId
in: path
responses:
'200':
description: Completed task
content:
application/json:
schema:
$ref: '#/components/schemas/PublicUserTask'
'400':
description: Bad Request (not an assignee, or already completed)
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/public/v1/tasks/{taskId}/uncomplete:
post:
summary: Uncomplete a user task
operationId: uncompleteTask
description: Clears the completed state of a task. Requires a USER API key.
security:
- userApiKey: []
tags:
- User Tasks
parameters:
- schema:
type:
- number
- 'null'
example: 101
required: false
name: taskId
in: path
responses:
'200':
description: Reopened task
content:
application/json:
schema:
$ref: '#/components/schemas/PublicUserTask'
components:
schemas:
PublicUserTaskUpdateInput:
type: object
properties:
content:
type: string
minLength: 1
due_date:
type:
- string
- 'null'
description: Pass null to clear the due date.
assignee_ids:
type: array
items:
type: number
object_name:
type:
- string
- 'null'
minLength: 1
description: Pass null (with row_id null) to unlink the object record.
row_id:
type:
- string
- 'null'
minLength: 1
ErrorBody:
type: object
properties:
code:
type: string
enum:
- bad_request
- unauthorized
- forbidden
- not_found
- conflict
- internal_error
- cli_outdated
example: unauthorized
message:
type: string
example: Detailed error message
details:
type: object
description: 'Optional structured details. Validation errors include `{ issues: [...] }`.'
example:
issues:
- path:
- name
message: String must contain at least 1 character(s)
code: too_small
required:
- code
- message
PublicUserTaskCreateInput:
type: object
properties:
content:
type: string
minLength: 1
example: Email David Booth about Q3 renewal
due_date:
type:
- string
- 'null'
example: '2026-06-25'
assignee_ids:
type: array
items:
type: number
description: User IDs (see GET /users).
example:
- 42
object_name:
type: string
minLength: 1
description: Link the task to an object record (requires row_id too).
example: companies
row_id:
type: string
minLength: 1
example: abc123
required:
- content
PublicUserTask:
type: object
properties:
id:
type: number
example: 101
content:
type: string
example: Email David Booth about Q3 renewal
due_date:
type:
- string
- 'null'
example: '2026-06-25T00:00:00Z'
completed:
type: boolean
example: false
completed_at:
type:
- string
- 'null'
example: null
created_at:
type: string
example: '2026-06-01T12:00:00Z'
updated_at:
type: string
example: '2026-06-01T12:00:00Z'
created_by:
type:
- object
- 'null'
properties:
id:
type: number
example: 42
name:
type:
- string
- 'null'
example: Alvaro Vargas
email:
type:
- string
- 'null'
example: alvaro@example.com
required:
- id
completed_by:
type:
- object
- 'null'
properties:
id:
type: number
example: 42
name:
type:
- string
- 'null'
example: Alvaro Vargas
email:
type:
- string
- 'null'
example: alvaro@example.com
required:
- id
assignees:
type: array
items:
type: object
properties:
id:
type: number
example: 42
name:
type:
- string
- 'null'
example: Alvaro Vargas
email:
type:
- string
- 'null'
example: alvaro@example.com
required:
- id
description: Assigned users
related:
type:
- object
- 'null'
properties:
object_name:
type:
- string
- 'null'
description: Object the task is linked to (the slug used in /objects commands).
example: companies
object_label:
type:
- string
- 'null'
example: Companies
row_id:
type:
- string
- 'null'
example: abc123
description: Linked object record, if the task is attached to one (else null).
required:
- id
- content
- completed
- created_at
- updated_at
- assignees
Error:
type: object
properties:
ok:
type: boolean
enum:
- false
example: false
error:
$ref: '#/components/schemas/ErrorBody'
required:
- ok
- error
securitySchemes:
accountApiKey:
type: http
scheme: bearer
bearerFormat: Account API Key
description: Account-level API key (GENERAL). Authenticates on behalf of the entire account. Use for read-only and analytics endpoints marked as account-level in this documentation.
userApiKey:
type: http
scheme: bearer
bearerFormat: User API Key
description: User-level API key (USER). Authenticates on behalf of a specific user. Required for write operations and user-owned resources. Also accepted on all account-level endpoints.
x-tagGroups:
- name: Agent Builder
tags:
- Agent Builder
- Flows
- Flow Variables
- Intents
- Agents
- Agent Playbooks
- name: Workflows
tags:
- Workflows
- Workflow Variables
- name: Objects
tags:
- Objects
- Object fields
- Object options
- Object record types
- Object views
- Object relations
- Object rows
- Object aggregations
- Object activities
- Object tasks
- Object files
- Object export
- name: Tables
tags:
- Tables
- Table fields
- Table options
- Table rows
- Table aggregations
- Table activities
- Table tasks
- Table files
- Table export
- name: Channels
tags:
- Channels
- name: Integrations
tags:
- Custom Tools
- Incoming Webhooks
- Account Integrations
- Agent Channels
- Integration Resources
- name: Knowledge
tags:
- Knowledge Bases
- name: Core
tags:
- Account
- AI Models
- Billing
- Users
- User Tasks
- Guidance