# Apacta API

> Apacta API on Apizie: 290 endpoints (Get a list of activities, Create an activity, Bulk delete activities, Edit an activity, …) returned as clean JSON through one API key. Send your own provider key in the x-upstream-key header. Call it over REST at https://apizie.tech/v1/open-data:apacta/{endpoint} or from Claude, ChatGPT and Cursor through the Apizie MCP server. Free plan: 1,000 requests a month.

- Project key: `open-data:apacta`
- Category: Open Data
- Status: byok
- Source: https://apacta.com
- Page: https://apizie.tech/api/open-data/apacta
- OpenAPI: https://apizie.tech/api/open-data/apacta/openapi.json

API for a tool to craftsmen used to register working hours, material usage and quality assurance. # Endpoint The endpoint `https://app.apacta.com/api/v1` should be used to communicate with the API. API access is only…

## Endpoints

### Get a list of activities
`GET https://apizie.tech/v1/open-data:apacta/get-activities` (byok)

### Create an activity
`POST https://apizie.tech/v1/open-data:apacta/post-activities` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

### Bulk delete activities
`POST https://apizie.tech/v1/open-data:apacta/delete-activities-bulk-delete` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

### Edit an activity
`POST https://apizie.tech/v1/open-data:apacta/put-activities-activity-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| activity_id | string | yes |  |
| body | object | yes | JSON request body |

### Delete an activity
`POST https://apizie.tech/v1/open-data:apacta/delete-activities-activity-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| activity_id | string | yes |  |

### Get list of cities supported in Apacta
`GET https://apizie.tech/v1/open-data:apacta/get-cities` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| zip_code | string | no | Used to search for a city with specific zip code |
| name | string | no | Used to search for a city by name |
| include_all | boolean | no | Used to search for a city without filtering by country |

### Get details about one city
`GET https://apizie.tech/v1/open-data:apacta/get-cities-city-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| city_id | string | yes |  |

### Get a list of clocking records
`GET https://apizie.tech/v1/open-data:apacta/get-clocking-records` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| active | boolean | no | Used to search for active clocking records |

### Create clocking record for authenticated user
`POST https://apizie.tech/v1/open-data:apacta/post-clocking-records` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

### Checkout active clocking record for authenticated user
`POST https://apizie.tech/v1/open-data:apacta/post-clocking-records-checkout` (byok)

### Details of 1 clocking_record
`GET https://apizie.tech/v1/open-data:apacta/get-clocking-records-clocking-record-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| clocking_record_id | string | yes |  |

### Edit a clocking record
`POST https://apizie.tech/v1/open-data:apacta/put-clocking-records-clocking-record-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| clocking_record_id | string | yes |  |

### Delete a clocking record
`POST https://apizie.tech/v1/open-data:apacta/delete-clocking-records-clocking-record-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| clocking_record_id | string | yes |  |

### Get a list of companies
`GET https://apizie.tech/v1/open-data:apacta/get-companies` (byok)

### URL for subscription selfservice
`GET https://apizie.tech/v1/open-data:apacta/get-companies-subscription-self-service` (byok)

### Details of 1 company
`GET https://apizie.tech/v1/open-data:apacta/get-companies-company-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| company_id | string | yes |  |

### List a company integration feature settings
`GET https://apizie.tech/v1/open-data:apacta/get-companies-company-id-companies-integration-feature-setti` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| company_id | string | yes |  |

### Add a company integration feature setting
`POST https://apizie.tech/v1/open-data:apacta/post-companies-company-id-companies-integration-feature-sett` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| company_id | string | yes |  |
| body | object | no | JSON request body |

### View a company integration feature setting
`GET https://apizie.tech/v1/open-data:apacta/get-companies-company-id-companies-integration-feature-setti-2` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| company_id | string | yes |  |
| c_integration_feature_setting_id | string | yes |  |

### Edit a company integration feature setting
`POST https://apizie.tech/v1/open-data:apacta/put-companies-company-id-companies-integration-feature-setti` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| company_id | string | yes |  |
| c_integration_feature_setting_id | string | yes |  |

