Skip to content

HTTP API

Base: https://api.postware.ai/w/{ws}. JSON everywhere; Authorization: Bearer <token> under /v1. Errors are { "error": { "code", "message", "details" } }.

Identity

MethodPathDoes
GET/v1/identityList Identity records
POST/v1/identityCreate an Identity
POST/v1/identity/queryQuery Identity records
POST/v1/identity/upsertCreate or update an Identity by identity rules
GET/v1/identity/{id}Get an Identity
PATCH/v1/identity/{id}Update an Identity
DELETE/v1/identity/{id}Delete an Identity (soft)
GET/v1/identity/{id}/historyRevisions of an Identity from the audit log

Import run

MethodPathDoes
GET/v1/import_runList Import run records
POST/v1/import_runCreate an Import run
POST/v1/import_run/queryQuery Import run records
POST/v1/import_run/upsertCreate or update an Import run by identity rules
GET/v1/import_run/{id}Get an Import run
PATCH/v1/import_run/{id}Update an Import run
DELETE/v1/import_run/{id}Delete an Import run (soft)
GET/v1/import_run/{id}/historyRevisions of an Import run from the audit log

Member

MethodPathDoes
GET/v1/memberList Member records
POST/v1/memberCreate a Member
POST/v1/member/queryQuery Member records
POST/v1/member/upsertCreate or update a Member by identity rules
GET/v1/member/{id}Get a Member
PATCH/v1/member/{id}Update a Member
DELETE/v1/member/{id}Delete a Member (soft)
GET/v1/member/{id}/historyRevisions of a Member from the audit log

Policy

MethodPathDoes
GET/v1/policyList Policy records
POST/v1/policyCreate a Policy
POST/v1/policy/queryQuery Policy records
POST/v1/policy/upsertCreate or update a Policy by identity rules
GET/v1/policy/{id}Get a Policy
PATCH/v1/policy/{id}Update a Policy
DELETE/v1/policy/{id}Delete a Policy (soft)
GET/v1/policy/{id}/historyRevisions of a Policy from the audit log

Share

MethodPathDoes
GET/v1/shareList Share records
POST/v1/shareCreate a Share
POST/v1/share/queryQuery Share records
POST/v1/share/upsertCreate or update a Share by identity rules
GET/v1/share/{id}Get a Share
PATCH/v1/share/{id}Update a Share
DELETE/v1/share/{id}Delete a Share (soft)
GET/v1/share/{id}/historyRevisions of a Share from the audit log

Tag

MethodPathDoes
GET/v1/tagList Tag records
POST/v1/tagCreate a Tag
POST/v1/tag/queryQuery Tag records
POST/v1/tag/upsertCreate or update a Tag by identity rules
GET/v1/tag/{id}Get a Tag
PATCH/v1/tag/{id}Update a Tag
DELETE/v1/tag/{id}Delete a Tag (soft)
GET/v1/tag/{id}/historyRevisions of a Tag from the audit log

Workspace

MethodPathDoes
GET/v1/workspaceList Workspace records
POST/v1/workspaceCreate a Workspace
POST/v1/workspace/queryQuery Workspace records
POST/v1/workspace/upsertCreate or update a Workspace by identity rules
GET/v1/workspace/{id}Get a Workspace
PATCH/v1/workspace/{id}Update a Workspace
DELETE/v1/workspace/{id}Delete a Workspace (soft)
GET/v1/workspace/{id}/historyRevisions of a Workspace from the audit log

Event

MethodPathDoes
GET/v1/eventList Event records
POST/v1/eventCreate an Event
POST/v1/event/queryQuery Event records
POST/v1/event/upsertCreate or update an Event by identity rules
GET/v1/event/{id}Get an Event
PATCH/v1/event/{id}Update an Event
DELETE/v1/event/{id}Delete an Event (soft)
GET/v1/event/{id}/historyRevisions of an Event from the audit log

File

MethodPathDoes
GET/v1/fileList File records
POST/v1/fileCreate a File
POST/v1/file/queryQuery File records
POST/v1/file/upsertCreate or update a File by identity rules
GET/v1/file/{id}Get a File
PATCH/v1/file/{id}Update a File
DELETE/v1/file/{id}Delete a File (soft)
GET/v1/file/{id}/historyRevisions of a File from the audit log

Message

MethodPathDoes
GET/v1/messageList Message records
POST/v1/messageCreate a Message
POST/v1/message/queryQuery Message records
POST/v1/message/upsertCreate or update a Message by identity rules
GET/v1/message/{id}Get a Message
PATCH/v1/message/{id}Update a Message
DELETE/v1/message/{id}Delete a Message (soft)
GET/v1/message/{id}/historyRevisions of a Message from the audit log

Note

