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

# Netzwerk-Performance

> Ruft Latenzperzentile am Edge und am Origin mit Aufschlüsselungen nach Land, Colo und Pfad für die Anwendung ab.

Gibt die Antwortzeit-Perzentile am Edge und am Origin (`p50`, `p95`, `p99`) für die Anwendung über einen Zeitraum zurück, zusätzlich zu Aufschlüsselungen pro Land, pro Colo und nach den langsamsten Pfaden. Nützlich, um Latenzregressionen zu diagnostizieren und zu erkennen, welche Routen oder Regionen am langsamsten sind.

<Info>
  Nur in den Tarifen **Pro** und **Enterprise** verfügbar. Rate-Limit bei Cache-Miss: 10 Anfragen pro 60 Sekunden pro Eigentümer.
</Info>

<ParamField header="Authorization" type="string" placeholder="API Key" required>
  Der API-Schlüssel für Ihr Konto. Sie finden ihn in Ihren [Kontoeinstellungen](https://squarecloud.app/de/account/security).
</ParamField>

### Parameter

<ParamField path="app_id" type="string" placeholder="Application ID" required>
  Die ID der Anwendung. Du findest sie in der URL des Dashboards deiner Anwendung.
</ParamField>

<ParamField query="start" type="string" placeholder="ISO 8601 timestamp" required>
  ISO-8601-Startzeitstempel für das Analysefenster.
</ParamField>

<ParamField query="end" type="string" placeholder="ISO 8601 timestamp" required>
  ISO-8601-Endzeitstempel. Muss nach `start` liegen.
</ParamField>

### Antwort

<ResponseField name="status" type="string">
  Gibt an, ob der Aufruf erfolgreich war. `success` bei Erfolg, `error` andernfalls.
</ResponseField>

<ResponseField name="response" type="object">
  Latenzperzentile und Aufschlüsselungen für das Fenster.

  <Expandable title="Response-Objekt umschalten">
    <ResponseField name="summary" type="object">
      Aggregierte Latenzperzentile über das gesamte Fenster.

      <Expandable title="Summary-Objekt umschalten">
        <ResponseField name="edge" type="object">
          Edge-seitige Latenzperzentile in Millisekunden.

          <Expandable title="Edge-Objekt umschalten">
            <ResponseField name="p50" type="integer">50. Perzentil (Median) der Edge-Latenz.</ResponseField>
            <ResponseField name="p95" type="integer">95. Perzentil der Edge-Latenz.</ResponseField>
            <ResponseField name="p99" type="integer">99. Perzentil der Edge-Latenz.</ResponseField>
          </Expandable>
        </ResponseField>

        <ResponseField name="origin" type="object">
          Origin-seitige Latenzperzentile in Millisekunden.

          <Expandable title="Origin-Objekt umschalten">
            <ResponseField name="p50" type="integer">50. Perzentil (Median) der Origin-Latenz.</ResponseField>
            <ResponseField name="p95" type="integer">95. Perzentil der Origin-Latenz.</ResponseField>
            <ResponseField name="p99" type="integer">99. Perzentil der Origin-Latenz.</ResponseField>
          </Expandable>
        </ResponseField>

        <ResponseField name="requests" type="integer">Gesamtzahl der im Fenster analysierten Anfragen.</ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="timeseries" type="array">
      Latenzperzentile, über das Analysefenster in Buckets gruppiert.

      <Expandable title="Timeseries-Element umschalten">
        <ResponseField name="date" type="string">Startzeitstempel des Buckets im ISO-8601-Format.</ResponseField>
        <ResponseField name="requests" type="integer">Im Bucket beobachtete Anfragen.</ResponseField>
        <ResponseField name="edge" type="object">Edge `p50`/`p95`/`p99` für diesen Bucket.</ResponseField>
        <ResponseField name="origin" type="object">Origin `p50`/`p95`/`p99` für diesen Bucket.</ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="countries" type="array">
      Latenzaufschlüsselung nach Land des Clients.

      <Expandable title="Countries-Element umschalten">
        <ResponseField name="type" type="string">ISO-Ländercode (z. B. `BR`, `US`).</ResponseField>
        <ResponseField name="p50" type="integer">Median-Latenz für dieses Land in Millisekunden.</ResponseField>
        <ResponseField name="p95" type="integer">95. Perzentil der Latenz für dieses Land in Millisekunden.</ResponseField>
        <ResponseField name="requests" type="integer">An dieses Land ausgelieferte Anfragen.</ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="colos" type="array">
      Latenzaufschlüsselung nach Edge-Colo (Rechenzentrum).

      <Expandable title="Colos-Element umschalten">
        <ResponseField name="type" type="string">Colo-Kennung (z. B. `GRU`, `IAD`).</ResponseField>
        <ResponseField name="city" type="string">Stadt, in der sich das Colo befindet.</ResponseField>
        <ResponseField name="country" type="string">Land, in dem sich das Colo befindet.</ResponseField>
        <ResponseField name="p50" type="integer">Median-Latenz an diesem Colo in Millisekunden.</ResponseField>
        <ResponseField name="p95" type="integer">95. Perzentil der Latenz an diesem Colo in Millisekunden.</ResponseField>
        <ResponseField name="requests" type="integer">Über dieses Colo ausgelieferte Anfragen.</ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="slowest_paths" type="array">
      Pfade mit der höchsten Latenz im Fenster.

      <Expandable title="Slowest_paths-Element umschalten">
        <ResponseField name="path" type="string">Anfragepfad.</ResponseField>
        <ResponseField name="p95" type="integer">95. Perzentil der Latenz für diesen Pfad in Millisekunden.</ResponseField>
        <ResponseField name="p99" type="integer">99. Perzentil der Latenz für diesen Pfad in Millisekunden.</ResponseField>
        <ResponseField name="requests" type="integer">Für diesen Pfad beobachtete Anfragen.</ResponseField>
      </Expandable>
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseExample>
  ```json theme={null}
  {
    "status": "success",
    "response": {
      "summary": {
        "edge": { "p50": 42, "p95": 180, "p99": 320 },
        "origin": { "p50": 28, "p95": 150, "p99": 280 },
        "requests": 12450
      },
      "timeseries": [
        {
          "date": "2025-12-01T12:00:00.000Z",
          "requests": 540,
          "edge": { "p50": 41, "p95": 175, "p99": 310 },
          "origin": { "p50": 27, "p95": 148, "p99": 270 }
        }
      ],
      "countries": [
        { "type": "BR", "p50": 35, "p95": 160, "requests": 8200 },
        { "type": "US", "p50": 55, "p95": 210, "requests": 3100 }
      ],
      "colos": [
        {
          "type": "GRU",
          "city": "São Paulo",
          "country": "BR",
          "p50": 34,
          "p95": 158,
          "requests": 8100
        }
      ],
      "slowest_paths": [
        {
          "path": "/api/reports/generate",
          "p95": 820,
          "p99": 1500,
          "requests": 230
        }
      ]
    }
  }
  ```
</ResponseExample>
