cloudflare
Version:
The official TypeScript library for the Cloudflare API
103 lines • 4.09 kB
JavaScript
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
import { APIResource } from "../../core/resource.mjs";
import { V4PagePaginationArray } from "../../core/pagination.mjs";
import { path } from "../../internal/utils/path.mjs";
export var BaseClientCertificates = /* @__PURE__ */ (() => {
class BaseClientCertificates extends APIResource {
/**
* Create a new API Shield mTLS Client Certificate.
*
* @example
* ```ts
* const clientCertificate =
* await client.clientCertificates.create({
* zone_id: '023e105f4ecef8ad9ca31a8372d0c353',
* csr: '-----BEGIN CERTIFICATE REQUEST-----\nMIICY....\n-----END CERTIFICATE REQUEST-----',
* validity_days: 3650,
* });
* ```
*/
create(params, options) {
const { zone_id, ...body } = params;
return this._client.post(path `/zones/${zone_id}/client_certificates`, { body, ...options })._thenUnwrap((obj) => obj.result);
}
/**
* List all of your Zone's API Shield mTLS Client Certificates by Status and/or
* using Pagination.
*
* @example
* ```ts
* // Automatically fetches more pages as needed.
* for await (const clientCertificate of client.clientCertificates.list(
* { zone_id: '023e105f4ecef8ad9ca31a8372d0c353' },
* )) {
* // ...
* }
* ```
*/
list(params, options) {
const { zone_id, ...query } = params;
return this._client.getAPIList(path `/zones/${zone_id}/client_certificates`, (V4PagePaginationArray), { query, ...options });
}
/**
* Set a API Shield mTLS Client Certificate to pending_revocation status for
* processing to revoked status.
*
* @example
* ```ts
* const clientCertificate =
* await client.clientCertificates.delete(
* '0d89c70d-ad9f-4843-b99f-6cc0252067e9',
* { zone_id: '023e105f4ecef8ad9ca31a8372d0c353' },
* );
* ```
*/
delete(clientCertificateID, params, options) {
const { zone_id } = params;
return this._client.delete(path `/zones/${zone_id}/client_certificates/${clientCertificateID}`, options)._thenUnwrap((obj) => obj.result);
}
/**
* If a API Shield mTLS Client Certificate is in a pending_revocation state, you
* may reactivate it with this endpoint.
*
* @example
* ```ts
* const clientCertificate =
* await client.clientCertificates.edit(
* '0d89c70d-ad9f-4843-b99f-6cc0252067e9',
* { zone_id: '023e105f4ecef8ad9ca31a8372d0c353' },
* );
* ```
*/
edit(clientCertificateID, params, options) {
const { zone_id, ...body } = params;
return this._client.patch(path `/zones/${zone_id}/client_certificates/${clientCertificateID}`, {
body,
...options,
})._thenUnwrap((obj) => obj.result);
}
/**
* Get Details for a single mTLS API Shield Client Certificate.
*
* @example
* ```ts
* const clientCertificate =
* await client.clientCertificates.get(
* '0d89c70d-ad9f-4843-b99f-6cc0252067e9',
* { zone_id: '023e105f4ecef8ad9ca31a8372d0c353' },
* );
* ```
*/
get(clientCertificateID, params, options) {
const { zone_id } = params;
return this._client.get(path `/zones/${zone_id}/client_certificates/${clientCertificateID}`, options)._thenUnwrap((obj) => obj.result);
}
}
BaseClientCertificates._key = Object.freeze([
'clientCertificates',
]);
return BaseClientCertificates;
})();
export class ClientCertificates extends BaseClientCertificates {
}
//# sourceMappingURL=client-certificates.mjs.map