Skip to main content

FoxPlan API usage guide

Overview

The FoxPlan API enables developers to integrate project management capabilities into their applications, allowing for retrieval and management of project data.

Important disclaimer

Use at your own risk

"Use of the FoxPlan API is at your own risk. Since all features are available through the API, you have the ability to crash, delete, or corrupt your data." The platform strongly recommends testing in a non-production environment first.

Accessing API documentation

Comprehensive Swagger documentation is available within FoxPlan's admin menu under Settings > Workspace > API tab, providing detailed endpoint specifications for authenticated users.

FoxPlan API Swagger documentation

Getting started: three key steps

1. Create an API account

Users generate API credentials in the API tab by entering an account name. The system provides an Auth ID and an Auth Token, which must be combined and encoded in base64 format for authentication.

API tab: account description field and "Add API account" button

Popup showing the created API account's Auth ID and Auth Token

2. Grant access permissions

Assign the API account specific roles (such as Workspace Manager) to determine access levels within the application.

Assigning a role to the API account by drag & drop in the Member tab

3. Obtain an access token

Make a request to https://app.fox-plan.com/api/auth using Basic authentication with your base64-encoded credentials. The response provides an id_token for subsequent API calls.

POST /api/auth request in Postman returning the id_token

API request format

Standard headers:

Authorization: Bearer <id_token>

Example endpoint:

GET https://app.fox-plan.com/api/vacations?email=firstname.lastname@domain.com

From Swagger, expand an endpoint then click Try it out to test it directly:

GET /api/vacations endpoint in Swagger with the &quot;Try it out&quot; button

Entering parameters and the &quot;Execute&quot; button in Swagger

API 200 response with the curl command and JSON body

The same call can be made from a client such as Postman, passing the Bearer <id_token> in the Authorization header:

Calling an endpoint with the Bearer token in Postman

Best practices

  • Respect rate limiting policies
  • Implement comprehensive error handling
  • Store API keys securely — never hardcode credentials

HTTP status codes

CodeMeaning
200Success
400Bad Request
401Unauthorized
403Forbidden
404Not Found
500Server Error