UNPKG

cloudflare

Version:

The official TypeScript library for the Cloudflare API

129 lines • 4.9 kB
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. import { APIResource } from "../../../core/resource.mjs"; import * as CredentialsAPI from "./credentials.mjs"; import { BaseCredentials, Credentials as CredentialsAPICredentials, } from "./credentials.mjs"; import { V4PagePaginationArray, } from "../../../core/pagination.mjs"; import { path } from "../../../internal/utils/path.mjs"; export var BaseConfiguration = /* @__PURE__ */ (() => { class BaseConfiguration extends APIResource { /** * Creates a JWT validation configuration for the zone. * * @example * ```ts * const tokenConfig = * await client.tokenValidation.configuration.create({ * zone_id: '023e105f4ecef8ad9ca31a8372d0c353', * credentials: { * keys: [ * { * alg: 'RS256', * e: 'e', * kid: 'kid', * kty: 'RSA', * n: 'n', * }, * ], * }, * description: * 'Long description for Token Validation Configuration', * title: 'Example Token Validation Configuration', * token_sources: [ * 'http.request.headers["x-auth"][0]', * 'http.request.cookies["Authorization"][0]', * ], * token_type: 'JWT', * }); * ``` */ create(params, options) { const { zone_id, ...body } = params; return this._client.post(path `/zones/${zone_id}/token_validation/config`, { body, ...options })._thenUnwrap((obj) => obj.result); } /** * Lists the JWT validation configurations defined for the zone. * * @example * ```ts * // Automatically fetches more pages as needed. * for await (const tokenConfig of client.tokenValidation.configuration.list( * { zone_id: '023e105f4ecef8ad9ca31a8372d0c353' }, * )) { * // ... * } * ``` */ list(params, options) { const { zone_id, ...query } = params; return this._client.getAPIList(path `/zones/${zone_id}/token_validation/config`, (V4PagePaginationArray), { query, ...options }); } /** * Deletes a JWT validation configuration from the zone. * * @example * ```ts * const configuration = * await client.tokenValidation.configuration.delete( * '4a7ee8d3-dd63-4ceb-9d5f-c27831854ce7', * { zone_id: '023e105f4ecef8ad9ca31a8372d0c353' }, * ); * ``` */ delete(configID, params, options) { const { zone_id } = params; return this._client.delete(path `/zones/${zone_id}/token_validation/config/${configID}`, options)._thenUnwrap((obj) => obj.result); } /** * Updates only the supplied fields on a JWT validation configuration. * * @example * ```ts * const response = * await client.tokenValidation.configuration.edit( * '4a7ee8d3-dd63-4ceb-9d5f-c27831854ce7', * { zone_id: '023e105f4ecef8ad9ca31a8372d0c353' }, * ); * ``` */ edit(configID, params, options) { const { zone_id, ...body } = params; return this._client.patch(path `/zones/${zone_id}/token_validation/config/${configID}`, { body, ...options, })._thenUnwrap((obj) => obj.result); } /** * Returns a JWT validation configuration by ID. * * @example * ```ts * const tokenConfig = * await client.tokenValidation.configuration.get( * '4a7ee8d3-dd63-4ceb-9d5f-c27831854ce7', * { zone_id: '023e105f4ecef8ad9ca31a8372d0c353' }, * ); * ``` */ get(configID, params, options) { const { zone_id } = params; return this._client.get(path `/zones/${zone_id}/token_validation/config/${configID}`, options)._thenUnwrap((obj) => obj.result); } } BaseConfiguration._key = Object.freeze([ 'tokenValidation', 'configuration', ]); return BaseConfiguration; })(); export var Configuration = /* @__PURE__ */ (() => { class Configuration extends BaseConfiguration { constructor() { super(...arguments); this.credentials = new CredentialsAPI.Credentials(this._client); } } Configuration.Credentials = CredentialsAPICredentials; Configuration.BaseCredentials = BaseCredentials; return Configuration; })(); //# sourceMappingURL=configuration.mjs.map