---
name: schematics-sc-workspaces-deploy
title: Running a workspace apply
description: IBM Cloud Schematics enables you to deploy and manage resources in any IBM Cloud location or region globally. The region where you create and work with your Schematics workspaces and actions is independent of the region where your Cloud resources are deployed or configured.
last-updated: 2026-07-07
---

> ## Documentation Index
> The table of contents for this documentation set is at https://cloud.ibm.com/docs/schematics?format=markdown
> The index for all IBM Cloud docs is at: https://cloud.ibm.com/docs/llms.txt
> Use these files to discover more information as needed.

# Running a workspace apply
{: #sch-deploy-wks}

Schematics uses workspaces to deploy and manage resources in IBM Cloud&reg; accounts.

IBM Cloud Schematics enables you to deploy and manage resources in any IBM Cloud location or region globally. The region where you create and work with your Schematics workspaces and actions is independent of the region where your Cloud resources are deployed or configured.
{: shortdesc}

IBM Cloud Schematics runs your jobs from the Schematics region hosting the workspace and remotely accesses services to provision resources in the target regions determined by your Terraform templates. Workspace operations in remote regions are unaffected by network latency between the management and target regions.

IBM Cloud Schematics is deprecating older versions of Terraform and introducing support for newer Terraform version. For more information, see the [Schematics Terraform deprecation lifecycle](https://cloud.ibm.com/docs/schematics?topic=schematics-deprecate-tf-version&format=markdown#deprecate-phase) and the [Deprecation Schedule](https://cloud.ibm.com/docs/schematics?topic=schematics-deprecate-tf-version&format=markdown#deprecate-timeline).
{: deprecated}

## Before you begin
{: #deploy-prerequisites}

- [Create a Terraform configuration](https://cloud.ibm.com/docs/schematics?topic=schematics-create-tf-config&format=markdown), and store the configuration in a `GitHub`, `GitLab`, or `Bitbucket` repository. You can also upload a tape archive file (`.tar`) from your local workstation to provide your template to IBM Cloud Schematics. For more information, see the [`ibmcloud schematics workspace upload`](https://cloud.ibm.com/docs/schematics?topic=schematics-schematics-cli-reference&format=markdown#schematics-workspace-upload) command and see the [upload a `tar` file to your workspace](https://cloud.ibm.com/apis/schematics#template-repo-upload) API.
- Make sure that you have the [permissions](https://cloud.ibm.com/docs/schematics?topic=schematics-access&format=markdown) to create a workspace.

Ensure the `location` and the `url` endpoint are pointing to the same region when you list the Schematics workspaces and actions. For more information about location and endpoint, see [Where is your information stored](https://cloud.ibm.com/docs/schematics?topic=schematics-secure-data&format=markdown#pi-location)?

- Run a Schematics apply job against your workspace. An apply job provisions, modifies, or removes the Cloud resources that you describe in the Terraform template that your workspace points. Depending on the type and number of resources that you want to provision or modify, this process might take a few minutes, or hours to complete. During this time, you cannot edit your workspace. After all updates are applied, the state of the files persists to determine what resources exist in your IBM Cloud account.
{: note}

## Perform a workspace apply using the UI
{: #deploy-wks-ui}
{: ui}

1. Log in to [IBM Cloud console](https://cloud.ibm.com/){: external}.
2. Click the **Menu** icon ![hamburger icon](../images/icon_hamburger.svg) > **Platform Automation** > **Schematics** > [**Terraform**](https://cloud.ibm.com/automation/schematics/terraform){: external}.
3. Search your workspace in specific location and click your workspace name.
4. Click **Apply plan** to provision the configured resources.

### Verifying workspace apply
{: #verify-wks-deploy-ui}

1. Click your workspace that is listed in the [IBM Cloud console](https://cloud.ibm.com/automation/schematics/terraform){: external} to view the results of the workspace apply job.

## Perform a workspace apply using the CLI
{: #deploy-wks-cli}
{: cli}

1. Create a JSON file on your system to pass the parameters to Schematics to run the workspace apply. For more information about configuration options, see [`ibmcloud schematics workspace new`](https://cloud.ibm.com/docs/schematics?topic=schematics-schematics-cli-reference&format=markdown#schematics-workspace-new) command.

   Example

   ```json
   {
    "name": "testwspace31jan",
    "type": [
        "terraform_v1.4"
    ],
    "description": "terraform workspace",
    "location": "us-east",
    "tags": [
        "department:HR",
        "application:compensation",
        "environment:production"
    ],
    "template_repo": {
        "url": "https://github.com/Anil-CM/newrepo"
    },
    "workspace_status": {
        "frozen": true
    },
    "template_data": [
        {
            "folder": ".",
            "type": "terraform_v1.4",
            "variablestore": [
                {
                    "name": "sample_var",
                    "secure": true,
                    "value": "THIS IS IBM CLOUD TERRAFORM CLI DEMO",
                    "description": "Description of sample_var"
                },
                {
                    "name": "sleepy_time",
                    "value": "15"
                }
            ]
        }
    ]
   }
   ```
   {: codeblock}

    Syntax

    ```sh
    ibmcloud schematics apply --id <Provide your workspace ID>
    ```
    {: pre}

2. Apply the workspace. For more information about the apply argument flag, see [`ibmcloud schematics apply`](https://cloud.ibm.com/docs/schematics?topic=schematics-schematics-cli-reference&format=markdown#schematics-apply) command.

    ```sh
    ibmcloud schematics apply --id <workspace_id>
    ```
    {: pre}

3. Verify that your workspace apply has been executed successfully. Make sure that your workspace is in an **Inactive** state.

	```sh
    ibmcloud schematics workspace list
    ```
    {: pre}

4. Refer to, [Managing Cloud resources with Schematics](https://cloud.ibm.com/docs/schematics?topic=schematics-manage-lifecycle&format=markdown) to view job logs .

### Verifying workspace deploy
{: #verify-wks-deploy-cli}

Execute CLI command to check the status of the workspace deploy is success.

	```text
	ibmcloud schematics apply --id us-east.workspace.testwspace01feb.b5e8fdaa
	Do you really want to perform this action? [y/N]> Y

	Activity ID   df51c0e61a020592d3403a05d08692d7

	OK
	```
	{: screen}

On successful plan it returns the update details of an existing workspace.

For more information about FAQ, see [troubleshooting section](https://cloud.ibm.com/docs/schematics?topic=schematics-wks-create-api&interface=cli&format=markdown).

## Perform the workspace deploy using the API
{: #deploy-wks-api}
{: api}

1. Follow the [steps](https://cloud.ibm.com/docs/schematics?topic=schematics-setup-api&format=markdown#cs_api) to retrieve your IAM access token and authenticate with IBM Cloud Schematics by using the API.

2. Perform deploy for the existing workspace.

	Example

	```json

	PUT /v1/workspaces/{w_id}/apply HTTP/1.1
	Host: schematics.cloud.ibm.com
	Content-Type: application/json
	Authorization: <auth-token>
	Cache-Control: no-cache
	Postman-Token: 77ef7f05-7290-0b60-781c-f8c147c78ed2

	{
		"name": "testworkspacejanATTest",
		"type": [
			"terraform_v1.4"
		],
		"description": "terraform workspace",
		"tags": [
			"test:bbbranch"
		],
		"template_repo": {
			"url": "https://github.com/srikar-git/tf_cloudless_sleepy/tree/v0.13"
		},
		"template_data": [{
			"folder": ".",
			"type": "terraform_v1.4",

		"variablestore": [
		{
		"value": "12",
		"name": "sleepy_time",
		"type": "string"
		}
	]
		}]
	}
	```
	{: codeblock}

3. Verify that the workspace deploy list all the workspace jobs that are created.

    ```sh
    curl -X GET https://schematics.cloud.ibm.com/v1/workspaces -H "Authorization: <iam_access_token>"
    ```
    {: pre}

4. see [Managing Cloud resources with Schematics](https://cloud.ibm.com/docs/schematics?topic=schematics-manage-lifecycle&format=markdown) to start creating, updating, or deleting Cloud resources with Terraform.


### Verifying workspace deploy
{: #verify-wks-deploy-api}

Verify that the workspace are deployed successfully as shown in the output.
{: shortdesc}

	Output

	```text
	{
		"activityid": "a75d99109c80291faead70225b5409ee"
	}
	```
	{: screen}

On successful workspace apply, it returns the job activity id performed on the workspace. For more information, see [troubleshooting section](https://cloud.ibm.com/docs/schematics?topic=schematics-wks-create-api&interface=cli&format=markdown).

## Perform the workspace deploy with Terraform
{: #deploy-wks-terraform}
{: terraform}

1. Follow the steps in [Setting up Terraform for Schematics](https://cloud.ibm.com/docs/schematics?topic=schematics-terraform-setup&format=markdown) to create your workspace with Terraform.

2. See [Managing Cloud resources with Schematics](https://cloud.ibm.com/docs/schematics?topic=schematics-manage-lifecycle&format=markdown) to create, update, or delete Cloud resources with Terraform.

## Next steps
{: #sch-deploy-wks-nextsteps}

To manage your workspace refer to, [deploying workspace](https://cloud.ibm.com/docs/schematics?topic=schematics-sch-deploy-wks&format=markdown), [destroying workspace](https://cloud.ibm.com/docs/schematics?topic=schematics-sch-destroy-wks&interface=ui&format=markdown), and [deleting workspace](https://cloud.ibm.com/docs/schematics?topic=schematics-sch-delete-wks&interface=ui&format=markdown).