Julkaisun aikana sivusto voi palauttaa virheitä minuutin ajan. Kun aloitat huoltoikkunan putkestasi, sen valvontoja ei tarkisteta, häiriöitä ei avata eikä hälytyksiä lähetetä, eikä aikaa lasketa käytettävyyttä vastaan. Lopeta ikkuna, kun julkaisu on valmis, ja tarkistukset jatkuvat heti.
Ennen kuin aloitat
REST API sisältyy Professional- ja Business-paketteihin. Luo API-avain oikeudella Read & write kohdassa Settings › API ja tallenna se CI:si salaisuudeksi, tässä nimellä UPTIMECHECK_API_KEY.Selvitä keskeytettävien valvontojen tunnisteet. Jokainen alkaa mon_ ja on valvonnan sivun osoitteen viimeinen osa, tai listaa ne kaikki:
curl -sS https://app.uptimecheck.com/api/v1/monitors \
-H ”Authorization: Bearer $UPTIMECHECK_API_KEY” | jq -r ’.data[] | [.id, .name] | @tsv’
GitHub Actions
Tämä työnkulku aloittaa 30 minuutin ikkunan, julkaisee ja lopettaa ikkunan riippumatta siitä, onnistuiko julkaisu. Vaihda valvontojen tunnisteet ja julkaisuvaihe omiisi. Samat kaksi kutsua toimivat missä tahansa muussa CI:ssä.
name: Deploy
on:
push:
branches: [main]
jobs:
deploy:
runs-on: ubuntu-latest
env:
UPTIMECHECK_API_KEY: ${{ secrets.UPTIMECHECK_API_KEY }}
steps:
– uses: actions/checkout@v4
– name: Start maintenance
id: maintenance
run: |
body=$(jq -n \
–arg start ”$(date -u +%Y-%m-%dT%H:%M:%SZ)” \
–arg end ”$(date -u -d ”+30 minutes” +%Y-%m-%dT%H:%M:%SZ)” \
’{title: ”Deploying a new version”, startsAt: $start, endsAt: $end,
monitorIds: [”mon_9xk2m1q8w4”, ”mon_4t7p2k8d1z”]}’)
id=$(curl -sS -X POST https://app.uptimecheck.com/api/v1/maintenance \
-H ”Authorization: Bearer $UPTIMECHECK_API_KEY” \
-H ”Content-Type: application/json” \
-d ”$body” | jq -r ’.data.id // empty’)
echo ”id=$id” >> ”$GITHUB_OUTPUT”
– name: Deploy
run: ./deploy.sh
– name: End maintenance
if: always() && steps.maintenance.outputs.id != ”
run: |
curl -sS -X DELETE \
”https://app.uptimecheck.com/api/v1/maintenance/${{ steps.maintenance.outputs.id }}” \
-H ”Authorization: Bearer $UPTIMECHECK_API_KEY”
Jos Uptimecheckiin ei saada yhteyttä, julkaisu tehdään silti, ilman ikkunaa.
Kaksi kutsua
POST /api/v1/maintenance aloittaa tai ajastaa ikkunan. Lähetä title, startsAt ja endsAt ISO 8601 -aikoina, kuten 2026-10-18T14:00:00Z, sekä monitorIds. Menneisyyteen osuva alkuaika aloittaa ikkunan heti, ja ikkuna kestää enintään 14 päivää. Vastauksen data.id alkaa mw_.Valinnaiset kentät: message, joka näytetään tilasivuilla, ja notifySubscribers (false, ellet lähetä true), joka lähettää sähköpostin tilasivun tilaajille.DELETE /api/v1/maintenance/{id} lopettaa käynnissä olevan ikkunan heti tai peruu ikkunan, joka ei ole vielä alkanut. Se vastaa 204.
Hyvä tietää
Aseta endsAt hieman hitaimman julkaisusi jälkeen. Jos työ kaatuu ennen viimeistä vaihetta, ikkuna päättyy silti ajallaan.Tilasivut, jotka näyttävät nämä valvonnat, ilmoittavat ikkunan aikana Maintenance in progress ja listaavat sen otsikkoineen, samoin tilawidget. Valitse otsikko, jonka kävijät voivat nähdä.Häiriö, joka on avoinna ikkunan alkaessa, suljetaan, ja valvonta aloittaa alusta uudella tarkistuksella, kun ikkuna päättyy.Ikkunan aikana saapuvat cron-ajojen pingit kirjataan, mutta ne eivät muuta mitään, eikä ikkunan aikana puuttuva ping hälytä.API:lla voi myös keskeyttää ja jatkaa yksittäisiä valvontoja (POST /api/v1/monitors/{id}/pause ja /resume). Julkaisuun ikkuna on yksinkertaisempi, koska se päättyy itsestään.
Kaikki kentät löytyvät API-dokumentaatiosta. Jos haluat suunnitella ikkunat sovelluksessa, katso miten ajastat huoltoikkunan. Lisää REST API:sta.