cloudflare
Version:
The official TypeScript library for the Cloudflare API
224 lines • 7.14 kB
text/typescript
import { APIResource } from "../../core/resource.mjs";
import { APIPromise } from "../../core/api-promise.mjs";
import { PagePromise, V4PagePaginationArray, type V4PagePaginationArrayParams } from "../../core/pagination.mjs";
import { RequestOptions } from "../../internal/request-options.mjs";
export declare class BaseClientCertificates extends APIResource {
static readonly _key: readonly ['clientCertificates'];
/**
* 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: ClientCertificateCreateParams, options?: RequestOptions): APIPromise<ClientCertificate>;
/**
* 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: ClientCertificateListParams, options?: RequestOptions): PagePromise<ClientCertificatesV4PagePaginationArray, ClientCertificate>;
/**
* 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: string, params: ClientCertificateDeleteParams, options?: RequestOptions): APIPromise<ClientCertificate>;
/**
* 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: string, params: ClientCertificateEditParams, options?: RequestOptions): APIPromise<ClientCertificate>;
/**
* 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: string, params: ClientCertificateGetParams, options?: RequestOptions): APIPromise<ClientCertificate>;
}
export declare class ClientCertificates extends BaseClientCertificates {
}
export type ClientCertificatesV4PagePaginationArray = V4PagePaginationArray<ClientCertificate>;
export interface ClientCertificate {
/**
* Client Certificate Tag
*/
id?: string;
/**
* The Client Certificate PEM.
*/
certificate?: string;
/**
* Certificate Authority used to issue the Client Certificate.
*/
certificate_authority?: ClientCertificate.CertificateAuthority;
/**
* Common Name of the Client Certificate.
*/
common_name?: string;
/**
* Country, provided by the CSR.
*/
country?: string;
/**
* The Certificate Signing Request (CSR). Must be newline-encoded.
*/
csr?: string;
/**
* Date that the Client Certificate expires.
*/
expires_on?: string;
/**
* Unique identifier of the Client Certificate.
*/
fingerprint_sha256?: string;
/**
* Date that the Client Certificate was issued by the Certificate Authority.
*/
issued_on?: string;
/**
* Location, provided by the CSR.
*/
location?: string;
/**
* Organization, provided by the CSR.
*/
organization?: string;
/**
* Organizational Unit, provided by the CSR.
*/
organizational_unit?: string;
/**
* The serial number on the created Client Certificate.
*/
serial_number?: string;
/**
* The type of hash used for the Client Certificate..
*/
signature?: string;
/**
* Subject Key Identifier.
*/
ski?: string;
/**
* State, provided by the CSR.
*/
state?: string;
/**
* Client Certificates may be active or revoked, and the pending_reactivation or
* pending_revocation represent in-progress asynchronous transitions.
*/
status?: 'active' | 'pending_reactivation' | 'pending_revocation' | 'revoked';
/**
* The number of days the Client Certificate will be valid after the issued_on
* date.
*/
validity_days?: number;
}
export declare namespace ClientCertificate {
/**
* Certificate Authority used to issue the Client Certificate.
*/
interface CertificateAuthority {
id?: string;
name?: string;
}
}
export interface ClientCertificateCreateParams {
/**
* Path param: Identifier.
*/
zone_id: string;
/**
* Body param: The Certificate Signing Request (CSR). Must be newline-encoded.
*/
csr: string;
/**
* Body param: The number of days the Client Certificate will be valid after the
* issued_on date.
*/
validity_days: number;
}
export interface ClientCertificateListParams extends V4PagePaginationArrayParams {
/**
* Path param: Identifier.
*/
zone_id: string;
/**
* Query param: Limit to the number of records returned.
*/
limit?: number;
/**
* Query param: Offset the results.
*/
offset?: number;
/**
* Query param: Client Certitifcate Status to filter results by.
*/
status?: 'all' | 'active' | 'pending_reactivation' | 'pending_revocation' | 'revoked';
}
export interface ClientCertificateDeleteParams {
/**
* Identifier.
*/
zone_id: string;
}
export interface ClientCertificateEditParams {
/**
* Path param: Identifier.
*/
zone_id: string;
/**
* Body param
*/
reactivate?: boolean;
}
export interface ClientCertificateGetParams {
/**
* Identifier.
*/
zone_id: string;
}
export declare namespace ClientCertificates {
export { type ClientCertificate as ClientCertificate, type ClientCertificatesV4PagePaginationArray as ClientCertificatesV4PagePaginationArray, type ClientCertificateCreateParams as ClientCertificateCreateParams, type ClientCertificateListParams as ClientCertificateListParams, type ClientCertificateDeleteParams as ClientCertificateDeleteParams, type ClientCertificateEditParams as ClientCertificateEditParams, type ClientCertificateGetParams as ClientCertificateGetParams, };
}
//# sourceMappingURL=client-certificates.d.mts.map