# Timekit API Documentation

This is the complete API documentation for connecting to the Timekit API using MindCloud's Universal API.

MindCloud offers one normalized API to access 3,400+ apps from a single place. It centralizes authentication and normalizes app APIs so they are easier and more consistent to use.

## Quickstart

1. A **MindCloud account** — sign in or create an account at [MindCloud](https://app.mindcloud.co).
2. A **MindCloud API Key** — create one in [API Keys](https://app.mindcloud.co/user/api-keys). Keep it on your server.
3. At least one **Timekit connection** — create or choose one in [Connections](https://app.mindcloud.co/credentials). Note its `connectionId`.

```text
POST https://connect.mindcloud.co/v2/universal/apps/timekit/actions/{actionSlug}/run
```

## Timekit actions

- PUT `add-project-resource` Add Project Resource
- POST `create-booking` Create Booking
- POST `create-project` Create Project
- POST `create-resource` Create Resource
- DELETE `delete-booking` Delete Booking
- DELETE `delete-project` Delete Project
- DELETE `delete-resource` Delete Resource
- GET `get-availability-counts` Get Availability Counts
- GET `get-availability-dates` Get Availability Dates
- GET `get-booking` Get Booking
- GET `get-current-app` Get Current App
- GET `get-resource` Get Resource
- GET `get-unavailable-slots` Get Unavailable Slots
- GET `list-bookings` List Bookings
- GET `list-locations` List Locations
- GET `list-project-resources` List Project Resources
- GET `list-projects` List Projects
- GET `list-resources` List Resources
- GET `query-availability` Query Availability
- PUT `reschedule-booking` Reschedule Booking
- PUT `update-booking-meta` Update Booking Meta
- PUT `update-booking-state` Update Booking State
- PUT `update-project` Update Project
- PUT `update-resource` Update Resource
