Let's get started
Welcome to the Mojave Developer Documentation 👋
Mojave is a developer-friendly time tracking and invoicing platform, built for modern teams and freelancers. This documentation will help you understand how Mojave works under the hood, how to integrate with it, and how to build on top of our API and infrastructure.
Whether you're building internal tools, syncing data, or self-hosting Mojave — you're in the right place.
Prerequisites
Before diving into the API or integrations, make sure you have:
A Mojave account
A registered API key or OAuth client
Basic familiarity with RESTful APIs
curl
, Postman, or a similar tool for testing
JSON Structure
Below is a sample response of a time entry object returned from the API. This structure outlines the key fields you'll interact with when creating, updating, or retrieving time logs.
Each timentry
is linked to a user and a project, and optionally includes task information, notes, duration (in seconds), and billing status. All timestamps are in ISO 8601 UTC format.
Authentication Overview
Mojave uses token-based authentication to secure all API requests. You must include an access token in the Authorization
header of every request to the API.
We currently support two authentication methods:
Personal API Tokens – Great for internal tools, automation scripts, or CLI usage.
OAuth2 – Recommended for user-facing apps, integrations, or third-party plugins.
Type | Use Case | Header Example |
---|---|---|
API Token | Backend integrations or CLI usage |
|
OAuth2 | User-based apps or plugins | Standard OAuth2 flow with access + refresh tokens |
Example API Request
Here’s how to fetch your own user data using an API token:
Response: