KehittäjätREST API

REST API

Hostwolf Apps -rajapinta on pelkkää HTTPS:ää ja JSONia. Kaikki, mitä SDK ja MCP-palvelin tekevät, kulkee näiden päätepisteiden kautta. OpenAPI 3.1 -kuvauksessa on jokainen kenttä koodigeneraattoreita ja Postmanin kaltaisia työkaluja varten.

Perus-URL#

https://console.app.hostwolf.net/api/v1

Kaikki alla olevat polut ovat suhteessa siihen. GET /health ja GET /version eivät vaadi tunnusta.

Tunnistautuminen#

Lähetä API-tunnus Authorization-otsakkeessa ja pyydä JSONia:

curl https://console.app.hostwolf.net/api/v1/team \
  -H "Authorization: Bearer 12|your_token" \
  -H "Accept: application/json"

Tunnus toimii sen tiimin puolesta, jossa se luotiin, valitsemillasi oikeuksilla: Luku, Arkaluonteisten tietojen luku, Kirjoitus, Julkaisu tai Root. Pyyntöjen rungot ovat JSONia (Content-Type: application/json). Resursseihin viitataan niiden uuid:llä.

Virheet#

Virheet ovat aina JSONia, jossa on message, ja validointivirheet listaavat kentät:

{"message": "Validation failed.", "errors": {"ports_exposes": ["The ports exposes field is required."]}}
TilaMerkitys
400Virheellinen pyyntö, tai toimintoa ei voi nyt suorittaa (esim. pysäytetyn sovelluksen lokit).
401Tunnus puuttuu, on väärä, vanhentunut tai peruttu.
403Tunnukselta puuttuu oikeus, roolisi tiimissä on liian matala, tai päätepiste ei ole käytettävissä Hostwolfissa (vastauksessa on docs-linkki).
404Ei löytynyt, tai se kuuluu toiselle tiimille.
409Ristiriita: avain on jo olemassa tai resurssi ei ole valmis.
422Validointivirhe; katso errors.
429Pyyntöraja täynnä; odota Retry-After-otsakkeen kertomat sekunnit.
503Hostwolf-palvelu on hetkellisesti poissa käytöstä. Mitään ei muutettu; yritä uudelleen.

Lähetä Accept-Language: de, fr, es tai fi, niin saat viestit sillä kielellä.

Maksulliset muutokset#

Laskua nostavat kutsut vaativat rungossa "confirm": true: tallennustaltion lisääminen tai suurentaminen, sen varmuuskopioiden käyttöönotto tai automaattisen kasvun asettaminen, laskuttamattoman taltion liittäminen, palauttaminen uuteen taltioon ja tietokannan paketin päivittäminen. Ilman sitä mikään ei muutu, ja vastaus on 422 hintoineen:

{"message": "A 50 GB volume costs $6.19/month, billed hourly, plus its backups per GB stored. Send \"confirm\": true to go ahead.",
 "confirm_required": true, "quote": {"size_gb": 50, "monthly_price": 6.19, "hourly_price": 0.0085, "currency": "USD"}}

Näytä hinta ja lähetä sitten sama kutsu parametrilla "confirm": true. SDK heittää HostwolfAppsError-virheen koodilla confirm_required ja hinnan kentässä error.quote; MCP-työkalut välittävät viestin avustajalle. Varmuuskopion palauttaminen taltion tiedostojen päälle vaatii myös confirm-parametrin.

Jotkin alkuperäisen projektin päätepisteet eivät koske Hostwolfia, koska Hostwolf ylläpitää palvelimet puolestasi: palvelinten lisääminen, vahvistaminen, tuominen tai poistaminen, pilvipalveluntarjoajien tunnukset ja instanssin asetukset. Ne vastaavat 403:lla, viestillä ja docs-linkillä, eikä niitä listata alla. Osta ja peru palvelimia konsolissa kohdassa Palvelimet ja laskutus.

Pyyntörajoitukset#

  • 200 pyyntöä minuutissa käyttäjää kohden. Jokainen vastaus sisältää otsakkeet X-RateLimit-Limit ja X-RateLimit-Remaining.
  • Hallinnoitujen tietokantojen toiminnot: 10 minuutissa. Tallennustaltioiden muutokset: 10 minuutissa, yhteinen raja konsolin kanssa.
  • Rajan ylittyessä saat vastauksen 429 ja otsakkeen Retry-After (sekunteina). SDK odottaa lyhyet rajoitukset puolestasi.
  • Isännöity MCP-palvelin sallii 300 pyyntöä minuutissa osoitetta kohden ja 180 tunnusta kohden.

Sivutus#

Useimmat listat palauttavat kaiken kerralla. Poikkeukset:

  • GET /deployments/applications/{uuid} ottaa parametrit skip ja take (oletus 10) ja palauttaa {count, deployments}.
  • GET /audit-events ottaa parametrit page ja per_page ja palauttaa {data, current_page, last_page, per_page, total}.

SDK käärii molemmat asynkronisiin iteraattoreihin (allForApplication, allAuditEvents).

Päätepisteet#

HW merkitsee päätepisteet, jotka ovat olemassa vain Hostwolf Appsissa. Suodata kirjoittamalla kenttään tai paina /.

278 päätepistettä

Projektit#

MetodiPolkuRunko / kyselyMitä se tekee
GET/projectsListaa projektit.
POST/projects+2 valinnaistaLuo projekti.
GET/projects/{uuid}Hae projekti UUID:n perusteella.
PATCH/projects/{uuid}+2 valinnaistaPäivitä projekti.
DELETE/projects/{uuid}Poista projekti UUID:n perusteella.
GET/projects/{uuid}/environmentsListaa kaikki projektin ympäristöt.
POST/projects/{uuid}/environments+1 valinnainenLuo ympäristö projektiin.
PATCH/projects/{uuid}/environments/{environment_name_or_uuid}+2 valinnaistaPäivitä projektin ympäristö nimen tai UUID:n perusteella.
DELETE/projects/{uuid}/environments/{environment_name_or_uuid}Poista ympäristö nimen tai UUID:n perusteella.
GET/projects/{uuid}/{environment_name_or_uuid}Hae ympäristö nimen tai UUID:n perusteella.

