canonical: https://jentic.com/apis/craftboxx.de/craftboxx

# Craftboxx De Craftboxx API Documentation

Craftboxx is a planning platform for craft and trades businesses, and the Craftboxx API exposes the planner's data over 151 RESTful endpoints. It covers the day-to-day operations of a trades company: employees, time accounts, absences and recurring absence rules, articles and stock, projects and assignments, timesheets and activity logging, customers and addresses, vehicles, tools, documents, and on-site documentations with signature templates. Authentication is via a Bearer access token obtained from POST `/auth/create-token` using employee credentials, and access permissions mirror those configured in the Craftboxx Planner UI.

## For AI agents

Schedule assignments, log timesheets, manage employee absences, and track articles and tools for a trades business on Craftboxx. Use when an agent runs operational planning for craft and field-service teams.

## Scope

Does not handle accounting, invoicing to tax authorities, or payroll calculation - use for trades planning, timesheets, and on-site operations only.

## Capabilities

- Schedule and update assignments for employees on a project, including recurring assignment rules
- Log timesheet entries and timesheet activities against an assignment for billing and payroll
- Manage employee records, absences, target working times, and time account balances
- Track articles, article groups, and stock used on a job
- Maintain customer records, customer addresses, and project metadata
- Capture on-site documentations with signature templates and attached uploads

## Use cases

### Daily Trades Crew Scheduling

A trades dispatcher uses the Craftboxx API to assemble the next day's plan: GET /employees lists who is available, GET /absences flags people on holiday, and POST /assignments schedules each crew on a project. Recurring assignment rules handle weekly maintenance jobs without manual re-entry. This reduces the morning planning meeting from an hour to a few minutes.

Example prompt: List employees with no absence tomorrow via GET /employees and GET /absences, then POST /assignments to assign three of them to project 88 from 08:00 to 16:00.

### Timesheet and Payroll Export

At the end of each pay period, a back-office workflow pulls timesheet activities from Craftboxx and pushes the totals to payroll. GET /timesheets and GET `/timesheets/{id}/activities` aggregate hours per employee, which combined with employee balance compensations feed the payroll provider. This avoids paper timesheets and double entry.

Example prompt: Pull timesheets for the period 2026-06-01 to 2026-06-15 via GET /timesheets, sum activity durations per employee, and post the result to the payroll provider.

### Customer and Project Lifecycle

When a quote is accepted, an automation creates a customer in Craftboxx via POST /customers, attaches one or more addresses, and opens a project with POST /projects. Assignments and articles are then linked to that project so all on-site work, time, and parts roll up under one cost centre. The project becomes the single source of truth for billing.

Example prompt: POST /customers for 'Bauer GmbH' with address, then POST /projects referencing that customer ID and link three assignments for the kitchen refit.

### On-Site Documentation Capture

Field technicians record on-site documentations including photos, notes, and customer signatures. POST /documentations creates the record using a signature template, and uploads are attached via /uploads. The documentation is then available for the office team to invoice from or send to the customer as proof of completion.

Example prompt: POST /documentations with assignment 312, signature template 4, and uploaded photos, then mark the assignment complete.

### Agent-Driven Trades Operations

An AI operations agent embedded in a trades business chat handles day-to-day Craftboxx tasks: rescheduling assignments when an employee phones in sick, logging timesheet activities from voice notes, and answering questions about project status. Through Jentic, the agent finds the right Craftboxx endpoint by intent and executes with a Bearer token it never holds in plain text.

Example prompt: Search Jentic for 'reassign craftboxx assignment when employee absent', POST /absences for the sick employee, then PUT `/assignments/{id}` to reassign their work to a covering colleague.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | `/auth/create-token` | Create a Bearer access token using employee credentials |
| POST | `/assignments` | Create a new crew assignment on a project |
| GET | `/timesheets` | List timesheets for billing and payroll |
| POST | `/absences` | Record an employee absence |
| GET | `/employees` | List employee records |
| POST | `/projects` | Create a new project linked to a customer |
| POST | `/documentations` | Capture an on-site documentation with signature |

