Detector404 DETECTOR404 downtime detector
Tools
Sensors list
GeoPinger.net
Documentation Contacts
Детектор Сбоев Россия Детектор Сбоев Казахстан Детектор Сбоев Беларусь Детектор Сбоев Узбекистан Downtime Detector India Downtime Detector World
FAQ API Policy
  • What are the liability limits of Detector404?
  • What capabilities does the «Analytics» tool provide?
  • Can I compare my website with competitor websites?
  • Can I find out why a website is not working?
  • How can I find out about a spike in complaints on the site in real time?
  • What is response time?
  • What is resource unavailability?
  • What is the difference between the terms: fault, failure, defect, damage, and outage?
  • What website checks do you provide?
  • What notification methods are available?
  • What anti-fraud mechanisms are built into your platform?
  • Do you collect personal data in complaints?
  • Authentication
  • API limitations
  • /api/v1/whitelist
  • /api/v1/alerts
  • /api/v1/alerts/filtered
  • /api/v1/branches
  • /api/v1/services
  • /api/v1/services/branch/{branch}
  • /api/v1/service/{service}/alerts
  • /api/v1/service/{service}/alerts/filtered
  • /api/v1/service/{service}/comments/date/{date}
  • /api/v1/service/{service}/graph/date/{date}
  • /api/v1/service/{service}/stats/date/{date}
  • /api/v1/service/{service}/problems/date/{date}
  • /api/v1/service/{service}/status
  • /api/v1/service/{service}/urls
  • Terms of Use
  • Privacy Policy
  • Cookie Policy

Authentication

To use the API, you must have an active account in the system and an authorization token. The authorization token can be generated in the personal profile under the «API» section.

  1. Go to your user profile by clicking the user icon in the top right corner of the screen.
  2. In the opened menu «profile»; then, in the menu on the left, choose «API».
  3. Click the button «generate».
  4. Copy the obtained token

Using the generated token

The generated token must be included in the HTTP Authorization header for all API requests.

Authorization: Bearer wGGtaQVncybYmhbiAab9poccBWoU4n0c1H0ee2zVyICWEM7B9s0DFrzU

Example of a request to retrieve active events using the curl utility (please replace with your token):

curl --location 'https://detector404.com/api/v1/alerts' \ --header 'Authorization: Bearer wGGtaQVncybYmhbiAab9poccBWoU4n0c1H0ee2zVyICWEM7B9s0DFrzU'

API limitations

You can request data for a month, quarter, or year (depending on your account permissions). Request frequency to the API is subject to the following limitations:

  1. For obtaining information about IP addresses (geoip) — no more than 15 requests per second;
  2. For all other types of requests — no more than 20 requests per second.

"White list"

Method for obtaining the list of addresses from which detector404 performs availability checks

URL

/api/v1/whitelist

Method

GET

Description of the returned data

Success returns a JSON object with:

  • ip - IP address of the point;
  • city - location city of the point;
  • active - boolean value indicating whether the point is currently active.

Note

This method uses a separate authorization token, available to partners upon request.

Example

Request:

curl --location 'https://detector404.com/api/v1/whitelist' \ --header 'Authorization: Bearer wGGtaQVncybYmhbiAab9poccBWoU4n0c1H0ee2zVyICWEM7B9s0DFrzU'

Answer:

[ { "ip": "108.62.50.132", "city": "New York", "active": true }, { "ip": "130.117.76.67", "city": "Amsterdam", "active": true }, { "ip": "62.67.41.60", "city": "Frankfurt", "active": true } ]

Events

Method for retrieving current active events

URL

/api/v1/alerts

Method

GET

Description of the returned data

Success returns a JSON object with:

  • success - a boolean value indicating whether the request was successful;
  • error - optional: a string describing the error if success: false;
  • data - in case of a successful request (success: true), an array of data.

The data array consists of objects with the following required fields:

  • id - event identifier, an integer;
  • time - event start time, a string in ISO format;
  • type - event type, a string.

