alissonlinneker/statuspage-php-sdk

# Code of Conduct Please don't abuse the API, and please report all feature requests and issues to https://support.atlassian.com/contact # Rate Limiting Each API token is limited to 1 request / second as measured on a 60 second rolling window. To get this limit increased, please contact us at https

v1.0 2023-06-22 16:04 UTC

This package is auto-updated.

Last update: 2024-04-22 18:51:28 UTC


README

Latest Stable Version

Code of Conduct

Please don't abuse the API, and please report all feature requests and issues to https://support.atlassian.com/contact

Rate Limiting

Each API token is limited to 1 request / second as measured on a 60 second rolling window. To get this limit increased, please contact us at https://support.atlassian.com/contact

Error codes 420 or 429 indicate that you have exceeded the rate limit and the request has been rejected.

Basics

HTTPS

It's required

URL Prefix

In order to maintain version integrity into the future, the API is versioned. All calls currently begin with the following prefix:

https://api.statuspage.io/v1/

RESTful Interface

Wherever possible, the API seeks to implement repeatable patterns with logical, representative URLs and descriptive HTTP verbs. Below are some examples and conventions you will see throughout the documentation.

Sending Data

Information can be sent in the body as form urlencoded or JSON, but make sure the Content-Type header matches the body structure or the server gremlins will be angry.

All examples are provided in JSON format, however they can easily be converted to form encoding if required. Some examples of how to convert things are below:

// JSON
{
  \"incident\": {
    \"name\": \"test incident\",
    \"components\": [\"8kbf7d35c070\", \"vtnh60py4yd7\"]
  }
}

// Form Encoded (using curl as an example):
curl -X POST https://api.statuspage.io/v1/example \\
  -d \"incident[name]=test incident\" \\
  -d \"incident[components][]=8kbf7d35c070\" \\
  -d \"incident[components][]=vtnh60py4yd7\"

Authentication

For more information, please visit https://support.atlassian.com/contact.

Installation & Usage

Requirements

PHP 7.4 and later. Should also work with PHP 8.0.

Composer

To install the bindings via Composer, add the following to composer.json:

{
  "repositories": [
    {
      "type": "vcs",
      "url": "https://github.com/alissonlinneker/statuspage-php-sdk.git"
    }
  ],
  "require": {
    "alissonlinneker/statuspage-php-sdk": "*@dev"
  }
}

Then run composer install

Or

Once you have Composer installed, you can install the statuspage-php-sdk by running the following command in the root directory of your project:

composer require alissonlinneker/statuspage-php-sdk

Manual Installation

Download the files and include autoload.php:

<?php
require_once('/path/to/OpenAPIClient-php/vendor/autoload.php');

Getting Started

Please follow the installation procedure and then run the following:

<?php
require_once(__DIR__ . '/vendor/autoload.php');



// Configure API key authorization: api_key
$config = OpenAPI\Client\Configuration::getDefaultConfiguration()->setApiKey('Authorization', 'YOUR_API_KEY');
// Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
// $config = OpenAPI\Client\Configuration::getDefaultConfiguration()->setApiKeyPrefix('Authorization', 'Bearer');


$apiInstance = new OpenAPI\Client\Api\ComponentGroupsApi(
    // If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`.
    // This is optional, `GuzzleHttp\Client` will be used as default.
    new GuzzleHttp\Client(),
    $config
);
$page_id = 'page_id_example'; // string | Page identifier
$id = 'id_example'; // string | Component group identifier

try {
    $result = $apiInstance->deletePagesPageIdComponentGroupsId($page_id, $id);
    print_r($result);
} catch (Exception $e) {
    echo 'Exception when calling ComponentGroupsApi->deletePagesPageIdComponentGroupsId: ', $e->getMessage(), PHP_EOL;
}

API Endpoints

All URIs are relative to https://api.statuspage.io/v1