Sovellukset#

MetodiPolkuRunko / kyselyMitä se tekee
GET/applications?tagListaa kaikki sovellukset.
POST/applications/dockerfileproject_uuid, server_uuid, dockerfile, +80 valinnaistaLuo uusi sovellus yksinkertaisen Dockerfilen pohjalta (ilman gitiä).
POST/applications/dockerimageproject_uuid, server_uuid, docker_registry_image_name, +77 valinnaistaLuo uusi sovellus valmiin Docker-konttikuvan pohjalta (ilman gitiä).
POST/applications/private-deploy-keyproject_uuid, server_uuid, private_key_uuid, git_repository, git_branch, build_pack, +96 valinnaistaLuo uusi sovellus yksityisestä repositoriosta Deploy Keyn avulla.
POST/applications/private-github-appproject_uuid, server_uuid, github_app_uuid, git_repository, git_branch, build_pack, +96 valinnaistaLuo uusi sovellus yksityisestä repositoriosta GitHub Appin avulla.
POST/applications/publicproject_uuid, server_uuid, git_repository, git_branch, build_pack, +96 valinnaistaLuo uusi sovellus julkisesta git-repositoriosta.
GET/applications/{uuid}Hae sovellus UUID:n perusteella.
PATCH/applications/{uuid}+95 valinnaistaPäivitä sovellus UUID:n perusteella.
DELETE/applications/{uuid}?delete_configurations, ?delete_volumes, ?docker_cleanup, ?delete_connected_networksPoista sovellus UUID:n perusteella.
POST/applications/{uuid}/clonedestination_uuid, +2 valinnaistaKloonaa sovellus kohteeseen, jonka omistaa tunnistautunut tiimi.
GET/applications/{uuid}/destinationsListaa erillisen sovelluksen ensisijainen kohde ja lisäkohteet.
POST/applications/{uuid}/destinationsdestination_uuidLiitä sovellukseen ylimääräinen erillinen Docker-kohde.
DELETE/applications/{uuid}/destinations/{destination_uuid}Irrota sovelluksesta ylimääräinen kohde.
GET/applications/{uuid}/envsListaa kaikki ympäristömuuttujat sovelluksen UUID:n perusteella.
POST/applications/{uuid}/envs+6 valinnaistaLuo ympäristömuuttuja sovelluksen UUID:n perusteella.
PATCH/applications/{uuid}/envskey, value, +4 valinnaistaPäivitä ympäristömuuttuja sovelluksen UUID:n perusteella.
PATCH/applications/{uuid}/envs/bulkdataPäivitä useita ympäristömuuttujia sovelluksen UUID:n perusteella.
DELETE/applications/{uuid}/envs/{env_uuid}Poista ympäristömuuttuja UUID:n perusteella.
GET/applications/{uuid}/logs?lines, ?show_timestamps, ?service_nameHae sovelluksen lokit UUID:n perusteella.
GET/applications/{uuid}/metrics?minutesLue Sentinel-historia. HW
POST/applications/{uuid}/migratedestination_uuid, +1 valinnainenSiirrä sovellus toiseen kohteeseen/palvelimelle, jonka omistaa tunnistautunut tiimi.
POST/applications/{uuid}/moveenvironment_uuidSiirrä sovellus toiseen projektiin/ympäristöön.
GET/applications/{uuid}/previewsListaa sovelluksen esikatselujulkaisut, uusin pull request ensin.
POST/applications/{uuid}/previewspull_request_id, +6 valinnaistaAvaa pull requestille esikatselujulkaisu ja laita sen julkaisu jonoon.
GET/applications/{uuid}/previews/{pull_request_id}Hae esikatselujulkaisu pull requestin ID:n perusteella.
PATCH/applications/{uuid}/previews/{pull_request_id}+3 valinnaistaKorvaa esikatselujulkaisun verkkotunnukset.
DELETE/applications/{uuid}/previews/{pull_request_id}Poista pull requestin esikatselujulkaisu.
GET/applications/{uuid}/previews/{pull_request_id}/logs?lines, ?show_timestamps, ?service_nameHae esikatselujulkaisun ajonaikaiset konttilokit sovelluksen UUID:n ja pull requestin ID:n perusteella.
POST/applications/{uuid}/restartKäynnistä sovellus uudelleen.
POST/applications/{uuid}/rollbackcommitLaita sovellukselle jonoon palautusjulkaisu aiempaan konttikuvan committiin/tagiin.
GET/applications/{uuid}/rollback-imagesListaa saatavilla olevat Docker-konttikuvat sovelluksen palauttamista varten.
POST/applications/{uuid}/start?force, ?instant_deployKäynnistä sovellus.
POST/applications/{uuid}/stop?docker_cleanupPysäytä sovellus.
GET/applications/{uuid}/storagesListaa kaikki pysyvät tallennustilat ja tiedostotallennukset sovelluksen UUID:n perusteella.
POST/applications/{uuid}/storagestype, mount_path, +4 valinnaistaLuo sovellukselle pysyvä tallennustila tai tiedostotallennus.
PATCH/applications/{uuid}/storagestype, +6 valinnaistaPäivitä pysyvä tallennustila tai tiedostotallennus sovelluksen UUID:n perusteella.
DELETE/applications/{uuid}/storages/{storage_uuid}Poista pysyvä tallennustila tai tiedostotallennus sovelluksen UUID:n perusteella.
PUT/applications/{uuid}/storages/{storage_uuid}/backupsfrequency, +12 valinnaistaLuo tai korvaa sovelluksen pysyvän taltion tai hakemistotallennuksen varmuuskopioaikataulu.
DELETE/applications/{uuid}/storages/{storage_uuid}/backupsPoista sovelluksen tallennustilan varmuuskopioaikataulu sekä sen paikalliset ja S3-arkistot.
POST/applications/{uuid}/storages/{storage_uuid}/backups/runLaita jonoon välitön taltion varmuuskopio sovelluksen tallennustilalle, jolla on aikataulu.
GET/applications/{uuid}/tagsListaa sovelluksen tunnisteet UUID:n perusteella.
POST/applications/{uuid}/tags+2 valinnaistaLisää tunnisteita sovellukseen UUID:n perusteella.
DELETE/applications/{uuid}/tags/{tag_uuid}Poista tunniste sovelluksesta UUID:n perusteella.