Possible event types and additional fields, specific to each type:

  • url - page unavailability, additional fields:

    • url - URL of the monitored page;
    • service - name of the service to which the page is assigned;
    • num - number of cities from which this page is inaccessible.
  • latency - significant response delay for a page from a specific provider in a particular city, with additional fields:

    • url - URL of the monitored page;
    • service - name of the service to which the page is assigned;
    • provider - provider through which the higher delay is observed;
    • place - city where the high delay is observed;
    • num - measurable delay value, in seconds.
  • isp - problems with the provider in the city, additional fields:

    • provider - provider through which a large number of inaccessible pages are observed;
    • place - city where this occurs;
    • num - number of inaccessible pages through the provider.
  • city - issues in the city, additional fields:

    • place - city where issues might occur;
    • num - number of other monitoring points from which the city is inaccessible.
  • complaints - surge in user complaints, additional fields:

    • service - name of the service that users are complaining about;
    • num - number of complaints received over the past 15 minutes.
  • function - certain service function has stopped working, with additional fields:

    • service - name of the service;
    • function - name of the function;
    • num - numerical identifier of the function.

Example

Request:

curl --location 'https://detector404.com/api/v1/alerts' \ --header 'Authorization: Bearer wGGtaQVncybYmhbiAab9poccBWoU4n0c1H0ee2zVyICWEM7B9s0DFrzU'

Answer:

{ "success": true, "data": [ { "id": 17112941194, "time": "2024-03-24T15:28:07.717409+00:00", "type": "complaints", "service": "Google", "num": 14 }, { "id": 17112941193, "time": "2024-03-24T15:28:07.717409+00:00", "type": "latency", "provider": "Singtel", "place": "Mumbai", "url": "https://google.com/", "service": "Google", "num": 11.794 }, { "id": 17112926215, "time": "2024-03-24T15:03:41.542004+00:00", "type": "url", "url": "https://twitch.tv", "service": "Twitch", "num": 5 } ] }

Response in case of an error:

``` { "success": false, "error": "An error occurred during the request execution; please check the parameters." }

```

Filtered Events

Method for obtaining current active events exceeding thresholds specified in the user's profile

URL

/api/v1/alerts/filtered

Method

GET

Description of the returned data

The only difference from the /alerts method is that it returns not all current events, but only those for which the value of the additional parameter num is no less than the threshold specified in the user's profile for that event type.

Success returns a JSON object with:

  • success - boolean value indicating whether the request was successful;
  • error - optional. A string describing the error if success: false;
  • data - in case of a successful request (success: true), an array of data.

The data array consists of objects with the following required fields:

  • id - event identifier, an integer;
  • time - event start time, a string in ISO format;
  • type - event type, a string.

Possible event types and additional fields, specific to each type:

  • url - page unavailability, additional fields:

    • url - URL of the monitored page;
    • service - name of the service to which the page is assigned;
    • num - number of cities from which this page is inaccessible.
  • latency - significant response delay of a page from a specific provider in a particular city, with additional fields:

    • url - URL of the monitored page;
    • service - name of the service to which the page is assigned;
    • provider - provider through which a significant delay is observed;
    • place - city where the large delay is observed;
    • num - measurable delay value, in seconds.
  • isp - problems with the provider in the city, with additional fields:

    • provider - provider through which a large number of inaccessible pages are observed;
    • place - city where this occurs;
    • num - number of pages inaccessible through the provider.
  • city - issues in the city, with additional fields:

    • place - city where issues might occur;
    • num - number of other monitoring points from which the city is inaccessible.
  • complaints - spike in user complaints, with additional fields:

    • service - name of the service users are complaining about;
    • num - number of complaints received in the last 15 minutes.
  • function - certain service function has stopped working, with additional fields:

    • service - name of the service;
    • function - name of the function;
    • num - numerical identifier of the function.

Example

Request:

curl --location 'https://detector404.com/api/v1/alerts/filtered' \ --header 'Authorization: Bearer wGGtaQVncybYmhbiAab9poccBWoU4n0c1H0ee2zVyICWEM7B9s0DFrzU'

