Skip to content
Comfort

API for Developers

Status of 85 services in Russia in JSON format — the same data shown on the website. No API key or registration required, accessible directly from the browser.

  • No key required
  • JSON in UTF-8
  • CORS for any website
  • Updated every 5 minutes

Quick start

A single request provides the status of all services. The response is plain JSON, and the updated field tells you how fresh the data is.

curl -s https://comfort.stream/api/v1/status

curl -s https://comfort.stream/api/v1/status/telegram

All services

A brief status for each service in the catalogue.

GEThttps://comfort.stream/api/v1/status

Sample responsesample values
{
  "updated": 1790000000,
  "services": [
    {
      "slug": "vk",
      "name": "ВКонтакте",
      "color": "ok",
      "code": "ok",
      "live": false
    },
    {
      "slug": "telegram",
      "name": "Telegram",
      "color": "warn",
      "code": "spike",
      "live": true
    },
    {
      "slug": "sberbank",
      "name": "Сбербанк Онлайн",
      "color": "ok",
      "code": "ok",
      "live": false
    }
  ]
}
Response fields
FieldTypeDescription
updatednumberTimestamp of the last check run in Unix seconds (UTC)
services[].slugstringShort name of the service, matching the status page URL
services[].namestringService name in Russian
services[].colorstringStatus colour: ok, warn, bad, or none
services[].codestringVerdict code — what is happening exactly, see table below
services[].livebooleantrue — recent check failure or report spike right now; false — persistent state

Single service

The status of a single service and report counts over the past hour and 24 hours. Replace slug with the short name from the list at the bottom of the page.

GEThttps://comfort.stream/api/v1/status/<slug>

Unknown slug returns a 404 status code.

Sample responsesample values
{
  "slug": "telegram",
  "name": "Telegram",
  "color": "warn",
  "code": "spike",
  "live": true,
  "since": 1789998200,
  "reportsHour": 214,
  "reportsDay": 1387
}
Response fields
FieldTypeDescription
slugstringShort name of the service, matching the status page URL
namestringService name in Russian
colorstringStatus colour: ok, warn, bad, or none
codestringVerdict code — what is happening exactly, see table below
livebooleantrue — recent check failure or report spike right now; false — persistent state
sincenumber | nullTimestamp when current check state began, Unix seconds
reportsHournumberReports in the last hour
reportsDaynumberReports in the last 24 hours

Colors and codes

color is for status lights, code is for the exact status. See how each code appears on the site in the "Label" column.

codecolorLabel on siteWhen it occurs
okokWorkingEverything is working
failbadOutage: does not openChecks fail — ongoing outage right now
fail_longbadDoes not open from RussiaChecks have been failing for over 24 hours
errbadService-side outageService returns a 5xx error — issue on their end
restricted_failbadDoes not open in RussiaChecks from Moscow fail, access is restricted in Russia
restrictedbadAccess restricted in RussiaAccess is restricted in Russia, but the service itself is working
slowwarnWorking slowlyService response is slow
partialwarnWorking intermittentlySome service endpoints are not responding
spikewarnRising number of reportsSharp increase in user reports
slowed_ruwarnWorking slowlyReportedly slowed down in Russia
partial_ruwarnWorking partiallyReportedly working partially in Russia
providerwarnService-side restrictionsRestrictions imposed by the service itself: payments, region
nonenoneNo recent dataNo recent checks
  • ok — operational
  • warn — issues detected
  • bad — down
  • none — no data

Monitoring badges

Add your website to monitoring in your account — we check it every 5 minutes from Moscow. Enabling a public page for the monitor generates a badge showing uptime percentage: you can embed it in a README or on your website.

GEThttps://comfort.stream/api/m/<id>/badge.svg

HTML
<a href="https://comfort.stream/m/k3f9q2x7">
  <img src="https://comfort.stream/api/m/k3f9q2x7/badge.svg" alt="uptime">