Julkaisut#

MetodiPolkuRunko / kyselyMitä se tekee
POST/deploy?tag, ?uuid, ?force, ?pr, …Julkaise tunnisteen tai UUID:n perusteella kyselyparametreilla tai JSON-rungolla.
GET/deploymentsListaa parhaillaan käynnissä olevat julkaisut
GET/deployments/applications/{uuid}?skip, ?takeListaa sovelluksen julkaisut sovelluksen uuid:n avulla
GET/deployments/{uuid}Hae julkaisu UUID:n perusteella.
POST/deployments/{uuid}/cancelPeru julkaisu UUID:n perusteella.

Ostetut palvelimet HW#

Tiimisi ostamat palvelimet. Ostaminen ja peruminen tapahtuvat konsolissa, joten nämä ovat vain luettavissa.

MetodiPolkuRunko / kyselyMitä se tekee
GET/hostwolf/regions?sizeKaupungit, joissa Hostwolf myy palvelimia, sekä kunkin palvelinkoon kuukausihinta (sama katalogi kuin hinnastosivulla).
POST/servers/{uuid}/resizesize, confirmMuuta ostetun sovelluspalvelimen tai VPS:n kokoa paikallaan säilyttäen sijainti ja IP.
GET/hostwolf/serversTiimisi ostamat sovelluspalvelimet ja VPS:t kokoineen, kaupunkeineen, tiloineen ja kuukausihintoineen.
GET/hostwolf/servers/{uuid}Yksi ostettu sovelluspalvelin tai VPS sen uuid:n perusteella.
GET/hostwolf/servers/{uuid}/traffic?monthOstetun palvelimen lähtevä (egress) liikenne kalenterikuukauden aikana (UTC) ja sen hinta tähän mennessä: 1 Tt kuukaudessa sisältyy, minkä jälkeen jokainen kokonainen Gt maksaa price_per_gb.
GET/hostwolf/traffic?monthTiimisi kaikkien palvelinten lähtevä liikenne kalenterikuukauden aikana (UTC), poistetut palvelimet mukaan lukien, sekä kokonaislasku tähän mennessä.

Hallinnoidut tietokannat HW#

PostgreSQL, MariaDB ja Redis Hostwolfin tietokantapalvelimilla. Katso tietokantaopas.

MetodiPolkuRunko / kyselyMitä se tekee
GET/managed-databasesTiimisi hallinnoidut tietokannat ja niiden nykyinen tila.
POST/managed-databasesengine, plan, region, +1 valinnainenLuo hallinnoidun tietokannan.
GET/managed-databases/catalogMoottorit, paketit rajoineen ja alueet kunkin paketin kuukausi- ja tuntihinnoin.
GET/managed-databases/{uuid}Hae hallinnoitu tietokanta
PATCH/managed-databases/{uuid}eviction_policyRedis: muuta poistokäytäntöä (tulee voimaan heti, ilman uudelleenkäynnistystä).
DELETE/managed-databases/{uuid}Poistaa tietokannan ja lopettaa sen laskutuksen.
POST/managed-databases/{uuid}/attachapplication_uuid, +2 valinnaistaTallentaa sovellukselle poolatun yhteys-URL-osoitteen muuttujaan DATABASE_URL ja suoran muuttujaan DATABASE_DIRECT_URL (Redis: vain REDIS_URL): vain ajonaikainen, salattu, näytetään kerran…
POST/managed-databases/{uuid}/backupsAloittaa ylimääräisen varmuuskopion nyt.
GET/managed-databases/{uuid}/connectionYhteys-URL-osoitteet salasanoineen, TLS pakollinen.
POST/managed-databases/{uuid}/upgradeplan, +1 valinnainenSiirtää tietokannan suurempaan pakettiin sen upgrades-listasta.

Automaattinen skaalaus HW#

Sovelluskohtainen automaattinen skaalaus. Katso skaalausopas.

MetodiPolkuRunko / kyselyMitä se tekee
GET/applications/{uuid}/autoscalingSovelluksen automaattisen skaalauksen käytäntö, voiko sen ottaa käyttöön (ja jos ei, miksi), sekä ajantasainen tila: kopiot, suoritinkuorma ja tämän kuun skaalauskulut.
PUT/applications/{uuid}/autoscaling+10 valinnaistaOttaa automaattisen skaalauksen käyttöön tai pois käytöstä ja muuttaa sen asetuksia.

Palvelimet#

Sovelluspalvelimesi. Palvelinten lisäämisen, vahvistamisen ja poistamisen hoitaa Hostwolf; nuo kutsut vastaavat 403:lla ja docs-linkillä.