### Get a list of company form templates
`GET https://apizie.tech/v1/open-data:apacta/get-companies-company-id-form-templates` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| company_id | string | yes |  |
| form_template_id | string | yes |  |

### Get a company form template
`GET https://apizie.tech/v1/open-data:apacta/get-companies-company-id-form-templates-form-template-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| company_id | string | yes |  |
| id | string | yes |  |
| form_template_id | string | yes | Automatically added |

### Delete a form template company
`POST https://apizie.tech/v1/open-data:apacta/delete-companies-company-id-form-templates-form-template-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| company_id | string | yes |  |
| form_template_id | string | yes | Automatically added |

### Get a list of integration feature settings
`GET https://apizie.tech/v1/open-data:apacta/get-companies-company-id-integration-feature-settings` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| company_id | string | yes |  |

### Show details of 1 integration feature setting
`GET https://apizie.tech/v1/open-data:apacta/get-companies-company-id-integration-feature-settings-integr` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| company_id | string | yes |  |
| integration_feature_setting_id | string | yes |  |

### Get a list of company integration settings
`GET https://apizie.tech/v1/open-data:apacta/get-companies-company-id-integration-settings` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| company_id | string | yes |  |
| identifier | string | no | The identifier of an ERP integration |

### Add a company integration setting
`POST https://apizie.tech/v1/open-data:apacta/post-companies-company-id-integration-settings` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| company_id | string | yes |  |
| body | object | no | JSON request body |

### Get a company integration setting
`GET https://apizie.tech/v1/open-data:apacta/get-companies-company-id-integration-settings-companies-inte` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| company_id | string | yes |  |
| companies_integration_setting_id | string | yes |  |

### Edit a company integration setting
`POST https://apizie.tech/v1/open-data:apacta/put-companies-company-id-integration-settings-companies-inte` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| company_id | string | yes |  |
| companies_integration_setting_id | string | yes |  |

### Delete a company integration setting
`POST https://apizie.tech/v1/open-data:apacta/delete-companies-company-id-integration-settings-companies-i` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| company_id | string | yes |  |
| companies_integration_setting_id | string | yes |  |

### Get a list of company price margins
`GET https://apizie.tech/v1/open-data:apacta/get-companies-company-id-price-margins-price-margins-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| company_id | string | yes |  |
| price_margins_id | string | yes | Automatically added |

### Add a company price margin
`POST https://apizie.tech/v1/open-data:apacta/post-companies-company-id-price-margins-price-margins-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| company_id | string | yes |  |
| price_margins_id | string | yes | Automatically added |
| body | object | no | JSON request body |

### Delete a company price margin
`POST https://apizie.tech/v1/open-data:apacta/delete-companies-company-id-price-margins-price-margins-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| company_id | string | yes |  |
| price_margin_id | string | yes |  |
| price_margins_id | string | yes | Automatically added |

### Get a list of companies vendors
`GET https://apizie.tech/v1/open-data:apacta/get-compaies-vendors-list` (byok)

### Add a new companies vendor
`POST https://apizie.tech/v1/open-data:apacta/add-companies-vendor` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | no | JSON request body |

### Bulk delete companies vendors
`POST https://apizie.tech/v1/open-data:apacta/bulk-companies-vendors` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

### Get a companies vendor
`GET https://apizie.tech/v1/open-data:apacta/get-companies-vendor` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| companies_vendor_id | string | yes |  |

### Edit a companies vendor
`POST https://apizie.tech/v1/open-data:apacta/edit-companies-vendor` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| companies_vendor_id | string | yes |  |
| body | object | no | JSON request body |

### Delete a companies vendor
`POST https://apizie.tech/v1/open-data:apacta/delete-companies-vendors-companies-vendor-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| companies_vendor_id | string | yes |  |

### Get companies vendor expense statistics
`GET https://apizie.tech/v1/open-data:apacta/get-companies-vendors-expense-statistics` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| companies_vendor_id | string | yes |  |

### Get a list of company settings
`GET https://apizie.tech/v1/open-data:apacta/get-compay-settings-list` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| name | string | no | Filter by name |
| description | string | no | Filter by description |

