End-to-end hiring — job openings, candidates, interviews, and offer management.
Candidates collection — standard CRUD operations. Filter with where[], paginate with page/limit, control depth for relations.
Returns a paginated list of Candidates. 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/candidates?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 Candidate 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/candidates \
-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": "Candidate created successfully"
}Interviews collection — standard CRUD operations. Filter with where[], paginate with page/limit, control depth for relations.
Returns a paginated list of Interviews. 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/interviews?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 Interview 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/interviews \
-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": "Interview created successfully"
}JobOpenings collection — standard CRUD operations. Filter with where[], paginate with page/limit, control depth for relations.
Returns a paginated list of JobOpenings. 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/job-openings?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 JobOpening 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/job-openings \
-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": "JobOpening created successfully"
}Offers collection — standard CRUD operations. Filter with where[], paginate with page/limit, control depth for relations.
Returns a paginated list of Offers. 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/offers?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 Offer 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/offers \
-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": "Offer created successfully"
}