MetodiPolkuRunko / kyselyMitä se tekee
GET/serversListaa kaikki palvelimet.
GET/servers/{uuid}Hae palvelin UUID:n perusteella.
PATCH/servers/{uuid}+17 valinnaistaPäivitä palvelin.
GET/servers/{uuid}/cloudflare-tunnelHae Cloudflare Tunnel -asetukset palvelimelle, jonka omistaa tunnistautunut tiimi.
PATCH/servers/{uuid}/cloudflare-tunnel+1 valinnainenPäivitä palvelimen tallennetut Cloudflare Tunnel -asetukset.
POST/servers/{uuid}/cloudflare-tunnel/disableMerkitse Cloudflare Tunnel pois käytöstä ja palauta ip_previous, jos se on saatavilla.
POST/servers/{uuid}/cloudflare-tunnel/enableMerkitse Cloudflare Tunnel käsin käytössä olevaksi palvelimelle (vastaa käyttöliittymän manuaalista käyttöönottoa).
GET/servers/{uuid}/docker-cleanupHae Docker-siivousasetukset palvelimelle, jonka omistaa tunnistautunut tiimi.
PATCH/servers/{uuid}/docker-cleanup+6 valinnaistaPäivitä Docker-siivousasetukset palvelimelle, jonka omistaa tunnistautunut tiimi.
GET/servers/{uuid}/docker-cleanup/executionsListaa tunnistautuneen tiimin omistaman palvelimen viimeisimmät Docker-siivouksen suorituslokit.
POST/servers/{uuid}/docker-cleanup/run+2 valinnaistaKäynnistä manuaalinen Docker-siivoustyö palvelimelle, jonka omistaa tunnistautunut tiimi.
GET/servers/{uuid}/domainsHae palvelimen verkkotunnukset.
GET/servers/{uuid}/log-drainsHae lokien ohjausasetukset palvelimelle, jonka omistaa tunnistautunut tiimi.
PATCH/servers/{uuid}/log-drains+9 valinnaistaPäivitä New Relic-, Axiom- tai mukautetun lokien ohjauksen asetukset palvelimelle, jonka omistaa tunnistautunut tiimi.
GET/servers/{uuid}/metrics?minutesLue Sentinel-historia. HW
GET/servers/{uuid}/proxyHae välityspalvelimen asetukset palvelimelle, jonka omistaa tunnistautunut tiimi.
PATCH/servers/{uuid}/proxy+4 valinnaistaPäivitä tiimin omistaman palvelimen välityspalvelimen uudelleenohjausasetukset, tarkkojen nimilappujen (labels) generointi ja halutessasi välityspalvelimen tyyppi.
PUT/servers/{uuid}/proxy/configurationconfigurationTallenna tiimin omistaman palvelimen välityspalvelimen raaka Docker Compose -määritys.
POST/servers/{uuid}/proxy/restartLaita tiimin omistaman palvelimen välityspalvelimen uudelleenkäynnistys jonoon.
GET/servers/{uuid}/registriesListaa Docker-rekisterit, joihin palvelin on kirjautunut, sekä rekisterit, joista sen resurssit hakevat tai joihin ne lähettävät konttikuvia.
POST/servers/{uuid}/registriesregistry, username, passwordAja docker login palvelimella ja kirjoita julkaisujen käyttämään Docker-asetustiedostoon.
DELETE/servers/{uuid}/registries/{registry}Aja docker logout palvelimella rekisterille.
POST/servers/{uuid}/registries/{registry}/checkTarkista, että palvelimen tallennettu kirjautuminen rekisteriin toimii yhä.
GET/servers/{uuid}/resourcesHae palvelimen resurssit.
GET/servers/{uuid}/sentinelHae Sentinel-asetukset palvelimelle, jonka omistaa tunnistautunut tiimi.
PATCH/servers/{uuid}/sentinel+14 valinnaistaPäivitä Sentinel-asetukset palvelimelle, jonka omistaa tunnistautunut tiimi.

Jaetut muuttujat#

MetodiPolkuRunko / kyselyMitä se tekee
GET/projects/{uuid}/environments/{environment_name_or_uuid}/envsListaa projektin ympäristön jaetut ympäristömuuttujat (type=environment).
POST/projects/{uuid}/environments/{environment_name_or_uuid}/envsLuo projektin ympäristölle jaettu ympäristömuuttuja (type=environment).
PATCH/projects/{uuid}/environments/{environment_name_or_uuid}/envs/{env_id}Päivitä ympäristön jaettu ympäristömuuttuja id:n perusteella.
DELETE/projects/{uuid}/environments/{environment_name_or_uuid}/envs/{env_id}Poista ympäristön jaettu ympäristömuuttuja id:n perusteella.
GET/projects/{uuid}/envsListaa projektin jaetut ympäristömuuttujat (type=project).
POST/projects/{uuid}/envsLuo projektille jaettu ympäristömuuttuja (type=project).
PATCH/projects/{uuid}/envs/{env_id}Päivitä projektin jaettu ympäristömuuttuja id:n perusteella.
DELETE/projects/{uuid}/envs/{env_id}Poista projektin jaettu ympäristömuuttuja id:n perusteella.
GET/servers/{uuid}/envsListaa palvelimen jaetut ympäristömuuttujat (type=server).
POST/servers/{uuid}/envsLuo palvelimelle jaettu ympäristömuuttuja (type=server).
PATCH/servers/{uuid}/envs/{env_id}Päivitä palvelimen jaettu ympäristömuuttuja id:n perusteella.
DELETE/servers/{uuid}/envs/{env_id}Poista palvelimen jaettu ympäristömuuttuja id:n perusteella.
GET/team/envsListaa nykyisen tiimin jaetut ympäristömuuttujat (type=team).
POST/team/envskey, +5 valinnaistaLuo nykyiselle tiimille jaettu ympäristömuuttuja (type=team).
PATCH/team/envs/{env_id}Päivitä tiimin jaettu ympäristömuuttuja id:n perusteella.
DELETE/team/envs/{env_id}Poista tiimin jaettu ympäristömuuttuja id:n perusteella.

Tiimit#

MetodiPolkuRunko / kyselyMitä se tekee
GET/teamHae API-tunnukseen sidottu tiimi.
PATCH/teamis_build_server_fallback_enabledPäivitä API-tunnukseen sidotun tiimin asetukset.
GET/team/membersHae API-tunnukseen sidotun tiimin jäsenet.
GET/teamsHae kaikki tiimit.
GET/teams/{id}Hae tiimi TeamId:n perusteella.
GET/teams/{id}/membersHae jäsenet TeamId:n perusteella.

Tarkastusloki#

MetodiPolkuRunko / kyselyMitä se tekee
GET/audit-events?per_page, ?page, ?search, ?action, …Listaa tiimin tarkastustapahtumat.

