Invoices, payments, expenses, payroll, budgets, purchase orders, and financial reporting.
Accounts collection — standard CRUD operations. Filter with where[], paginate with page/limit, control depth for relations.
Returns a paginated list of Accounts. Supports filtering, sorting, and relationship depth.
Auth: BothQuery Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| page | number | optional | Page number (default: 1) |
| limit | number | optional | Results per page (default: 20, max: 100) |
| sort | string | optional | Sort field, prefix with - for desc (e.g. -createdAt) |
| where | object | optional | Filter object e.g. where[status][equals]=active |
| depth | number | optional | Relationship depth (default: 1) |
Example Request
curl https://v2-api.amdital.com/api/accounts?limit=20&sort=-createdAt \
-H "Authorization: Bearer <token>"Example Response
{
"docs": [
{
"id": "64a1b2c3d4e5f6789abc0001",
"createdAt": "2026-01-15T10:00:00Z",
"updatedAt": "2026-01-15T10:00:00Z"
}
],
"totalDocs": 42,
"limit": 20,
"page": 1,
"totalPages": 3,
"hasNextPage": true,
"hasPrevPage": false
}Creates a new Account record. Requires authenticated workspace context.
Auth: BothBody / Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| workspace | string | required | Workspace ID (from JWT claims) |
Example Request
curl -X POST https://v2-api.amdital.com/api/accounts \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{"workspace":"ws_abc123"}'Example Response
{
"doc": {
"id": "64a1b2c3d4e5f6789abc0001",
"createdAt": "2026-01-15T10:00:00Z",
"updatedAt": "2026-01-15T10:00:00Z"
},
"message": "Account created successfully"
}Budgets collection — standard CRUD operations. Filter with where[], paginate with page/limit, control depth for relations.
Returns a paginated list of Budgets. Supports filtering, sorting, and relationship depth.
Auth: BothQuery Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| page | number | optional | Page number (default: 1) |
| limit | number | optional | Results per page (default: 20, max: 100) |
| sort | string | optional | Sort field, prefix with - for desc (e.g. -createdAt) |
| where | object | optional | Filter object e.g. where[status][equals]=active |
| depth | number | optional | Relationship depth (default: 1) |
Example Request
curl https://v2-api.amdital.com/api/budgets?limit=20&sort=-createdAt \
-H "Authorization: Bearer <token>"Example Response
{
"docs": [
{
"id": "64a1b2c3d4e5f6789abc0001",
"createdAt": "2026-01-15T10:00:00Z",
"updatedAt": "2026-01-15T10:00:00Z"
}
],
"totalDocs": 42,
"limit": 20,
"page": 1,
"totalPages": 3,
"hasNextPage": true,
"hasPrevPage": false
}Creates a new Budget record. Requires authenticated workspace context.
Auth: BothBody / Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| workspace | string | required | Workspace ID (from JWT claims) |
Example Request
curl -X POST https://v2-api.amdital.com/api/budgets \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{"workspace":"ws_abc123"}'Example Response
{
"doc": {
"id": "64a1b2c3d4e5f6789abc0001",
"createdAt": "2026-01-15T10:00:00Z",
"updatedAt": "2026-01-15T10:00:00Z"
},
"message": "Budget created successfully"
}Estimates collection — standard CRUD operations. Filter with where[], paginate with page/limit, control depth for relations.
Returns a paginated list of Estimates. Supports filtering, sorting, and relationship depth.
Auth: BothQuery Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| page | number | optional | Page number (default: 1) |
| limit | number | optional | Results per page (default: 20, max: 100) |
| sort | string | optional | Sort field, prefix with - for desc (e.g. -createdAt) |
| where | object | optional | Filter object e.g. where[status][equals]=active |
| depth | number | optional | Relationship depth (default: 1) |
Example Request
curl https://v2-api.amdital.com/api/estimates?limit=20&sort=-createdAt \
-H "Authorization: Bearer <token>"Example Response
{
"docs": [
{
"id": "64a1b2c3d4e5f6789abc0001",
"createdAt": "2026-01-15T10:00:00Z",
"updatedAt": "2026-01-15T10:00:00Z"
}
],
"totalDocs": 42,
"limit": 20,
"page": 1,
"totalPages": 3,
"hasNextPage": true,
"hasPrevPage": false
}Creates a new Estimate record. Requires authenticated workspace context.
Auth: BothBody / Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| workspace | string | required | Workspace ID (from JWT claims) |
Example Request
curl -X POST https://v2-api.amdital.com/api/estimates \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{"workspace":"ws_abc123"}'Example Response
{
"doc": {
"id": "64a1b2c3d4e5f6789abc0001",
"createdAt": "2026-01-15T10:00:00Z",
"updatedAt": "2026-01-15T10:00:00Z"
},
"message": "Estimate created successfully"
}Expenses collection — standard CRUD operations. Filter with where[], paginate with page/limit, control depth for relations.
Returns a paginated list of Expenses. Supports filtering, sorting, and relationship depth.
Auth: BothQuery Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| page | number | optional | Page number (default: 1) |
| limit | number | optional | Results per page (default: 20, max: 100) |
| sort | string | optional | Sort field, prefix with - for desc (e.g. -createdAt) |
| where | object | optional | Filter object e.g. where[status][equals]=active |
| depth | number | optional | Relationship depth (default: 1) |
Example Request
curl https://v2-api.amdital.com/api/expenses?limit=20&sort=-createdAt \
-H "Authorization: Bearer <token>"Example Response
{
"docs": [
{
"id": "64a1b2c3d4e5f6789abc0001",
"createdAt": "2026-01-15T10:00:00Z",
"updatedAt": "2026-01-15T10:00:00Z"
}
],
"totalDocs": 42,
"limit": 20,
"page": 1,
"totalPages": 3,
"hasNextPage": true,
"hasPrevPage": false
}Creates a new Expens record. Requires authenticated workspace context.
Auth: BothBody / Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| workspace | string | required | Workspace ID (from JWT claims) |
Example Request
curl -X POST https://v2-api.amdital.com/api/expenses \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{"workspace":"ws_abc123"}'Example Response
{
"doc": {
"id": "64a1b2c3d4e5f6789abc0001",
"createdAt": "2026-01-15T10:00:00Z",
"updatedAt": "2026-01-15T10:00:00Z"
},
"message": "Expens created successfully"
}InvoiceTemplates collection — standard CRUD operations. Filter with where[], paginate with page/limit, control depth for relations.
Returns a paginated list of InvoiceTemplates. Supports filtering, sorting, and relationship depth.
Auth: BothQuery Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| page | number | optional | Page number (default: 1) |
| limit | number | optional | Results per page (default: 20, max: 100) |
| sort | string | optional | Sort field, prefix with - for desc (e.g. -createdAt) |
| where | object | optional | Filter object e.g. where[status][equals]=active |
| depth | number | optional | Relationship depth (default: 1) |
Example Request
curl https://v2-api.amdital.com/api/invoice-templates?limit=20&sort=-createdAt \
-H "Authorization: Bearer <token>"Example Response
{
"docs": [
{
"id": "64a1b2c3d4e5f6789abc0001",
"createdAt": "2026-01-15T10:00:00Z",
"updatedAt": "2026-01-15T10:00:00Z"
}
],
"totalDocs": 42,
"limit": 20,
"page": 1,
"totalPages": 3,
"hasNextPage": true,
"hasPrevPage": false
}Creates a new InvoiceTemplate record. Requires authenticated workspace context.
Auth: BothBody / Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| workspace | string | required | Workspace ID (from JWT claims) |
Example Request
curl -X POST https://v2-api.amdital.com/api/invoice-templates \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{"workspace":"ws_abc123"}'Example Response
{
"doc": {
"id": "64a1b2c3d4e5f6789abc0001",
"createdAt": "2026-01-15T10:00:00Z",
"updatedAt": "2026-01-15T10:00:00Z"
},
"message": "InvoiceTemplate created successfully"
}Invoices collection — standard CRUD operations. Filter with where[], paginate with page/limit, control depth for relations.
Returns a paginated list of Invoices. Supports filtering, sorting, and relationship depth.
Auth: BothQuery Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| page | number | optional | Page number (default: 1) |
| limit | number | optional | Results per page (default: 20, max: 100) |
| sort | string | optional | Sort field, prefix with - for desc (e.g. -createdAt) |
| where | object | optional | Filter object e.g. where[status][equals]=active |
| depth | number | optional | Relationship depth (default: 1) |
Example Request
curl https://v2-api.amdital.com/api/invoices?limit=20&sort=-createdAt \
-H "Authorization: Bearer <token>"Example Response
{
"docs": [
{
"id": "64a1b2c3d4e5f6789abc0001",
"createdAt": "2026-01-15T10:00:00Z",
"updatedAt": "2026-01-15T10:00:00Z"
}
],
"totalDocs": 42,
"limit": 20,
"page": 1,
"totalPages": 3,
"hasNextPage": true,
"hasPrevPage": false
}Creates a new Invoice record. Requires authenticated workspace context.
Auth: BothBody / Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| workspace | string | required | Workspace ID (from JWT claims) |
Example Request
curl -X POST https://v2-api.amdital.com/api/invoices \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{"workspace":"ws_abc123"}'Example Response
{
"doc": {
"id": "64a1b2c3d4e5f6789abc0001",
"createdAt": "2026-01-15T10:00:00Z",
"updatedAt": "2026-01-15T10:00:00Z"
},
"message": "Invoice created successfully"
}Payments collection — standard CRUD operations. Filter with where[], paginate with page/limit, control depth for relations.
Returns a paginated list of Payments. Supports filtering, sorting, and relationship depth.
Auth: BothQuery Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| page | number | optional | Page number (default: 1) |
| limit | number | optional | Results per page (default: 20, max: 100) |
| sort | string | optional | Sort field, prefix with - for desc (e.g. -createdAt) |
| where | object | optional | Filter object e.g. where[status][equals]=active |
| depth | number | optional | Relationship depth (default: 1) |
Example Request
curl https://v2-api.amdital.com/api/payments?limit=20&sort=-createdAt \
-H "Authorization: Bearer <token>"Example Response
{
"docs": [
{
"id": "64a1b2c3d4e5f6789abc0001",
"createdAt": "2026-01-15T10:00:00Z",
"updatedAt": "2026-01-15T10:00:00Z"
}
],
"totalDocs": 42,
"limit": 20,
"page": 1,
"totalPages": 3,
"hasNextPage": true,
"hasPrevPage": false
}Creates a new Payment record. Requires authenticated workspace context.
Auth: BothBody / Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| workspace | string | required | Workspace ID (from JWT claims) |
Example Request
curl -X POST https://v2-api.amdital.com/api/payments \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{"workspace":"ws_abc123"}'Example Response
{
"doc": {
"id": "64a1b2c3d4e5f6789abc0001",
"createdAt": "2026-01-15T10:00:00Z",
"updatedAt": "2026-01-15T10:00:00Z"
},
"message": "Payment created successfully"
}Payroll collection — standard CRUD operations. Filter with where[], paginate with page/limit, control depth for relations.
Returns a paginated list of Payroll. Supports filtering, sorting, and relationship depth.
Auth: BothQuery Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| page | number | optional | Page number (default: 1) |
| limit | number | optional | Results per page (default: 20, max: 100) |
| sort | string | optional | Sort field, prefix with - for desc (e.g. -createdAt) |
| where | object | optional | Filter object e.g. where[status][equals]=active |
| depth | number | optional | Relationship depth (default: 1) |
Example Request
curl https://v2-api.amdital.com/api/payroll?limit=20&sort=-createdAt \
-H "Authorization: Bearer <token>"Example Response
{
"docs": [
{
"id": "64a1b2c3d4e5f6789abc0001",
"createdAt": "2026-01-15T10:00:00Z",
"updatedAt": "2026-01-15T10:00:00Z"
}
],
"totalDocs": 42,
"limit": 20,
"page": 1,
"totalPages": 3,
"hasNextPage": true,
"hasPrevPage": false
}Creates a new Payroll record. Requires authenticated workspace context.
Auth: BothBody / Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| workspace | string | required | Workspace ID (from JWT claims) |
Example Request
curl -X POST https://v2-api.amdital.com/api/payroll \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{"workspace":"ws_abc123"}'Example Response
{
"doc": {
"id": "64a1b2c3d4e5f6789abc0001",
"createdAt": "2026-01-15T10:00:00Z",
"updatedAt": "2026-01-15T10:00:00Z"
},
"message": "Payroll created successfully"
}PurchaseOrders collection — standard CRUD operations. Filter with where[], paginate with page/limit, control depth for relations.
Returns a paginated list of PurchaseOrders. Supports filtering, sorting, and relationship depth.
Auth: BothQuery Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| page | number | optional | Page number (default: 1) |
| limit | number | optional | Results per page (default: 20, max: 100) |
| sort | string | optional | Sort field, prefix with - for desc (e.g. -createdAt) |
| where | object | optional | Filter object e.g. where[status][equals]=active |
| depth | number | optional | Relationship depth (default: 1) |
Example Request
curl https://v2-api.amdital.com/api/purchase-orders?limit=20&sort=-createdAt \
-H "Authorization: Bearer <token>"Example Response
{
"docs": [
{
"id": "64a1b2c3d4e5f6789abc0001",
"createdAt": "2026-01-15T10:00:00Z",
"updatedAt": "2026-01-15T10:00:00Z"
}
],
"totalDocs": 42,
"limit": 20,
"page": 1,
"totalPages": 3,
"hasNextPage": true,
"hasPrevPage": false
}Creates a new PurchaseOrder record. Requires authenticated workspace context.
Auth: BothBody / Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| workspace | string | required | Workspace ID (from JWT claims) |
Example Request
curl -X POST https://v2-api.amdital.com/api/purchase-orders \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{"workspace":"ws_abc123"}'Example Response
{
"doc": {
"id": "64a1b2c3d4e5f6789abc0001",
"createdAt": "2026-01-15T10:00:00Z",
"updatedAt": "2026-01-15T10:00:00Z"
},
"message": "PurchaseOrder created successfully"
}Taxes collection — standard CRUD operations. Filter with where[], paginate with page/limit, control depth for relations.
Returns a paginated list of Taxes. Supports filtering, sorting, and relationship depth.
Auth: BothQuery Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| page | number | optional | Page number (default: 1) |
| limit | number | optional | Results per page (default: 20, max: 100) |
| sort | string | optional | Sort field, prefix with - for desc (e.g. -createdAt) |
| where | object | optional | Filter object e.g. where[status][equals]=active |
| depth | number | optional | Relationship depth (default: 1) |
Example Request
curl https://v2-api.amdital.com/api/taxes?limit=20&sort=-createdAt \
-H "Authorization: Bearer <token>"Example Response
{
"docs": [
{
"id": "64a1b2c3d4e5f6789abc0001",
"createdAt": "2026-01-15T10:00:00Z",
"updatedAt": "2026-01-15T10:00:00Z"
}
],
"totalDocs": 42,
"limit": 20,
"page": 1,
"totalPages": 3,
"hasNextPage": true,
"hasPrevPage": false
}Creates a new Tax record. Requires authenticated workspace context.
Auth: BothBody / Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| workspace | string | required | Workspace ID (from JWT claims) |
Example Request
curl -X POST https://v2-api.amdital.com/api/taxes \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{"workspace":"ws_abc123"}'Example Response
{
"doc": {
"id": "64a1b2c3d4e5f6789abc0001",
"createdAt": "2026-01-15T10:00:00Z",
"updatedAt": "2026-01-15T10:00:00Z"
},
"message": "Tax created successfully"
}Vendors collection — standard CRUD operations. Filter with where[], paginate with page/limit, control depth for relations.
Returns a paginated list of Vendors. Supports filtering, sorting, and relationship depth.
Auth: BothQuery Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| page | number | optional | Page number (default: 1) |
| limit | number | optional | Results per page (default: 20, max: 100) |
| sort | string | optional | Sort field, prefix with - for desc (e.g. -createdAt) |
| where | object | optional | Filter object e.g. where[status][equals]=active |
| depth | number | optional | Relationship depth (default: 1) |
Example Request
curl https://v2-api.amdital.com/api/vendors?limit=20&sort=-createdAt \
-H "Authorization: Bearer <token>"Example Response
{
"docs": [
{
"id": "64a1b2c3d4e5f6789abc0001",
"createdAt": "2026-01-15T10:00:00Z",
"updatedAt": "2026-01-15T10:00:00Z"
}
],
"totalDocs": 42,
"limit": 20,
"page": 1,
"totalPages": 3,
"hasNextPage": true,
"hasPrevPage": false
}Creates a new Vendor record. Requires authenticated workspace context.
Auth: BothBody / Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| workspace | string | required | Workspace ID (from JWT claims) |
Example Request
curl -X POST https://v2-api.amdital.com/api/vendors \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{"workspace":"ws_abc123"}'Example Response
{
"doc": {
"id": "64a1b2c3d4e5f6789abc0001",
"createdAt": "2026-01-15T10:00:00Z",
"updatedAt": "2026-01-15T10:00:00Z"
},
"message": "Vendor created successfully"
}