## Key resources

- **Assignments** — Schedule, update, and remove crew assignments on projects, including recurring rules
- **Timesheets** — Track timesheet entries and granular timesheet activities for billing and payroll
- **Employees** — Manage employee records, target working times, and time account balances
- **Absences** — Record absences, absence types, and recurring absence rules
- **Projects and Customers** — Maintain customer records and projects that anchor all on-site work
- **Articles and Tools** — Track articles, article groups, tools, and tool groups used on jobs
- **Documentations** — Capture on-site documentations with signature templates and uploads

## Why Jentic

- **Setup:** Wiring Craftboxx by hand means calling `/auth/create-token` to mint a bearer, tracking its expiry, and re-authenticating on a 401 across a 151-endpoint trades surface. Through Jentic you install once, import Craftboxx from the API Directory, store the credentials once, and your agent calls it.
- **Permission scoping:** Craftboxx routes its targets through the request body and collection paths rather than resource ids in the URL, so scope the agent to the operations it needs, such as creating assignments or reading timesheets. Destructive operations stay out unless you add them to the allowed set.
- **Credential handling:** Your Craftboxx credentials are stored once, encrypted, by your own Jentic One instance and exchanged for a bearer token at execution time. They never enter the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'create a Craftboxx assignment' or 'log a timesheet activity', and Jentic returns the matching Craftboxx operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **Clockify API** — Clockify is a general-purpose time tracking API used outside the trades world.
- **Toggl API** — Toggl provides time tracking and reporting for knowledge workers.
- **Personio API** — Personio handles HRIS, contracts, and payroll for German businesses that also use Craftboxx for operations.
- **BambooHR API** — BambooHR is an HRIS that pairs with operations tools like Craftboxx.

## FAQ

### What authentication does the Craftboxx API use?

Craftboxx uses Bearer tokens. Send a POST to `/auth/create-token` with the employee's email and password to receive an access token, then include it as `Authorization: Bearer <token>` on every subsequent request. Through Jentic, employee credentials are stored encrypted and the bearer token is fetched and rotated automatically.

### Can I create an assignment for a crew through the Craftboxx API?

Yes. POST /assignments creates a new assignment that links one or more employees to a project for a given time window. Recurring assignments are supported via `/assignments/recurring-rules` so weekly maintenance jobs do not need to be re-entered each week.

### How do I export timesheets from Craftboxx through Jentic?

Search Jentic for 'export craftboxx timesheets', execute GET /timesheets with date filters, and then load each entry's activities via GET `/timesheets/{id}/activities.` The aggregated durations can be posted into payroll without manual re-entry.

### What are the rate limits for the Craftboxx API?

The OpenAPI specification does not declare numeric rate limits. Craftboxx enforces fair-use limits at the platform level. Production integrations should serialise heavy bulk pulls and back off on 429 responses.

### Can I record employee absences through the API?

Yes. POST /absences creates an absence for an employee with a start and end date and a reference to an absence type. Recurring absences are supported via `/absences/recurring-rules`, and the absence shows up against the employee's time account balance.

### Does the Craftboxx API support on-site documentation?

Yes. POST /documentations creates an on-site documentation that can include uploads and a customer signature using a signature template configured in /documentation-signature-templates. This is how proof-of-work for field jobs is captured digitally.

### Can I limit what my agent is allowed to do with the Craftboxx API?

Yes. Because you run Jentic One yourself, your own rules decide which Craftboxx operations and credentials the agent may use across the 151-endpoint surface. Craftboxx routes its targets through the request body and collection paths rather than resource IDs in the URL, so you scope the agent to just the operations it needs, such as POST /assignments to create assignments or GET /timesheets to read timesheets. Destructive operations stay out of the allowed set unless you explicitly add them.