Kohteet#

MetodiPolkuRunko / kyselyMitä se tekee
GET/destinationsListaa kaikki tunnistautuneen tiimin Docker-verkkokohteet.
GET/destinations/{uuid}Hae Docker-verkkokohde UUID:n perusteella.
PATCH/destinations/{uuid}+1 valinnainenPäivitä Docker-verkkokohteen nimi.
DELETE/destinations/{uuid}Poista käyttämätön Docker-verkkokohde.
GET/servers/{server_uuid}/destinationsListaa Docker-verkkokohteet, jotka on liitetty tunnistautuneen tiimin omistamaan palvelimeen.
POST/servers/{server_uuid}/destinationsnetwork, +2 valinnaistaLuo Docker-verkkokohde palvelimelle, jonka omistaa tunnistautunut tiimi.

Ajastetut tehtävät#

MetodiPolkuRunko / kyselyMitä se tekee
GET/applications/{uuid}/scheduled-tasksListaa sovelluksen kaikki ajastetut tehtävät.
POST/applications/{uuid}/scheduled-tasksname, command, frequency, +3 valinnaistaLuo sovellukselle uusi ajastettu tehtävä.
PATCH/applications/{uuid}/scheduled-tasks/{task_uuid}+6 valinnaistaPäivitä sovelluksen ajastettu tehtävä.
DELETE/applications/{uuid}/scheduled-tasks/{task_uuid}Poista sovelluksen ajastettu tehtävä.
POST/applications/{uuid}/scheduled-tasks/{task_uuid}/executeLaita sovelluksen ajastettu tehtävä jonoon suoritettavaksi heti.
GET/applications/{uuid}/scheduled-tasks/{task_uuid}/executionsListaa sovelluksen ajastetun tehtävän kaikki suoritukset.
GET/services/{uuid}/scheduled-tasksListaa palvelun kaikki ajastetut tehtävät.
POST/services/{uuid}/scheduled-tasksname, command, frequency, +3 valinnaistaLuo palvelulle uusi ajastettu tehtävä.
PATCH/services/{uuid}/scheduled-tasks/{task_uuid}+6 valinnaistaPäivitä palvelun ajastettu tehtävä.
DELETE/services/{uuid}/scheduled-tasks/{task_uuid}Poista palvelun ajastettu tehtävä.
POST/services/{uuid}/scheduled-tasks/{task_uuid}/executeLaita palvelun ajastettu tehtävä jonoon suoritettavaksi heti.
GET/services/{uuid}/scheduled-tasks/{task_uuid}/executionsListaa palvelun ajastetun tehtävän kaikki suoritukset.

Tunnisteet#

MetodiPolkuRunko / kyselyMitä se tekee
GET/tagsListaa nykyisen tiimin kaikki tunnisteet.
POST/tagsnameLuo tunniste nykyiselle tiimille.
PATCH/tags/{uuid}namePäivitä nykyisen tiimin tunnisteen nimi.
DELETE/tags/{uuid}Poista nykyisen tiimin tunniste.

Resurssit#

MetodiPolkuRunko / kyselyMitä se tekee
GET/resourcesHae kaikki resurssit.

Salaisuuksien hallinta#

MetodiPolkuRunko / kyselyMitä se tekee
PATCH/applications/{uuid}/secret-managerintegration_token_uuid, +1 valinnainenMääritä sovelluksen käyttämä salaisuuksien hallinnan lähde.
POST/security/integration-tokensprovider, name, token, +1 valinnainenLuo ja vahvista Doppler-, Infisical- tai Vault-integraatiotunnus.

Cloud-init-skriptit#

MetodiPolkuRunko / kyselyMitä se tekee
GET/cloud-init-scriptsListaa kaikki tunnistautuneen tiimin cloud-init-skriptit.
POST/cloud-init-scriptsname, scriptLuo uusi cloud-init-skripti tunnistautuneelle tiimille.
GET/cloud-init-scripts/{uuid}Hae cloud-init-skripti UUID:n perusteella.
PATCH/cloud-init-scripts/{uuid}+2 valinnaistaPäivitä cloud-init-skripti UUID:n perusteella.
DELETE/cloud-init-scripts/{uuid}Poista cloud-init-skripti UUID:n perusteella.

Tietokannat (vanha tapa)#

Sovelluspalvelimille luodut tietokannat ajalta ennen hallinnoituja tietokantoja. Uudet tietokannat ovat hallinnoituja tietokantoja.