Class Method HTTP request Description
ComponentGroupsApi deletePagesPageIdComponentGroupsId DELETE /pages/{page_id}/component-groups/{id} Delete a component group
ComponentGroupsApi getPagesPageIdComponentGroups GET /pages/{page_id}/component-groups Get a list of component groups
ComponentGroupsApi getPagesPageIdComponentGroupsId GET /pages/{page_id}/component-groups/{id} Get a component group
ComponentGroupsApi getPagesPageIdComponentGroupsIdUptime GET /pages/{page_id}/component-groups/{id}/uptime Get uptime data for a component group
ComponentGroupsApi patchPagesPageIdComponentGroupsId PATCH /pages/{page_id}/component-groups/{id} Update a component group
ComponentGroupsApi postPagesPageIdComponentGroups POST /pages/{page_id}/component-groups Create a component group
ComponentGroupsApi putPagesPageIdComponentGroupsId PUT /pages/{page_id}/component-groups/{id} Update a component group
ComponentsApi deletePagesPageIdComponentsComponentId DELETE /pages/{page_id}/components/{component_id} Delete a component
ComponentsApi deletePagesPageIdComponentsComponentIdPageAccessGroups DELETE /pages/{page_id}/components/{component_id}/page_access_groups Remove page access groups from a component
ComponentsApi deletePagesPageIdComponentsComponentIdPageAccessUsers DELETE /pages/{page_id}/components/{component_id}/page_access_users Remove page access users from component
ComponentsApi getPagesPageIdComponents GET /pages/{page_id}/components Get a list of components
ComponentsApi getPagesPageIdComponentsComponentId GET /pages/{page_id}/components/{component_id} Get a component
ComponentsApi getPagesPageIdComponentsComponentIdUptime GET /pages/{page_id}/components/{component_id}/uptime Get uptime data for a component
ComponentsApi patchPagesPageIdComponentsComponentId PATCH /pages/{page_id}/components/{component_id} Update a component
ComponentsApi postPagesPageIdComponents POST /pages/{page_id}/components Create a component
ComponentsApi postPagesPageIdComponentsComponentIdPageAccessGroups POST /pages/{page_id}/components/{component_id}/page_access_groups Add page access groups to a component
ComponentsApi postPagesPageIdComponentsComponentIdPageAccessUsers POST /pages/{page_id}/components/{component_id}/page_access_users Add page access users to a component
ComponentsApi putPagesPageIdComponentsComponentId PUT /pages/{page_id}/components/{component_id} Update a component
IncidentPostmortemApi deletePagesPageIdIncidentsIncidentIdPostmortem DELETE /pages/{page_id}/incidents/{incident_id}/postmortem Delete Postmortem
IncidentPostmortemApi getPagesPageIdIncidentsIncidentIdPostmortem GET /pages/{page_id}/incidents/{incident_id}/postmortem Get Postmortem
IncidentPostmortemApi putPagesPageIdIncidentsIncidentIdPostmortem PUT /pages/{page_id}/incidents/{incident_id}/postmortem Create Postmortem
IncidentPostmortemApi putPagesPageIdIncidentsIncidentIdPostmortemPublish PUT /pages/{page_id}/incidents/{incident_id}/postmortem/publish Publish Postmortem
IncidentPostmortemApi putPagesPageIdIncidentsIncidentIdPostmortemRevert PUT /pages/{page_id}/incidents/{incident_id}/postmortem/revert Revert Postmortem
IncidentSubscribersApi deletePagesPageIdIncidentsIncidentIdSubscribersSubscriberId DELETE /pages/{page_id}/incidents/{incident_id}/subscribers/{subscriber_id} Unsubscribe an incident subscriber
IncidentSubscribersApi getPagesPageIdIncidentsIncidentIdSubscribers GET /pages/{page_id}/incidents/{incident_id}/subscribers Get a list of incident subscribers
IncidentSubscribersApi getPagesPageIdIncidentsIncidentIdSubscribersSubscriberId GET /pages/{page_id}/incidents/{incident_id}/subscribers/{subscriber_id} Get an incident subscriber
IncidentSubscribersApi postPagesPageIdIncidentsIncidentIdSubscribers POST /pages/{page_id}/incidents/{incident_id}/subscribers Create an incident subscriber
IncidentSubscribersApi postPagesPageIdIncidentsIncidentIdSubscribersSubscriberIdResendConfirmation POST /pages/{page_id}/incidents/{incident_id}/subscribers/{subscriber_id}/resend_confirmation Resend confirmation to an incident subscriber
IncidentUpdatesApi patchPagesPageIdIncidentsIncidentIdIncidentUpdatesIncidentUpdateId PATCH /pages/{page_id}/incidents/{incident_id}/incident_updates/{incident_update_id} Update a previous incident update
IncidentUpdatesApi putPagesPageIdIncidentsIncidentIdIncidentUpdatesIncidentUpdateId PUT /pages/{page_id}/incidents/{incident_id}/incident_updates/{incident_update_id} Update a previous incident update
IncidentsApi deletePagesPageIdIncidentsIncidentId DELETE /pages/{page_id}/incidents/{incident_id} Delete an incident
IncidentsApi getPagesPageIdIncidents GET /pages/{page_id}/incidents Get a list of incidents
IncidentsApi getPagesPageIdIncidentsActiveMaintenance GET /pages/{page_id}/incidents/active_maintenance Get a list of active maintenances
IncidentsApi getPagesPageIdIncidentsIncidentId GET /pages/{page_id}/incidents/{incident_id} Get an incident
IncidentsApi getPagesPageIdIncidentsScheduled GET /pages/{page_id}/incidents/scheduled Get a list of scheduled incidents
IncidentsApi getPagesPageIdIncidentsUnresolved GET /pages/{page_id}/incidents/unresolved Get a list of unresolved incidents
IncidentsApi getPagesPageIdIncidentsUpcoming GET /pages/{page_id}/incidents/upcoming Get a list of upcoming incidents
IncidentsApi patchPagesPageIdIncidentsIncidentId PATCH /pages/{page_id}/incidents/{incident_id} Update an incident
IncidentsApi postPagesPageIdIncidents POST /pages/{page_id}/incidents Create an incident
IncidentsApi putPagesPageIdIncidentsIncidentId PUT /pages/{page_id}/incidents/{incident_id} Update an incident
MetricProvidersApi deletePagesPageIdMetricsProvidersMetricsProviderId DELETE /pages/{page_id}/metrics_providers/{metrics_provider_id} Delete a metric provider
MetricProvidersApi getPagesPageIdMetricsProviders GET /pages/{page_id}/metrics_providers Get a list of metric providers
MetricProvidersApi getPagesPageIdMetricsProvidersMetricsProviderId GET /pages/{page_id}/metrics_providers/{metrics_provider_id} Get a metric provider
MetricProvidersApi getPagesPageIdMetricsProvidersMetricsProviderIdMetrics GET /pages/{page_id}/metrics_providers/{metrics_provider_id}/metrics List metrics for a metric provider
MetricProvidersApi patchPagesPageIdMetricsProvidersMetricsProviderId PATCH /pages/{page_id}/metrics_providers/{metrics_provider_id} Update a metric provider
MetricProvidersApi postPagesPageIdMetricsProviders POST /pages/{page_id}/metrics_providers Create a metric provider
MetricProvidersApi postPagesPageIdMetricsProvidersMetricsProviderIdMetrics POST /pages/{page_id}/metrics_providers/{metrics_provider_id}/metrics Create a metric for a metric provider
MetricProvidersApi putPagesPageIdMetricsProvidersMetricsProviderId PUT /pages/{page_id}/metrics_providers/{metrics_provider_id} Update a metric provider
MetricsApi deletePagesPageIdMetricsMetricId DELETE /pages/{page_id}/metrics/{metric_id} Delete a metric
MetricsApi deletePagesPageIdMetricsMetricIdData DELETE /pages/{page_id}/metrics/{metric_id}/data Reset data for a metric
MetricsApi getPagesPageIdMetrics GET /pages/{page_id}/metrics Get a list of metrics
MetricsApi getPagesPageIdMetricsMetricId GET /pages/{page_id}/metrics/{metric_id} Get a metric
MetricsApi getPagesPageIdMetricsProvidersMetricsProviderIdMetrics GET /pages/{page_id}/metrics_providers/{metrics_provider_id}/metrics List metrics for a metric provider
MetricsApi patchPagesPageIdMetricsMetricId PATCH /pages/{page_id}/metrics/{metric_id} Update a metric
MetricsApi postPagesPageIdMetricsData POST /pages/{page_id}/metrics/data Add data points to metrics
MetricsApi postPagesPageIdMetricsMetricIdData POST /pages/{page_id}/metrics/{metric_id}/data Add data to a metric
MetricsApi postPagesPageIdMetricsProvidersMetricsProviderIdMetrics POST /pages/{page_id}/metrics_providers/{metrics_provider_id}/metrics Create a metric for a metric provider
MetricsApi putPagesPageIdMetricsMetricId PUT /pages/{page_id}/metrics/{metric_id} Update a metric
PageAccessGroupComponentsApi deletePagesPageIdPageAccessGroupsPageAccessGroupIdComponents DELETE /pages/{page_id}/page_access_groups/{page_access_group_id}/components Delete components for a page access group
PageAccessGroupComponentsApi deletePagesPageIdPageAccessGroupsPageAccessGroupIdComponentsComponentId DELETE /pages/{page_id}/page_access_groups/{page_access_group_id}/components/{component_id} Remove a component from a page access group
PageAccessGroupComponentsApi getPagesPageIdPageAccessGroupsPageAccessGroupIdComponents GET /pages/{page_id}/page_access_groups/{page_access_group_id}/components List components for a page access group
PageAccessGroupComponentsApi patchPagesPageIdPageAccessGroupsPageAccessGroupIdComponents PATCH /pages/{page_id}/page_access_groups/{page_access_group_id}/components Add components to page access group
PageAccessGroupComponentsApi postPagesPageIdPageAccessGroupsPageAccessGroupIdComponents POST /pages/{page_id}/page_access_groups/{page_access_group_id}/components Replace components for a page access group
PageAccessGroupComponentsApi putPagesPageIdPageAccessGroupsPageAccessGroupIdComponents PUT /pages/{page_id}/page_access_groups/{page_access_group_id}/components Add components to page access group
PageAccessGroupsApi deletePagesPageIdPageAccessGroupsPageAccessGroupId DELETE /pages/{page_id}/page_access_groups/{page_access_group_id} Remove a page access group
PageAccessGroupsApi getPagesPageIdPageAccessGroups GET /pages/{page_id}/page_access_groups Get a list of page access groups
PageAccessGroupsApi getPagesPageIdPageAccessGroupsPageAccessGroupId GET /pages/{page_id}/page_access_groups/{page_access_group_id} Get a page access group
PageAccessGroupsApi patchPagesPageIdPageAccessGroupsPageAccessGroupId PATCH /pages/{page_id}/page_access_groups/{page_access_group_id} Update a page access group
PageAccessGroupsApi postPagesPageIdPageAccessGroups POST /pages/{page_id}/page_access_groups Create a page access group
PageAccessGroupsApi putPagesPageIdPageAccessGroupsPageAccessGroupId PUT /pages/{page_id}/page_access_groups/{page_access_group_id} Update a page access group
PageAccessUserComponentsApi deletePagesPageIdPageAccessUsersPageAccessUserIdComponents DELETE /pages/{page_id}/page_access_users/{page_access_user_id}/components Remove components for page access user
PageAccessUserComponentsApi deletePagesPageIdPageAccessUsersPageAccessUserIdComponentsComponentId DELETE /pages/{page_id}/page_access_users/{page_access_user_id}/components/{component_id} Remove component for page access user
PageAccessUserComponentsApi getPagesPageIdPageAccessUsersPageAccessUserIdComponents GET /pages/{page_id}/page_access_users/{page_access_user_id}/components Get components for page access user
PageAccessUserComponentsApi patchPagesPageIdPageAccessUsersPageAccessUserIdComponents PATCH /pages/{page_id}/page_access_users/{page_access_user_id}/components Add components for page access user
PageAccessUserComponentsApi postPagesPageIdPageAccessUsersPageAccessUserIdComponents POST /pages/{page_id}/page_access_users/{page_access_user_id}/components Replace components for page access user
PageAccessUserComponentsApi putPagesPageIdPageAccessUsersPageAccessUserIdComponents PUT /pages/{page_id}/page_access_users/{page_access_user_id}/components Add components for page access user
PageAccessUserMetricsApi deletePagesPageIdPageAccessUsersPageAccessUserIdMetrics DELETE /pages/{page_id}/page_access_users/{page_access_user_id}/metrics Delete metrics for page access user
PageAccessUserMetricsApi deletePagesPageIdPageAccessUsersPageAccessUserIdMetricsMetricId DELETE /pages/{page_id}/page_access_users/{page_access_user_id}/metrics/{metric_id} Delete metric for page access user
PageAccessUserMetricsApi getPagesPageIdPageAccessUsersPageAccessUserIdMetrics GET /pages/{page_id}/page_access_users/{page_access_user_id}/metrics Get metrics for page access user
PageAccessUserMetricsApi patchPagesPageIdPageAccessUsersPageAccessUserIdMetrics PATCH /pages/{page_id}/page_access_users/{page_access_user_id}/metrics Add metrics for page access user
PageAccessUserMetricsApi postPagesPageIdPageAccessUsersPageAccessUserIdMetrics POST /pages/{page_id}/page_access_users/{page_access_user_id}/metrics Replace metrics for page access user
PageAccessUserMetricsApi putPagesPageIdPageAccessUsersPageAccessUserIdMetrics PUT /pages/{page_id}/page_access_users/{page_access_user_id}/metrics Add metrics for page access user
PageAccessUsersApi deletePagesPageIdPageAccessUsersPageAccessUserId DELETE /pages/{page_id}/page_access_users/{page_access_user_id} Delete page access user
PageAccessUsersApi getPagesPageIdPageAccessUsers GET /pages/{page_id}/page_access_users Get a list of page access users
PageAccessUsersApi getPagesPageIdPageAccessUsersPageAccessUserId GET /pages/{page_id}/page_access_users/{page_access_user_id} Get page access user
PageAccessUsersApi patchPagesPageIdPageAccessUsersPageAccessUserId PATCH /pages/{page_id}/page_access_users/{page_access_user_id} Update page access user
PageAccessUsersApi postPagesPageIdPageAccessUsers POST /pages/{page_id}/page_access_users Add a page access user
PageAccessUsersApi putPagesPageIdPageAccessUsersPageAccessUserId PUT /pages/{page_id}/page_access_users/{page_access_user_id} Update page access user
PagesApi getPages GET /pages Get a list of pages
PagesApi getPagesPageId GET /pages/{page_id} Get a page
PagesApi patchPagesPageId PATCH /pages/{page_id} Update a page
PagesApi putPagesPageId PUT /pages/{page_id} Update a page
PermissionsApi getOrganizationsOrganizationIdPermissionsUserId GET /organizations/{organization_id}/permissions/{user_id} Get a user's permissions
PermissionsApi putOrganizationsOrganizationIdPermissionsUserId PUT /organizations/{organization_id}/permissions/{user_id} Update a user's role permissions
StatusEmbedConfigApi getPagesPageIdStatusEmbedConfig GET /pages/{page_id}/status_embed_config Get status embed config settings
StatusEmbedConfigApi patchPagesPageIdStatusEmbedConfig PATCH /pages/{page_id}/status_embed_config Update status embed config settings
StatusEmbedConfigApi putPagesPageIdStatusEmbedConfig PUT /pages/{page_id}/status_embed_config Update status embed config settings
SubscribersApi deletePagesPageIdSubscribersSubscriberId DELETE /pages/{page_id}/subscribers/{subscriber_id} Unsubscribe a subscriber
SubscribersApi getPagesPageIdSubscribers GET /pages/{page_id}/subscribers Get a list of subscribers
SubscribersApi getPagesPageIdSubscribersCount GET /pages/{page_id}/subscribers/count Get a count of subscribers by type
SubscribersApi getPagesPageIdSubscribersHistogramByState GET /pages/{page_id}/subscribers/histogram_by_state Get a histogram of subscribers by type and then state
SubscribersApi getPagesPageIdSubscribersSubscriberId GET /pages/{page_id}/subscribers/{subscriber_id} Get a subscriber
SubscribersApi getPagesPageIdSubscribersUnsubscribed GET /pages/{page_id}/subscribers/unsubscribed Get a list of unsubscribed subscribers
SubscribersApi patchPagesPageIdSubscribersSubscriberId PATCH /pages/{page_id}/subscribers/{subscriber_id} Update a subscriber
SubscribersApi postPagesPageIdSubscribers POST /pages/{page_id}/subscribers Create a subscriber
SubscribersApi postPagesPageIdSubscribersReactivate POST /pages/{page_id}/subscribers/reactivate Reactivate a list of subscribers
SubscribersApi postPagesPageIdSubscribersResendConfirmation POST /pages/{page_id}/subscribers/resend_confirmation Resend confirmations to a list of subscribers
SubscribersApi postPagesPageIdSubscribersSubscriberIdResendConfirmation POST /pages/{page_id}/subscribers/{subscriber_id}/resend_confirmation Resend confirmation to a subscriber
SubscribersApi postPagesPageIdSubscribersUnsubscribe POST /pages/{page_id}/subscribers/unsubscribe Unsubscribe a list of subscribers
TemplatesApi getPagesPageIdIncidentTemplates GET /pages/{page_id}/incident_templates Get a list of templates
TemplatesApi postPagesPageIdIncidentTemplates POST /pages/{page_id}/incident_templates Create a template
UsersApi deleteOrganizationsOrganizationIdUsersUserId DELETE /organizations/{organization_id}/users/{user_id} Delete a user
UsersApi getOrganizationsOrganizationIdPermissionsUserId GET /organizations/{organization_id}/permissions/{user_id} Get a user's permissions
UsersApi getOrganizationsOrganizationIdUsers GET /organizations/{organization_id}/users Get a list of users
UsersApi postOrganizationsOrganizationIdUsers POST /organizations/{organization_id}/users Create a user

Models

Authorization

Authentication schemes defined for the API:

api_key

  • Type: API key
  • API key parameter name: Authorization
  • Location: HTTP header

Tests

To run the tests, use:

composer install
vendor/bin/phpunit

Author

About this package

This PHP package is automatically generated by the OpenAPI Generator project:

  • API version: 1.0.0
  • Build package: org.openapitools.codegen.languages.PhpClientCodegen