MethodPathDoes
GET/v1/noteList Note records
POST/v1/noteCreate a Note
POST/v1/note/queryQuery Note records
POST/v1/note/upsertCreate or update a Note by identity rules
GET/v1/note/{id}Get a Note
PATCH/v1/note/{id}Update a Note
DELETE/v1/note/{id}Delete a Note (soft)
GET/v1/note/{id}/historyRevisions of a Note from the audit log

Organization

MethodPathDoes
GET/v1/organizationList Organization records
POST/v1/organizationCreate an Organization
POST/v1/organization/queryQuery Organization records
POST/v1/organization/upsertCreate or update an Organization by identity rules
GET/v1/organization/{id}Get an Organization
PATCH/v1/organization/{id}Update an Organization
DELETE/v1/organization/{id}Delete an Organization (soft)
GET/v1/organization/{id}/historyRevisions of an Organization from the audit log

Person

MethodPathDoes
GET/v1/personList Person records
POST/v1/personCreate a Person
POST/v1/person/queryQuery Person records
POST/v1/person/upsertCreate or update a Person by identity rules
GET/v1/person/{id}Get a Person
PATCH/v1/person/{id}Update a Person
DELETE/v1/person/{id}Delete a Person (soft)
GET/v1/person/{id}/historyRevisions of a Person from the audit log

Product

MethodPathDoes
GET/v1/productList Product records
POST/v1/productCreate a Product
POST/v1/product/queryQuery Product records
POST/v1/product/upsertCreate or update a Product by identity rules
GET/v1/product/{id}Get a Product
PATCH/v1/product/{id}Update a Product
DELETE/v1/product/{id}Delete a Product (soft)
GET/v1/product/{id}/historyRevisions of a Product from the audit log

Project

MethodPathDoes
GET/v1/projectList Project records
POST/v1/projectCreate a Project
POST/v1/project/queryQuery Project records
POST/v1/project/upsertCreate or update a Project by identity rules
GET/v1/project/{id}Get a Project
PATCH/v1/project/{id}Update a Project
DELETE/v1/project/{id}Delete a Project (soft)
GET/v1/project/{id}/historyRevisions of a Project from the audit log

Task

MethodPathDoes
GET/v1/taskList Task records
POST/v1/taskCreate a Task
POST/v1/task/queryQuery Task records
POST/v1/task/upsertCreate or update a Task by identity rules
GET/v1/task/{id}Get a Task
PATCH/v1/task/{id}Update a Task
DELETE/v1/task/{id}Delete a Task (soft)
GET/v1/task/{id}/historyRevisions of a Task from the audit log

Team

MethodPathDoes
GET/v1/teamList Team records
POST/v1/teamCreate a Team
POST/v1/team/queryQuery Team records
POST/v1/team/upsertCreate or update a Team by identity rules
GET/v1/team/{id}Get a Team
PATCH/v1/team/{id}Update a Team
DELETE/v1/team/{id}Delete a Team (soft)
GET/v1/team/{id}/historyRevisions of a Team from the audit log

Deal

MethodPathDoes
GET/v1/dealList Deal records
POST/v1/dealCreate a Deal
POST/v1/deal/queryQuery Deal records
POST/v1/deal/upsertCreate or update a Deal by identity rules
GET/v1/deal/{id}Get a Deal
PATCH/v1/deal/{id}Update a Deal
DELETE/v1/deal/{id}Delete a Deal (soft)
GET/v1/deal/{id}/historyRevisions of a Deal from the audit log

Pipeline

MethodPathDoes
GET/v1/pipelineList Pipeline records
POST/v1/pipelineCreate a Pipeline
POST/v1/pipeline/queryQuery Pipeline records
POST/v1/pipeline/upsertCreate or update a Pipeline by identity rules
GET/v1/pipeline/{id}Get a Pipeline
PATCH/v1/pipeline/{id}Update a Pipeline
DELETE/v1/pipeline/{id}Delete a Pipeline (soft)
GET/v1/pipeline/{id}/historyRevisions of a Pipeline from the audit log

Invoice

MethodPathDoes
GET/v1/invoiceList Invoice records
POST/v1/invoiceCreate an Invoice
POST/v1/invoice/queryQuery Invoice records
POST/v1/invoice/upsertCreate or update an Invoice by identity rules
GET/v1/invoice/{id}Get an Invoice
PATCH/v1/invoice/{id}Update an Invoice
DELETE/v1/invoice/{id}Delete an Invoice (soft)
GET/v1/invoice/{id}/historyRevisions of an Invoice from the audit log

Payment

MethodPathDoes
GET/v1/paymentList Payment records
POST/v1/paymentCreate a Payment
POST/v1/payment/queryQuery Payment records
POST/v1/payment/upsertCreate or update a Payment by identity rules
GET/v1/payment/{id}Get a Payment
PATCH/v1/payment/{id}Update a Payment
DELETE/v1/payment/{id}Delete a Payment (soft)
GET/v1/payment/{id}/historyRevisions of a Payment from the audit log

Price