MetodiPolkuRunko / kyselyMitä se tekee
GET/databasesListaa kaikki tietokannat.
GET/databases/{uuid}Hae tietokanta UUID:n perusteella.
PATCH/databases/{uuid}+46 valinnaistaPäivitä tietokanta UUID:n perusteella.
DELETE/databases/{uuid}?delete_configurations, ?delete_volumes, ?docker_cleanup, ?delete_connected_networksPoista tietokanta UUID:n perusteella.
GET/databases/{uuid}/backupsHae varmuuskopioiden tiedot tietokannan UUID:n perusteella.
POST/databases/{uuid}/backupsfrequency, +14 valinnaistaLuo tietokannalle uusi ajastettu varmuuskopiomääritys
PATCH/databases/{uuid}/backups/{scheduled_backup_uuid}+15 valinnaistaPäivitä tietyn tietokannan tietty varmuuskopiomääritys, joka yksilöidään sen UUID:llä ja varmuuskopion ID:llä
DELETE/databases/{uuid}/backups/{scheduled_backup_uuid}?delete_s3Poistaa varmuuskopiomäärityksen ja kaikki sen suoritukset.
GET/databases/{uuid}/backups/{scheduled_backup_uuid}/executionsHae tietyn varmuuskopiomäärityksen kaikki suoritukset.
DELETE/databases/{uuid}/backups/{scheduled_backup_uuid}/executions/{execution_uuid}?delete_s3Poistaa tietyn varmuuskopion suorituksen.
GET/databases/{uuid}/envsListaa kaikki ympäristömuuttujat tietokannan UUID:n perusteella.
POST/databases/{uuid}/envs+5 valinnaistaLuo ympäristömuuttuja tietokannan UUID:n perusteella.
PATCH/databases/{uuid}/envskey, value, +3 valinnaistaPäivitä ympäristömuuttuja tietokannan UUID:n perusteella.
PATCH/databases/{uuid}/envs/bulkdataPäivitä useita ympäristömuuttujia tietokannan UUID:n perusteella.
DELETE/databases/{uuid}/envs/{env_uuid}Poista ympäristömuuttuja UUID:n perusteella.
GET/databases/{uuid}/logs?lines, ?show_timestampsHae tietokannan lokit UUID:n perusteella.
POST/databases/{uuid}/restartKäynnistä tietokanta uudelleen.
POST/databases/{uuid}/startKäynnistä tietokanta.
POST/databases/{uuid}/stop?docker_cleanupPysäytä tietokanta.
GET/databases/{uuid}/storagesListaa kaikki pysyvät tallennustilat ja tiedostotallennukset tietokannan UUID:n perusteella.
POST/databases/{uuid}/storagestype, mount_path, +4 valinnaistaLuo tietokannalle pysyvä tallennustila tai tiedostotallennus.
PATCH/databases/{uuid}/storagestype, +6 valinnaistaPäivitä pysyvä tallennustila tai tiedostotallennus tietokannan UUID:n perusteella.
DELETE/databases/{uuid}/storages/{storage_uuid}Poista pysyvä tallennustila tai tiedostotallennus tietokannan UUID:n perusteella.
PUT/databases/{uuid}/storages/{storage_uuid}/backupsfrequency, +12 valinnaistaLuo tai korvaa tietokannan pysyvän taltion tai hakemistotallennuksen varmuuskopioaikataulu.
DELETE/databases/{uuid}/storages/{storage_uuid}/backupsPoista tietokannan tallennustilan varmuuskopioaikataulu sekä sen paikalliset ja S3-arkistot.
POST/databases/{uuid}/storages/{storage_uuid}/backups/runLaita jonoon välitön taltion varmuuskopio tietokannan tallennustilalle, jolla on aikataulu.
GET/databases/{uuid}/tagsListaa tietokannan tunnisteet UUID:n perusteella.
POST/databases/{uuid}/tags+2 valinnaistaLisää tunnisteita tietokantaan UUID:n perusteella.
DELETE/databases/{uuid}/tags/{tag_uuid}Poista tunniste tietokannasta UUID:n perusteella.

GitHub-sovellukset#

MetodiPolkuRunko / kyselyMitä se tekee
GET/github-appsListaa kaikki GitHub-sovellukset.
POST/github-appsname, html_url, app_id, installation_id, client_id, client_secret, private_key_uuid, +6 valinnaistaLuo uusi GitHub-sovellus.
PATCH/github-apps/{github_app_id}+13 valinnaistaPäivitä olemassa oleva GitHub-sovellus.
DELETE/github-apps/{github_app_id}Poista GitHub-sovellus, jos mikään sovellus ei käytä sitä.
GET/github-apps/{github_app_id}/repositoriesHae annetun GitHub-sovelluksen repositoriot GitHubista.
GET/github-apps/{github_app_id}/repositories/{owner}/{repo}/branchesHae annetun repositorion haarat GitHubista.

GitLab-sovellukset#

MetodiPolkuRunko / kyselyMitä se tekee
GET/gitlab-appsListaa kaikki nykyisen tiimin GitLab-sovellukset (ja koko järjestelmän lähteet).
POST/gitlab-appsname, html_url, +9 valinnaistaLuo uusi GitLab-sovellus (OAuth-lähde).
PATCH/gitlab-apps/{gitlab_app_id}+11 valinnaistaPäivitä olemassa oleva GitLab-sovellus.
DELETE/gitlab-apps/{gitlab_app_id}Poista GitLab-sovellus, jos mikään sovellus ei käytä sitä.

Tallennustaltiot#

MetodiPolkuRunko / kyselyMitä se tekee
GET/hostwolf/servers/{uuid}/volumesJonkin ostamasi palvelimen tallennustaltiot (myös siitä irrottamasi taltiot) kokoineen, käyttöasteineen, varmuuskopioineen ja hintoineen.
POST/hostwolf/servers/{uuid}/volumessize_gb, +3 valinnaistaLisää sovelluspalvelimeen tai VPS:ään lohkotallennustaltion (10-1000 Gt), joka liitetään polkuun /mnt/volume- noin minuutissa.
GET/hostwolf/servers/{uuid}/volumes/offer?size_gbVoiko tähän palvelimeen lisätä taltioita, sen kaupungissa sallitut koot ja koon (size_gb) hinta varmuuskopioiden kanssa tai ilman.
GET/hostwolf/servers/{uuid}/volumes/{volume}Hae taltio
PATCH/hostwolf/servers/{uuid}/volumes/{volume}+4 valinnaistaSuurenna sitä (size_gb; taltiot eivät koskaan pienene), ota öiset varmuuskopiot käyttöön tai pois käytöstä tai aseta automaattisen kasvun raja.
DELETE/hostwolf/servers/{uuid}/volumes/{volume}Poistaa taltion liitoksen ja poistaa taltion tiedostoineen.
POST/hostwolf/servers/{uuid}/volumes/{volume}/backupsKäynnistää varmuuskopion heti, öisen lisäksi.
POST/hostwolf/servers/{uuid}/volumes/{volume}/detachPoistaa taltion liitoksen ja irrottaa sen palvelimesta.
POST/hostwolf/servers/{uuid}/volumes/{volume}/restorebackup_id, target, +1 valinnainenPalauttaa varmuuskopion itse taltioon (target: same: varmuuskopion jälkeen kirjoitetut tiedostot poistetaan, eikä taltio ole sillä aikaa käytettävissä) tai uuteen samankokoiseen taltioon…
GET/hostwolf/volumes?statusTiimisi kaikki taltiot: liitetyt, itse irrottamasi sekä poistettujen palvelinten taltiot, joita säilytetään 7 päivää (kept_until).
GET/hostwolf/volumes/{volume}Yksi taltio id:n perusteella, liitetty tai irrotettu.
DELETE/hostwolf/volumes/{volume}Poistaa irrotetun taltion ja sen tiedostot heti (eikä vasta 7 päivän kuluttua).
POST/hostwolf/volumes/{volume}/attachserver_uuid, +1 valinnainenLiittää irrotetun taltion (jonka irrotit itse tai joka säilytettiin palvelimen poistamisen jälkeen) johonkin valmiista palvelimistasi samassa kaupungissa; se liitetään samaan polkuun noin minuutissa.
GET/hostwolf/volumes/{volume}/backupsPalautettavissa olevat varmuuskopiot, uusin ensin (öisin, säilytetään 7 päivää).
POST/hostwolf/volumes/{volume}/restorebackup_id, server_uuid, +1 valinnainenPalauttaa irrotetun taltion varmuuskopion uuteen taltioon jollakin palvelimistasi samassa kaupungissa (laskutetaan kuten mikä tahansa taltio, joten "confirm": true tarvitaan).

