For Agents
Log time entries, manage expenses, and read jobs, tasks, clients, and users in ClickTime via a versioned bearer-authenticated REST API.
Get started with ClickTime API in minutes using your preferred integration method.
# Add to your MCP client config (Claude Desktop, Cursor, Windsurf)
{
"jentic": {
"url": "https://api.jentic.com/mcp",
"auth": "oauth"
}
}
# Then ask your agent:
"log a time entry in ClickTime"
# → Jentic returns the GET /events tool with parameter schema, agent executes.What an agent can do with ClickTime API API.
Create, retrieve, update, and delete time entries against /companies/{companyId}/users/{userId}/timeentries
Log expenses for a user via POST /companies/{companyId}/users/{userId}/expenses
List a company's jobs, tasks, and clients to drive project picklists
Read user records and the current authenticated user via GET /me
GET STARTED
Use for: Log a time entry against a job for a user, Update an existing ClickTime time entry, Delete a time entry that was logged in error, List all jobs for the company
Not supported: Does not handle creating jobs, tasks, or clients, running invoicing, or executing payroll — use for time entries, expenses, and reading workspace metadata only.
Jentic publishes the only available OpenAPI document for ClickTime API, keeping it validated and agent-ready.
Jentic publishes the only available OpenAPI specification for ClickTime API, keeping it validated and agent-ready. ClickTime is a time-tracking, expense, and project-budgeting platform used by professional services firms to bill clients accurately and forecast capacity. The 1.3 REST surface exposes time entries, expenses, jobs, tasks, clients, users, and the company record so integrators can sync ClickTime data into accounting, project management, or analytics tooling. Authentication uses a bearer token derived from a ClickTime API key.
Pull the ClickTime company record for tenant-aware integrations
Patterns agents use ClickTime API API for, with concrete tasks.
★ Project Time Tracking from External Tools
Engineering and consulting teams log time from inside Jira, Asana, or Slack rather than the ClickTime UI, so timesheets stay accurate without context switching. POST /companies/{companyId}/users/{userId}/timeentries records the entry against the right job and task, while GET /companies/{companyId}/jobs and GET /companies/{companyId}/tasks back the picklist that the user sees.
Call POST /companies/{companyId}/users/{userId}/timeentries with the userId, jobId, taskId, hours, and date for the work done.
Expense Report Submission
Finance teams replace email attachments with a structured expense submission flow that posts directly to ClickTime. POST /companies/{companyId}/users/{userId}/expenses creates the entry against the user, and GET /companies/{companyId}/users/{userId}/expenses lists submitted items so a manager can review the pending queue.
Submit an expense via POST /companies/{companyId}/users/{userId}/expenses with the amount, category, and date for an out-of-pocket reimbursement.
Project Profitability Reporting
Operations and finance teams pull time entries and combine them with billing rates to produce per-project margin reports. Iterating GET /companies/{companyId}/users with a per-user GET /companies/{companyId}/users/{userId}/timeentries call yields the timesheet feed; jobs and tasks expose the project context needed to attribute the time to the right engagement.
Iterate users via GET /companies/{companyId}/users and pull each user's time entries via GET /companies/{companyId}/users/{userId}/timeentries for the reporting window.
AI Agent Time-Tracking Assistant
An AI assistant that helps a consultant or engineer summarise their week and post timesheets uses Jentic to call ClickTime without managing the bearer token directly. Jentic exposes the time-entry, job, and task endpoints by intent, validates inputs against the schema, and isolates credentials.
Search Jentic for 'log a time entry to ClickTime', load the schema for POST /companies/{companyId}/users/{userId}/timeentries, and execute it with the user's hours for each job for the day.
16 endpoints — jentic publishes the only available openapi specification for clicktime api, keeping it validated and agent-ready.
METHOD
PATH
DESCRIPTION
/me
Get the currently authenticated user.
/companies/{companyId}/users/{userId}/timeentries
Create a time entry for a user.
/companies/{companyId}/users/{userId}/timeentries
List a user's time entries.
/companies/{companyId}/users/{userId}/timeentries/{timeEntryId}
Update an existing time entry.
/companies/{companyId}/users/{userId}/timeentries/{timeEntryId}
Delete a time entry.
/companies/{companyId}/users/{userId}/expenses
Create an expense entry for a user.
/companies/{companyId}/jobs
List jobs for the company.
/companies/{companyId}/tasks
List tasks for the company.
/me
Get the currently authenticated user.
/companies/{companyId}/users/{userId}/timeentries
Create a time entry for a user.
/companies/{companyId}/users/{userId}/timeentries
List a user's time entries.
/companies/{companyId}/users/{userId}/timeentries/{timeEntryId}
Update an existing time entry.
/companies/{companyId}/users/{userId}/timeentries/{timeEntryId}
Delete a time entry.
Three things that make agents converge on Jentic-routed access.
Credential isolation
ClickTime bearer tokens are stored in the encrypted Jentic vault (MAXsystem) and injected at call time. The raw token never enters the agent's context, which matters because it can read every user's time entries and expenses in the workspace.
Intent-based discovery
Agents search Jentic by intent (e.g., 'log a time entry' or 'list all jobs') and receive the matching ClickTime operation with its path and body schema, so the agent does not need to read the ClickTime help reference.
Time to first call
Direct ClickTime integration: 1-2 days for bearer auth, picklist caching, and date handling. Through Jentic: under 1 hour — search, load schema, execute against an existing ClickTime workspace.
Alternatives and complements available in the Jentic catalogue.
Toggl API
Lightweight time-tracking API focused on simple start/stop entries.
Choose Toggl when the workflow only needs simple time tracking without ClickTime's project-budget and expense surface.
Everhour API
Time tracking API with deeper integrations into Asana, Trello, and Jira out of the box.
Choose Everhour when the customer's project tools are already Asana or Jira and ClickTime's deeper finance side is not needed.
Timely API
Automatic time-tracking API that captures activity passively rather than via manual entries.
Choose Timely when the team prefers passive activity capture over the manual time-entry model ClickTime uses.
Factorial HR API
Sync ClickTime users and time data into the HR system of record for payroll-ready summaries.
Use when ClickTime is the source of truth for billable hours and Factorial owns the employee master record.
Specific to using ClickTime API API through Jentic.
Why is there no official OpenAPI spec for ClickTime API?
ClickTime publishes its developer reference as HTML at app.clicktime.com/api/1.3/help. Jentic generates and maintains this spec so that AI agents and developers can call ClickTime API via structured tooling. It is validated against the live API and kept up to date. Get started at https://app.jentic.com/sign-up.
What authentication does the ClickTime API use?
ClickTime uses HTTP Bearer authentication — generate an API key from your ClickTime profile and pass it as Authorization: Bearer <token>. Through Jentic the token is stored encrypted in the vault and injected at call time, so it never enters the agent's prompt context.
Can I create new jobs or tasks via the API?
Not in this version. The 1.3 surface exposes GET-only endpoints for /companies/{companyId}/jobs, /companies/{companyId}/tasks, and /companies/{companyId}/clients — useful for picklists but not for provisioning. Job and task creation is performed inside the ClickTime workspace by an administrator.
What are the rate limits for the ClickTime API?
Rate limits are not declared in the OpenAPI spec. ClickTime applies plan-level throttles that surface as 429 responses; treat batch reporting jobs as paginated and cache the results of jobs, tasks, and clients calls rather than re-fetching on every page load.
How do I post a time entry through Jentic?
Run pip install jentic, then search Jentic for 'log a time entry', load the schema for POST /companies/{companyId}/users/{userId}/timeentries, and execute it with the userId, jobId, taskId, hours, and date. Jentic injects the bearer token from your stored ClickTime credentials. Sign up at https://app.jentic.com/sign-up.
Can the API tell me who the current user is?
Yes. GET /me returns the currently authenticated ClickTime user, which is useful when the same bearer token is shared across tools and the application needs to attribute time to the person who connected the account.
/companies/{companyId}/users/{userId}/expenses
Create an expense entry for a user.
/companies/{companyId}/jobs
List jobs for the company.
/companies/{companyId}/tasks
List tasks for the company.