Terraform Cloud
Terraform Cloud: workspaces, runs, state versions, variables, projects. Exposes 45 actions covering the API surface an agent needs - read and write.
What it can do
| Method | What it does |
|---|---|
terraformcloud_organizations_list | List organizations - GET /organizations. |
terraformcloud_organization_get | Get one organization - GET /organizations/{name}. |
terraformcloud_organization_create | Create an organization - POST /organizations. |
terraformcloud_organization_update | Update an organization - PATCH /organizations/{name}. |
terraformcloud_organization_delete | Delete an organization - DELETE /organizations/{name}. |
terraformcloud_workspaces_list | List workspaces in an organization - GET /organizations/{org_name}/workspaces. |
terraformcloud_workspace_get | Get one workspace - GET /organizations/{org_name}/workspaces/{workspace_name}. |
terraformcloud_workspace_create | Create a workspace - POST /organizations/{org_name}/workspaces. |
terraformcloud_workspace_update | Update a workspace - PATCH /organizations/{org_name}/workspaces/{workspace_name}. |
terraformcloud_workspace_delete | Delete a workspace - DELETE /organizations/{org_name}/workspaces/{workspace_name}. |
terraformcloud_workspace_lock | Lock a workspace - POST /workspaces/{workspace_id}/actions/lock. |
terraformcloud_workspace_unlock | Unlock a workspace - DELETE /organizations/{org_name}/workspaces/{workspace_name}/actions/lock. |
terraformcloud_workspace_force_unlock | Force unlock a workspace - DELETE /organizations/{org_name}/workspaces/{workspace_name}/actions/force-unlock. |
terraformcloud_runs_list | List runs for a workspace - GET /organizations/{org_name}/workspaces/{workspace_name}/runs. |
terraformcloud_run_get | Get one run by ID - GET /runs/{run_id}. |
terraformcloud_run_create | Create a new run (start plan) - POST /organizations/{org_name}/workspaces/{workspace_name}/runs. |
terraformcloud_run_apply | Apply a run (execute plan) - POST /runs/{run_id}/actions/apply. |
terraformcloud_run_discard | Discard a run - POST /runs/{run_id}/actions/discard. |
terraformcloud_run_cancel | Cancel a run - POST /runs/{run_id}/actions/cancel. |
terraformcloud_variables_list | List variables for a workspace - GET /organizations/{org_name}/workspaces/{workspace_name}/vars. |
terraformcloud_variable_get | Get one variable - GET /organizations/{org_name}/workspaces/{workspace_name}/vars/{variable_id}. |
terraformcloud_variable_create | Create a variable - POST /organizations/{org_name}/workspaces/{workspace_name}/vars. |
terraformcloud_variable_update | Update a variable - PATCH /organizations/{org_name}/workspaces/{workspace_name}/vars/{variable_id}. |
terraformcloud_variable_delete | Delete a variable - DELETE /organizations/{org_name}/workspaces/{workspace_name}/vars/{variable_id}. |
terraformcloud_state_versions_list | List state versions for a workspace - GET /organizations/{org_name}/workspaces/{workspace_name}/state-versions. |
terraformcloud_state_version_get | Get one state version - GET /state-versions/{state_version_id}. |
terraformcloud_state_version_current_get | Get current state version - GET /organizations/{org_name}/workspaces/{workspace_name}/current-state-version. |
terraformcloud_config_versions_list | List configuration versions for a workspace - GET /organizations/{org_name}/workspaces/{workspace_name}/configuration-versions. |
terraformcloud_config_version_get | Get one configuration version - GET /configuration-versions/{config_version_id}. |
terraformcloud_teams_list | List teams in an organization - GET /organizations/{org_name}/teams. |
terraformcloud_team_get | Get one team - GET /organizations/{org_name}/teams/{team_name}. |
terraformcloud_team_create | Create a team - POST /organizations/{org_name}/teams. |
terraformcloud_team_update | Update a team - PATCH /organizations/{org_name}/teams/{team_id}. |
terraformcloud_team_delete | Delete a team - DELETE /organizations/{org_name}/teams/{team_id}. |
terraformcloud_projects_list | List projects in an organization - GET /organizations/{org_name}/projects. |
terraformcloud_project_get | Get one project - GET /projects/{project_id}. |
terraformcloud_project_create | Create a project - POST /organizations/{org_name}/projects. |
terraformcloud_project_update | Update a project - PATCH /projects/{project_id}. |
terraformcloud_project_delete | Delete a project - DELETE /projects/{project_id}. |
terraformcloud_policy_sets_list | List policy sets in an organization - GET /organizations/{org_name}/policy-sets. |
terraformcloud_policy_sets_kind_list | List policy sets by kind (e.g. |
terraformcloud_policy_set_get | Get one policy set - GET /organizations/{org_name}/policy-sets/{policy_set_id}. |
terraformcloud_registry_modules_list | List registry modules in an organization - GET /organizations/{org_name}/registry-modules. |
terraformcloud_registry_module_get | Get one registry module - GET /registry-modules/{namespace}/{name}/{provider}. |
terraformcloud_registry_modules_search | Search registry modules - GET /registry-modules/search. |
How to get credentials
This connector uses an API key / token. Create one in the provider dashboard, then paste it into FlyMyAI:
TERRAFORM_API_TOKEN- HCP Terraform - User Settings - Tokens. (https://app.terraform.io/app/settings/tokens)
Fields to fill in FlyMyAI
| FlyMyAI field | Where it comes from |
|---|---|
TERRAFORM_API_TOKEN | HCP Terraform - User Settings - Tokens. |
Troubleshooting
401 Unauthorized/403 Forbidden- the token is wrong, expired, or missing a required scope; regenerate it.429 Too Many Requests- provider rate limit; retry after a short backoff.- Unexpected
4xxon writes - double-check required fields; the agent confirms before write actions.
Links
We love our partners - FlyMy.AI builds with the best. Thanks, Terraform Cloud!