For Agents
Register working hours, material usage, project files, and invoices for trades businesses across 290 endpoints, authenticated with an X-Auth-Token API key.
Get started with Apacta in minutes using your preferred integration method.
# Add to your MCP client config (Claude Desktop, Cursor, Windsurf)
{
"jentic": {
"url": "https://api.jentic.com/mcp",
"auth": "oauth"
}
}
# Then ask your agent:
"register a clock-in for a craftsman"
# → Jentic returns the GET /events tool with parameter schema, agent executes.What an agent can do with Apacta API.
Register clock-in and clock-out events for craftsmen against a project, including bulk delete
Create and update time entries linked to a specific activity and project
Manage contacts, contact persons, and companies in the trades business CRM
Generate, email, and attach files to invoices issued from the field service workflow
GET STARTED
Use for: I need to register a clock-in for a craftsman on a project, Create a new time entry against a specific activity, Find contacts at a company in the Apacta CRM, Generate an invoice from logged hours and materials
Not supported: Does not handle payroll calculation, accounting ledgers, or card payment acceptance - use for trades-business field operations (time, materials, forms, projects, invoices) only.
Apacta is a field service platform for craftsmen and trades businesses (electricians, plumbers, builders) to register working hours, material usage, project files, and quality assurance forms. The HTTP API exposes 290 endpoints across companies, contacts, projects, time entries, clocking records, invoices, forms, and project files so back-office tools and field apps can push and pull operational data. Authentication is an API key passed either as the X-Auth-Token header or as the api_token query parameter. The API supports pagination via ?page= on list endpoints and ordering on selected resources.
Upload project files and form-template responses tied to a specific project id
Track activities and clocking records to feed payroll and customer billing
Patterns agents use Apacta API for, with concrete tasks.
★ Daily payroll-ready timesheets
Aggregate the day's clock-in and clock-out events from craftsmen into payroll-ready timesheets. The agent calls /clocking_records and /time_entries scoped to a date range, applies project and activity codes, and writes the result into a payroll system. This replaces manual timesheet capture at the end of the week.
GET /clocking_records and /time_entries filtered to today's date, group by employee and project, and POST a daily summary to the payroll system
Project-to-invoice automation
Convert logged time and materials on a project into a draft invoice and email it to the customer. The agent uses /projects to find the project context, /time_entries and /activities to gather billable lines, then creates an invoice and posts the email via /invoices and /invoice_emails. Invoice files (PDF) can be attached via /invoice_files.
Read time entries and activities for a closed project, create a draft invoice, attach the PDF via /invoice_files, and send it via /invoice_emails to the project contact
Quality assurance form capture
Capture quality assurance form submissions from the field and tie them to projects. The agent retrieves form templates via /companies/{company_id}/form_templates and posts responses against the relevant project. Photos and attachments uploaded to /projects/{project_id}/files form the audit trail required by the customer.
Fetch the form template for a company, submit a completed response tied to a project id, and upload photos via /projects/{project_id}/files
Contact and company sync to a CRM
Mirror Apacta contacts, contact persons, and companies into a separate CRM (HubSpot, Salesforce) so the sales team sees the same customer records as the field team. The agent pages through /contacts and /companies, applying ?page= and the search filters on supported endpoints, and upserts each record into the destination CRM.
Page /contacts and /companies, dedupe by email and company name, and upsert each into the destination CRM
AI agent integration via Jentic
An agent supporting an Apacta-using business can search Jentic for 'create a time entry' and Jentic returns the matching Apacta operation and schema. Jentic stores the X-Auth-Token API key, so the agent does not handle the secret or wire up the api_token query fallback.
Search Jentic for 'create a time entry in Apacta', load the /time_entries schema, and POST a new entry for the user-named project and activity
290 endpoints — apacta is a field service platform for craftsmen and trades businesses (electricians, plumbers, builders) to register working hours, material usage, project files, and quality assurance forms.
METHOD
PATH
DESCRIPTION
/clocking_records
List clock-in and clock-out events
/clocking_records/checkout
Register a checkout for an active clocking record
/time_entries
List logged time entries
/activities
Create a new activity classification
/contacts
List contacts in the trades business CRM
/companies
List companies in the CRM
/invoices
Create an invoice
/invoice_emails
Email an invoice to a customer
/clocking_records
List clock-in and clock-out events
/clocking_records/checkout
Register a checkout for an active clocking record
/time_entries
List logged time entries
/activities
Create a new activity classification
/contacts
List contacts in the trades business CRM
Three things that make agents converge on Jentic-routed access.
Credential isolation
Apacta API keys are stored encrypted in the Jentic vault (MAXsystem) and attached as the X-Auth-Token header server-side. The agent never handles the raw key, and the api_token query-string fallback (which would otherwise leak the key into URL logs) is avoided.
Intent-based discovery
Agents search Jentic by intent ('register a clock-in', 'create an invoice', 'list time entries') and Jentic returns the matching Apacta operation among the 290 available, so the agent does not need to navigate the apidoc.apacta.com reference.
Time to first call
Direct integration: 2-4 days to map the 290-endpoint surface, set up paginated reads, and wire the invoice-email flow. Through Jentic: under an hour for any individual operation - search, load, execute.
Alternatives and complements available in the Jentic catalogue.
Clockify API
Time tracking for service businesses with simpler clock-in semantics.
Pick Clockify for general-purpose time tracking; pick Apacta when the workflow includes trades-specific forms, invoices, and project files.
Toggl Track API
Project-based time tracking with a strong reporting API.
Pick Toggl when the team needs lightweight time tracking with reporting; pick Apacta when invoicing and forms also live in the same system.
Stripe API
Accept card payments against Apacta-generated invoices.
Use Stripe to take payment on the invoice that Apacta generates, then reconcile the payment against the invoice id.
Specific to using Apacta API through Jentic.
What authentication does the Apacta API use?
API key auth with two transport options: X-Auth-Token in the request header (preferred) or api_token as a URL query parameter. Through Jentic the key is held in the encrypted MAXsystem vault and attached as the X-Auth-Token header server-side, so the secret never appears in URLs or logs.
Can I create invoices from logged hours through the Apacta API?
Yes. Pull /time_entries and /activities for the project, POST to /invoices to create the draft, attach the PDF via /invoice_files, and send it through /invoice_emails. This is the project-to-invoice path the API was designed for.
How do I register a clock-in through Jentic?
Search Jentic for 'register a clock-in for a craftsman', load the schema for /clocking_records (POST), and execute it with the employee, project, and start time. Use /clocking_records/checkout to close the same record at end of shift.
What are the rate limits for the Apacta API?
Apacta does not document specific per-minute limits in the OpenAPI spec; in practice the platform applies plan-based throttling. Use ?page= for paginated reads to keep request volumes bounded.
Does the API support search and ordering on list endpoints?
Search is experimental on selected endpoints (see the per-endpoint docs). Ordering is also experimental and follows the pattern ?sort=ResourceName.field&direction=desc, for example sorting invoices by invoice number descending.
How do I upload a file to a project?
There are two paths: /projects/{project_id}/files for files coming from wall posts or form submissions, and /projects/{project_id}/project_files for general project files not tied to a form. Pick based on whether the file is form-attached or free-standing.
/companies
List companies in the CRM
/invoices
Create an invoice
/invoice_emails
Email an invoice to a customer