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

# Public API (V2)

Die Public API (V2) ist eine REST-API zum Lesen von Anwendungsrohdaten: Metriken,
Traces, Logs, Kubernetes-Metriken und Deploy-Statistiken. Sie ergänzt die
[GraphQL-API](/api/graphql), die Modelle wie Apps, Incidents, Dashboards und
Alerts verwaltet. Als Faustregel gilt: Verwenden Sie die REST-API zum Lesen von
Daten und die GraphQL-API zur Verwaltung der Konfiguration.

<Tip>
  Wenn Sie einen KI-Agenten oder Assistenten erstellen, stellt [AppSignal
  MCP](/mcp-server) diese Daten direkt für Agenten bereit — möglicherweise
  müssen Sie diese API gar nicht selbst aufrufen.
</Tip>

## Basis-URL

Alle Endpunkte werden unter `/api/v2` auf der Domain `appsignal.com` bereitgestellt:

<CodeGroup>
  ```shell Base URL theme={null}
  https://appsignal.com/api/v2
  ```
</CodeGroup>

## Authentifizierung

Anfragen werden mit Ihrem persönlichen API-Token authentifiziert, das entweder als
Bearer-Token oder als Query-Parameter übergeben wird. Sie finden Ihr Token im
[Bildschirm für persönliche Einstellungen](https://appsignal.com/users/edit).

<CodeGroup>
  ```shell Authorization header theme={null}
  curl -H "Authorization: Bearer YOUR-PERSONAL-API-TOKEN" \
    https://appsignal.com/api/v2/metrics/names/YOUR-SITE-ID
  ```

  ```shell Query parameter theme={null}
  curl "https://appsignal.com/api/v2/metrics/names/YOUR-SITE-ID?token=YOUR-PERSONAL-API-TOKEN"
  ```
</CodeGroup>

Ihr Token gewährt Zugriff auf dieselben Sites und Organisationen, die Sie in
AppSignal sehen. Die meisten Anfragen sind auf eine einzelne `site_id` begrenzt;
Tracing-Endpunkte verwenden ein `site_ids`-Array, sodass sie über mehrere Sites
hinweg suchen können. Die API prüft, dass Ihr Token Zugriff auf jede angeforderte
Site hat, bevor Daten zurückgegeben werden. Um ein Token selbst zu überprüfen,
rufen Sie `GET /api/v2/auth` auf.

Ihre `site_id` ist die ID in der URL Ihrer App:
`https://appsignal.com/<organization>/sites/<SITE_ID>`. Für Log-Abfragen benötigen
Sie außerdem eine Log-Quellen-ID — siehe [Site- und Quellen-IDs
finden](/api/v2/logs#finding-your-site-and-source-ids).

## Ein Token überprüfen

<CodeGroup>
  ```shell Endpoint theme={null}
  GET /api/v2/auth
  ```
</CodeGroup>

Gibt ein JSON-Objekt mit einer `message` zurück, die die authentifizierte User-ID bestätigt.

## Anfragen und Antworten

Die meisten Endpunkte verwenden `POST` mit einem JSON-Body und geben JSON zurück.
Reine Lese-Lookups (etwa das Auflisten von Metriknamen) verwenden `GET` mit
Pfadparametern. Setzen Sie bei Anfragen mit Body `Content-Type: application/json`.

Zeitangaben sind ISO-8601-Strings. Die meisten Abfrage-Bodies nehmen einen `from`-
und `to`-Zeitbereich entgegen sowie entweder eine `site_id` oder, bei
Tracing-Endpunkten, ein `site_ids`-Array.

Eine vollständige, automatisch generierte Referenz aller Endpunkte, Anfragen und
Antworttypen finden Sie in der [REST-API-Referenz](https://appsignal.com/api/v2/docs).

## Fehlerantworten

Jeder Endpunkt kann diese Nicht-2xx-Antworten zurückgeben:

| Status | Bedeutung                                           | Body                                        |
| ------ | --------------------------------------------------- | ------------------------------------------- |
| `401`  | Fehlendes oder ungültiges Token                     | `{ "error": "Unauthorized" }`               |
| `404`  | Route oder Ressource nicht gefunden                 | `{ "error": "Not found" }`                  |
| `422`  | Anfrage geparst, kann aber nicht verarbeitet werden | Fehler-Envelope (siehe folgenden Abschnitt) |
| `500`  | Unbehandelter serverseitiger Fehler                 | `{ "error": "<message>" }`                  |

### 422-Envelope

Jede `422`-Antwort verwendet denselben Envelope, sodass Sie sie an einer Stelle behandeln können:

<CodeGroup>
  ```json 422 response theme={null}
  {
    "error": "<stable_slug>",
    "message": "<human-readable message>",
    "details": {}
  }
  ```
</CodeGroup>

* `error`: ein stabiles, maschinenlesbares Slug. Verzweigen Sie in Ihrem Code darauf.
* `message`: eine menschenlesbare Nachricht, sicher zur Anzeige.
* `details`: ein optionales Objekt, dessen Form von `error` abhängt.

Ein Slug, dem Sie begegnen können, ist `legacy_log_query_syntax`. Er wird
zurückgegeben, wenn eine Logs-Abfrage die alte `attributes.<name>_<type>`-Syntax
verwendet. Siehe [Logs abfragen](/api/v2/logs) für die aktuelle Abfragesprache.

## Endpunkte

### Metriken

| Methode | Pfad                                                    | Beschreibung                                               |
| ------- | ------------------------------------------------------- | ---------------------------------------------------------- |
| `POST`  | `/api/v2/metrics/timeseries`                            | Metrikdaten als Zeitreihe abfragen                         |
| `POST`  | `/api/v2/metrics/list`                                  | Aggregierte Metrikdaten als Liste mit Gruppierung abfragen |
| `GET`   | `/api/v2/metrics/names/{site_id}`                       | Alle Metriknamen für eine Site auflisten                   |
| `GET`   | `/api/v2/metrics/type_and_tags/{site_id}/{metric_name}` | Typ und verfügbare Tags einer Metrik abrufen               |

Siehe die [Metriken-Referenz](/api/v2/metrics).

### Tracing

| Methode | Pfad                                  | Beschreibung                                                   |
| ------- | ------------------------------------- | -------------------------------------------------------------- |
| `POST`  | `/api/v2/tracing/locator`             | Einen Trace anhand der Trace-ID über Sites hinweg lokalisieren |
| `POST`  | `/api/v2/tracing/trace`               | Alle Spans eines Traces abrufen                                |
| `POST`  | `/api/v2/tracing/trace/performance`   | Spans für einen Performance-Trace abrufen                      |
| `POST`  | `/api/v2/tracing/trace/error`         | Spans für einen Error-Trace abrufen                            |
| `POST`  | `/api/v2/tracing/traces/performance`  | Performance-Traces auflisten                                   |
| `POST`  | `/api/v2/tracing/traces/errors`       | Error-Traces auflisten                                         |
| `POST`  | `/api/v2/tracing/actions`             | Performance-Aktionen mit aggregierten Metriken auflisten       |
| `POST`  | `/api/v2/tracing/action_edges`        | Upstream- und Downstream-Edges für eine Aktion auflisten       |
| `POST`  | `/api/v2/tracing/site_edges`          | Service-Abhängigkeits-Edges für eine Site auflisten            |
| `POST`  | `/api/v2/tracing/slow_events`         | Langsame Ereignisse mit aggregierten Statistiken auflisten     |
| `POST`  | `/api/v2/tracing/slow_events/actions` | Aktionen zu einem langsamen Ereignis auflisten                 |

Siehe die [Tracing-Referenz](/api/v2/traces).

### Logs

| Methode | Pfad                 | Beschreibung           |
| ------- | -------------------- | ---------------------- |
| `POST`  | `/api/v2/logs/lines` | Log-Zeilen durchsuchen |

Siehe die [Logs-Referenz](/api/v2/logs).

### Kubernetes

| Methode | Pfad                               | Beschreibung                                 |
| ------- | ---------------------------------- | -------------------------------------------- |
| `POST`  | `/api/v2/kubernetes/nodes`         | Node-Metriken abfragen                       |
| `POST`  | `/api/v2/kubernetes/pods`          | Pod-Metriken abfragen                        |
| `POST`  | `/api/v2/kubernetes/pods/overview` | Pod-Übersicht mit Labels und Status abfragen |

Siehe die [Kubernetes-Referenz](/api/v2/kubernetes).

### Deploys

| Methode | Pfad                    | Beschreibung                                 |
| ------- | ----------------------- | -------------------------------------------- |
| `POST`  | `/api/v2/deploys/stats` | Deploy-Statistiken für eine Revision abrufen |

Siehe die [Deploys-Referenz](/api/v2/deploys).

### Check-ins

| Methode | Pfad                          | Beschreibung                                       |
| ------- | ----------------------------- | -------------------------------------------------- |
| `POST`  | `/api/v2/check_ins/test_cron` | Einen Cron-Schedule-Ausdruck testen und validieren |

Siehe die [Check-ins-Referenz](/api/v2/check-ins).

### Gespeicherte Visuals

| Methode | Pfad                             | Beschreibung                                   |
| ------- | -------------------------------- | ---------------------------------------------- |
| `GET`   | `/api/v2/saved_visuals/{id}`     | Ein gespeichertes Visual als JSON abrufen      |
| `GET`   | `/api/v2/saved_visuals/{id}/csv` | Ein gespeichertes Visual als CSV herunterladen |

Endpunkte für gespeicherte Visuals erfordern keine Authentifizierung. Siehe die
[Referenz für gespeicherte Visuals](/api/v2/saved-visuals).

### System

| Methode | Pfad           | Beschreibung                        |
| ------- | -------------- | ----------------------------------- |
| `GET`   | `/api/v2/auth` | Überprüfen, ob ein Token gültig ist |
