Sign inGet Started

Update the webhook client certificate settings

PATCH
/v1/workspace/webhook-client-certificate
curl -X PATCH "https://us1.platform.bird.com/v1/workspace/webhook-client-certificate" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "state": "disabled",
    "crl_check": "disabled"
  }'
Response200
{
  "state": "disabled",
  "crl_check": "disabled",
  "certificate": {
    "subject": "CN=bird-webhooks,O=Example Inc.",
    "issuer": "CN=Example Client CA,O=Example Inc.",
    "serial_number": "4f2a91c0d3",
    "fingerprint_sha256": "9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08"
  },
  "signing_request": {
    "csr": "-----BEGIN CERTIFICATE REQUEST-----\nMIIB...\n-----END CERTIFICATE REQUEST-----\n"
  }
}

Changes when we present the client certificate on webhook deliveries, and the CRL check of the receiver's server certificate. Omit a field to keep its value. Test sends apply a change at once. Deliveries can take up to a few minutes to apply it. Setting evaluating, enforced or a crl_check of full_chain requires webhook mTLS to be enabled for this workspace. Without it, this returns 422. With it, setting evaluating or enforced without an uploaded certificate returns 409.

Request Payload

state
string

Whether client certificates are off (disabled), checked while the previous behavior stays available (evaluating), or required (enforced).

Possible values: disabled, evaluating, enforced

crl_check
string

How a certificate chain is checked against the certificate revocation list (CRL) that each certificate names. With full_chain, the leaf certificate and each intermediate certificate below the trusted root are checked. A certificate that names no CRL is not checked.

Possible values: disabled, full_chain

Response Payload

state
string
required

Whether client certificates are off (disabled), checked while the previous behavior stays available (evaluating), or required (enforced).

Possible values: disabled, evaluating, enforced

crl_check
string
required

How a certificate chain is checked against the certificate revocation list (CRL) that each certificate names. With full_chain, the leaf certificate and each intermediate certificate below the trusted root are checked. A certificate that names no CRL is not checked.

Possible values: disabled, full_chain

certificate
nullable object
required

The certificate in use. null until you upload one.

Show child attributes
certificate.subject
string
required

The distinguished name of the certificate.

certificate.issuer
string
required

The distinguished name of the certificate authority that signed it.

certificate.serial_number
string
required

The serial number, in lowercase hexadecimal.

certificate.fingerprint_sha256
string
required

The SHA-256 fingerprint of the certificate, in lowercase hexadecimal.

certificate.not_before
string
required

Start of the validity period.

certificate.not_after
string
required

End of the validity period.

signing_request
nullable object
required

The signing request that waits for a signed certificate. null when none waits.

Show child attributes
updated_at
nullable string
required

When the certificate or its state last changed. null until the first change.

Continue with the documentation, guides and examples for this topic.