# Management API

Jitsu exposes an HTTP API for managing workspaces, sites, destinations,
connections, syncs and functions. The Jitsu UI is a client of this same API.

:::info

Examples below reference `use.jitsu.com`, the Jitsu Cloud instance. If you
self-host Jitsu, replace it with your own host.

:::

The full reference is generated from the [OpenAPI spec](https://use.jitsu.com/api/spec.yaml)
and is listed in the sidebar under each resource — start with
[Workspace](/docs/api/reference/workspace) or [Configuration](/docs/api/reference/configuration).

## Authentication

All endpoints require an `Authorization` header with a personal API key:

```
Authorization: Bearer <api-key>
```

Generate keys in the Jitsu UI on the [user settings page](https://use.jitsu.com/user).

<Screenshot src="/docs/screenshots/user-api-keys.png" />

:::tip

API keys have the format `{keyId}:{keySecret}`. The secret is only shown once at
creation — copy it then.

:::

You'll also need your `workspaceId`, visible on the workspace settings page:

<Screenshot src="/docs/screenshots/api-workspace-id.png" />

## CLI

Most things you can do over HTTP can also be done with [`jitsu-cli`](/docs/jitsu-cli),
which calls this API under the hood. Quick start:

```bash
npm i -g jitsu-cli
jitsu-cli login
jitsu-cli config destinations list -w my-workspace
```

## Cascade delete

When deleting an entity that other entities reference (Connections or Syncs),
two query parameters control behaviour:

- **`strict`** (default `false`) — if `true`, refuses to delete an entity that
  is referenced elsewhere.
- **`cascade`** (default `false`) — if `true`, also deletes the referencing
  entities. Use with caution.