How to use these fields
This release-matched technical reference indexes the JSON-visible fields in the reviewed typed models. Start with the operational guide and API conventions. A model is not a public mutation schema: request structs, response records, protected plans and internal receipts serve different purposes. Submit only the fields supported by the exact endpoint/client; unknown fields are rejected. Internal sequence, signature, receipt, owner and generation values cannot be edited to grant authority.
Optional means a Go JSON field can be omitted when empty; it does not waive an endpoint prerequisite. Values containing credentials/secrets must use the protected write-only form, never logs, query strings or support screenshots. Current account ownership, grants, feature/licence state and capability still apply.
CreateRequest
| JSON field |
Type |
Presence |
account_id |
string |
Optional when empty |
target_kind |
string |
Encoded by this model |
target_id |
string |
Encoded by this model |
hostnames |
[]string |
Encoded by this model |
source |
string |
Encoded by this model |
directory_id |
string |
Optional when empty |
challenge |
string |
Optional when empty |
dns_zone_id |
string |
Optional when empty |
contact_email |
string |
Optional when empty |
terms_accepted |
bool |
Encoded by this model |
bundle_sha256 |
string |
Optional when empty |
public_key_sha256 |
string |
Optional when empty |
ReplaceRequest
| JSON field |
Type |
Presence |
revision |
int64 |
Encoded by this model |
hostnames |
[]string |
Encoded by this model |
source |
string |
Encoded by this model |
directory_id |
string |
Optional when empty |
challenge |
string |
Optional when empty |
dns_zone_id |
string |
Optional when empty |
contact_email |
string |
Optional when empty |
terms_accepted |
bool |
Encoded by this model |
bundle_sha256 |
string |
Optional when empty |
public_key_sha256 |
string |
Optional when empty |
ChangeRequest
| JSON field |
Type |
Presence |
revision |
int64 |
Encoded by this model |
revocation_reason |
uint8 |
Optional when empty |
Certificate
| JSON field |
Type |
Presence |
id |
string |
Encoded by this model |
account_id |
string |
Optional when empty |
status |
string |
Encoded by this model |
account_blocked |
bool |
Encoded by this model |
revision |
int64 |
Encoded by this model |
desired_state |
string |
Encoded by this model |
observed_state |
string |
Encoded by this model |
runtime_revision |
int64 |
Encoded by this model |
configuration |
lifecycle.Configuration |
Encoded by this model |
leaf_sha256 |
string |
Optional when empty |
public_key_sha256 |
string |
Optional when empty |
chain_sha256 |
string |
Optional when empty |
serial_number |
string |
Optional when empty |
not_before |
*time.Time |
Optional when empty |
not_after |
*time.Time |
Optional when empty |
issuer |
string |
Optional when empty |
alert_state |
string |
Encoded by this model |
renewal_failures |
int |
Encoded by this model |
next_renewal_at |
*time.Time |
Optional when empty |
last_attempt_at |
*time.Time |
Optional when empty |
last_preflight |
json.RawMessage |
Encoded by this model |
created_at |
time.Time |
Encoded by this model |
updated_at |
time.Time |
Encoded by this model |
Submission
| JSON field |
Type |
Presence |
certificate |
Certificate |
Encoded by this model |
operation |
operations.Operation |
Encoded by this model |
replayed |
bool |
Encoded by this model |
RenewalClaim
| JSON field |
Type |
Presence |
certificate_id |
string |
Encoded by this model |
lease_until |
time.Time |
Encoded by this model |
TargetDescriptor
| JSON field |
Type |
Presence |
kind |
string |
Encoded by this model |
id |
string |
Encoded by this model |
account_id |
string |
Optional when empty |
hostnames |
[]string |
Encoded by this model |
status |
string |
Encoded by this model |
certificate_id |
string |
Optional when empty |
Verify the actual endpoint
Read a harmless authorized resource and validate the returned API/model version before automation. For a write, use current revision or ETag, the endpoint-specific secret/preview contract and a stable reviewed idempotency key. Follow the durable task to its final state and inspect service evidence. Missing/unqualified native behavior remains a release limitation; a field name does not prove a live service or complete recovery.