Applicazione - Rete
Prestazioni di Rete
Ottieni i percentili di latenza edge e origin con suddivisioni per paese, colo e path dell’applicazione.
GET
/
v2
/
apps
/
{app_id}
/
network
/
performance
Prestazioni di Rete
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
}
]
}
}
Restituisce i percentili del tempo di risposta edge e origin (
p50, p95, p99) dell’applicazione su un intervallo di tempo, oltre alle suddivisioni per paese, per colo e per i path più lenti. Utile per diagnosticare regressioni di latenza e identificare quali route o regioni sono le più lente.
Disponibile solo sui piani Pro ed Enterprise. Limite di frequenza per cache miss: 10 richieste ogni 60 secondi per proprietario.
La chiave API del tuo account. Puoi trovarla nelle impostazioni del tuo account.
Parametri
L’ID dell’applicazione. Puoi trovarlo nell’URL della dashboard della tua applicazione.
Timestamp di inizio ISO 8601 per l’intervallo di analisi.
Timestamp di fine ISO 8601. Deve essere successivo a
start.Risposta
Indica se la chiamata è andata a buon fine.
success in caso di successo, error in caso contrario.Percentili di latenza e suddivisioni per l’intervallo.
Mostra Mostra oggetto response
Mostra Mostra oggetto response
Percentili di latenza aggregati sull’intero intervallo.
Mostra Mostra oggetto summary
Mostra Mostra oggetto summary
Numero totale di richieste analizzate nell’intervallo.
Percentili di latenza suddivisi in intervalli lungo la finestra di analisi.
Suddivisione della latenza per paese del client.
Suddivisione della latenza per colo edge (data center).
Mostra Mostra elemento colos
Mostra Mostra elemento colos
Identificatore del colo (es.
GRU, IAD).Città in cui si trova il colo.
Paese in cui si trova il colo.
Latenza mediana su questo colo in millisecondi.
Latenza al 95° percentile su questo colo in millisecondi.
Richieste servite attraverso questo colo.
I path con la latenza più alta nell’intervallo.
{
"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
}
]
}
}
Precedente
Imposta dominio personalizzatoIntegra il tuo sito web con un dominio personalizzato. Ha un limite di frequenza di 10 modifiche ogni 5 minuti e 50 ogni 24 ore.
Successivo
⌘I
Prestazioni di Rete
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
}
]
}
}

