UNPKG

fetch-statuspage

Version:

257 lines (256 loc) 16.7 kB
"use strict"; // tslint:disable /** * Statuspage API * # Code of Conduct Please don\'t abuse the API, and please report all feature requests and issues to https://help.statuspage.io/help/contact-us-30 # Rate Limiting Each API token is limited to 1 request / second as measured on a 60 second rolling window. To get this limit increased or lifted, please contact us at https://help.statuspage.io/help/contact-us-30 # 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. * Collections are buckets: https://api.statuspage.io/v1/pages/asdf123/incidents.json * Elements have unique IDs: https://api.statuspage.io/v1/pages/asdf123/incidents/jklm456.json * GET will retrieve information about a collection/element * POST will create an element in a collection * PATCH will update a single element * PUT will replace a single element in a collection (rarely used) * DELETE will destroy a single element ## 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 <!-- ReDoc-Inject: <security-definitions> --> * * The version of the OpenAPI document: 1.0.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; Object.defineProperty(exports, "__esModule", { value: true }); const runtime = require("../runtime"); const models_1 = require("../models"); /** * no description */ class MetricProvidersApi extends runtime.BaseAPI { /** * Delete a metric provider * Delete a metric provider */ deletePagesPageIdMetricsProvidersMetricsProviderIdRaw(requestParameters) { return __awaiter(this, void 0, void 0, function* () { if (requestParameters.page_id === null || requestParameters.page_id === undefined) { throw new runtime.RequiredError('page_id', 'Required parameter requestParameters.page_id was null or undefined when calling deletePagesPageIdMetricsProvidersMetricsProviderId.'); } if (requestParameters.metrics_provider_id === null || requestParameters.metrics_provider_id === undefined) { throw new runtime.RequiredError('metrics_provider_id', 'Required parameter requestParameters.metrics_provider_id was null or undefined when calling deletePagesPageIdMetricsProvidersMetricsProviderId.'); } const queryParameters = {}; const headerParameters = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // api_key authentication } const response = yield this.request({ path: `/pages/{page_id}/metrics_providers/{metrics_provider_id}`.replace(`{${"page_id"}}`, encodeURIComponent(String(requestParameters.page_id))).replace(`{${"metrics_provider_id"}}`, encodeURIComponent(String(requestParameters.metrics_provider_id))), method: 'DELETE', headers: headerParameters, query: queryParameters, }); return new runtime.JSONApiResponse(response, (jsonValue) => models_1.MetricsProviderFromJSON(jsonValue)); }); } /** * Delete a metric provider * Delete a metric provider */ deletePagesPageIdMetricsProvidersMetricsProviderId(requestParameters) { return __awaiter(this, void 0, void 0, function* () { const response = yield this.deletePagesPageIdMetricsProvidersMetricsProviderIdRaw(requestParameters); return yield response.value(); }); } /** * Get a list of metric providers * Get a list of metric providers */ getPagesPageIdMetricsProvidersRaw(requestParameters) { return __awaiter(this, void 0, void 0, function* () { if (requestParameters.page_id === null || requestParameters.page_id === undefined) { throw new runtime.RequiredError('page_id', 'Required parameter requestParameters.page_id was null or undefined when calling getPagesPageIdMetricsProviders.'); } const queryParameters = {}; const headerParameters = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // api_key authentication } const response = yield this.request({ path: `/pages/{page_id}/metrics_providers`.replace(`{${"page_id"}}`, encodeURIComponent(String(requestParameters.page_id))), method: 'GET', headers: headerParameters, query: queryParameters, }); return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(models_1.MetricsProviderFromJSON)); }); } /** * Get a list of metric providers * Get a list of metric providers */ getPagesPageIdMetricsProviders(requestParameters) { return __awaiter(this, void 0, void 0, function* () { const response = yield this.getPagesPageIdMetricsProvidersRaw(requestParameters); return yield response.value(); }); } /** * Get a metric provider * Get a metric provider */ getPagesPageIdMetricsProvidersMetricsProviderIdRaw(requestParameters) { return __awaiter(this, void 0, void 0, function* () { if (requestParameters.page_id === null || requestParameters.page_id === undefined) { throw new runtime.RequiredError('page_id', 'Required parameter requestParameters.page_id was null or undefined when calling getPagesPageIdMetricsProvidersMetricsProviderId.'); } if (requestParameters.metrics_provider_id === null || requestParameters.metrics_provider_id === undefined) { throw new runtime.RequiredError('metrics_provider_id', 'Required parameter requestParameters.metrics_provider_id was null or undefined when calling getPagesPageIdMetricsProvidersMetricsProviderId.'); } const queryParameters = {}; const headerParameters = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // api_key authentication } const response = yield this.request({ path: `/pages/{page_id}/metrics_providers/{metrics_provider_id}`.replace(`{${"page_id"}}`, encodeURIComponent(String(requestParameters.page_id))).replace(`{${"metrics_provider_id"}}`, encodeURIComponent(String(requestParameters.metrics_provider_id))), method: 'GET', headers: headerParameters, query: queryParameters, }); return new runtime.JSONApiResponse(response, (jsonValue) => models_1.MetricsProviderFromJSON(jsonValue)); }); } /** * Get a metric provider * Get a metric provider */ getPagesPageIdMetricsProvidersMetricsProviderId(requestParameters) { return __awaiter(this, void 0, void 0, function* () { const response = yield this.getPagesPageIdMetricsProvidersMetricsProviderIdRaw(requestParameters); return yield response.value(); }); } /** * Update a metric provider * Update a metric provider */ patchPagesPageIdMetricsProvidersMetricsProviderIdRaw(requestParameters) { return __awaiter(this, void 0, void 0, function* () { if (requestParameters.page_id === null || requestParameters.page_id === undefined) { throw new runtime.RequiredError('page_id', 'Required parameter requestParameters.page_id was null or undefined when calling patchPagesPageIdMetricsProvidersMetricsProviderId.'); } if (requestParameters.metrics_provider_id === null || requestParameters.metrics_provider_id === undefined) { throw new runtime.RequiredError('metrics_provider_id', 'Required parameter requestParameters.metrics_provider_id was null or undefined when calling patchPagesPageIdMetricsProvidersMetricsProviderId.'); } if (requestParameters.PatchPagesPageIdMetricsProviders === null || requestParameters.PatchPagesPageIdMetricsProviders === undefined) { throw new runtime.RequiredError('PatchPagesPageIdMetricsProviders', 'Required parameter requestParameters.PatchPagesPageIdMetricsProviders was null or undefined when calling patchPagesPageIdMetricsProvidersMetricsProviderId.'); } const queryParameters = {}; const headerParameters = {}; headerParameters['Content-Type'] = 'application/json'; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // api_key authentication } const response = yield this.request({ path: `/pages/{page_id}/metrics_providers/{metrics_provider_id}`.replace(`{${"page_id"}}`, encodeURIComponent(String(requestParameters.page_id))).replace(`{${"metrics_provider_id"}}`, encodeURIComponent(String(requestParameters.metrics_provider_id))), method: 'PATCH', headers: headerParameters, query: queryParameters, body: models_1.PatchPagesPageIdMetricsProvidersToJSON(requestParameters.PatchPagesPageIdMetricsProviders), }); return new runtime.JSONApiResponse(response, (jsonValue) => models_1.MetricsProviderFromJSON(jsonValue)); }); } /** * Update a metric provider * Update a metric provider */ patchPagesPageIdMetricsProvidersMetricsProviderId(requestParameters) { return __awaiter(this, void 0, void 0, function* () { const response = yield this.patchPagesPageIdMetricsProvidersMetricsProviderIdRaw(requestParameters); return yield response.value(); }); } /** * Create a metric provider * Create a metric provider */ postPagesPageIdMetricsProvidersRaw(requestParameters) { return __awaiter(this, void 0, void 0, function* () { if (requestParameters.page_id === null || requestParameters.page_id === undefined) { throw new runtime.RequiredError('page_id', 'Required parameter requestParameters.page_id was null or undefined when calling postPagesPageIdMetricsProviders.'); } if (requestParameters.PostPagesPageIdMetricsProviders === null || requestParameters.PostPagesPageIdMetricsProviders === undefined) { throw new runtime.RequiredError('PostPagesPageIdMetricsProviders', 'Required parameter requestParameters.PostPagesPageIdMetricsProviders was null or undefined when calling postPagesPageIdMetricsProviders.'); } const queryParameters = {}; const headerParameters = {}; headerParameters['Content-Type'] = 'application/json'; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // api_key authentication } const response = yield this.request({ path: `/pages/{page_id}/metrics_providers`.replace(`{${"page_id"}}`, encodeURIComponent(String(requestParameters.page_id))), method: 'POST', headers: headerParameters, query: queryParameters, body: models_1.PostPagesPageIdMetricsProvidersToJSON(requestParameters.PostPagesPageIdMetricsProviders), }); return new runtime.JSONApiResponse(response, (jsonValue) => models_1.MetricsProviderFromJSON(jsonValue)); }); } /** * Create a metric provider * Create a metric provider */ postPagesPageIdMetricsProviders(requestParameters) { return __awaiter(this, void 0, void 0, function* () { const response = yield this.postPagesPageIdMetricsProvidersRaw(requestParameters); return yield response.value(); }); } /** * Update a metric provider * Update a metric provider */ putPagesPageIdMetricsProvidersMetricsProviderIdRaw(requestParameters) { return __awaiter(this, void 0, void 0, function* () { if (requestParameters.page_id === null || requestParameters.page_id === undefined) { throw new runtime.RequiredError('page_id', 'Required parameter requestParameters.page_id was null or undefined when calling putPagesPageIdMetricsProvidersMetricsProviderId.'); } if (requestParameters.metrics_provider_id === null || requestParameters.metrics_provider_id === undefined) { throw new runtime.RequiredError('metrics_provider_id', 'Required parameter requestParameters.metrics_provider_id was null or undefined when calling putPagesPageIdMetricsProvidersMetricsProviderId.'); } if (requestParameters.PutPagesPageIdMetricsProviders === null || requestParameters.PutPagesPageIdMetricsProviders === undefined) { throw new runtime.RequiredError('PutPagesPageIdMetricsProviders', 'Required parameter requestParameters.PutPagesPageIdMetricsProviders was null or undefined when calling putPagesPageIdMetricsProvidersMetricsProviderId.'); } const queryParameters = {}; const headerParameters = {}; headerParameters['Content-Type'] = 'application/json'; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // api_key authentication } const response = yield this.request({ path: `/pages/{page_id}/metrics_providers/{metrics_provider_id}`.replace(`{${"page_id"}}`, encodeURIComponent(String(requestParameters.page_id))).replace(`{${"metrics_provider_id"}}`, encodeURIComponent(String(requestParameters.metrics_provider_id))), method: 'PUT', headers: headerParameters, query: queryParameters, body: models_1.PutPagesPageIdMetricsProvidersToJSON(requestParameters.PutPagesPageIdMetricsProviders), }); return new runtime.JSONApiResponse(response, (jsonValue) => models_1.MetricsProviderFromJSON(jsonValue)); }); } /** * Update a metric provider * Update a metric provider */ putPagesPageIdMetricsProvidersMetricsProviderId(requestParameters) { return __awaiter(this, void 0, void 0, function* () { const response = yield this.putPagesPageIdMetricsProvidersMetricsProviderIdRaw(requestParameters); return yield response.value(); }); } } exports.MetricProvidersApi = MetricProvidersApi;