### Get a list of contact custom field attributes
`GET https://apizie.tech/v1/open-data:apacta/get-contact-custom-field-attributes` (byok)

### Details of 1 contact custom field attribute
`GET https://apizie.tech/v1/open-data:apacta/get-contact-custom-field-attributes-contact-custom-field-att` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| contact_custom_field_attribute_id | string | yes |  |

### Get list of contact types supported in Apacta
`GET https://apizie.tech/v1/open-data:apacta/get-contact-types` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| identifier | string | no | Search for specific identifier value |

### Get details about one contact type
`GET https://apizie.tech/v1/open-data:apacta/get-contact-types-contact-type-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| contact_type_id | string | yes |  |

### Get a list of contacts
`GET https://apizie.tech/v1/open-data:apacta/get-contacts` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| name | string | no | Used to search for a contact with a specific name |
| cvr | string | no | Search for values in CVR field |
| ean | string | no | Search for values in EAN field |
| erp_id | string | no | Search for values in ERP id field |
| contact_type | string | no | Used to show only contacts with with one specific `ContactType` |
| city | string | no | Used to show only contacts with with one specific `City` |
| modified_gte | string | no |  |

### Add a new contact
`POST https://apizie.tech/v1/open-data:apacta/post-contacts` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | no | JSON request body |

### Bulk delete contacts
`POST https://apizie.tech/v1/open-data:apacta/bulk-delete-contacts` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

### Details of 1 contact
`GET https://apizie.tech/v1/open-data:apacta/get-contacts-contact-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| contact_id | string | yes |  |

### Edit a contact
`POST https://apizie.tech/v1/open-data:apacta/put-contacts-contact-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| contact_id | string | yes |  |
| body | object | no | JSON request body |

### Delete a contact
`POST https://apizie.tech/v1/open-data:apacta/delete-contacts-contact-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| contact_id | string | yes |  |

### Get a list of contact custom field values
`GET https://apizie.tech/v1/open-data:apacta/get-contacts-contact-id-contact-custom-field-values` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| contact_id | string | yes | Automatically added |

### Get a list of contact people
`GET https://apizie.tech/v1/open-data:apacta/get-contact-persons-list` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| contact_id | string | yes |  |
| q | string | no |  |
| created_gte | string | no |  |
| created_lte | string | no |  |

### Add a new contact person to a contact
`POST https://apizie.tech/v1/open-data:apacta/add-contact-person` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| contact_id | string | yes |  |
| body | object | no | JSON request body |

### Get a contact person
`GET https://apizie.tech/v1/open-data:apacta/get-contact-person` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| contact_id | string | yes |  |
| contact_person_id | string | yes |  |

### Edit a contact person
`POST https://apizie.tech/v1/open-data:apacta/edit-contact-person` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| contact_id | string | yes |  |
| contact_person_id | string | yes |  |
| body | object | no | JSON request body |

### Delete a contact person
`POST https://apizie.tech/v1/open-data:apacta/delete-contacts-contact-id-contact-persons-contact-person-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| contact_id | string | yes |  |
| contact_person_id | string | yes |  |

### Get list of countries supported in Apacta
`GET https://apizie.tech/v1/open-data:apacta/get-countries` (byok)

### Get details about one country
`GET https://apizie.tech/v1/open-data:apacta/get-countries-country-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| country_id | string | yes |  |

### Get list of currencies supported in Apacta
`GET https://apizie.tech/v1/open-data:apacta/get-currencies` (byok)

### Get details about one currency
`GET https://apizie.tech/v1/open-data:apacta/get-currencies-currency-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| currency_id | string | yes |  |

### List the driving types of the company
`GET https://apizie.tech/v1/open-data:apacta/get-driving-types` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| q | string | no |  |
| sort | string | no |  |
| direction | string | no |  |

### Create driving type
`POST https://apizie.tech/v1/open-data:apacta/post-driving-types` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | no | JSON request body |

### Bulk delete driving types
`POST https://apizie.tech/v1/open-data:apacta/bulk-delete-driving-types` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