Ilmoitukset#

MetodiPolkuRunko / kyselyMitä se tekee
GET/notifications/discordHae nykyisen tiimin Discord-ilmoitusasetukset.
PATCH/notifications/discordPäivitä nykyisen tiimin Discord-ilmoitusasetukset.
GET/notifications/emailHae nykyisen tiimin sähköposti-ilmoitusasetukset, mukaan lukien smtp_ehlo_domain, SMTP EHLO:n mukana lähetettävä isäntänimi.
PATCH/notifications/emailPäivitä nykyisen tiimin sähköposti-ilmoitusasetukset.
GET/notifications/pushoverHae nykyisen tiimin Pushover-ilmoitusasetukset.
PATCH/notifications/pushoverPäivitä nykyisen tiimin Pushover-ilmoitusasetukset.
GET/notifications/slackHae nykyisen tiimin Slack-ilmoitusasetukset.
PATCH/notifications/slackPäivitä nykyisen tiimin Slack-ilmoitusasetukset.
GET/notifications/telegramHae nykyisen tiimin Telegram-ilmoitusasetukset.
PATCH/notifications/telegramPäivitä nykyisen tiimin Telegram-ilmoitusasetukset.
GET/notifications/webhookHae nykyisen tiimin webhook-ilmoitusasetukset.
PATCH/notifications/webhookPäivitä nykyisen tiimin webhook-ilmoitusasetukset.

S3-tallennukset#

MetodiPolkuRunko / kyselyMitä se tekee
GET/s3-storagesListaa kaikki tunnistautuneen tiimin S3-tallennukset.
POST/s3-storagesname, endpoint, bucket, region, key, secret, +2 valinnaistaLuo uusi S3-tallennusmääritys tunnistautuneelle tiimille.
GET/s3-storages/{uuid}Hae S3-tallennus UUID:n perusteella.
PATCH/s3-storages/{uuid}+8 valinnaistaPäivitä S3-tallennus UUID:n perusteella.
DELETE/s3-storages/{uuid}Poista S3-tallennus UUID:n perusteella.
POST/s3-storages/{uuid}/validateVahvista S3-tallennuksen yhteys ListObjectsV2:n avulla.

Deploy-avaimet#

MetodiPolkuRunko / kyselyMitä se tekee
GET/security/keysListaa kaikki yksityiset avaimet.
POST/security/keysprivate_key, +2 valinnaistaLuo uusi yksityinen avain.
GET/security/keys/{uuid}Hae avain UUID:n perusteella.
PATCH/security/keys/{uuid}private_key, +2 valinnaistaPäivitä yksityinen avain.
DELETE/security/keys/{uuid}Poista yksityinen avain.

Palvelukontit#

MetodiPolkuRunko / kyselyMitä se tekee
GET/services/{uuid}/applicationsListaa yksittäisen palvelun compose-palvelusovellukset (kontit).
GET/services/{uuid}/applications/{app_uuid}Hae yksittäinen compose-palvelun sovellus palvelun UUID:n ja sovelluksen UUID:n perusteella.
PATCH/services/{uuid}/applications/{app_uuid}+11 valinnaista, ?force_domain_overridePäivitä compose-palvelun sovelluksen kenttiä.
GET/services/{uuid}/applications/{app_uuid}/logs?linesHae yksittäisen compose-palvelukontin Docker-lokit.
POST/services/{uuid}/applications/{app_uuid}/logs?linesHae yksittäisen compose-palvelukontin Docker-lokit.
POST/services/{uuid}/applications/{app_uuid}/restartKäynnistää yksittäisen compose-palvelukontin uudelleen.
POST/services/{uuid}/applications/{app_uuid}/start?force, ?latestAjaa docker compose up -komennon yksittäiselle compose-palvelulle (no-deps), halutessa hakien konttikuvan ja tehden uuden buildin.
POST/services/{uuid}/applications/{app_uuid}/stopPysäyttää yksittäisen compose-palvelukontin.

Palvelujen tietokannat#

MetodiPolkuRunko / kyselyMitä se tekee
GET/services/{uuid}/databasesListaa yksittäisen palvelun compose-tietokannat.
GET/services/{uuid}/databases/{database_uuid}Hae compose-tietokanta palvelun UUID:n ja tietokannan UUID:n perusteella.
PATCH/services/{uuid}/databases/{database_uuid}+8 valinnaistaPäivitä compose-palvelun tietokannan muokattavia kenttiä.
POST/services/{uuid}/databases/{database_uuid}/importsTuo palvelun tietokannan varmuuskopio
POST/services/{uuid}/databases/{database_uuid}/imports/uploadsLähetä palvelun tietokannan tuontitiedosto
GET/services/{uuid}/databases/{database_uuid}/imports/{activity_id}Hae palvelun tietokantatuonnin tila
GET/services/{uuid}/databases/{database_uuid}/logs?linesHae compose-tietokantakontin Docker-lokit.
POST/services/{uuid}/databases/{database_uuid}/restartKäynnistä compose-tietokantakontti uudelleen.
POST/services/{uuid}/databases/{database_uuid}/start?force, ?latestAja docker compose up yksittäiselle compose-tietokannalle.
POST/services/{uuid}/databases/{database_uuid}/stopPysäytä compose-tietokantakontti.

