API Overview

Service Status API  

Overview

The Service Status API can be used to get the overall status of a page without all the complexities of components and notices.

URLhttps://status.paymentevolution.com/api/v1/status
Methods SupportedGET
StateCan be any of “operational”degraded,” or “under maintenance.”
Sample Code:
{
    "page": {
        "name": "PaymentEvolution",
        "state": "operational",
        "url": "https://status.paymentevolution.com",
        "links": {
            "components": {
                "href": "/v1/components",
                "count": 50
            },
            "notices": {
                "href": "/v1/notices",
                "count": 100
            },
        },
        "created_at": "2023-01-01T00:00:00.000Z",
        "updated_at": "2023-01-01T00:00:00.000Z"
    }
}


List Components API  

Overview

The List Components API can be used to retrieve a paginated list of components and their status, useful to those who want a more detailed explanation of what’s impacted, or just the status of a subset of components.

URLhttps://status.paymentevolution.com/api/v1/components
Methods SupportedGET
StateCan be any of “operational”“degraded” or “under_maintenance”

Sample Code:

{
    "components": [
        {
            "id": 1,
            "state": "operational",
            "name": "Example Component",
            "description": "This is an example component.",
            "parent_id": null,
            "created_at": "2023-01-01T00:00:00.000Z",
            "updated_at": "2023-01-01T00:00:00.000Z"
        },
        {
            "id": 2,
            "state": "operational",            
            "name": "Sub-Component",
            "description": "This is an example sub-component.",
            "parent_id": 1,
            "created_at": "2023-01-01T00:00:00.000Z",
            "updated_at": "2023-01-01T00:00:00.000Z"
        }
    ],
    "meta": {
        "count": 25,
        "total_count": 50,
        "next_page": "/api/v1/components?page=2"
    }
}

List Notices API

Overview:

This list only contains basic details; for more information, such as the impacted components or the entire progress update history, request detailed notice information.

Retrieve a paginated list of notices for a page, past, present, and future

URLhttps://status.paymentevolution.com/api/v1/notices
Methods SupportedGET
Description

Elements

TypeCan be either “planned” or “unplanned”
Timeline StateCan be any of “future”“present”past_recent,” or past_distant.”
State“unplanned” notices can be any of “investigating”“identified”“recovering”resolved,” or “false alarm.”
For “planned” notices, it can be “scheduled”underway,” or complete.”

Filtering Notices

If you want to search for certain notices, such as planned maintenances, or only current incidents you can do so by passing the “filter” query string parameter.

Only retrieve planned maintenance

URLGET /api/v1/notices?filter[type_eq]=planned
Methods SupportedGET
Description

Only retrieve current unplanned notices

URLGET /api/v1/notices?filter[timeline_state_eq]=present&filter[type_eq]=unplanned
Methods SupportedGET
Description

You can mix and match other “type” and “timeline_state” values in the filter, so you have the flexibility to return just the records you need.

Sample Code:
{
    "notice": {
        "id": 1,
        "type": "unplanned",
        "timeline_state": "present",
        "state": "investigating",
        "subject": "Current Incident",
        "components": [
            {
                "id": 1,
                "state": "operational",
                "name": "Example Component",
                "description": "This is an example component.",
                "parent_id": null,
                "created_at": "2023-01-01T00:00:00.000Z",
                "updated_at": "2023-01-01T00:00:00.000Z"
            }
        ],
        "updates": [
            {
                "state": "investigating",
                "content": "We are currently investigating an issue with our service."
                "created_at": "2023-01-01T00:00:00.000Z",
                "updated_at": "2023-01-01T00:00:00.000Z"
            }
        ],
        "url": "https://status.paymentevolution.com/notices/xxx-current-incident",
        "created_at": "2023-01-01T00:00:00.000Z",
        "updated_at": "2023-01-01T00:00:00.000Z"    
    }
}

Detailed Notice Information API

Overview:

Retrieve the detail for a given notice, including its impacted components and its full list of progress updates.

URLhttps://status.paymentevolution.com/api/v1/notices/:id
Methods SupportedGET
Description
Sample Code:
{
    "notice": {
        "id": 1,
        "type": "unplanned",
        "timeline_state": "present",
        "state": "investigating",
        "subject": "Current Incident",
        "components": [
            {
                "id": 1,
                "state": "operational",
                "name": "Example Component",
                "description": "This is an example component.",
                "parent_id": null,
                "created_at": "2023-01-01T00:00:00.000Z",
                "updated_at": "2023-01-01T00:00:00.000Z"
            }
        ],
        "updates": [
            {
                "state": "investigating",
                "content": "We are currently investigating an issue with our service."
                "created_at": "2023-01-01T00:00:00.000Z",
                "updated_at": "2023-01-01T00:00:00.000Z"
            }
        ],
        "url": "https://status.paymentevolution.com/notices/xxx-current-incident",
        "created_at": "2023-01-01T00:00:00.000Z",
        "updated_at": "2023-01-01T00:00:00.000Z"    
    }
}

Author

Leave a Reply

Table of Contents

Discover more from PaymentEvolution Blog

Subscribe now to keep reading and get access to the full archive.

Continue reading