Trail Tasks API
The Tasks API from Trail — 1 operation(s) for tasks.
The Tasks API from Trail — 1 operation(s) for 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/trail-tasks-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Areas Tasks API
version: v1
description: 'You can use this API to query details of your areas.
[Learn more about areas](https://answers.trailapp.com/en/articles/8337026-creating-managing-areas).
An API_KEY header is required to authorise requests. The rate limiting for endpoints is set to 60 requests (to any endpoint) per 60 seconds.
'
servers:
- url: https://web.trailapp.com/api
- url: https://us.trailapp.com/api
description: US
tags:
- name: Tasks
paths:
/evo_api/tasks:
get:
tags:
- Tasks
summary: Retrieves tasks
operationId: getTasks
security:
- oauth2:
- openid
- profile
- email
- access.trail.api
parameters:
- name: location_id
in: query
required: true
description: Location ID
schema:
type: integer
- name: task_template_id
in: query
required: true
description: Task template ID
schema:
type: integer
- name: date
in: query
required: true
description: Date (YYYY-MM-DD)
schema:
type: string
format: date
responses:
'200':
description: tasks retrieved
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Task'
'401':
description: unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/Error401'
post:
tags:
- Tasks
summary: Creates a task
operationId: createTask
security:
- oauth2:
- openid
- profile
- email
- access.trail.api
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
example: One-off Cleaning
description: Task name
description:
type: string
example: Clean the main areas
description: Task description
checklist_items:
type: array
items:
type: string
example:
- Clean floors
- Dust surfaces
description: Array of checklist items
start_datetime:
type: string
format: date-time
example: '2024-01-01T09:00:00Z'
description: Task start time
end_datetime:
type: string
format: date-time
example: '2024-01-01T10:00:00Z'
description: Task end time
location_id:
type: integer
example: 1
description: Location ID
required:
- name
- start_datetime
- end_datetime
- location_id
responses:
'201':
description: task created
content:
application/json:
schema:
$ref: '#/components/schemas/Task'
'401':
description: unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/Error401'
components:
schemas:
Subtask:
type: object
properties:
id:
type: integer
example: 1
description: Subtask ID
name:
type: string
example: Clean floors
description: Subtask name
completion_value:
type: string
example: unchecked
description: Subtask completion value
position:
type:
- integer
- 'null'
example: 0
description: Subtask position
required:
- id
- name
- completion_value
Task:
type: object
properties:
id:
type: integer
example: 1
description: Task ID
name:
type: string
example: Daily Cleaning
description: Task name
notes:
type: string
example: Clean the main areas
description: Task description/notes
due_from_datetime:
type: string
format: date-time
example: '2024-01-01T09:00:00Z'
description: Task start time
due_by_datetime:
type: string
format: date-time
example: '2024-01-01T10:00:00Z'
description: Task end time
completed_at:
type:
- string
- 'null'
format: date-time
example: '2024-01-01T09:30:00Z'
description: Task completion time
completed_by:
type:
- string
- 'null'
example: John Doe
description: Name of user who completed the task
status:
type: string
example: completed
description: Task status
subtasks:
type: array
items:
$ref: '#/components/schemas/Subtask'
description: Array of subtasks
required:
- id
- name
- status
Error401:
type: object
properties:
errors:
type: array
items:
type: object
properties:
title:
type: string
example: Unauthorized
detail:
type: string
example: API key is missing or invalid
status:
type: integer
example: 401
required:
- title
- detail
- status
required:
- errors
securitySchemes:
API_KEY:
type: apiKey
name: API_KEY
in: header
externalDocs:
description: How to obtain an API key
url: https://answers.trailapp.com/en/articles/9166997-trail-s-task-api