### View driving type
`GET https://apizie.tech/v1/open-data:apacta/get-driving-types-driving-type-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| driving_type_id | string | yes |  |
| driving_type_id | string | yes |  |

### Edit driving type
`POST https://apizie.tech/v1/open-data:apacta/put-driving-types-driving-type-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| driving_type_id | string | yes |  |

### Delete driving type
`POST https://apizie.tech/v1/open-data:apacta/delete-driving-types-driving-type-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| driving_type_id | string | yes |  |

### Used to retrieve details about the logged in user's hours
`GET https://apizie.tech/v1/open-data:apacta/get-employee-hours` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| date_from | string | yes | Date formatted as Y-m-d (2016-06-28) |
| date_to | string | yes | Date formatted as Y-m-d (2016-06-28) |

### Show list of events
`GET https://apizie.tech/v1/open-data:apacta/get-events` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| user_id | string | no |  |
| project_id | string | no |  |
| start[][gt] | string | no |  |
| start[][lt] | string | no |  |
| start[][eq] | string | no |  |
| end[][gt] | string | no |  |
| end[][lt] | string | no |  |
| end[][eq] | string | no |  |
| tags | string | no | List events with given tag ids separated by comma. Example tags=0377d6ce-db5e-4b1e-ac3a-8ca39ea3142e,8cec327e-a559-4b40-9ed6-316b9de46743 |
| without_users | boolean | no | List events without attached user |

### Create event
`POST https://apizie.tech/v1/open-data:apacta/post-events` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | no | JSON request body |

### Check if user is available at given datetime range
`GET https://apizie.tech/v1/open-data:apacta/get-events-is-user-free` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| user_id | string | yes |  |
| start | string | yes |  |
| end | string | yes |  |

### Show event
`GET https://apizie.tech/v1/open-data:apacta/get-events-event-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| event_id | string | yes |  |

### Edit event
`POST https://apizie.tech/v1/open-data:apacta/put-events-event-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| event_id | string | yes |  |

### Delete event
`POST https://apizie.tech/v1/open-data:apacta/delete-events-event-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| event_id | string | yes |  |

### Show list of expense files
`GET https://apizie.tech/v1/open-data:apacta/get-expense-files` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| created_by_id | string | no |  |
| expense_id | string | no |  |

### Add file to expense
`POST https://apizie.tech/v1/open-data:apacta/post-expense-files` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | Form fields as a JSON object |

### Show file
`GET https://apizie.tech/v1/open-data:apacta/get-expense-files-expense-file-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| expense_file_id | string | yes |  |

### Edit file
`POST https://apizie.tech/v1/open-data:apacta/put-expense-files-expense-file-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| expense_file_id | string | yes |  |

### Delete file
`POST https://apizie.tech/v1/open-data:apacta/delete-expense-files-expense-file-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| expense_file_id | string | yes |  |

### Show list of expense lines
`GET https://apizie.tech/v1/open-data:apacta/get-expense-lines` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| created_by_id | string | no |  |
| currency_id | string | no |  |
| expense_id | string | no |  |

### Add line to expense
`POST https://apizie.tech/v1/open-data:apacta/post-expense-lines` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | no | JSON request body |

### Show expense line
`GET https://apizie.tech/v1/open-data:apacta/get-expense-lines-expense-line-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| expense_line_id | string | yes |  |

### Edit expense line
`POST https://apizie.tech/v1/open-data:apacta/put-expense-lines-expense-line-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| expense_line_id | string | yes |  |

### Delete expense line
`POST https://apizie.tech/v1/open-data:apacta/delete-expense-lines-expense-line-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| expense_line_id | string | yes |  |

### Show list of expenses
`GET https://apizie.tech/v1/open-data:apacta/get-expenses` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| created_by_id | string | no |  |
| company_id | string | no |  |
| contact_id | string | no |  |
| project_id | string | no |  |
| due_date | string | no | Filter by [valid=records in future including today], [exceeded=records in past] or [null=all records] |
| gt_created | string | no | Created after date |
| lt_created | string | no | Created before date |
| status | string | no | Filter by status identifier. [null=all records] |
| is_imported | boolean | no |  |
| min_amount | number | no | Expenses `total_selling_price` > `min_amount` |
| max_amount | number | no | Expenses `total_selling_price` < `max_amount` |
| projects | string | no | You can select `all projects`, `no projects` or select `multiple projects` |