Answer:

{ "success": true, "data": [ { "id": 17112941194, "time": "2024-03-24T15:28:07.717409+00:00", "type": "complaints", "service": "Google", "num": 14 }, { "id": 17112941193, "time": "2024-03-24T15:28:07.717409+00:00", "type": "latency", "provider": "Singtel", "place": "Mumbai", "url": "https://google.com/", "service": "Google", "num": 11.794 }, { "id": 17112926215, "time": "2024-03-24T15:03:41.542004+00:00", "type": "url", "url": "https://twitch.tv", "service": "Twitch", "num": 5 } ] }

Response in case of an error:

{ "success": false, "error": "An error occurred during the request execution; please check the parameters." }

Industries

Method for retrieving the list of industries in the service classification

URL

/api/v1/branches

Method

GET

Description of the returned data

Success returns a JSON object with:

  • success - boolean value indicating the success of the request;
  • error - optional. A string describing the error if success: false;
  • data - in the case of a successful request (success: true), an array of strings containing industry names.

Example

Request:

curl --location 'https://detector404.com/api/v1/branches' \ --header 'Authorization: Bearer wGGtaQVncybYmhbiAab9poccBWoU4n0c1H0ee2zVyICWEM7B9s0DFrzU'

Answer:

{ "success": true, "data": [ "Popular", "Telecom", "Chats", "Finances", "IT", "VPN", "Travel", "Games", "Education" ] }

Response in case of an error:

{ "success": false, "error": "An error occurred during the request execution; please check the parameters." }

Services

Method for retrieving the list of services

URL

/api/v1/services

Method

GET

Description of the returned data

Success returns a JSON object with:

  • success - boolean value indicating the success of the request;
  • error - optional. A string describing the error if success: false;
  • data - in case of a successful request (success: true), an array of data.

The data array consists of objects with the following required fields:

  • name - name of the service;
  • urlname - special name of the service, permissible in a URI;/li
  • ecosystem - name of the ecosystem to which it belongs, or null;
  • urls - number of URLs being monitored that are associated with the service;
  • brunches - array of industry names to which the service is assigned.

Example

Request:

curl --location 'https://detector404.com/api/v1/services' \ --header 'Authorization: Bearer wGGtaQVncybYmhbiAab9poccBWoU4n0c1H0ee2zVyICWEM7B9s0DFrzU'

Answer:

{ "success": true, "data": [ { "name": "Telegram", "urlname": "telegram", "ecosystem": null, "urls": 7, "branches": [ "Chats" ] }, { "name": "Binance", "urlname": "binance", "ecosystem": null, "urls": 1, "branches": [ "Finances" ] } ] }

Response in case of an error:

{ "success": false, "error": "An error occurred during the request execution; please check the parameters." }

Industry Services

Method for obtaining the list of services within a specific industry

URL

/api/v1/services/branch/{branch}

Substitutable values:

  • {branch} - industry name, the services associated with which are being requested.

Method

GET

Description of the returned data

Success returns a JSON object with:

  • success - boolean value indicating the success of the request;
  • error - optional. A string describing the error if success: false;
  • data - in case of a successful request (success: true), an array of data.

The data array consists of objects with the following required fields:

  • name - name of the service;
  • urlname - specific service name, permissible in a URI;
  • ecosystem - name of the ecosystem to which it belongs, or null;
  • urls - number of URLs being monitored that are associated with the service and the specified industry.

Example

Request:

curl --location 'https://detector404.com/api/v1/services/branch/Chats' \ --header 'Authorization: Bearer wGGtaQVncybYmhbiAab9poccBWoU4n0c1H0ee2zVyICWEM7B9s0DFrzU'

Answer:

{ "success": true, "data": [ { "name": "Telegram", "urlname": "telegram", "ecosystem": null, "urls": 7 }, { "name": "Zoom", "urlname": "zoom", "ecosystem": null, "urls": 1 } ] }

Response in case of an error:

{ "success": false, "error": "An error occurred during the request execution; please check the parameters." }

Service Events

