Terraform
- Terraform Enterprise
- 1.1.x
- 1.0.x
- v202507-1
- v202506-1
- v202505-1
- v202504-1
- v202503-1
- v202502-2
- v202502-1
- v202501-1
- v202411-2
- v202411-1
- v202410-1
- v202409-3
- v202409-2
- v202409-1
- v202408-1
- No versions of this document exist before v202408-1. Click below to redirect to the version homepage.
- v202407-1
- v202406-1
- v202405-1
- v202404-2
- v202404-1
- v202402-2
- v202402-1
- v202401-2
- v202401-1
- v202312-1
- v202311-1
- v202310-1
- v202309-1
- v202308-1
- v202307-1
- v202306-1
- v202305-2
- v202305-1
- v202304-1
- v202303-1
- v202302-1
- v202301-2
- v202301-1
- v202212-2
- v202212-1
- v202211-1
- v202210-1
- v202209-2
- v202209-1
- v202208-3
- v202208-2
- v202208-1
- v202207-2
- v202207-1
- v202206-1
Readiness endpoint
The readiness endpoint checks if Terraform Enterprise is ready to accept requests. It performs a quick health check of critical subsystems and returns the current readiness status.
Endpoint
GET /api/v1/health/readiness
Query parameters
| Parameter | Type | Description |
|---|---|---|
timeout | integer | Optional. Timeout in seconds for the readiness check. Valid range is 1-30. Default is 1. |
Sample request
curl \
--request GET \
"https://tfe.example.com/api/v1/health/readiness?timeout=5"
Readiness Registry Checks
| Subsytem | What it Checks |
|---|---|
| Archivist | Ensures backend storage connectivity |
| Atlas | Validates Atlas Rails application health endpoint connectivity |
| Vault | Validates that Vault is initialized, sealed (or unsealed) and active |
| Database | Fast connectivity test to PostgreSQL (no version/extension validation, no retries) |
| Redis | Fast connectivity test to Redis (no retry, no validation) |
| Task Worker | Checks if task worker is in draining state |
| Disk | Verifies disk path exists and is accessible (disk operational mode only) |
Response
The endpoint returns the readiness status in JSON format by default. For requests with Accept header containing text/plain or text/html, it returns plain text.
JSON response
| Attribute | Type | Description |
|---|---|---|
node | string | Name of the node that performed the check |
status | string | Overall readiness status: OK, ERROR, or DRAINING |
checks | array of objects | Detailed status for each subsystem check |
checks[].check | string | Name of the subsystem being checked |
checks[].status | string | Status of the check: OK or ERROR |
Sample JSON response
{
"node": "84ebea16aab1",
"status": "ERROR",
"checks": [
{
"check": "archivist",
"status": "OK"
},
{
"check": "atlas",
"status": "ERROR"
},
{
"check": "database",
"status": "OK"
},
{
"check": "disk",
"status": "OK"
},
{
"check": "redis",
"status": "OK"
},
{
"check": "task-worker",
"status": "ERROR"
},
{
"check": "vault",
"status": "OK"
}
]
}
Plain text response
Returns the overall status as plain text: OK, ERROR, or DRAINING.
Response codes
| Status | Response | Reason |
|---|---|---|
| 200 | JSON API document or plain text | Terraform Enterprise is ready |
| 400 | JSON API error object error | Invalid timeout parameter |
| 503 | JSON API document or plain text | Terraform Enterprise is not ready or draining |