Terraform
Subscriptions API
Note: The subscriptions API is only available in HCP Terraform.
An organization can subscribe to different feature sets, which represent the pricing plans available in HCP Terraform. An organization's entitlement set is calculated using its subscription and feature set.
To change the subscription for an organization, use the billing settings in the HCP Terraform UI.
Show Subscription For Organization
GET /organizations/:organization_name/subscription
Parameter | Description |
---|---|
:organization_name | The name of the organization. |
Sample Request
curl \
--header "Authorization: Bearer $TOKEN" \
--header "Content-Type: application/vnd.api+json" \
--request GET \
https://app.terraform.io/api/v2/organizations/hashicorp/subscription
Sample Response
{
"data": {
"id": "sub-kyjptCZYXQ6amEVu",
"type": "subscriptions",
"attributes": {
"end-at": null,
"is-active": true,
"start-at": "2021-01-20T07:03:53.492Z",
"runs-ceiling": 1,
"contract-start-at": null,
"contract-user-limit": null,
"contract-apply-limit": null,
"run-task-limit": null,
"run-task-workspace-limit": null,
"run-task-mandatory-enforcement-limit": null,
"policy-set-limit": null,
"policy-limit": null,
"policy-mandatory-enforcement-limit": null,
"versioned-policy-set-limit": null,
"agents-ceiling": 0,
"is-public-free-tier": true,
"is-self-serve-trial": false
},
"relationships": {
"organization": {
"data": {
"id": "hashicorp",
"type": "organizations"
}
},
"billing-account": {
"data": null
},
"feature-set": {
"data": {
"id": "fs-EvCGYfpx9CVRzteA",
"type": "feature-sets"
}
}
},
"links": {
"self": "/api/v2/subscriptions/sub-kyjptCZYXQ6amEVu"
}
},
"included": [
{
"id": "fs-EvCGYfpx9CVRzteA",
"type": "feature-sets",
"attributes": {
"audit-logging": false,
"comparison-description": "Essential collaboration features for practitioners and small teams.",
"cost-estimation": false,
"cost": 0,
"description": "State storage, locking, run history, VCS integration, private module registry, and remote operations",
"global-run-tasks": false,
"identifier": "free",
"is-current": true,
"is-free-tier": true,
"module-tests-generation": false,
"name": "Free",
"plan": null,
"policy-enforcement": false,
"policy-limit": null,
"policy-mandatory-enforcement-limit": null,
"policy-set-limit": null,
"private-networking": false,
"private-policy-agents": false,
"private-vcs": false,
"run-task-limit": null,
"run-task-mandatory-enforcement-limit": null,
"run-task-workspace-limit": null,
"run-tasks": false,
"self-serve-billing": true,
"sentinel": false,
"sso": false,
"teams": false,
"user-limit": 5,
"versioned-policy-set-limit": null
}
}
]
}
Show Subscription By ID
GET /subscriptions/:id
Parameter | Description |
---|---|
:id | The ID of the Subscription to show |
Sample Request
curl \
--header "Authorization: Bearer $TOKEN" \
--header "Content-Type: application/vnd.api+json" \
--request GET \
https://app.terraform.io/api/v2/organizations/hashicorp/subscription
Sample Response
{
"data": {
"id": "sub-kyjptCZYXQ6amEVu",
"type": "subscriptions",
"attributes": {
"end-at": null,
"is-active": true,
"start-at": "2021-01-20T07:03:53.492Z",
"runs-ceiling": 1,
"contract-start-at": null,
"contract-user-limit": null,
"contract-apply-limit": null,
"agents-ceiling": 0,
"run-task-limit": null,
"run-task-workspace-limit": null,
"run-task-mandatory-enforcement-limit": null,
"policy-set-limit": null,
"policy-limit": null,
"policy-mandatory-enforcement-limit": null,
"versioned-policy-set-limit": null,
"is-public-free-tier": true,
"is-self-serve-trial": false
},
"relationships": {
"organization": {
"data": {
"id": "hashicorp",
"type": "organizations"
}
},
"billing-account": {
"data": null
},
"feature-set": {
"data": {
"id": "fs-EvCGYfpx9CVRzteA",
"type": "feature-sets"
}
}
},
"links": {
"self": "/api/v2/subscriptions/sub-kyjptCZYXQ6amEVu"
}
},
"included": [
{
"id": "fs-EvCGYfpx9CVRzteA",
"type": "feature-sets",
"attributes": {
"audit-logging": false,
"comparison-description": "Essential collaboration features for practitioners and small teams.",
"cost-estimation": false,
"cost": 0,
"description": "State storage, locking, run history, VCS integration, private module registry, and remote operations",
"global-run-tasks": false,
"identifier": "free",
"is-current": true,
"is-free-tier": true,
"module-tests-generation": false,
"name": "Free",
"plan": null,
"policy-enforcement": false,
"policy-limit": null,
"policy-mandatory-enforcement-limit": null,
"policy-set-limit": null,
"private-networking": false,
"private-policy-agents": false,
"private-vcs": false,
"run-task-limit": null,
"run-task-mandatory-enforcement-limit": null,
"run-task-workspace-limit": null,
"run-tasks": false,
"self-serve-billing": true,
"sentinel": false,
"sso": false,
"teams": false,
"user-limit": 5,
"versioned-policy-set-limit": null
}
}
]
}