Plattformen, som ett paket du installerar.
Officiella klienter med öppen källkod för JavaScript och TypeScript, Python och PHP. Konfigurera en med en API-nyckel och ett projekt-ID och arbeta med Cosmoners tjänster genom ett enhetligt, språkanpassat API.
- 3 officiella språk
- 18 behörighetsomfång
- MIT licensierat
- HTTP under huven
import { Cosmoner } from "@cosmoner/sdk";const cosmoner = new Cosmoner({ apiKey: process.env.COSMONER_API_KEY, projectId: process.env.COSMONER_PROJECT_ID,});await cosmoner.email.send({ to: "[email protected]", subject: "Your receipt", html: receipt,});
SPRÅK
3
JS/TS, Python och PHP
AUTENTISERING
API-nyckel
Bearer-token, per projekt
BEHÖRIGHETER
18
Läs och skriv, per tjänst
LICENS
MIT
Källkod på GitHub
Välj ditt språk
Ett kommando, sedan en klient
Installera det officiella paketet med pakethanteraren du redan använder. Var och en exponerar samma klient med samma tjänstenamnrymder.
JavaScript / TypeScript
@cosmoner/sdk
npm install @cosmoner/sdkPython
cosmoner-sdk
pip install cosmoner-sdkPHP
cosmoner/sdk
composer require cosmoner/sdkVad klienten ger dig
Byggd för denna plattform, inte genererad från den
SDK:erna utvecklas specifikt för Cosmoner, så deras API motsvarar projekt och tjänster snarare än råa endpoints.
Tre officiella SDK:er
Använd Cosmoner-klienten i JavaScript och TypeScript, Python eller PHP, installerad med pakethanteraren du redan använder.
npm · pip · composer
En enhetlig klient
Varje SDK exponerar en Cosmoner-klient med tjänstenamnrymder, så samma struktur gäller i alla språk som stöds.
Samma form, tre språk
Projektbaserad autentisering
Konfigurera klienten med en API-nyckel och ett projekt-ID. Nyckeln avgör vilket projekt koden når och vad den får göra där.
Authorization: Bearer …
Avgränsade behörigheter
Nycklar avgränsas per tjänst och per riktning — läs eller skriv — så att ett driftsättningsskript inte bär behörigheten att radera en domän.
apps:read · storage:write · …
Stöd för e-posttjänsten
Skicka e-post genom e-posttjänstens namnrymd med mottagare, ämne, HTML-innehåll och dina e-postuppgifter.
Tillgängligt idag
Öppen källkod, MIT
Läs implementationen, bidra med förbättringar eller forka den för din egen integration. Källkoden finns på GitHub under MIT-licensen.
github.com/datablock-dev/sdk
API-nycklar och behörigheter
Ge nyckeln uppgiften, inte hela nyckelknippan
Behörigheter delas per tjänst och per riktning, så att en nyckel kan vara precis så kapabel som det som håller den behöver vara — och inte mer.
- Namnge en nyckel efter vad som använder den — en CI-pipeline, ett cron-jobb — inte efter dig själv.
- Att utelämna behörigheter skapar en nyckel med full åtkomst, vilket sällan är vad en driftsatt tjänst behöver.
- En nyckels behörigheter kan uppdateras senare, så att snäva åt åtkomst kräver inte att den utfärdas om.
- Samma nyckel autentiserar docker push och docker pull mot containerregistret.
{ "name": "CI/CD Key", "permissions": [ "apps:read", "apps:write", "storage:read" ]}
# denna nyckel kan inte påverka domäner eller medlemmarAuthorization: Bearer <your-api-key>
Vad det kostar
SDK:et i sig är gratis
Det finns ingen licens-, plats- eller anropsavgift för SDK:et eller API:et bakom det. Du betalar för resurserna du skapar med det, till samma priser som i kontrollpanelen.
- SDK:et
- USD 0
- Installera det i hur många projekt, miljöer och CI-pipelines du vill. Det finns inget platsantal och ingen licens att förnya.
- API-förfrågningar
- USD 0
- Läsningar och skrivningar mäts inte. Förfrågningar hastighetsbegränsas för att hålla API:et friskt, och ett strypt anrop returnerar 429 i stället för en avgift.
- API-nycklar
- USD 0
- Utfärda och rotera så många scopade nycklar du behöver — en nyckel är en åtkomsträttighet, inte en debiterbar resurs.
- Resurser du skapar
- Ordinarie pris
- En app, server, bucket eller databas som skapas via SDK:et debiteras precis som en som skapas i kontrollpanelen.
Att skapa en resurs via SDK:et debiterar projektets betalningsmetod precis som kontrollpanelen gör, proportionerligt till nästa faktureringsdatum.
Ett projekt
Vad du kan automatisera
En avgränsad nyckel når ett projekts resurser, vilket är vad som gör SDK:n säker att placera inuti en driftsättning snarare än bara på din egen maskin.
Frågor som förtjänar svar direkt
Varje behörighet, header och endpoint listas i API-referensen och guiden för API-nycklar.
- Vad behöver jag för att komma igång?
- En API-nyckel och ID:t för projektet du vill arbeta med. Installera paketet, konfigurera klienten med båda, och tjänstenamnrymderna är tillgängliga.
- Hur bör jag avgränsa en nyckel?
- Till det minsta den behöver. Behörigheter sätts per tjänst och delas i läs och skriv, så en mätvärdespanel får apps:read medan pipelinen som levererar kod får apps:write. Att utelämna behörigheter skapar en nyckel med full åtkomst — värt att undvika utanför ett engångsskript.
- Kan jag ändra en nyckels behörigheter senare?
- Ja. En nyckels namn och behörighetsuppsättning kan uppdateras utan att en ny nyckel utfärdas, så att snäva åt behörigheter innebär inte att allt som använder den måste driftsättas om.
- Måste jag använda ett SDK?
- Nej — API:et är vanlig HTTP med en bearer-token, så alla språk fungerar. SDK:erna finns för att slippa skriva förfrågningslagret, inte för att API:et kräver dem.
- Fungerar samma nyckel för docker push?
- Ja. En API-nyckel autentiserar docker push och docker pull mot Cosmoners containerregister såväl som mot REST-API:et, så CI behöver en uppgift istället för två.
- Vilka tjänster kan jag nå?
- Behörighetslistan visar vad en nyckel kan adressera: appar, servrar, domäner, e-post, lagring, hemligheter, variabler, medlemmar och support. SDK-ytan följer API:et när det växer.
Öppen källkod
Läs den innan du förlitar dig på den
Klienten är ingen svart låda i ditt beroendeträd. Granska hur den bygger förfrågningar, öppna en pull request eller forka den om din integration behöver något annat.