MethodPathDoes
GET/v1/priceList Price records
POST/v1/priceCreate a Price
POST/v1/price/queryQuery Price records
POST/v1/price/upsertCreate or update a Price by identity rules
GET/v1/price/{id}Get a Price
PATCH/v1/price/{id}Update a Price
DELETE/v1/price/{id}Delete a Price (soft)
GET/v1/price/{id}/historyRevisions of a Price from the audit log

Subscription

MethodPathDoes
GET/v1/subscriptionList Subscription records
POST/v1/subscriptionCreate a Subscription
POST/v1/subscription/queryQuery Subscription records
POST/v1/subscription/upsertCreate or update a Subscription by identity rules
GET/v1/subscription/{id}Get a Subscription
PATCH/v1/subscription/{id}Update a Subscription
DELETE/v1/subscription/{id}Delete a Subscription (soft)
GET/v1/subscription/{id}/historyRevisions of a Subscription from the audit log

Tax rate

MethodPathDoes
GET/v1/tax_rateList Tax rate records
POST/v1/tax_rateCreate a Tax rate
POST/v1/tax_rate/queryQuery Tax rate records
POST/v1/tax_rate/upsertCreate or update a Tax rate by identity rules
GET/v1/tax_rate/{id}Get a Tax rate
PATCH/v1/tax_rate/{id}Update a Tax rate
DELETE/v1/tax_rate/{id}Delete a Tax rate (soft)
GET/v1/tax_rate/{id}/historyRevisions of a Tax rate from the audit log

Ticket

MethodPathDoes
GET/v1/ticketList Ticket records
POST/v1/ticketCreate a Ticket
POST/v1/ticket/queryQuery Ticket records
POST/v1/ticket/upsertCreate or update a Ticket by identity rules
GET/v1/ticket/{id}Get a Ticket
PATCH/v1/ticket/{id}Update a Ticket
DELETE/v1/ticket/{id}Delete a Ticket (soft)
GET/v1/ticket/{id}/historyRevisions of a Ticket from the audit log

Collection

MethodPathDoes
GET/v1/collectionList Collection records
POST/v1/collectionCreate a Collection
POST/v1/collection/queryQuery Collection records
POST/v1/collection/upsertCreate or update a Collection by identity rules
GET/v1/collection/{id}Get a Collection
PATCH/v1/collection/{id}Update a Collection
DELETE/v1/collection/{id}Delete a Collection (soft)
GET/v1/collection/{id}/historyRevisions of a Collection from the audit log

Document

MethodPathDoes
GET/v1/documentList Document records
POST/v1/documentCreate a Document
POST/v1/document/queryQuery Document records
POST/v1/document/upsertCreate or update a Document by identity rules
GET/v1/document/{id}Get a Document
PATCH/v1/document/{id}Update a Document
DELETE/v1/document/{id}Delete a Document (soft)
GET/v1/document/{id}/historyRevisions of a Document from the audit log

Records

MethodPathDoes
POST/v1/batchRun up to 500 operations
GET/v1/searchFull-text search across models
POST/v1/searchFull-text search across models

Schema

MethodPathDoes
GET/v1/schemaList models
GET/v1/schema/extensionsDeclared extensions
POST/v1/schema/extensionsDeclare an extension (admins)
GET/v1/schema/openapi.jsonThis document
GET/v1/schema/{model}JSON Schema, identity rules, status categories, extensions and an example

Imports and exports

MethodPathDoes
POST/v1/exportsStart an export job (sqlite, csv or jsonl)
GET/v1/exports/{id}Export status and, when succeeded, the download URL
GET/v1/exports/{id}/downloadThe export file (the job's signed download_url, or bearer auth)
POST/v1/importsRun a CSV import
GET/v1/imports/{id}An ImportRun

Files

MethodPathDoes
POST/v1/file/upload-urlCreate a pending File and get where to PUT its bytes
POST/v1/file/{id}/completeVerify size and checksum after the upload; the same bytes dedupe to one File
PUT/v1/file/{id}/contentUpload the bytes of a pending File (local storage; a presigned store answers 405)
GET/v1/file/{id}/downloadThe bytes (the signed link from download-url, or bearer auth)
GET/v1/file/{id}/download-urlA download link valid 15 minutes, usable from a plain browser

Events

MethodPathDoes
GET/v1/eventsServer-sent events with replay from ?after=<seq>
GET/v1/webhooksList webhooks (admins); secrets are not returned
POST/v1/webhooksRegister a webhook (admins); the secret is returned once
DELETE/v1/webhooks/{id}Remove a webhook (admins)

Auth

MethodPathDoes
GET/v1/meThe principal, its Member or Person, scopes, plan and limits

Operational

MethodPathDoes
GET/v1/auditAudit log (admins)
GET/v1/statsCounts per model, MAU, bytes, sources

Auth routes (/auth/*, /oauth/*, /.well-known/*), shares (/s/{token}/...) and public reads (/p/{ws}/...) are described in the specs 03 and 04.