### Add line to expense
`POST https://apizie.tech/v1/open-data:apacta/post-expenses` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | no | JSON request body |

### Bulk delete expenses
`POST https://apizie.tech/v1/open-data:apacta/bulk-delete-expenses` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

### Show highest Expense amount(`total_selling_price`)
`GET https://apizie.tech/v1/open-data:apacta/get-expenses-highest-amount` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| gt_created | string | yes | Used to filter time range |
| lt_created | string | yes | Used to filter time range |

### Bulk delete expenses
`POST https://apizie.tech/v1/open-data:apacta/send-emails-expenses` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

### Show expense
`GET https://apizie.tech/v1/open-data:apacta/get-expenses-expense-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| expense_id | string | yes |  |

### Edit expense
`POST https://apizie.tech/v1/open-data:apacta/put-expenses-expense-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| expense_id | string | yes |  |

### Delete expense
`POST https://apizie.tech/v1/open-data:apacta/delete-expenses-expense-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| expense_id | string | yes |  |

### Show list of all OIOUBL files for the expense
`GET https://apizie.tech/v1/open-data:apacta/get-expenses-expense-id-original-files` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| expense_id | string | yes |  |

### Show OIOUBL file
`GET https://apizie.tech/v1/open-data:apacta/get-expenses-expense-id-original-files-file-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| expense_id | string | yes |  |
| file_id | string | yes |  |

### Get general statistics
`GET https://apizie.tech/v1/open-data:apacta/get-financial-statistics` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| date_from | string | no |  |
| date_to | string | no |  |
| project_id | string | no |  |
| project_status_ids[] | string | no |  |
| only_not_invoiced | boolean | no |  |
| details | boolean | no |  |

### Get expenses sales price
`GET https://apizie.tech/v1/open-data:apacta/get-expenses-sales-price` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| date_from | string | no |  |
| date_to | string | no |  |
| project_id | string | no |  |

### Get invoiced amount
`GET https://apizie.tech/v1/open-data:apacta/get-invoiced-amount` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| date_from | string | no |  |
| date_to | string | no |  |
| project_id | string | no |  |

### Get margin
`GET https://apizie.tech/v1/open-data:apacta/get-margin` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| date_from | string | no |  |
| date_to | string | no |  |
| project_id | string | no |  |

### Get products material rentals cost price
`GET https://apizie.tech/v1/open-data:apacta/get-material-rentals-cost-price` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| date_from | string | no |  |
| date_to | string | no |  |
| project_id | string | no |  |

### Get statistics overview
`GET https://apizie.tech/v1/open-data:apacta/get-financial-statistics-overview` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| date_from | string | no |  |
| date_to | string | no |  |
| project_id | string | no |  |

### Get products cost price
`GET https://apizie.tech/v1/open-data:apacta/get-products-cost-price` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| date_from | string | no |  |
| date_to | string | no |  |
| project_id | string | no |  |

### Get Total working hours grouped by time entry type
`GET https://apizie.tech/v1/open-data:apacta/get-financial-statistics-working-hours` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| date_from | string | no |  |
| date_to | string | no |  |
| project_id | string | no |  |

### Get list of form field types
`GET https://apizie.tech/v1/open-data:apacta/get-form-field-types` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| name | string | no | Used to filter on the `name` of the form_fields |
| identifier | string | no | Used to filter on the `identifier` of the form_fields |

### Get details about single `FormField`
`GET https://apizie.tech/v1/open-data:apacta/get-form-field-types-form-field-type-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| form_field_type_id | string | yes |  |

### Add a new field to a `Form`
`POST https://apizie.tech/v1/open-data:apacta/post-form-fields` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | no | JSON request body |