Palvelut#

Yhden napsautuksen palvelut (Docker Compose -mallit) sovelluspalvelimillasi.

MetodiPolkuRunko / kyselyMitä se tekee
GET/servicesListaa kaikki palvelut.
POST/servicesserver_uuid, project_uuid, +12 valinnaistaLuo yhden napsautuksen / mukautettu palvelu
GET/services/{uuid}Hae palvelu UUID:n perusteella.
PATCH/services/{uuid}+8 valinnaistaPäivitä palvelu UUID:n perusteella.
DELETE/services/{uuid}?delete_configurations, ?delete_volumes, ?docker_cleanup, ?delete_connected_networks, …Poista palvelu UUID:n perusteella.
POST/services/{uuid}/clonedestination_uuid, +2 valinnaistaKloonaa palvelu kohteeseen, jonka omistaa tunnistautunut tiimi.
GET/services/{uuid}/envsListaa kaikki ympäristömuuttujat palvelun UUID:n perusteella.
POST/services/{uuid}/envs+6 valinnaistaLuo ympäristömuuttuja palvelun UUID:n perusteella.
PATCH/services/{uuid}/envskey, value, +4 valinnaistaPäivitä ympäristömuuttuja palvelun UUID:n perusteella.
PATCH/services/{uuid}/envs/bulkdataPäivitä useita ympäristömuuttujia palvelun UUID:n perusteella.
DELETE/services/{uuid}/envs/{env_uuid}Poista ympäristömuuttuja UUID:n perusteella.
GET/services/{uuid}/logs?sub_service_name, ?lines, ?show_timestampsHae palvelun tietyn aliresurssin lokit palvelun UUID:n perusteella.
POST/services/{uuid}/migratedestination_uuid, +1 valinnainenSiirrä palvelu toiseen kohteeseen/palvelimelle, jonka omistaa tunnistautunut tiimi.
POST/services/{uuid}/moveenvironment_uuidSiirrä palvelu toiseen projektiin/ympäristöön.
POST/services/{uuid}/restart?latestKäynnistä palvelu uudelleen.
POST/services/{uuid}/startKäynnistä palvelu.
POST/services/{uuid}/stop?docker_cleanupPysäytä palvelu.
GET/services/{uuid}/storagesListaa kaikki pysyvät tallennustilat ja tiedostotallennukset palvelun UUID:n perusteella.
POST/services/{uuid}/storagestype, mount_path, resource_uuid, +4 valinnaistaLuo palvelun aliresurssille pysyvä tallennustila tai tiedostotallennus.
PATCH/services/{uuid}/storagestype, +6 valinnaistaPäivitä pysyvä tallennustila tai tiedostotallennus palvelun UUID:n perusteella.
DELETE/services/{uuid}/storages/{storage_uuid}Poista pysyvä tallennustila tai tiedostotallennus palvelun UUID:n perusteella.
PUT/services/{uuid}/storages/{storage_uuid}/backupsfrequency, +12 valinnaistaLuo tai korvaa palvelun pysyvän taltion tai hakemistotallennuksen varmuuskopioaikataulu.
DELETE/services/{uuid}/storages/{storage_uuid}/backupsPoista palvelun tallennustilan varmuuskopioaikataulu sekä sen paikalliset ja S3-arkistot.
POST/services/{uuid}/storages/{storage_uuid}/backups/runLaita jonoon välitön taltion varmuuskopio palvelun tallennustilalle, jolla on aikataulu.
GET/services/{uuid}/tagsListaa palvelun tunnisteet UUID:n perusteella.
POST/services/{uuid}/tags+2 valinnaistaLisää tunnisteita palveluun UUID:n perusteella.
DELETE/services/{uuid}/tags/{tag_uuid}Poista tunniste palvelusta UUID:n perusteella.

Terveys ja versio#

MetodiPolkuRunko / kyselyMitä se tekee
GET/healthTerveystarkistuksen päätepiste.
GET/versionHae Hostwolfin versio.

Palvelinten suurennukset#

Pyydä tarjous suuremmasta koosta kutsulla POST /servers/{uuid}/resize ja rungolla {"size":"m"}. UUID on ostetun sovelluspalvelimen tai VPS:n tunniste; sovelluspalvelimilla myös palvelimen UUID käy. Tarjous palauttaa koodin 200 sekä uuden kuukausihinnan, hintaeron, arvioidun käyttökatkon ja levytiedot. Palvelin ei vielä muutu.

Vahvista rungolla {"size":"m","confirm":true} ja otsakkeella Idempotency-Key. Tallenna yksi UUID vahvistusta varten ja käytä sitä uudelleen uusintayrityksissä. Vastaus on 202 ja toiminnon tunniste. Koko, jota ei ole saatavilla, tai varattu palvelin palauttaa koodin 409; toisen tiimin palvelin palauttaa koodin 404.

Palvelimen sijainti, IP, lisälevyt ja sovellusrekisteröinti säilyvät. Tila on resizing, kunnes suurennus ja laskutuksen päivitys valmistuvat. Uusi hinta alkaa valmistumisesta; suhteutettu hinnanmuutos näkyy seuraavassa laskussa.

SDK-versiossa 0.2.2 saat tarjouksen kutsulla servers.resize(uuid, 'm') ja vahvistat sen asetuksella {confirm:true, idempotencyKey:key}. MCP-työkalu on resize_server. Tätä korjausversiota ei ole vielä julkaistu.

Jumissa, tai puuttuuko päätepiste? Kerro meille osoitteessa app.hostwolf.net/contact tai [email protected].