Float API documentation

Welcome to the Float API

Float’s API follows a RESTful style and is available in JSON and XML formats. It uses bearer tokens for authentication – they can be obtained from your Float Account Settings Integrations page.

About the API

The API is intended to allow you access to your data programmatically for integration with third party and in-house applications in order to share, create and update your Float data. Visit www.float.com to learn more about Float.

All URLs start with the root URL: https://api.float.com/v3.

‘v3’ represents the version number. If we update the version, we’ll update this number and continue to support those previous. If you were to make a request for all people on your account the URL would look like this: https://api.float.com/v3/people. Please note that all requests to the Float API must be made over HTTPS.

The full details about each endpoint offered by our API can be found in the API Reference.

Data Formats

The service currently supports JSON and XML. You send an Accept header with your request to establish which format you require returned. The valid media types are:

  • For JSON: application/json
  • For XML: application/xml

If you do not send an Accept header, the return type will default to JSON.

Similarly, we accept data in both XML and JSON formats. When sending data to the API, set the Content-Type header to application/json with a JSON body. For example:

curl -X POST \
    -H "Content-Type: application/json" \
    -H "Accept: application/json" \
    -d '{"name": "Sarah-Jane Smith"}' \
    https://api.float.com/v3/people 

We accept PUT as a substitute for PATCH.

You can filter the results like this:

https://api.float.com/v3/people?department_id=2232

Limit the fields included in the result by sending a comma-delimited list like this:

https://api.float.com/v3/tasks?fields=project_id,hours,name

Specify the date range of the task results like this:

https://api.float.com/v3/tasks?start_date=2017-04-01&end_date=2017-06-01

Return a specific person’s tasks like this:

https://api.float.com/v3/tasks?people_id=12345

Return a specific project’s tasks like this:

https://api.float.com/v3/tasks?project_id=57891

You can also sort fields, where the “-“ sign indicates “descending”, default (no modifier) is “ascending”. For example:

https://api.float.com/v3/tasks?sort=-start_date

Pagination

There are two parameters supported on every GET request that returns a list:

  • page: The page of results to return. (Pagination index starts at 1.)
  • per-page: The number of items per page. The default is 50 and the maximum is 200 records.

You can return 200 items per page like this:

https://api.float.com/v3/tasks?per-page=200

Specify a particular page like this:

https://api.float.com/v3/tasks?page=5

We also return a few headers related to pagination on every GET request that returns a list:

  • X-Pagination-Total-Count: Total number of items
  • X-Pagination-Page-Count: Total number of pages
  • X-Pagination-Current-Page: Current page number
  • X-Pagination-Per-Page: Number of returned items

Errors

Other errors you may see will start with 5xx, e.g. 500 Internal Server Error. Please hold and try your request again later. If the error persists please contact us at the email below.

API Improvements

For any issues or feature requests please contact us at support@float.com

Interested in partnering?

We’re keen to help with:

  • validating potential use cases
  • exploring the possibility of marketing to our shared user bases if an integration works well.

Please reach out and let us know the type of integration you have in mind.