This REST surface is intentionally narrow. Use documented MCP tools for broader Trellis workflows,
or contact Trellis support before building against objects that are not listed here.
Base URL
Authentication
Send the workspace API key as a Bearer token:{workspaceId} path segment must be the same workspace that issued the key. Workspace IDs are text values, such as acme-vacations.
Public REST calls do not require a Trellis web login session or browser cookie. Store API keys only in trusted server-side environments, and rotate a key from Settings > Developer if it is exposed.
You can also authenticate with an access token obtained from POST /api/v1/auth/token. See Authentication for details.
The linked OpenAPI spec (
openapi.public.json) documents workspace API key authentication only.
Session access tokens work at runtime but are not reflected in the generated spec.Contract versions
Breaking changes require a new object contract version or a new REST API version.
Endpoints
Properties
Tasks
Pagination
List endpoints acceptlimit and offset.
Responses include:
Properties
List properties
Property statuses:
PROSPECT, ONBOARDING, ACTIVE, AT_RISK, INACTIVE.
Get a property
Create a property
Update a property
Delete a property
Property object
Additional room count fields (
kitchens, livingRooms, hallways, terraces, balconies, gardens), stay limits (minNights, maxNights, minGuests), and deal tracking (dealValue) are also available. See the interactive reference or OpenAPI document for the full schema.
Tasks
List tasks
Task statuses:
OPEN, CREATED, DRAFT, DRAFTED, SCHEDULED, IN_PROGRESS, FINISHED, CLOSED, PENDING_APPROVAL, REQUEST_APPROVED, REQUEST_REJECTED, COMPLETED.
Task priorities: WATCH, LOWEST, LOW, NORMAL, HIGH, URGENT.
Task sources: MANUAL, AUTOMATION, SCHEDULE_RULE, INTEGRATION, AI, REVIEW, MESSAGE, CALL, MEETING_BOT.
Embedding related resources
Use theinclude query parameter to embed cost items and assignees in the task response:
costItems: Array of cost line items withamount,currency,description,billToType,categoryName, andnotes.assignees: Array of task assignees withrole(PRIMARYorSECONDARY),type(USERorVENDOR),userId,vendorOrgId, andname.
Get a task
Create a task
Update a task
status, summary, completedAt, startedAt, sortOrder, projectId, billableToOwner, cost, costCurrency, isNoCharge, customFields, completionFields, replacePrimaryUser.
Delete a task
Task object
Additional fields for integrations, scheduling, vendor workflows, and AI provenance are also returned. See the interactive reference or OpenAPI document for the full schema.
Daily work orders
The daily work orders endpoint returns tasks with statusSCHEDULED in field-ops departments for a single calendar date, formatted as costed work orders with assignee details. Use it for daily operations reports and workforce cost summaries. Tasks in other statuses or non-field-ops departments are excluded.
Response:
totalCost is null, totalCostCurrency is "MIXED", and costTotalsByCurrency contains per-currency totals.