canonical: https://jentic.com/apis/float.com/float-float

# Float API

The Float API is the resource-planning interface for the Float scheduling platform, focused on the core entities a project planner needs: people, projects, tasks, departments, clients, time off, and logged time. This is the curated subset of Float's REST surface, with each endpoint mapping cleanly to a single resource. It supports both JSON and XML responses and uses bearer token authentication.

## For AI agents

Schedule people across projects, log time, manage tasks and departments, and read clients and time-off records on the Float resource-planning platform.

## Scope

Does not handle invoicing, payroll, or chat collaboration - use for resource scheduling, time logging, and project and people planning on Float only.

## Capabilities

- Schedule a named person to a project task with hours per day and a start and end date
- Log time entries against a project task for billable or capacity reporting
- Read each person's department, role, and weekly capacity to plan upcoming work
- List and update projects, including their client, billable status, and budget
- Record time-off requests so they show up against a person's availability
- Retrieve clients and departments to drive picker UIs in scheduling tools

## Use cases

### Resource scheduling automation

Operations teams pipe upcoming project demand into Float by calling /tasks to allocate named people to projects with hours and date ranges. The same endpoint clears or shifts allocations as priorities change, so a single source of truth drives the live capacity view in Float without manual editing.

Example prompt: Allocate 5 hours per day on task T42 to person P101 from 2026-06-15 to 2026-06-19

### Time tracking integration

Time tracking tools and timesheet workflows sync to Float through /logged-time, recording the actual hours each person spent on each project task. This drives utilization reports, billable rollups, and capacity comparisons against the schedule represented in /tasks.

Example prompt: Post a logged-time entry of 2 hours against task T42 for person P101 on 2026-06-09

### Client and department reporting

Reporting tools join Float clients and departments with project records to build per-client utilization and per-department capacity dashboards. /clients, /departments, /projects, and /people together expose the dimensional data needed without requiring a separate data warehouse for resource planning.

Example prompt: List all projects for the Acme client, then read the assigned people, departments, and total scheduled hours for each project

### AI agent scheduling assistant

An AI scheduling agent uses Float through Jentic to answer natural-language requests such as 'who is free for design work next Wednesday'. Jentic returns the right Float operation per intent so the agent traverses people, departments, time-off, and tasks without hard-coding the path layout, and the same skill works whether the request is a query or a write.

Example prompt: Find every designer in the Design department who is not on time off next Wednesday, then return their available hours

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| GET | `/people` | List people in the team |
| GET | `/projects` | List projects |
| GET | `/tasks` | List task allocations |
| POST | `/tasks` | Create a new task allocation |
| POST | `/logged-time` | Log time against a task |
| GET | `/time-off` | List time-off requests |
| GET | `/clients` | List clients |

## Key resources

- **People** — Team members with department, role, and capacity used in scheduling
- **Projects** — Project records with client, billable status, and date range
- **Tasks** — Allocations of people to projects with hours per day and date range
- **Departments** — Organizational departments used to group people
- **Clients** — Clients linked to projects for reporting
- **TimeOff** — Time-off requests that affect a person's availability
- **LoggedTime** — Actual hours logged against project tasks

## Why Jentic

- **Setup:** Wiring the Float API by hand means setting its bearer auth, spreading calls across 18 people, project, task, and time endpoints, and handling retries and pagination yourself. Through Jentic you install once, import Float from the API Directory, store the token once, and your agent calls it.
- **Permission scoping:** Float works through collection endpoints whose targets travel in the request body rather than an owned resource in the URL path, so limit the agent to the operations it needs, such as reading people or logging time, and leave task creation out of the allowed set unless required. You choose which of the 18 operations it may call.
- **Credential handling:** Your Float token is stored once, encrypted, by your own Jentic One instance and injected into the Authorization header at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'allocate a person to a project' or 'log time', and Jentic returns the matching Float operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **Float API (full)** — The full Float API spec covers many more resources than this curated subset
- **Asana API** — Asana focuses on task tracking rather than resource scheduling and capacity
- **Monday.com API** — Monday.com is a flexible work-management platform that overlaps with Float for project planning
- **Toggl API** — Toggl tracks the actual hours that can then be reported back against Float allocations

## FAQ

### What authentication does the Float API use?

The Float API uses HTTP bearer tokens. Through Jentic the bearer token is held in the encrypted vault and injected into the Authorization header at execution time, so the raw token never enters the agent context.

### Can I schedule a person to a project with the Float API?

Yes. POST to /tasks with the person ID, project ID, hours per day, and start and end dates to create the allocation.

### How do I log time against a Float task?

Call POST /logged-time with the person ID, task ID, date, and hours value. Logged time is reported alongside the scheduled hours from /tasks for utilization comparisons.

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

Float does not document a fixed global rate limit in the spec. Limits are applied per token. Treat 429 responses as the source of truth and back off using the Retry-After header.

### How do I allocate a person through Jentic?

Search Jentic for 'allocate a person to a project', load the schema for POST /tasks, and execute the call with the IDs and date range. Install with pip install jentic and run it through Jentic One, the self-hosted execution layer.

### Does the Float API support both JSON and XML responses?

Yes. Float responds in JSON or XML depending on the Accept header. JSON is the default and the form Jentic generates input schemas for.

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

Yes. Because Jentic One is self-hosted, your own rules decide which of Float's 18 operations the agent may call, so you can grant read-only access to people and time-off while withholding writes like creating task allocations or logging time. Float's collection endpoints carry their targets in the request body rather than an owned resource in the URL path, so scoping is done at the operation level: allow GET /people or GET /clients and leave POST /tasks and POST /logged-time out of the allowed set unless the workflow needs them. Your Float bearer token is held by your own instance and injected at execution time, so the agent uses only the operations and credentials you permit.