Method for obtaining current service events based on monitoring data

URL

/api/v1/service/{service}/alerts

Substitutable value:

  • {service} - name of the service for which data is being requested;

Method

GET

Description of the returned data

Success returns a JSON object with:

  • success - boolean value indicating the success of the request;
  • error - optional. A string describing the error if success: false;
  • data - in case of a successful request (success: true), an array of data.

The data array consists of objects with the following required fields:

  • id - event identifier, an integer;
  • time - event start time, a string in ISO format;
  • type - event type, a string.

Possible event types and additional fields, specific to each type:

  • url - page unavailability, additional fields:

    • url - URL of the monitored page;
    • service - name of the service to which the page is assigned;
    • num - number of cities from which this page is inaccessible.
  • latency - significant response delay of a webpage from a specific provider in a particular city, with additional fields:

    • url - URL of the monitored page;
    • service - name of the service to which the page is assigned;
    • provider - provider through which a significant delay is observed;
    • place - city where the large delay is observed;
    • num - measurable delay value, in seconds.
  • isp - issues with the provider in the city (applicable if the service is a communication provider), with additional fields:

    • provider - provider through which a large number of inaccessible pages are observed;
    • place - city where this occurs;
    • num - the number of pages inaccessible through the provider.
  • complaints - spike in user complaints, with additional fields:

    • service - name of the service users are complaining about;
    • num - number of complaints received in the last 15 minutes.
  • function - certain service function has stopped working, with additional fields:

    • service - name of the service;
    • function - name of the function;
    • num - numerical identifier of the function.

Example

Request:

curl --location 'https://detector404.com/api/v1/service/google/alerts' \ --header 'Authorization: Bearer wGGtaQVncybYmhbiAab9poccBWoU4n0c1H0ee2zVyICWEM7B9s0DFrzU'

Answer:

{ "success": true, "data": [ { "id": 17350524178, "time": "2024-12-24T14:02:52.724695+00:00", "type": "url", "url": "https://www.google.com", "service": "Google", "place": "com", "num": 31, "private": false }, { "id": 17350524134, "time": "2024-12-24T14:02:15.269713+00:00", "type": "latency", "provider": "Vodafone", "place": "Frankfurt", "url": "https://www.google.com", "service": "Google", "num": 0.658, "private": false }, { "id": 17350521990, "time": "2024-12-24T13:59:14.799644+00:00", "type": "latency", "provider": "Orange", "place": "Amsterdam", "url": "https://www.google.com", "service": "Google", "num": 1.256, "private": false }, { "id": 17350486902, "time": "2024-12-24T13:10:06.590936+00:00", "type": "latency", "provider": "AT&T", "place": "New York", "url": "https://www.google.com", "service": "Google", "num": 0.651, "private": false } ] }

Answer:

{ "success": true, "data": [ { "id": 17350524178, "time": "2024-12-24T14:02:52.724695+00:00", "type": "isp", "provider": "Vodafone", "place": "Frankfurt", "num": 152, }, { "id": 17350524134, "type": "complaints", "time": "2024-12-24T14:02:15.269713+00:00", "service": "Google", "num": 351, }, { "id": 17350521990, "time": "2024-12-24T13:59:14.799644+00:00", "type": "function", "service": "Google", "function": "IT", "num": 101 } ] }

Response in case of an error:

{ "success": false, "error": "An error occurred during the request execution; please check the parameters." }

Filtered service events

Method to retrieve current service events that exceed the thresholds specified in the user profile

URL

/api/v1/service/{service}/alerts/filtered

Substitutable value:

  • {service} - name of the service for which data is being requested;

Method

GET

Description of the returned data

The only difference from the /service/{service}/alerts method is that it returns not all current service events, but only those for which the value of the additional parameter num is no less than the threshold specified in the user's profile for that event type.

Success returns a JSON object with:

  • success - boolean value indicating the success of the request;
  • error - optional. A string describing the error if success: false;
  • data - in case of a successful request (success: true), an array of data.

