canonical: https://jentic.com/apis/cituro.com/cituro

# Cituro API

Jentic publishes the only available OpenAPI specification for Cituro API, keeping it validated and agent-ready. Cituro is an appointment booking and resource scheduling platform used primarily by gyms, studios, and service businesses to manage customers, services, employees, and bookable locations. The API exposes customer profiles with notes, configurable services, employee assignments, and company-level settings, so a booking front-end or back-office tool can read and modify the full scheduling graph. It uses an X-API-KEY header (or HTTP Basic with the key as the username) and returns standard JSON resources for each entity.

## For AI agents

Manage Cituro customers, services, employees, and company settings for an appointment-booking business. Supports creating bookings prerequisites, updating customer records, and listing services with their assigned staff and locations.

## Scope

Does not handle payment processing, calendar event creation, or marketing email - use for managing the customer, service, and employee records behind a Cituro booking experience only.

## Capabilities

- Create and update customer profiles with attached notes for an appointment-booking business
- Configure bookable services and link them to the employees who can deliver them
- Maintain employee records and the locations where each employee works
- Read and patch company-level settings such as opening hours and contact details
- Look up the authenticated account's identity via the /me endpoint for token introspection
- List the locations a specific service can be booked at and replace the location set in one call

## Use cases

### Customer database sync for a studio chain

Keep an external CRM or marketing tool aligned with the Cituro customer list by pulling customers via GET /customers and pushing edits with PATCH /customers/{id}. The API supports per-customer notes through /customers/{id}/notes, so qualitative context from staff stays attached to the canonical record. Useful for studios that want their newsletter audience and Cituro contact list to match without manual exports.

Example prompt: List all customers modified in the last 30 days, then PATCH each one whose email changed in the source CRM

### Service catalogue and staffing maintenance

Manage the menu of bookable services and the employees assigned to each one. Agents can create a new service via POST /services, update its details with PATCH /services/{id}, and read the assigned staff via GET /services/{id}/employees. Locations available for a service are managed through /services/{id}/locations, including a full replacement with PUT.

Example prompt: Create a new 60-minute Pilates service priced at 30 EUR, assign two named employees, and set its location to studio-A

### Company profile audit

Read company-wide configuration with GET /company and apply controlled edits via PATCH /company. This is the right entry point for an agent that needs to verify or correct top-level information such as the legal name, contact email, or address before it appears on a booking widget.

Example prompt: GET the company profile, check that the support email matches a known good value, and PATCH it if it does not

### Agent integration via Jentic

Through Jentic, an AI assistant can take an instruction like "add a new customer named Marie Dubois with this email" and resolve it to the correct Cituro endpoint, schema, and authentication header without the developer wiring the call by hand. Jentic stores the X-API-KEY in its credential vault and only injects it at execution time.

Example prompt: Search Jentic for 'create a customer in Cituro', load the schema for POST /customers, and execute it with the parsed name and email

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| GET | /customers | List customers |
| POST | /customers | Create a customer |
| PATCH | /customers/{id} | Update a customer |
| GET | /services | List bookable services |
| GET | /services/{id}/employees | List employees assigned to a service |
| GET | /employees | List employees |
| GET | /company | Get company profile |
| GET | /me | Get the authenticated user |

## Key resources

- **Customers** — Create, read, update, and delete customer records and attach freeform notes
- **Services** — Define bookable services and manage their assigned employees and locations
- **Employees** — Maintain staff records used as resources for service delivery
- **Company** — Read and patch company-level configuration such as contact details
- **User** — Identify the authenticated principal via /me for token validation

## Why Jentic

- **Setup:** Wiring the Cituro API by hand means choosing between its X-API-KEY header and basic auth and threading customer, service, and employee records through the right booking endpoints yourself. Through Jentic you install once, import the Cituro API from the API Directory, store the credential once, and your agent calls it.
- **Permission scoping:** Cituro puts the customer id in the URL path (/customers/{id}), so a rule can pin your agent to reading and updating specific customer records. You choose the operations it may call, so creating new customers is not included unless you add it.
- **Credential handling:** Your Cituro API key or basic credential is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'look up a booking customer' or 'list services and employees', and Jentic returns the matching Cituro operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **CiviCRM REST API** — CiviCRM stores the broader contact and membership record that a Cituro customer often maps to.
- **Clarkup API** — Clarkup is another small-business contact and pipeline tool with overlapping customer-management surface.
- **Clarra API** — Clarra handles matter and case-style scheduling for professional services that Cituro does not target.

## FAQ

### Why is there no official OpenAPI spec for Cituro API?

Cituro does not publish an OpenAPI specification - the public reference is a PDF on cituro.com. Jentic generates and maintains this spec from the documentation so AI agents and developers can call Cituro through structured tooling. It is validated against the live API and kept up to date. Get started with Jentic One, the self-hosted execution layer.

### What authentication does the Cituro API use?

Cituro accepts an API key sent in the X-API-KEY HTTP header, or HTTP Basic Authentication where the API key is the username and the password is left empty. Through Jentic, the key is stored encrypted in the credential vault and never enters the agent's prompt context.

### Can I create and update customers with the Cituro API?

Yes. POST /customers creates a new record, GET /customers/{id} reads one, and PATCH /customers/{id} applies a partial update. You can also attach freeform notes via POST /customers/{id}/notes and edit them with PATCH /customers/{id}/notes/{noteId}.

### How do I assign employees to a service through Jentic?

Search Jentic for 'list employees for a Cituro service', which returns GET /services/{id}/employees, then use POST or PATCH on the service or employee resources to adjust assignments. The Jentic SDK loads the input schema so the agent fills in the right fields without reading the raw spec.

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

The OpenAPI spec does not declare formal rate limits. Treat 429 responses as rate-limited and back off; for production use, contact Cituro support to confirm the per-account quota that applies to your key.

### Does the Cituro API expose booking creation directly?

The endpoints in this spec cover the prerequisites for bookings - customers, services, employees, locations, and company configuration - rather than a write endpoint for an individual appointment. Use these endpoints to keep the booking graph in sync with external systems.

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

Yes. Because you run Jentic One yourself, your own rules decide which Cituro operations and credentials the agent may use. Cituro puts the customer id in the URL path (/customers/{id}), so you can pin the agent to reading and updating specific customer records while withholding creation, notes, or company edits. You choose the operations it may call, so POST /customers and PATCH /company are excluded unless you explicitly add them.