### Get details about single `FormField`
`GET https://apizie.tech/v1/open-data:apacta/get-form-fields-form-field-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| form_field_id | string | yes |  |

### Get array of form_templates for your company
`GET https://apizie.tech/v1/open-data:apacta/get-form-templates` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| name | string | no | Used to filter on the `name` of the form_templates |
| identifier | string | no | Used to filter on the `identifier` of the form_templates |
| pdf_template_identifier | string | no | Used to filter on the `pdf_template_identifier` of the form_templates |
| description | string | no | Used to filter on the `description` of the form_templates |

### View one form template
`GET https://apizie.tech/v1/open-data:apacta/get-form-templates-form-template-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| form_template_id | string | yes |  |

### Retrieve array of forms
`GET https://apizie.tech/v1/open-data:apacta/get-forms` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| extended | string | no | Used to have extended details from the forms from the `Form`'s `FormFields` |
| date_from | string | no | Used in conjunction with `date_to` to only show forms within these dates - format like `2016-28-05` |
| date_to | string | no | Used in conjunction with `date_from` to only show forms within these dates - format like `2016-28-30` |
| show | string | no | Used to show forms with trashed |
| project_id | string | no | Used to filter on the `project_id` of the forms |
| created_by_id | string | no | Used to filter on the `created_by_id` of the forms |
| form_template_id | array | no | Used to filter on the `form_template_id` of the forms. Accept single value and array. |
| form_template_type | string | no | Filter by `form_templates.identifier` containing string passed in `form_template_type`. Accept strings like [`qa`, `dagseddel`] |
| employee_name | string | no | Used to filter forms by user's first or last name |

### Add new form
`POST https://apizie.tech/v1/open-data:apacta/post-forms` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | no | JSON request body |

### Undelete form and related entities to it
`GET https://apizie.tech/v1/open-data:apacta/get-forms-undelete-form-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| form_id | string | yes |  |

### Generate time form pdf
`GET https://apizie.tech/v1/open-data:apacta/get-forms-view-time-form-pdf-form-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| form_id | string | yes |  |

### View form
`GET https://apizie.tech/v1/open-data:apacta/get-forms-form-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| form_id | string | yes |  |

### Edit a form
`POST https://apizie.tech/v1/open-data:apacta/put-forms-form-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| form_id | string | yes |  |

### Delete a form
`POST https://apizie.tech/v1/open-data:apacta/delete-forms-form-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| form_id | string | yes |  |

### Get integrations list
`GET https://apizie.tech/v1/open-data:apacta/get-integrations-list` (byok)

### Authenticate to Billys
`POST https://apizie.tech/v1/open-data:apacta/post-integrations-billys-authenticate` (byok)

### Force Synchronization with ERP systems
`GET https://apizie.tech/v1/open-data:apacta/get-integrations-contacts-sync` (byok)

### Sync products from erp integration
`GET https://apizie.tech/v1/open-data:apacta/get-integrations-products-sync` (byok)

### View integration details
`GET https://apizie.tech/v1/open-data:apacta/get-integrations-view` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| integration_id | string | yes | Automatically added |

…and 170 more. See the OpenAPI spec.

## Example
```
curl "https://apizie.tech/v1/open-data:apacta/get-activities" \
  -H "x-api-key: $APIZIE_KEY" \
  -H "x-upstream-key: $PROVIDER_KEY"
```

## FAQ

### How do I call the Apacta API?
Create a free Apizie key, then send GET https://apizie.tech/v1/open-data:apacta/get-activities with the header x-api-key. Every endpoint returns { project, data, timestamp }.

### Is the Apacta API free on Apizie?
Yes. The Free plan includes 1,000 requests a month at 100 requests a minute, no credit card. Apacta itself also needs your own key from apacta.com.

### Can AI agents use the Apacta API?
Yes. Add the Apizie MCP server (https://apizie.tech/mcp) to Claude, ChatGPT, Cursor or VS Code, then ask in plain language. The agent calls run_scraper with project key open-data:apacta.

### What is the status of the Apacta API?
Needs your own provider key (bring your own key)