The data array consists of objects with the following required fields:

  • id - event identifier, an integer;
  • time - event start time, a string in ISO format;
  • type - event type, a string.

Possible event types and additional fields, specific to each type:

  • url - page unavailability, additional fields:

    • url - URL of the monitored page;
    • service - name of the service to which the page is assigned;
    • num - number of cities from which this page is inaccessible.
  • latency - significant response delay of a webpage from a specific provider in a particular city, with additional fields:

    • url - URL of the monitored page;
    • service - name of the service to which the page is assigned;
    • provider - provider through which a significant delay is observed;
    • place - city where the large delay is observed;
    • num - the measurable delay value, in seconds.
  • isp - issues with the provider in the city (applicable if the service is a communication provider), with additional fields:

    • provider - provider through which a large number of inaccessible pages are observed;
    • place - city where this occurs;
    • num - the number of pages inaccessible through the provider.
  • complaints - spike in user complaints, with additional fields:

    • service - name of the service users are complaining about;
    • num - number of complaints received in the last 15 minutes.
  • function - certain service function has stopped working, with additional fields:

    • service - name of the service;
    • function - name of the function;
    • num - numerical identifier of the function.

Example

Request:

curl --location 'https://detector404.com/api/v1/service/google/alerts/filtered' \ --header 'Authorization: Bearer wGGtaQVncybYmhbiAab9poccBWoU4n0c1H0ee2zVyICWEM7B9s0DFrzU'

Answer:

{ "success": true, "data": [ { "id": 17350524178, "time": "2024-12-24T14:02:52.724695+00:00", "type": "url", "url": "https://google.com", "service": "Google", "place": "com", "num": 31, "private": false }, { "id": 17350521990, "time": "2024-12-24T13:59:14.799644+00:00", "type": "latency", "provider": "Vodafone", "place": "Frankfurt", "url": "https://google.com", "service": "Google", "num": 1.256, "private": false } ] }

Answer:

{ "success": true, "data": [ { "id": 17350524178, "time": "2024-12-24T14:02:52.724695+00:00", "type": "isp", "provider": "Vodafone", "place": "Frankfurt", "num": 152, }, { "id": 17350524134, "type": "complaints", "time": "2024-12-24T14:02:15.269713+00:00", "service": "Google", "num": 351, }, { "id": 17350521990, "time": "2024-12-24T13:59:14.799644+00:00", "type": "function", "service": "Google", "function": "IT", "num": 101 } ] }

Response in case of an error:

{ "success": false, "error": "An error occurred during the request execution; please check the parameters." }

Comments

Method for retrieving the list of user comments about a service for a specific day

URL

/api/v1/service/{service}/comments/date/{date}

Substitutable values:

  • {service} - name of the service for which comments are being requested;
  • {date} - date, should be in the format:
    • YYYY-MM-DD - to retrieve comments for the specified day;
    • today - to get comments for the last 24 hours.

Method

GET

Description of the returned data

Success returns a JSON object with:

  • success - boolean value indicating the success of the request;
  • error - optional. A string describing the error if success: false;
  • data - in case of a successful request (success: true), an array of data.

The data array consists of objects with the following required fields:

  • time - comment time, a string in ISO format;
  • text - comment content;
  • author - specified author name, or null;
  • likes - number of "likes" for the comment;
  • category - object containing information about the categories to which the comment was assigned by the system.

The category object consists of key-value pairs, where the key is one of the categories assigned to the comment, and the value is an array of subcategory names within that category to which the comment can belong.

Example

Request:

curl --location 'https://detector404.com/api/v1/service/Steam/comments/date/2024-03-19' \ --header 'Authorization: Bearer wGGtaQVncybYmhbiAab9poccBWoU4n0c1H0ee2zVyICWEM7B9s0DFrzU'

Answer:

{ "success": true, "data": [ { "time": "2024-03-19T08:08:31.643480+03:00", "text": "Steam outage", "author": "Donald", "likes": 8, "category": { "Site failure": [ "The site does not open/load/functioning improperly" ] } } ] }

Response in case of an error:

