cloudflare
Version:
The official TypeScript library for the Cloudflare API
174 lines • 6.92 kB
JavaScript
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
import { APIResource } from "../../../core/resource.mjs";
import * as AssetsAPI from "./assets.mjs";
import { Assets, BaseAssets, } from "./assets.mjs";
import * as MessageAPI from "./message.mjs";
import { BaseMessageResource, MessageResource, } from "./message.mjs";
import * as PriorityAPI from "./priority.mjs";
import { BasePriorityResource, PriorityResource, } from "./priority.mjs";
import { SinglePage } from "../../../core/pagination.mjs";
import { path } from "../../../internal/utils/path.mjs";
export var BaseRequests = /* @__PURE__ */ (() => {
class BaseRequests extends APIResource {
/**
* Creating a request adds the request into the Cloudforce One queue for analysis.
* In addition to the content, a short title, type, priority, and releasability
* should be provided. If one is not provided, a default will be assigned.
*
* @example
* ```ts
* const item = await client.cloudforceOne.requests.create({
* account_id: '023e105f4ecef8ad9ca31a8372d0c353',
* });
* ```
*/
create(params, options) {
const { account_id, ...body } = params;
return this._client.post(path `/accounts/${account_id}/cloudforce-one/requests/new`, {
body,
...options,
})._thenUnwrap((obj) => obj.result);
}
/**
* Updating a request alters the request in the Cloudforce One queue. This API may
* be used to update any attributes of the request after the initial submission.
* Only fields that you choose to update need to be add to the request body.
*
* @example
* ```ts
* const item = await client.cloudforceOne.requests.update(
* 'f174e90a-fafe-4643-bbbc-4a0ed4fc8415',
* { account_id: '023e105f4ecef8ad9ca31a8372d0c353' },
* );
* ```
*/
update(requestID, params, options) {
const { account_id, ...body } = params;
return this._client.put(path `/accounts/${account_id}/cloudforce-one/requests/${requestID}`, {
body,
...options,
})._thenUnwrap((obj) => obj.result);
}
/**
* Lists Cloudforce One intelligence requests with filtering and pagination.
*
* @example
* ```ts
* // Automatically fetches more pages as needed.
* for await (const listItem of client.cloudforceOne.requests.list(
* {
* account_id: '023e105f4ecef8ad9ca31a8372d0c353',
* page: 0,
* per_page: 10,
* },
* )) {
* // ...
* }
* ```
*/
list(params, options) {
const { account_id, ...body } = params;
return this._client.getAPIList(path `/accounts/${account_id}/cloudforce-one/requests`, (SinglePage), { body, method: 'post', ...options });
}
/**
* Deletes a Cloudforce One intelligence request and all associated data.
*
* @example
* ```ts
* const request = await client.cloudforceOne.requests.delete(
* 'f174e90a-fafe-4643-bbbc-4a0ed4fc8415',
* { account_id: '023e105f4ecef8ad9ca31a8372d0c353' },
* );
* ```
*/
delete(requestID, params, options) {
const { account_id } = params;
return this._client.delete(path `/accounts/${account_id}/cloudforce-one/requests/${requestID}`, options);
}
/**
* Retrieves constant values used in Cloudforce One requests, including valid
* statuses and types.
*
* @example
* ```ts
* const requestConstants =
* await client.cloudforceOne.requests.constants({
* account_id: '023e105f4ecef8ad9ca31a8372d0c353',
* });
* ```
*/
constants(params, options) {
const { account_id } = params;
return this._client.get(path `/accounts/${account_id}/cloudforce-one/requests/constants`, options)._thenUnwrap((obj) => obj.result);
}
/**
* Retrieves details for a specific Cloudforce One intelligence request.
*
* @example
* ```ts
* const item = await client.cloudforceOne.requests.get(
* 'f174e90a-fafe-4643-bbbc-4a0ed4fc8415',
* { account_id: '023e105f4ecef8ad9ca31a8372d0c353' },
* );
* ```
*/
get(requestID, params, options) {
const { account_id } = params;
return this._client.get(path `/accounts/${account_id}/cloudforce-one/requests/${requestID}`, options)._thenUnwrap((obj) => obj.result);
}
/**
* Retrieves quota usage for Cloudforce One standard requests.
*
* @example
* ```ts
* const quota = await client.cloudforceOne.requests.quota({
* account_id: '023e105f4ecef8ad9ca31a8372d0c353',
* });
* ```
*/
quota(params, options) {
const { account_id } = params;
return this._client.get(path `/accounts/${account_id}/cloudforce-one/requests/quota`, options)._thenUnwrap((obj) => obj.result);
}
/**
* Lists available request types for Cloudforce One intelligence requests.
*
* @example
* ```ts
* // Automatically fetches more pages as needed.
* for await (const requestTypesResponse of client.cloudforceOne.requests.types(
* { account_id: '023e105f4ecef8ad9ca31a8372d0c353' },
* )) {
* // ...
* }
* ```
*/
types(params, options) {
const { account_id } = params;
return this._client.getAPIList(path `/accounts/${account_id}/cloudforce-one/requests/types`, (SinglePage), options);
}
}
BaseRequests._key = Object.freeze([
'cloudforceOne',
'requests',
]);
return BaseRequests;
})();
export var Requests = /* @__PURE__ */ (() => {
class Requests extends BaseRequests {
constructor() {
super(...arguments);
this.message = new MessageAPI.MessageResource(this._client);
this.priority = new PriorityAPI.PriorityResource(this._client);
this.assets = new AssetsAPI.Assets(this._client);
}
}
Requests.MessageResource = MessageResource;
Requests.BaseMessageResource = BaseMessageResource;
Requests.PriorityResource = PriorityResource;
Requests.BasePriorityResource = BasePriorityResource;
Requests.Assets = Assets;
Requests.BaseAssets = BaseAssets;
return Requests;
})();
//# sourceMappingURL=requests.mjs.map