canonical: https://jentic.com/apis/fulcrumapp.com/fulcrumapp-fulcrum

# Fulcrumapp Fulcrum API

Jentic publishes the only available OpenAPI specification for Fulcrum API, keeping it validated and agent-ready. Fulcrum is a mobile data collection platform used for field inspections, asset surveys, and geospatial data capture. This streamlined edition of the API exposes 13 endpoints centred on apps (forms), records, users, and photo retrieval, ideal for read-and-write integrations that do not need the full object surface. Authentication uses an X-ApiToken header.

## For AI agents

Manage Fulcrum forms and field-collection records, list users, and pull photos captured in the mobile app.

## Scope

Does not handle billing, project hierarchy, or webhook subscriptions - use for the core forms, records, users, and photos workflow only.

## Capabilities

- Create and update Fulcrum forms that drive mobile field data collection
- Submit new field records against an existing form
- Retrieve a single record with all captured field values
- List users in the Fulcrum organisation for assignment and audit
- Download photo media captured against a record at full size or large preview

## Use cases

### Field Inspection Submission

When a back-office system needs to seed a Fulcrum field crew with inspection records, an integration calls POST /records with the form_id, geometry, and form_values payload. Crews then complete the records on the mobile app and the office can pull them back via GET `/records/{id}` for downstream reporting.

Example prompt: Create a Fulcrum record on form_id abc123 with a point geometry and form_values for a site inspection

### Form Lifecycle Management

Operations teams keep field forms in sync with policy. The forms endpoints support GET /forms to list current templates, PUT `/forms/{id}` to roll out updated questions, and DELETE `/forms/{id}` to retire deprecated workflows. Schema changes propagate to the Fulcrum mobile clients on next sync.

Example prompt: Update form abc123 with a new required field and verify the response shows the updated schema

### Photo Retrieval for Reports

Inspection photos captured on the Fulcrum mobile app can be pulled by access_key via GET `/photos/{access_key}` for full size or GET `/photos/{access_key}/large` for a downsized variant. This lets a reporting service build PDF or HTML reports that embed the original field imagery.

Example prompt: Download the large variant of a photo by access_key for inclusion in an inspection report

### Agent-Driven Field Operations

An AI agent receives a request to brief on yesterday's inspections, lists records via GET /records filtered by date, retrieves the highest-priority record in detail, and downloads the most relevant photo via /photos. Through Jentic the X-ApiToken stays in the vault.

Example prompt: Search Jentic for 'list fulcrum records', load GET /records, execute filtered by created_after, and summarise the top three

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| GET | `/forms` | List forms in the organisation |
| POST | `/forms` | Create a new form |
| PUT | `/forms/{id}` | Update an existing form |
| POST | `/records` | Submit a new record against a form |
| GET | `/records/{id}` | Retrieve a record with field values |
| GET | `/users` | List users in the organisation |
| GET | `/photos/{access_key}/large` | Download a large preview of a captured photo |

## Key resources

- **Forms** — Create, update, and retire data-collection forms
- **Records** — Submit and retrieve field records against forms
- **Users** — List users in the organisation for assignment
- **Photos** — Download photo media at full size or large preview

## Why Jentic

- **Setup:** Wiring Fulcrum by hand means sending an X-ApiToken header on every call to api.fulcrumapp.com and learning the forms, records, users, and photos routes yourself. Through Jentic you install once, import Fulcrum from the API Directory, store the token once, and your agent calls it.
- **Permission scoping:** Fulcrum submits forms and records through the request body on routes like /forms and /records, so you limit the agent to the operations it needs, such as listing forms or submitting a record. You choose which operations it may call, so updating a form is not included unless you add it.
- **Credential handling:** Your Fulcrum token is stored once, encrypted, by your own Jentic One instance and injected into the X-ApiToken header at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'submit a Fulcrum record' or 'list Fulcrum forms', and Jentic returns the matching POST /records or GET /forms operation with its input schema so the agent calls the right endpoint without reading the field-collection docs.

## Related APIs

- **Fulcrum API (full)** — Fuller 61-endpoint Fulcrum spec covering projects, memberships, and webhooks
- **KoboToolbox** — Open-source field data collection and survey platform
- **JotForm** — General-purpose online forms platform

## FAQ

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

Fulcrum does not publish an OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call Fulcrum API via 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 Fulcrum API use?

Fulcrum uses an API token sent as the X-ApiToken header. The token is generated in the Fulcrum web app under integrations. Jentic stores the token encrypted in your Jentic One instance and injects it into the X-ApiToken header at execution time.

### Can I create a record on an existing Fulcrum form?

Yes. POST /records with form_id and a form_values object that conforms to the form schema. Optional latitude, longitude, and altitude fields attach geospatial context. The response includes the created record id.

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

Fulcrum applies per-account throttling that varies with plan. As a guideline keep concurrent calls under five and back off on any 429 responses; bulk syncs should run sequentially rather than in parallel.

### How do I download a record's photo through Jentic?

Search Jentic for 'download a fulcrum photo', load the GET `/photos/{access_key}` schema (or `/photos/{access_key}/large` for a smaller variant), and execute with the access_key from the record's photos array.

### Which Fulcrum API should I pick - fulcrum or fulcrum-api?

This Fulcrum spec covers the core 13 endpoints for forms, records, users, and photos. Use the fulcrum-api spec when you need the wider 61-endpoint surface including projects, choice lists, memberships, and webhooks.

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

Yes. Jentic One is self-hosted, so your own rules decide which Fulcrum operations and credentials the agent can use. You can allow just the calls it needs, such as listing forms with GET /forms or submitting a record with POST /records, while excluding others. Because you pick the operations, an action like updating a form with PUT `/forms/{id}` is not available unless you explicitly add it.