</a>
Markdown
[![uptime](https://comfort.stream/api/m/k3f9q2x7/badge.svg)](https://comfort.stream/m/k3f9q2x7)

The monitor id is available in your account on the site card. The badge updates every 5 minutes and works only while the public page is enabled.

Open dashboard

Rules

  1. 1No key required. A reasonable polling rate is no more than once per minute: data updates every 5 minutes anyway.
  2. 2Responses are cached for one minute (Cache-Control: max-age=60): frequent requests return cached data. If there are too many requests from a single IP, we may rate-limit them.
  3. 3If you display this data on your site, please provide a link to comfort.stream.
  4. 4Data is an estimate, not the official stance of the services. Do not base financial or security-critical decisions on it.

List of services

Click a name to open its status page.

85 services

slugServiceCategory
alfabankAlfa-BankBanking & payments
aliceAliceAI & neural nets
aliexpressAliExpressShopping & delivery
app-storeApp StoreSearch, email & clouds
avitoAvitoShopping & delivery
battle-netBattle.netGames
beelineBeelineTelecom & internet providers
chatgptChatGPTAI & neural nets
claudeClaudeAI & neural nets
copilotCopilotAI & neural nets
deepseekDeepSeekAI & neural nets
discordDiscordMessaging & calls
dns-shopDNSShopping & delivery
domruDom.ruTelecom & internet providers
dzenDzenSocial networks
epic-gamesEpic GamesGames
facebookFacebookSocial networks
faceitFACEITGames
facetimeFaceTimeMessaging & calls
gazprombankGazprombankBanking & payments
geminiGeminiAI & neural nets
gigachatGigaChatAI & neural nets
githubGitHubSearch, email & clouds
gmailGmailSearch, email & clouds
googleGoogleSearch, email & clouds
google-driveGoogle DriveSearch, email & clouds
google-playGoogle PlaySearch, email & clouds
gosuslugiGosuslugiPublic services & state
icloudiCloudSearch, email & clouds
instagramInstagramSocial networks
iviIviVideo & music
kinopoiskKinopoiskVideo & music
linkedinLinkedInSocial networks
mail-ruMail.ru EmailSearch, email & clouds
maxMAXMessaging & calls
megafonMegaFonTelecom & internet providers
midjourneyMidjourneyAI & neural nets
minecraftMinecraftGames
mos-ruMos.ruPublic services & state
mtsMTSTelecom & internet providers
nalogTax Service (FNS)Public services & state
okOdnoklassnikiSocial networks
okkoOkkoVideo & music
ozonOzonShopping & delivery
paypalPayPalBanking & payments
perplexityPerplexityAI & neural nets
pikabuPikabuSocial networks
pinterestPinterestSocial networks
playstationPlayStation NetworkGames
pochtaRussian PostPublic services & state
redditRedditSocial networks
robloxRobloxGames
rostelecomRostelecomTelecom & internet providers
rutubeRutubeVideo & music
rzdRZDPublic services & state
sberbankSberBank OnlineBanking & payments
sfrSocial Fund (SFR)Public services & state
signalSignalMessaging & calls
soundcloudSoundCloudVideo & music
spotifySpotifyVideo & music
steamSteamGames
t2T2Telecom & internet providers
tbankT-BankBanking & payments
telegramTelegramMessaging & calls
threadsThreadsSocial networks
tiktokTikTokVideo & music
twitchTwitchVideo & music
viberViberMessaging & calls
vkVKSocial networks
vk-videoVK VideoVideo & music
vtbVTB OnlineBanking & payments
whatsappWhatsAppMessaging & calls
wikipediaWikipediaSearch, email & clouds
wildberriesWildberriesShopping & delivery
winkWinkVideo & music
xX (Twitter)Social networks
xboxXboxGames
yandexYandexSearch, email & clouds
yandex-diskYandex DiskSearch, email & clouds
yandex-marketYandex MarketShopping & delivery
yandex-musicYandex MusicVideo & music
yoomoneyYooMoneyBanking & payments
yotaYotaTelecom & internet providers
youtubeYouTubeVideo & music
zoomZoomMessaging & calls

FAQ

Do I need an API key?

No. The API is open to everyone, no registration needed.

How often is data updated?

Automated checks run every 5 minutes; reports are counted immediately. Querying more than once a minute is unnecessary.

Can I query the API directly from a browser?

Yes. Responses include the Access-Control-Allow-Origin: * header, so fetch works from any website.