{ "success": false, "error": "An error occurred during the request execution; please check the parameters." }

Charts

Method for retrieving data that allows building graphs illustrating the behavior of a service on a specific day

URL

/api/v1/service/{service}/graph/date/{date}

Substitutable values:

  • {service} - name of the service for which data is being requested;
  • {date} - date, should be in the format:
    • YYYY-MM-DD - to retrieve data for the specified day;
    • today - to retrieve data for the last 24 hours.

Method

GET

Description of the returned data

Success returns a JSON object with:

  • success - boolean value indicating the success of the request;
  • error - optional. A string describing the error if success: false;
  • data - in case of a successful request (success: true), an object containing the data.

The data object has the following fields:

  • latency - array of points representing measured response times of service resources (median over a 5-minute interval);
  • errors - array of points representing the measured number of failed connection attempts to the service's resources (sum over a 5-minute interval);
  • totals - array of points showing the total number (successful and failed) connection attempts to the service's resources (sum over a 5-minute interval);
  • social - array of points with the number of user complaints about the service (total over a 5-minute interval);
  • social15 - same as social, but total over a 15-minute interval (corresponds to the default chart, displayed on the website);

All the above arrays consist of two-element arrays, which should be interpreted as [time, value], where the time is a standard UNIX timestamp.

Example

Request:

curl --location 'https://detector404.com/api/v1/service/Steam/graph/date/today' \ --header 'Authorization: Bearer wGGtaQVncybYmhbiAab9poccBWoU4n0c1H0ee2zVyICWEM7B9s0DFrzU'

Answer:

{ "success": true, "data": { "latency": [[1711289700, 186], [1711290000, 170]], "errors": [[1711290000, 3], [1711290300, 2]], "totals": [[1711290000, 8], [1711290300, 7]], "social": [[1711289700, 1], [1711290000, 1]] } }

Response in case of an error:

{ "success": false, "error": "An error occurred during the request execution; please check the parameters." }

Statistics

Method for obtaining statistics on comments and complaints about a service

URL

/api/v1/service/{service}/stats/date/{date}

Substitutable values:

  • {service} - name of the service for which data is being requested;
  • {date} - date, should be in the format:
    • YYYY-MM - to retrieve data for the specified month;
    • YYYY-MM-DD - to retrieve data for the specified day;
    • today - to retrieve data for the last 24 hours.

Method

GET

Description of the returned data

Success returns a JSON object with:

  • success - boolean value indicating the success of the request;
  • error - optional. A string describing the error if success: false;
  • data - in case of a successful request (success: true), an object containing the data.

The data object has the following fields:

  • regions - array containing complaint statistics by regions, consisting of objects with the following fields:

    • region - region name;
    • percent - percentage of complaints originating from this region (normalized by population in the case of Russian regions);
  • complaints - array containing comment statistics by categories, consisting of objects with the following fields:

    • complaint - category to which the comment belongs;
    • percent - percentage of comments attributed to this category;
    • detailed - array with detailed breakdowns by subcategories, each consisting of objects with the following fields:
      • type - subcategory name;
      • percent - percentage of comments, relative to the total number, attributed to this subcategory;

Example

Request:

curl --location 'https://detector404.com/api/v1/service/Steam/stats/date/2024-03' \ --header 'Authorization: Bearer wGGtaQVncybYmhbiAab9poccBWoU4n0c1H0ee2zVyICWEM7B9s0DFrzU'

Answer:

