Zum Hauptinhalt springen
GET
/
v2
/
apps
/
{app_id}
/
network
/
performance
Netzwerk-Performance
curl --request GET \
  --url https://api.squarecloud.app/v2/apps/{app_id}/network/performance \
  --header 'Authorization: <authorization>'
import requests

url = "https://api.squarecloud.app/v2/apps/{app_id}/network/performance"

headers = {"Authorization": "<authorization>"}

response = requests.get(url, headers=headers)

print(response.text)
const options = {method: 'GET', headers: {Authorization: '<authorization>'}};

fetch('https://api.squarecloud.app/v2/apps/{app_id}/network/performance', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));
<?php

$curl = curl_init();

curl_setopt_array($curl, [
CURLOPT_URL => "https://api.squarecloud.app/v2/apps/{app_id}/network/performance",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: <authorization>"
],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
package main

import (
"fmt"
"net/http"
"io"
)

func main() {

url := "https://api.squarecloud.app/v2/apps/{app_id}/network/performance"

req, _ := http.NewRequest("GET", url, nil)

req.Header.Add("Authorization", "<authorization>")

res, _ := http.DefaultClient.Do(req)

defer res.Body.Close()
body, _ := io.ReadAll(res.Body)

fmt.Println(string(body))

}
HttpResponse<String> response = Unirest.get("https://api.squarecloud.app/v2/apps/{app_id}/network/performance")
.header("Authorization", "<authorization>")
.asString();
require 'uri'
require 'net/http'

url = URI("https://api.squarecloud.app/v2/apps/{app_id}/network/performance")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)
request["Authorization"] = '<authorization>'

response = http.request(request)
puts response.read_body
{
  "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
      }
    ]
  }
}
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.
Nur in den Tarifen Pro und Enterprise verfügbar. Rate-Limit bei Cache-Miss: 10 Anfragen pro 60 Sekunden pro Eigentümer.
Authorization
string
erforderlich
Der API-Schlüssel für Ihr Konto. Sie finden ihn in Ihren Kontoeinstellungen.

Parameter

app_id
string
erforderlich
Die ID der Anwendung. Du findest sie in der URL des Dashboards deiner Anwendung.
start
string
erforderlich
ISO-8601-Startzeitstempel für das Analysefenster.
end
string
erforderlich
ISO-8601-Endzeitstempel. Muss nach start liegen.

Antwort

status
string
Gibt an, ob der Aufruf erfolgreich war. success bei Erfolg, error andernfalls.
response
object
Latenzperzentile und Aufschlüsselungen für das Fenster.
{
  "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
      }
    ]
  }
}