For Agents
Manage Swiss accounting workflows in MILKEE — bookings, invoices, customers, quotes, products, projects, and time tracking — via a bearer-token REST API.
Install Jentic One Beta
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the MILKEE API, or any other public or private API you need. You set the rules, the agent never sees your credentials, and every call is logged.
Two steps, two machines. Install the instance in a safe environment, then register your agent from wherever it runs.
Step 1: Jentic One Host machine
# On the machine that will host your Jentic One instance:
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | shStep 2: Agent machine
# On the machine where your agent runs (keep this separate from the instance):
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | sh
jentic register # connects your agent to your Jentic One instanceJentic One is in public beta. The setup above keeps your agent separate from the instance, which is what you want before using real credentials: an agent running as the same OS user as Jentic One can read its stored keys directly. Just evaluating? A single local install is fine to start. See the secure deployment guide for the tiers.
What an agent can do with MILKEE API.
Create and list ledger bookings (Buchungen) for accurate Swiss double-entry accounting
Maintain a chart of accounts (Konten) used to categorise bookings
Manage customer (Kunden) and contact (Kontakte) records that anchor invoices and quotes
GET STARTED
Use for: Create a new booking in MILKEE, List all open invoices in MILKEE, Add a customer to MILKEE with an address, Get the current chart of accounts
Not supported: Does not handle payment processing, payroll, or bank account aggregation — use for Swiss small-business accounting workflows (bookings, invoices, customers, products, time) only.
Jentic publishes the only available OpenAPI specification for MILKEE API, keeping it validated and agent-ready. MILKEE is an all-in-one accounting tool aimed at Swiss freelancers and small businesses; the v2 REST API exposes 29 endpoints to manage bookings, accounts, contacts, customers, quotes, products, projects, invoices, tax rates, tags, tasks, and time tracking. Authentication is by bearer token created in MILKEE settings, and the resource model uses the original German nouns (Buchungen, Konten, Kontakte, Kunden, Offerten, Rechnungen, Steuersaetze).
Issue and update invoices (Rechnungen) and quotes (Offerten) for client work
Track products and tax rates (Steuersaetze) used inside invoice line items
Bulk import bookings via the dedicated import endpoint to onboard historical data
Record time entries against projects and tasks for billable time reporting
Patterns agents use MILKEE API for, with concrete tasks.
★ Automated Invoice Issuance
When a project milestone closes, an agent reads the customer and product data from MILKEE and creates an invoice (Rechnung) with the correct VAT rate. The accountant skips manual data entry, and the invoice is ready for review and dispatch directly from MILKEE.
Look up the customer by id, then POST to the Rechnungen endpoint with line items priced from the products list and the standard 8.1% VAT rate.
Booking Import From a Bank Export
Freelancers paste a bank CSV into a workflow that an agent maps onto MILKEE bookings. The import endpoint accepts the batch in one call so the ledger is reconciled with the bank in minutes rather than hours of manual entry.
POST /import-buchungen with the parsed bank statement rows, each mapped to debit and credit accounts from the Konten list.
Time Tracking to Invoice Pipeline
An agent rolls up time entries logged against projects and tasks into draft invoice lines, applying the customer's hourly rate. The freelancer reviews the draft in MILKEE and dispatches the invoice without re-keying any time data.
Aggregate time entries for project id 'X' over the last month and create an invoice with one line per task summing the recorded hours at the configured rate.
Customer Sync With a CRM
When a deal closes in a CRM, an agent creates the matching customer (Kunde) in MILKEE so invoicing flows downstream. Address, email, and tax information all carry across, eliminating duplicate data entry.
On CRM deal won, POST to the Kunden endpoint with the customer's name, address, email, and VAT id.
Agent-Driven Accounting via Jentic
Through Jentic, an agent issues MILKEE calls using semantic search rather than reading German-named endpoints. The bearer token sits in the Jentic vault and is injected on each request, so an agent automates Swiss accounting workflows without ever holding a credential.
Use Jentic search 'create a booking in milkee', load the schema for POST /buchungen, and execute with debit account, credit account, amount, and date.
29 endpoints — jentic publishes the only available openapi specification for milkee api, keeping it validated and agent-ready.
METHOD
PATH
DESCRIPTION
/buchungen
List bookings
/buchungen
Create a booking
/import-buchungen
Import a batch of bookings
/konten
List accounts
/kontakte
List contacts
/buchungen/{id}
Get a booking
/buchungen/{id}
Update a booking
/buchungen
List bookings
/buchungen
Create a booking
/import-buchungen
Import a batch of bookings
/konten
List accounts
/kontakte
List contacts
/buchungen/{id}
Get a booking
Three things that make agents converge on Jentic-routed access.
Credential isolation
MILKEE bearer tokens are stored encrypted in the Jentic vault (MAXsystem) and injected into the Authorization header at execution time. Raw tokens never enter the agent's context.
Intent-based discovery
Agents search by intent (e.g., 'create a booking in milkee') and Jentic returns the matching MILKEE operation with its input schema, so the agent calls POST /buchungen without parsing the German-named docs.
Time to first call
Direct MILKEE integration: 1-2 days to model the booking, account, and invoice graph and learn the German resource names. Through Jentic: under an hour — search, load schema, execute.
Alternatives and complements available in the Jentic catalogue.
Specific to using MILKEE API through Jentic.
Why is there no official OpenAPI spec for MILKEE API?
MILKEE does not publish an OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call MILKEE API via structured tooling. It is validated against the live API and kept up to date. Get started at https://app.jentic.com/sign-up.
What authentication does the MILKEE API use?
The API uses bearer token authentication. Generate an API token in your MILKEE settings and pass it as Authorization: Bearer <token>. Through Jentic, the bearer token sits in the encrypted vault and is injected per request without entering the agent's context.
Can I import a batch of bookings into MILKEE?
Yes. POST /import-buchungen accepts a batch of bookings in one call, which is the supported way to load historical bank or accounting data without making one request per row.
What are the rate limits for the MILKEE API?
MILKEE does not publish public rate limits in the spec. Treat the API as rate-limited per token, back off on HTTP 429 responses, and contact support@milkee.ch when running large batch imports.
How do I create a booking through Jentic?
Run pip install jentic, search for 'create a booking in milkee', load the schema for POST /buchungen, and execute with debit account, credit account, amount, and date. Jentic injects your stored bearer token automatically.
Why are the resource names in German?
MILKEE is a Swiss product and the API uses the German accounting nouns its users already know: Buchungen (bookings), Konten (accounts), Kunden (customers), Offerten (quotes), Rechnungen (invoices), Steuersaetze (tax rates). The fields inside requests use the same naming.
/buchungen/{id}
Update a booking