Endpoint
Elencare le tue app
Le app che la tua chiave può vedere, le più recenti per prime, con ricerca e pagine.
https://www.setherion.com/api/v1/projectsPiano: Ogni piano
Restituisce le app della tua dashboard: le tue, quelle negli spazi di lavoro di cui fai parte e quelle condivise con te, le modificate più di recente per prime. Le app eliminate non sono incluse. Basta qualsiasi ruolo, anche Viewer.
Le app arrivano 100 alla volta. total dice quante corrispondono e, finché ne seguono altre, truncated è true e nextOffset dice da dove inizia la pagina successiva. Per trovare una sola app senza leggerle tutte, cerca con q.
L’elenco è gratuito e non usa crediti.
Richiesta
curl https://www.setherion.com/api/v1/projects \
-H "Authorization: Bearer $SETHERION_API_KEY"Per cercare, aggiungi q. Trova le parole in qualsiasi punto del nome o della descrizione di un’app, maiuscole o minuscole:
curl "https://www.setherion.com/api/v1/projects?q=coffee" \
-H "Authorization: Bearer $SETHERION_API_KEY"Per la pagina successiva, aggiungi offset con il nextOffset della risposta precedente:
curl "https://www.setherion.com/api/v1/projects?offset=100" \
-H "Authorization: Bearer $SETHERION_API_KEY"| Parametro | Significato |
|---|---|
q | Facoltativo. Testo da trovare nel nome o nella descrizione dell’app. Gli spazi intorno vengono ignorati. Fino a 100 caratteri. Un % o _ al suo interno è preso alla lettera, quindi cercare 50% non corrisponde a tutte le app. |
offset | Facoltativo. Da dove inizia la pagina, contando da 0: il nextOffset della risposta precedente. Un numero intero di al massimo sei cifre. |
L’ordine è per ultima modifica, con l’id dell’app a risolvere un pareggio, così due app modificate nello stesso istante non si scambiano mai di posto da una pagina alla successiva. Un’app modificata tra due richieste di pagina passa in cima all’elenco, quindi leggi le pagine in un colpo solo.
Risposta
La prima pagina di un account con più di 100 app:
{
"ok": true,
"total": 142,
"truncated": true,
"offset": 0,
"nextOffset": 100,
"projects": [
{
"id": "7c1e4a52-9b0d-4f3e-8a61-2d5f0c9e7b14",
"name": "Coffee shop",
"description": "Website for a coffee shop in Leeds",
"url": "https://coffee-shop.setherion.app",
"updatedAt": "2026-09-19T10:42:07.000Z"
},
{
"id": "0e9d3b6a-41c2-4d7f-b8a5-6f1c2a9d4e30",
"name": "Booking tool",
"description": null,
"url": null,
"updatedAt": "2026-09-18T16:03:51.000Z"
}
]
}(L’array projects contiene fino a 100 voci. Ne sono mostrate due.)
| Campo | Tipo | Significato |
|---|---|---|
total | number | Quante app corrispondono, comprese quelle non presenti in questa pagina. |
truncated | boolean | true quando altre app seguono questa pagina. |
offset | number | Da dove inizia questa pagina. |
nextOffset | number or null | Da dove inizia la pagina successiva, oppure null nell’ultima. |
id | string | L’id dell’app. Usalo per modificare o pubblicare l’app. |
name | string | Il nome dell’app, come nella tua dashboard. |
description | string or null | La descrizione dell’app, se ne ha una. |
url | string or null | Dove l’app è online, oppure null se non è pubblicata. |
updatedAt | string | Quando l’app è cambiata l’ultima volta, in ISO 8601. |
Una pagina oltre la fine non è un errore: risponde con ok: true e un elenco projects vuoto.
Leggi tutte le pagine
const base = 'https://www.setherion.com/api/v1/projects'
const headers = { Authorization: `Bearer ${process.env.SETHERION_API_KEY}` }
let offset = 0
const all = []
while (offset !== null) {
const page = await fetch(`${base}?offset=${offset}`, { headers }).then(r => r.json())
if (!page.ok) throw new Error(page.error)
all.push(...page.projects)
offset = page.nextOffset
}Errori
| Status | Quando |
|---|---|
400 | q è più lungo di 100 caratteri, oppure offset non è un numero intero. |
401 | La chiave manca, è sbagliata o è stata revocata. |
500 | Non è stato possibile leggere l’elenco. Riprova. |
Le frasi esatte
| Status | error |
|---|---|
400 | q is at most 100 characters. |
400 | offset is a whole number, 0 or more. |
500 | Could not list your apps. |
Questa pagina ti è stata utile?
