> ## Documentation Index
> Fetch the complete documentation index at: https://developers.everhour.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Key concepts

> Core resources in the Everhour data model — what they are and how they relate.

Before diving into individual endpoints, it helps to understand the vocabulary used throughout the API and these docs.

## Team

The top-level tenant boundary. Every user belongs to exactly one team. Resources such as projects, clients, and invoices are scoped to a team. Your API key inherits the team context of the user account it belongs to.

## Project

A container for work. Projects have members, tasks, budget settings, and billing configuration. A project may be linked to a client. The `GET /projects` endpoint lists all projects accessible to the authenticated user.

## Task

The primary unit of work inside a project. Tasks have assignees, an estimate, a status, and they receive time records. Tasks may be organized into sections.

## Section

A grouping of tasks within a project — equivalent to a column or swimlane in a board view.

## Time record

A logged time entry. Each time record is attached to a task and carries a `date` (date-only) and a `time` value in **seconds**. It may also hold a comment and a billable flag.

## Timer

A running, in-progress time record. Starting a timer creates an active entry; stopping it finalizes the `time` duration and saves the record. Only one timer can be active per user at a time.

## Client

A billing-side entity. Projects may be linked to a client for reporting and invoicing purposes.

## Invoice

A billing document generated from time records and expenses for a client. Invoices are created, updated, and tracked through the API.

## Expense

A non-time cost attached to a project (for example, a software subscription or travel cost). Expenses have an `amount` (integer, in the smallest currency unit) and a `date`.

## Webhook

An outbound HTTP callback. Users can subscribe their own endpoint to receive event notifications when resources change — for example, when a task is created or a timer is stopped. See [Webhooks](/webhooks) for setup and event reference.
