UNPKG

fetch-statuspage

Version:

514 lines (513 loc) 29.3 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 SubscribersApi extends runtime.BaseAPI { /** * Unsubscribe a subscriber * Unsubscribe a subscriber */ deletePagesPageIdSubscribersSubscriberIdRaw(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 deletePagesPageIdSubscribersSubscriberId.'); } if (requestParameters.subscriber_id === null || requestParameters.subscriber_id === undefined) { throw new runtime.RequiredError('subscriber_id', 'Required parameter requestParameters.subscriber_id was null or undefined when calling deletePagesPageIdSubscribersSubscriberId.'); } const queryParameters = {}; if (requestParameters.skip_unsubscription_notification !== undefined) { queryParameters['skip_unsubscription_notification'] = requestParameters.skip_unsubscription_notification; } 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}/subscribers/{subscriber_id}`.replace(`{${"page_id"}}`, encodeURIComponent(String(requestParameters.page_id))).replace(`{${"subscriber_id"}}`, encodeURIComponent(String(requestParameters.subscriber_id))), method: 'DELETE', headers: headerParameters, query: queryParameters, }); return new runtime.JSONApiResponse(response, (jsonValue) => models_1.SubscriberFromJSON(jsonValue)); }); } /** * Unsubscribe a subscriber * Unsubscribe a subscriber */ deletePagesPageIdSubscribersSubscriberId(requestParameters) { return __awaiter(this, void 0, void 0, function* () { const response = yield this.deletePagesPageIdSubscribersSubscriberIdRaw(requestParameters); return yield response.value(); }); } /** * Get a list of subscribers * Get a list of subscribers */ getPagesPageIdSubscribersRaw(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 getPagesPageIdSubscribers.'); } const queryParameters = {}; if (requestParameters.q !== undefined) { queryParameters['q'] = requestParameters.q; } if (requestParameters.type !== undefined) { queryParameters['type'] = requestParameters.type; } if (requestParameters.state !== undefined) { queryParameters['state'] = requestParameters.state; } if (requestParameters.limit !== undefined) { queryParameters['limit'] = requestParameters.limit; } if (requestParameters.page !== undefined) { queryParameters['page'] = requestParameters.page; } if (requestParameters.sort_field !== undefined) { queryParameters['sort_field'] = requestParameters.sort_field; } if (requestParameters.sort_direction !== undefined) { queryParameters['sort_direction'] = requestParameters.sort_direction; } 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}/subscribers`.replace(`{${"page_id"}}`, encodeURIComponent(String(requestParameters.page_id))), method: 'GET', headers: headerParameters, query: queryParameters, }); return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(models_1.SubscriberFromJSON)); }); } /** * Get a list of subscribers * Get a list of subscribers */ getPagesPageIdSubscribers(requestParameters) { return __awaiter(this, void 0, void 0, function* () { const response = yield this.getPagesPageIdSubscribersRaw(requestParameters); return yield response.value(); }); } /** * Get a count of subscribers by type * Get a count of subscribers by type */ getPagesPageIdSubscribersCountRaw(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 getPagesPageIdSubscribersCount.'); } const queryParameters = {}; if (requestParameters.type !== undefined) { queryParameters['type'] = requestParameters.type; } if (requestParameters.state !== undefined) { queryParameters['state'] = requestParameters.state; } 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}/subscribers/count`.replace(`{${"page_id"}}`, encodeURIComponent(String(requestParameters.page_id))), method: 'GET', headers: headerParameters, query: queryParameters, }); return new runtime.JSONApiResponse(response, (jsonValue) => models_1.SubscriberCountByTypeFromJSON(jsonValue)); }); } /** * Get a count of subscribers by type * Get a count of subscribers by type */ getPagesPageIdSubscribersCount(requestParameters) { return __awaiter(this, void 0, void 0, function* () { const response = yield this.getPagesPageIdSubscribersCountRaw(requestParameters); return yield response.value(); }); } /** * Get a histogram of subscribers by type and then state * Get a histogram of subscribers by type and then state */ getPagesPageIdSubscribersHistogramByStateRaw(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 getPagesPageIdSubscribersHistogramByState.'); } 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}/subscribers/histogram_by_state`.replace(`{${"page_id"}}`, encodeURIComponent(String(requestParameters.page_id))), method: 'GET', headers: headerParameters, query: queryParameters, }); return new runtime.JSONApiResponse(response, (jsonValue) => models_1.SubscriberCountByTypeAndStateFromJSON(jsonValue)); }); } /** * Get a histogram of subscribers by type and then state * Get a histogram of subscribers by type and then state */ getPagesPageIdSubscribersHistogramByState(requestParameters) { return __awaiter(this, void 0, void 0, function* () { const response = yield this.getPagesPageIdSubscribersHistogramByStateRaw(requestParameters); return yield response.value(); }); } /** * Get a subscriber * Get a subscriber */ getPagesPageIdSubscribersSubscriberIdRaw(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 getPagesPageIdSubscribersSubscriberId.'); } if (requestParameters.subscriber_id === null || requestParameters.subscriber_id === undefined) { throw new runtime.RequiredError('subscriber_id', 'Required parameter requestParameters.subscriber_id was null or undefined when calling getPagesPageIdSubscribersSubscriberId.'); } 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}/subscribers/{subscriber_id}`.replace(`{${"page_id"}}`, encodeURIComponent(String(requestParameters.page_id))).replace(`{${"subscriber_id"}}`, encodeURIComponent(String(requestParameters.subscriber_id))), method: 'GET', headers: headerParameters, query: queryParameters, }); return new runtime.JSONApiResponse(response, (jsonValue) => models_1.SubscriberFromJSON(jsonValue)); }); } /** * Get a subscriber * Get a subscriber */ getPagesPageIdSubscribersSubscriberId(requestParameters) { return __awaiter(this, void 0, void 0, function* () { const response = yield this.getPagesPageIdSubscribersSubscriberIdRaw(requestParameters); return yield response.value(); }); } /** * Get a list of unsubscribed subscribers * Get a list of unsubscribed subscribers */ getPagesPageIdSubscribersUnsubscribedRaw(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 getPagesPageIdSubscribersUnsubscribed.'); } 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}/subscribers/unsubscribed`.replace(`{${"page_id"}}`, encodeURIComponent(String(requestParameters.page_id))), method: 'GET', headers: headerParameters, query: queryParameters, }); return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(models_1.SubscriberFromJSON)); }); } /** * Get a list of unsubscribed subscribers * Get a list of unsubscribed subscribers */ getPagesPageIdSubscribersUnsubscribed(requestParameters) { return __awaiter(this, void 0, void 0, function* () { const response = yield this.getPagesPageIdSubscribersUnsubscribedRaw(requestParameters); return yield response.value(); }); } /** * Create a subscriber * Create a subscriber */ postPagesPageIdSubscribersRaw(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 postPagesPageIdSubscribers.'); } if (requestParameters.PostPagesPageIdSubscribers === null || requestParameters.PostPagesPageIdSubscribers === undefined) { throw new runtime.RequiredError('PostPagesPageIdSubscribers', 'Required parameter requestParameters.PostPagesPageIdSubscribers was null or undefined when calling postPagesPageIdSubscribers.'); } 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}/subscribers`.replace(`{${"page_id"}}`, encodeURIComponent(String(requestParameters.page_id))), method: 'POST', headers: headerParameters, query: queryParameters, body: models_1.PostPagesPageIdSubscribersToJSON(requestParameters.PostPagesPageIdSubscribers), }); return new runtime.JSONApiResponse(response, (jsonValue) => models_1.SubscriberFromJSON(jsonValue)); }); } /** * Create a subscriber * Create a subscriber */ postPagesPageIdSubscribers(requestParameters) { return __awaiter(this, void 0, void 0, function* () { const response = yield this.postPagesPageIdSubscribersRaw(requestParameters); return yield response.value(); }); } /** * Reactivate a list of subscribers * Reactivate a list of subscribers */ postPagesPageIdSubscribersReactivateRaw(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 postPagesPageIdSubscribersReactivate.'); } if (requestParameters.PostPagesPageIdSubscribersReactivate === null || requestParameters.PostPagesPageIdSubscribersReactivate === undefined) { throw new runtime.RequiredError('PostPagesPageIdSubscribersReactivate', 'Required parameter requestParameters.PostPagesPageIdSubscribersReactivate was null or undefined when calling postPagesPageIdSubscribersReactivate.'); } 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}/subscribers/reactivate`.replace(`{${"page_id"}}`, encodeURIComponent(String(requestParameters.page_id))), method: 'POST', headers: headerParameters, query: queryParameters, body: models_1.PostPagesPageIdSubscribersReactivateToJSON(requestParameters.PostPagesPageIdSubscribersReactivate), }); return new runtime.VoidApiResponse(response); }); } /** * Reactivate a list of subscribers * Reactivate a list of subscribers */ postPagesPageIdSubscribersReactivate(requestParameters) { return __awaiter(this, void 0, void 0, function* () { yield this.postPagesPageIdSubscribersReactivateRaw(requestParameters); }); } /** * Resend confirmations to a list of subscribers * Resend confirmations to a list of subscribers */ postPagesPageIdSubscribersResendConfirmationRaw(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 postPagesPageIdSubscribersResendConfirmation.'); } if (requestParameters.PostPagesPageIdSubscribersResendConfirmation === null || requestParameters.PostPagesPageIdSubscribersResendConfirmation === undefined) { throw new runtime.RequiredError('PostPagesPageIdSubscribersResendConfirmation', 'Required parameter requestParameters.PostPagesPageIdSubscribersResendConfirmation was null or undefined when calling postPagesPageIdSubscribersResendConfirmation.'); } 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}/subscribers/resend_confirmation`.replace(`{${"page_id"}}`, encodeURIComponent(String(requestParameters.page_id))), method: 'POST', headers: headerParameters, query: queryParameters, body: models_1.PostPagesPageIdSubscribersResendConfirmationToJSON(requestParameters.PostPagesPageIdSubscribersResendConfirmation), }); return new runtime.VoidApiResponse(response); }); } /** * Resend confirmations to a list of subscribers * Resend confirmations to a list of subscribers */ postPagesPageIdSubscribersResendConfirmation(requestParameters) { return __awaiter(this, void 0, void 0, function* () { yield this.postPagesPageIdSubscribersResendConfirmationRaw(requestParameters); }); } /** * Resend confirmation to a subscriber * Resend confirmation to a subscriber */ postPagesPageIdSubscribersSubscriberIdResendConfirmationRaw(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 postPagesPageIdSubscribersSubscriberIdResendConfirmation.'); } if (requestParameters.subscriber_id === null || requestParameters.subscriber_id === undefined) { throw new runtime.RequiredError('subscriber_id', 'Required parameter requestParameters.subscriber_id was null or undefined when calling postPagesPageIdSubscribersSubscriberIdResendConfirmation.'); } 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}/subscribers/{subscriber_id}/resend_confirmation`.replace(`{${"page_id"}}`, encodeURIComponent(String(requestParameters.page_id))).replace(`{${"subscriber_id"}}`, encodeURIComponent(String(requestParameters.subscriber_id))), method: 'POST', headers: headerParameters, query: queryParameters, }); return new runtime.VoidApiResponse(response); }); } /** * Resend confirmation to a subscriber * Resend confirmation to a subscriber */ postPagesPageIdSubscribersSubscriberIdResendConfirmation(requestParameters) { return __awaiter(this, void 0, void 0, function* () { yield this.postPagesPageIdSubscribersSubscriberIdResendConfirmationRaw(requestParameters); }); } /** * Unsubscribe a list of subscribers * Unsubscribe a list of subscribers */ postPagesPageIdSubscribersUnsubscribeRaw(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 postPagesPageIdSubscribersUnsubscribe.'); } if (requestParameters.PostPagesPageIdSubscribersUnsubscribe === null || requestParameters.PostPagesPageIdSubscribersUnsubscribe === undefined) { throw new runtime.RequiredError('PostPagesPageIdSubscribersUnsubscribe', 'Required parameter requestParameters.PostPagesPageIdSubscribersUnsubscribe was null or undefined when calling postPagesPageIdSubscribersUnsubscribe.'); } 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}/subscribers/unsubscribe`.replace(`{${"page_id"}}`, encodeURIComponent(String(requestParameters.page_id))), method: 'POST', headers: headerParameters, query: queryParameters, body: models_1.PostPagesPageIdSubscribersUnsubscribeToJSON(requestParameters.PostPagesPageIdSubscribersUnsubscribe), }); return new runtime.VoidApiResponse(response); }); } /** * Unsubscribe a list of subscribers * Unsubscribe a list of subscribers */ postPagesPageIdSubscribersUnsubscribe(requestParameters) { return __awaiter(this, void 0, void 0, function* () { yield this.postPagesPageIdSubscribersUnsubscribeRaw(requestParameters); }); } } exports.SubscribersApi = SubscribersApi; /** * @export * @enum {string} */ var GetPagesPageIdSubscribersTypeEnum; (function (GetPagesPageIdSubscribersTypeEnum) { GetPagesPageIdSubscribersTypeEnum["Email"] = "email"; GetPagesPageIdSubscribersTypeEnum["Sms"] = "sms"; GetPagesPageIdSubscribersTypeEnum["Webhook"] = "webhook"; GetPagesPageIdSubscribersTypeEnum["IntegrationPartner"] = "integration_partner"; })(GetPagesPageIdSubscribersTypeEnum = exports.GetPagesPageIdSubscribersTypeEnum || (exports.GetPagesPageIdSubscribersTypeEnum = {})); /** * @export * @enum {string} */ var GetPagesPageIdSubscribersStateEnum; (function (GetPagesPageIdSubscribersStateEnum) { GetPagesPageIdSubscribersStateEnum["Active"] = "active"; GetPagesPageIdSubscribersStateEnum["Unconfirmed"] = "unconfirmed"; GetPagesPageIdSubscribersStateEnum["Quarantined"] = "quarantined"; GetPagesPageIdSubscribersStateEnum["All"] = "all"; })(GetPagesPageIdSubscribersStateEnum = exports.GetPagesPageIdSubscribersStateEnum || (exports.GetPagesPageIdSubscribersStateEnum = {})); /** * @export * @enum {string} */ var GetPagesPageIdSubscribersSortFieldEnum; (function (GetPagesPageIdSubscribersSortFieldEnum) { GetPagesPageIdSubscribersSortFieldEnum["Primary"] = "primary"; GetPagesPageIdSubscribersSortFieldEnum["CreatedAt"] = "created_at"; GetPagesPageIdSubscribersSortFieldEnum["QuarantinedAt"] = "quarantined_at"; GetPagesPageIdSubscribersSortFieldEnum["Relevance"] = "relevance"; })(GetPagesPageIdSubscribersSortFieldEnum = exports.GetPagesPageIdSubscribersSortFieldEnum || (exports.GetPagesPageIdSubscribersSortFieldEnum = {})); /** * @export * @enum {string} */ var GetPagesPageIdSubscribersSortDirectionEnum; (function (GetPagesPageIdSubscribersSortDirectionEnum) { GetPagesPageIdSubscribersSortDirectionEnum["Asc"] = "asc"; GetPagesPageIdSubscribersSortDirectionEnum["Desc"] = "desc"; })(GetPagesPageIdSubscribersSortDirectionEnum = exports.GetPagesPageIdSubscribersSortDirectionEnum || (exports.GetPagesPageIdSubscribersSortDirectionEnum = {})); /** * @export * @enum {string} */ var GetPagesPageIdSubscribersCountTypeEnum; (function (GetPagesPageIdSubscribersCountTypeEnum) { GetPagesPageIdSubscribersCountTypeEnum["Email"] = "email"; GetPagesPageIdSubscribersCountTypeEnum["Sms"] = "sms"; GetPagesPageIdSubscribersCountTypeEnum["Webhook"] = "webhook"; GetPagesPageIdSubscribersCountTypeEnum["IntegrationPartner"] = "integration_partner"; })(GetPagesPageIdSubscribersCountTypeEnum = exports.GetPagesPageIdSubscribersCountTypeEnum || (exports.GetPagesPageIdSubscribersCountTypeEnum = {})); /** * @export * @enum {string} */ var GetPagesPageIdSubscribersCountStateEnum; (function (GetPagesPageIdSubscribersCountStateEnum) { GetPagesPageIdSubscribersCountStateEnum["Active"] = "active"; GetPagesPageIdSubscribersCountStateEnum["Unconfirmed"] = "unconfirmed"; GetPagesPageIdSubscribersCountStateEnum["Quarantined"] = "quarantined"; GetPagesPageIdSubscribersCountStateEnum["All"] = "all"; })(GetPagesPageIdSubscribersCountStateEnum = exports.GetPagesPageIdSubscribersCountStateEnum || (exports.GetPagesPageIdSubscribersCountStateEnum = {}));