# Everhour ## Docs - [Create Client](https://developers.everhour.com/api-reference/clients/create-client.md): Create a new client. Names are not deduplicated — posting the same name creates another client. - [Delete Client Budget](https://developers.everhour.com/api-reference/clients/delete-client-budget.md): Remove the budget attached to a client. The client itself is kept. - [Get All Clients](https://developers.everhour.com/api-reference/clients/get-all-clients.md): Search Clients by Name using the query parameter. - [Get Client](https://developers.everhour.com/api-reference/clients/get-client.md): Retrieve a single client by ID. - [Update Client](https://developers.everhour.com/api-reference/clients/update-client.md): Update an existing client. Only the fields supplied in the body are modified. - [Update Client Budget](https://developers.everhour.com/api-reference/clients/update-client-budget.md): Create or replace the budget attached to a client. Send a complete budget object; partial updates are not supported. - [Create Field in Project](https://developers.everhour.com/api-reference/custom-fields/create-field-in-project.md): Create a new custom field on a project. - [Delete Field](https://developers.everhour.com/api-reference/custom-fields/delete-field.md): Delete a custom field. Existing task values for that field are discarded. - [Get Project Fields Configuration](https://developers.everhour.com/api-reference/custom-fields/get-project-fields-configuration.md): List the custom fields configured on a project, in display order. - [Reorder Fields](https://developers.everhour.com/api-reference/custom-fields/reorder-fields.md): Reorder a project's custom fields. Send the full list of field IDs in the desired order. - [Update Field](https://developers.everhour.com/api-reference/custom-fields/update-field.md): Update a custom field's name, type-specific options, or visibility. - [Add Attachment To Expense](https://developers.everhour.com/api-reference/expenses/add-attachment-to-expense.md): Attach a previously uploaded file (by its token from `POST /attachments`) to an existing expense. - [Create Attachment](https://developers.everhour.com/api-reference/expenses/create-attachment.md): Upload a file and receive a one-time attachment token. The token can then be attached to an expense via `POST /expenses/{expense_id}/attachments` or included in `POST /expenses`. - [Create Category](https://developers.everhour.com/api-reference/expenses/create-category.md): Create a new expense category. - [Create Expense](https://developers.everhour.com/api-reference/expenses/create-expense.md): Log a new expense. Amounts are in cents (see [Concepts](/concepts)); attach files first via `POST /attachments` and reference their tokens in the request body. - [Delete Attachment](https://developers.everhour.com/api-reference/expenses/delete-attachment.md): Delete an attachment and its underlying file. - [Delete Category](https://developers.everhour.com/api-reference/expenses/delete-category.md): Delete an expense category. Expenses already assigned to it are kept but become uncategorized. - [Delete Expense](https://developers.everhour.com/api-reference/expenses/delete-expense.md): Delete an expense entry. Attached files are also removed. - [Download Attachment](https://developers.everhour.com/api-reference/expenses/download-attachment.md): Download the binary contents of an attachment by its token. The response is the raw file, not JSON. - [Get All Categories](https://developers.everhour.com/api-reference/expenses/get-all-categories.md): List expense categories available in the team. - [Get All Expenses](https://developers.everhour.com/api-reference/expenses/get-all-expenses.md): List expenses logged by the authenticated user. Supports filtering by project and date — see [Filtering](/filtering). - [Update Category](https://developers.everhour.com/api-reference/expenses/update-category.md): Update an expense category. - [Update Expense](https://developers.everhour.com/api-reference/expenses/update-expense.md): Update an existing expense entry. - [Create Invoice](https://developers.everhour.com/api-reference/invoices/create-invoice.md): Create an invoice for a client. The invoice is generated from the client's tracked time over the requested date range — see [Dates](/dates-and-timezones). - [Delete Invoice](https://developers.everhour.com/api-reference/invoices/delete-invoice.md): Delete an invoice. Time records attached to the invoice are released and become billable again. - [Export Invoice to Xero/QB/FB](https://developers.everhour.com/api-reference/invoices/export-invoice-to-xeroqbfb.md): Export an invoice to a connected external accounting system. - [Get All Invoices](https://developers.everhour.com/api-reference/invoices/get-all-invoices.md): List invoices in the team. Supports filtering by date and client — see [Filtering](/filtering). - [Get Invoice](https://developers.everhour.com/api-reference/invoices/get-invoice.md): Retrieve a single invoice with its full line-item breakdown. - [Mark Invoice as Draft/Sent/Paid](https://developers.everhour.com/api-reference/invoices/mark-invoice-as-draftsentpaid.md): Transition an invoice to a new lifecycle state. - [Refresh Invoice Line Items](https://developers.everhour.com/api-reference/invoices/refresh-invoice-line-items.md): Refresh an invoice's line items from current time records. - [Update Invoice](https://developers.everhour.com/api-reference/invoices/update-invoice.md): Update invoice metadata (notes, dates, custom totals). To change the lifecycle state use `POST /invoices/{invoice_id}/{status}`. - [Archive/Unarchive Project](https://developers.everhour.com/api-reference/projects/archiveunarchive-project.md): Archive or unarchive a project. Archived projects are hidden from default listings but their data is preserved. - [Create Project](https://developers.everhour.com/api-reference/projects/create-project.md): Create a new project. To copy from an existing template use the `template` or `publicTemplate` body field. To sync a project from a connected integration use `POST /projects/{project_id}/sync` instead. - [Create Section](https://developers.everhour.com/api-reference/projects/create-section.md): Create a new section in a project. - [Delete Project](https://developers.everhour.com/api-reference/projects/delete-project.md): Delete a project, its tasks, and all associated time records. This is irreversible. - [Delete Section](https://developers.everhour.com/api-reference/projects/delete-section.md): Delete a section. Tasks in the section are kept but become section-less. - [Get All Projects](https://developers.everhour.com/api-reference/projects/get-all-projects.md): List projects the caller has access to. Use the `query` parameter to search by name and `limit`/`page` for pagination — see [Pagination](/pagination) and [Filtering](/filtering). - [Get Project](https://developers.everhour.com/api-reference/projects/get-project.md): Retrieve a single project. See [Concepts](/concepts) for the project model. - [Get Project Sections](https://developers.everhour.com/api-reference/projects/get-project-sections.md): List sections (groupings of tasks) within a project. - [Get Section](https://developers.everhour.com/api-reference/projects/get-section.md): Retrieve a single section by ID. - [Sync Integration Project](https://developers.everhour.com/api-reference/projects/sync-integration-project.md): Sync new integration projects to Everhour. - [Update Project](https://developers.everhour.com/api-reference/projects/update-project.md): Update project settings. To change budget or billable rate, use `PUT /projects/{project_id}/billing` instead. - [Update Project Billing/Budget](https://developers.everhour.com/api-reference/projects/update-project-billingbudget.md): Set or update the project's budget, billable rate, and billing type in a single call. Amounts are in cents (see [Concepts](/concepts)). - [Update Section](https://developers.everhour.com/api-reference/projects/update-section.md): Update a section's name or position. - [Clients Report](https://developers.everhour.com/api-reference/reports/clients-report.md): Aggregated client report. Same filters and units as `GET /dashboards/projects` — see [Filtering](/filtering) and [Concepts](/concepts). - [Estimates Report (deprecated)](https://developers.everhour.com/api-reference/reports/estimates-report-deprecated.md): Legacy CSV export of team estimates. Kept for backward compatibility; new integrations should use the dashboards endpoints. - [Projects Report](https://developers.everhour.com/api-reference/reports/projects-report.md): Aggregated project report. - [Time Report (deprecated)](https://developers.everhour.com/api-reference/reports/time-report-deprecated.md): Legacy CSV export of team time. Kept for backward compatibility; new integrations should use `GET /team/time` or the dashboards endpoints. - [Users Report](https://developers.everhour.com/api-reference/reports/users-report.md): Aggregated member report. Same filters and units as `GET /dashboards/projects` — see [Filtering](/filtering) and [Concepts](/concepts). - [Create Assignment](https://developers.everhour.com/api-reference/schedule/create-assignment.md): Create a schedule assignment. To create time-off use `POST /resource-planner/assignments/time-off` instead. - [Delete Assignment](https://developers.everhour.com/api-reference/schedule/delete-assignment.md): Delete a schedule assignment. Supports the optional `applyTo` body field to delete one occurrence or the whole recurring series. - [Get All Assignments](https://developers.everhour.com/api-reference/schedule/get-all-assignments.md): List schedule assignments across the team. Supports filtering by date range, project, and member — see [Filtering](/filtering). - [Update Assignment](https://developers.everhour.com/api-reference/schedule/update-assignment.md): Update an existing schedule assignment. - [Create Task](https://developers.everhour.com/api-reference/tasks/create-task.md): Create a task in a project. For tasks coming from connected integrations, sync them via `POST /projects/{project_id}/sync` instead. - [Delete Task](https://developers.everhour.com/api-reference/tasks/delete-task.md): Delete a task and all of its time records. - [Delete Task Estimate](https://developers.everhour.com/api-reference/tasks/delete-task-estimate.md): Remove a task's estimate. - [Get Project Tasks](https://developers.everhour.com/api-reference/tasks/get-project-tasks.md): List tasks in a project. Defaults to open tasks; set `excludeClosed=0` to include closed ones. See [Pagination](/pagination) for `limit`/`page` rules. - [Get Task](https://developers.everhour.com/api-reference/tasks/get-task.md): Retrieve a single task with its time totals, estimate, and custom fields. - [Get Task Billing](https://developers.everhour.com/api-reference/tasks/get-task-billing.md): Optional billing data in API responses. - [Search Project Tasks](https://developers.everhour.com/api-reference/tasks/search-project-tasks.md): Search tasks within a single project. Same query semantics as `GET /tasks/search`; `limit` must be between 1 and 100. - [Search Tasks](https://developers.everhour.com/api-reference/tasks/search-tasks.md): Search tasks across all projects by name. The `limit` parameter must be between 1 and 100. - [Update Task](https://developers.everhour.com/api-reference/tasks/update-task.md): Update task fields (name, status, due date, section, labels). - [Update Task Estimate](https://developers.everhour.com/api-reference/tasks/update-task-estimate.md): Set or replace a task's estimate (in seconds). Send a complete estimate object; partial updates are not supported. - [Create Allocation](https://developers.everhour.com/api-reference/time-off/create-allocation.md): Create a time-off allocation for a user and time-off type. - [Create Time Off](https://developers.everhour.com/api-reference/time-off/create-time-off.md): Create Time Off using the same endpoint as assignments with extra attributes. - [Create Time Off Type](https://developers.everhour.com/api-reference/time-off/create-time-off-type.md): Create a new time-off type. - [Delete Allocation](https://developers.everhour.com/api-reference/time-off/delete-allocation.md): Delete a time-off allocation. - [Delete Time Off Type](https://developers.everhour.com/api-reference/time-off/delete-time-off-type.md): Delete a time-off type. Existing time-off entries that reference it are kept. - [Get All Allocations](https://developers.everhour.com/api-reference/time-off/get-all-allocations.md): List per-user time-off allocations (e.g. annual vacation balances). - [Get Time Off Types](https://developers.everhour.com/api-reference/time-off/get-time-off-types.md): List the time-off types defined for the team (e.g. Vacation, Sick Leave). - [Update Allocation](https://developers.everhour.com/api-reference/time-off/update-allocation.md): Update a time-off allocation's amount or period. - [Update Time Off Type](https://developers.everhour.com/api-reference/time-off/update-time-off-type.md): Update a time-off type's name, color, or settings. - [Add Time](https://developers.everhour.com/api-reference/time-records/add-time.md): Add a time record (in seconds) for a user on a given task and date. - [Delete Time Record](https://developers.everhour.com/api-reference/time-records/delete-time-record.md): Remove a time record by setting its duration to zero. - [Get All Time Records](https://developers.everhour.com/api-reference/time-records/get-all-time-records.md): List time records across the entire team. Supports filtering by date range, user, project, and task — see [Filtering](/filtering) and [Dates](/dates-and-timezones). - [Get Project Time Records](https://developers.everhour.com/api-reference/time-records/get-project-time-records.md): List time records logged against a single project, across all users and tasks. - [Get Task Time Records](https://developers.everhour.com/api-reference/time-records/get-task-time-records.md): List time records logged against a single task, across all users. - [Get User Time Records](https://developers.everhour.com/api-reference/time-records/get-user-time-records.md): List time records for a single user. Supports the same filters as `GET /team/time`. - [Update Time Record](https://developers.everhour.com/api-reference/time-records/update-time-record.md): Update a specific time record by ID. To add or upsert time, use `POST /time` instead. - [Clock In](https://developers.everhour.com/api-reference/timecards/clock-in.md): Clock a user in. Starts a new timecard segment at the current time. - [Clock Out](https://developers.everhour.com/api-reference/timecards/clock-out.md): Clock a user out. Closes the current timecard segment. - [Delete Timecard](https://developers.everhour.com/api-reference/timecards/delete-timecard.md): Delete a user's timecard entry for a specific date. - [Get All Timecards](https://developers.everhour.com/api-reference/timecards/get-all-timecards.md): List timecards across the team. Defaults to the last two weeks when no date range is provided — see [Dates](/dates-and-timezones). - [Get Timecard](https://developers.everhour.com/api-reference/timecards/get-timecard.md): Retrieve a user's timecard for a specific date. - [Get User Timecards](https://developers.everhour.com/api-reference/timecards/get-user-timecards.md): List timecards for a single user. Defaults to the last two weeks when no date range is provided. - [Update Timecard](https://developers.everhour.com/api-reference/timecards/update-timecard.md): Update (or create, if missing) a user's timecard for a specific date. Suitable for manual edits — clock-in and clock-out have dedicated endpoints. - [Get All Team Timers](https://developers.everhour.com/api-reference/timers/get-all-team-timers.md): List the timers currently running across the team — one entry per active user. - [Get Running Timer](https://developers.everhour.com/api-reference/timers/get-running-timer.md): Retrieve the authenticated user's currently running timer, or an empty timer payload if none is running. - [Start Timer](https://developers.everhour.com/api-reference/timers/start-timer.md): Start a timer for the authenticated user on a given task. - [Stop Timer](https://developers.everhour.com/api-reference/timers/stop-timer.md): Stop the authenticated user's currently running timer. - [Approve or Reject Approval Request](https://developers.everhour.com/api-reference/timesheets/approve-or-reject-approval-request.md): Approve or reject an existing timesheet approval request. - [Approve Week/Request for Approval](https://developers.everhour.com/api-reference/timesheets/approve-weekrequest-for-approval.md): Submit a timesheet week for approval. - [Discard Your Approval Request](https://developers.everhour.com/api-reference/timesheets/discard-your-approval-request.md): Retract the caller's previously submitted approval request for a week. The week returns to draft state. - [Get Team Timesheets](https://developers.everhour.com/api-reference/timesheets/get-team-timesheets.md): List timesheet weeks across the team, grouped by user. - [Get User Timesheets](https://developers.everhour.com/api-reference/timesheets/get-user-timesheets.md): List timesheet weeks for a single user. The week id is the Monday date of the week (see [Dates](/dates-and-timezones)). - [Get All Users](https://developers.everhour.com/api-reference/users/get-all-users.md): List all members of the team. Supports `query` for name search and `limit` for pagination — see [Pagination](/pagination). - [Get Current User](https://developers.everhour.com/api-reference/users/get-current-user.md): Retrieve the authenticated user's profile, team membership, and personal settings. - [Create Webhook](https://developers.everhour.com/api-reference/webhooks/create-webhook.md): Register a new webhook subscription. - [Delete Webhook](https://developers.everhour.com/api-reference/webhooks/delete-webhook.md): Delete a webhook subscription. Stops further deliveries; no event is sent for the deletion itself. - [Get Webhook](https://developers.everhour.com/api-reference/webhooks/get-webhook.md): Retrieve a single webhook subscription. - [Update Webhook](https://developers.everhour.com/api-reference/webhooks/update-webhook.md): Update a webhook's events, target URL, or scope. If the target URL changes, the same handshake protocol as `POST /hooks` applies. - [Authentication](https://developers.everhour.com/authentication.md): How to authenticate requests to the Everhour API using an API key. - [Key concepts](https://developers.everhour.com/concepts.md): Core resources in the Everhour data model — what they are and how they relate. - [Dates and timezones](https://developers.everhour.com/dates-and-timezones.md): Date and time formats used in Everhour API requests and responses, including timezone handling and duration encoding. - [Errors](https://developers.everhour.com/errors.md): HTTP status codes and error response format used by the Everhour API. - [Filtering](https://developers.everhour.com/filtering.md): How to filter and sort results in the Everhour REST API. - [Everhour API](https://developers.everhour.com/introduction.md): A REST API for programmatic access to your time tracking data, projects, users, and reports. - [Pagination](https://developers.everhour.com/pagination.md): How pagination works in the Everhour API — per-endpoint parameters, defaults, and how to detect the last page. - [Quickstart](https://developers.everhour.com/quickstart.md): Get your API key and make your first Everhour API request in minutes. - [Rate limits](https://developers.everhour.com/rate-limits.md): Request rate limits for the Everhour API and how to handle 429 responses. - [Webhooks](https://developers.everhour.com/webhooks.md): Receive real-time event notifications when resources change in your Everhour account. ## OpenAPI Specs - [openapi](https://developers.everhour.com/openapi.json)