{ "success": true, "data": { "regions": [ { "region": "Finland", "percent": 80.76923076923077 }, { "region": "USA", "percent": 3.8461538461538463 } ] "complaints": [ { "complaint": "Site outage", "percent": 42.97520661157025, "detailed": [ { "type": "The site does not open / does not load / is not working.", "percent": 42.97520661157025 } ] }, { "complaint": "Personal account outage", "percent": 37.1900826446281, "detailed": [ { "type": "Cannot access the personal account/app/login", "percent": 30.578512396694215 }, { "type": "Problem with password or account recovery", "percent": 6.6115702479338845 } ] } ] }

Response in case of an error:

{ "success": false, "error": "An error occurred during the request execution; please check the parameters." }

Timeline of issues

Method to obtain information about the presence of service problems with minute-by-minute breakdown

URL

/api/v1/service/{service}/problems/date/{date}

Substitutable values:

  • {service} - name of the service for which data is being requested;
  • {date} - date, should be in the format:
    • YYYY-MM - to retrieve data for the specified month;
    • YYYY-MM-DD - to retrieve data for the specified day;

Method

GET

Description of the returned data

Success returns a JSON object with:

  • success - boolean value indicating the success of the request;
  • error - optional. A string describing the error if success: false;
  • data - in case of a successful request (success: true), an array containing data.

The data array consists of objects with the following fields:

  • time - string representing the time (ISO format), using the Moscow timezone;
  • errors - boolean indicating the presence of resource inaccessibility from multiple cities;
  • complaints - boolean indicating whether there is a spike in complaints at the specified time.

Note

The method implicitly uses thresholds set by the user in their profile: for the number of cities from which resource inaccessibility is considered problematic, and for the number of complaints over the last 15 minutes, beyond which a spike in complaints is deemed a problem.

Example

Request:

curl --location 'https://detector404.com/api/v1/service/Steam/problems/date/2024-03-15' \ --header 'Authorization: Bearer wGGtaQVncybYmhbiAab9poccBWoU4n0c1H0ee2zVyICWEM7B9s0DFrzU'

Answer:

{ "success": true, "data": [ { "time": "2024-03-15 00:00+03:00", "errors": false, "complaints": false }, { "time": "2024-03-15 00:01+03:00", "errors": false, "complaints": false }, ... ] }

Response in case of an error:

{ "success": false, "error": "An error occurred during the request execution; please check the parameters." }

Status

Method for retrieving the current status of a service based on monitoring data

URL

/api/v1/service/{service}/status

Substitutable value:

  • {service} - name of the service for which data is being requested;

Method

GET

Description of the returned data

Success returns a JSON object with:

  • success - boolean value indicating the success of the request;
  • error - optional. A string describing the error if success: false;
  • data - in case of a successful request (success: true), an object containing the data.

The data object has the following fields:

  • down - object where keys are URLs currently marked as unavailable, and corresponding values are arrays of city names where the inaccessibility of the URL is observed;
  • social - if a spike in complaints is detected for this service, then the number of complaints over the past 15 minutes; otherwise, false.

Example

Request:

curl --location 'https://detector404.com/api/v1/service/Steam/status' \ --header 'Authorization: Bearer wGGtaQVncybYmhbiAab9poccBWoU4n0c1H0ee2zVyICWEM7B9s0DFrzU'

Answer:

{ "success": true, "data": { "down": { "https://steamcommunity.com": ["New York city"] }, "social": false } }

Answer:

{ "success": true, "data": { "down": { "https://steamcommunity.com": ["New York city"] }, "social": 95 } }

Response in case of an error:

{ "success": false, "error": "An error occurred during the request execution; please check the parameters." }

URLs

Method for obtaining the list of pages being monitored

URL

/api/v1/service/{service}/urls

Substitutable value:

  • {service} - name of the service for which data is being requested;

Method

GET

Description of the returned data

Success returns a JSON object with:

  • success - boolean value indicating the success of the request;
  • error - optional. A string describing the error if success: false;
  • data - in case of a successful request (success: true), an array of URLs associated with the given service that are currently monitored.

Example

Request:

curl --location 'https://detector404.com/api/v1/service/Telegram/urls' \ --header 'Authorization: Bearer wGGtaQVncybYmhbiAab9poccBWoU4n0c1H0ee2zVyICWEM7B9s0DFrzU'

Answer:

{ "success": true, "data": [ "https://telegram.org", "https://web.telegram.org", "https://core.telegram.org" ] }

Response in case of an error:

{ "success": false, "error": "An error occurred during the request execution; please check the parameters." }

© 2026, by admin@detector404.com
Privacy Policy under protection of Curator logo