Home
/
API
/
Templates

Templates

Create group for organization

Code samples

# Example request using curl
curl -X POST http://coder-server:8080/api/v2/organizations/{organization}/groups \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'Coder-Session-Token: API_KEY'

POST /organizations/{organization}/groups

Body parameter

{
  "avatar_url": "string",
  "name": "string",
  "quota_allowance": 0
}

Parameters

NameInTypeRequiredDescription
organizationpathstringtrueOrganization ID
bodybodycodersdk.CreateGroupRequesttrueCreate group request

Example responses

201 Response

{
  "avatar_url": "string",
  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  "members": [
    {
      "avatar_url": "http://example.com",
      "created_at": "2019-08-24T14:15:22Z",
      "email": "[email protected]",
      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
      "last_seen_at": "2019-08-24T14:15:22Z",
      "organization_ids": ["497f6eca-6276-4993-bfeb-53cbbbba6f08"],
      "roles": [
        {
          "display_name": "string",
          "name": "string"
        }
      ],
      "status": "active",
      "username": "string"
    }
  ],
  "name": "string",
  "organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6",
  "quota_allowance": 0
}

Responses

StatusMeaningDescriptionSchema
201CreatedCreatedcodersdk.Group

To perform this operation, you must be authenticated. Learn more.

Get templates by organization

Code samples

# Example request using curl
curl -X GET http://coder-server:8080/api/v2/organizations/{organization}/templates \
  -H 'Accept: application/json' \
  -H 'Coder-Session-Token: API_KEY'

GET /organizations/{organization}/templates

Parameters

NameInTypeRequiredDescription
organizationpathstring(uuid)trueOrganization ID

Example responses

200 Response

[
  {
    "active_user_count": 0,
    "active_version_id": "eae64611-bd53-4a80-bb77-df1e432c0fbc",
    "allow_user_cancel_workspace_jobs": true,
    "build_time_stats": {
      "property1": {
        "p50": 123,
        "p95": 146
      },
      "property2": {
        "p50": 123,
        "p95": 146
      }
    },
    "created_at": "2019-08-24T14:15:22Z",
    "created_by_id": "9377d689-01fb-4abf-8450-3368d2c1924f",
    "created_by_name": "string",
    "default_ttl_ms": 0,
    "description": "string",
    "display_name": "string",
    "icon": "string",
    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
    "name": "string",
    "organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6",
    "provisioner": "terraform",
    "updated_at": "2019-08-24T14:15:22Z",
    "workspace_owner_count": 0
  }
]

Responses

StatusMeaningDescriptionSchema
200OKOKarray of codersdk.Template

Response Schema

Status Code 200

NameTypeRequiredRestrictionsDescription
[array item]arrayfalse
» active_user_countintegerfalseActive user count is set to -1 when loading.
» active_version_idstring(uuid)false
» allow_user_cancel_workspace_jobsbooleanfalse
» build_time_statscodersdk.TemplateBuildTimeStatsfalse
»» [any property]codersdk.TransitionStatsfalse
»»» p50integerfalse
»»» p95integerfalse
» created_atstring(date-time)false
» created_by_idstring(uuid)false
» created_by_namestringfalse
» default_ttl_msintegerfalse
» descriptionstringfalse
» display_namestringfalse
» iconstringfalse
» idstring(uuid)false
» namestringfalse
» organization_idstring(uuid)false
» provisionerstringfalse
» updated_atstring(date-time)false
» workspace_owner_countintegerfalse

Enumerated Values

PropertyValue
provisionerterraform

To perform this operation, you must be authenticated. Learn more.

Create template by organization

Code samples

# Example request using curl
curl -X POST http://coder-server:8080/api/v2/organizations/{organization}/templates \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'Coder-Session-Token: API_KEY'

POST /organizations/{organization}/templates

Body parameter

{
  "allow_user_cancel_workspace_jobs": true,
  "default_ttl_ms": 0,
  "description": "string",
  "display_name": "string",
  "icon": "string",
  "name": "string",
  "parameter_values": [
    {
      "copy_from_parameter": "000e07d6-021d-446c-be14-48a9c20bca0b",
      "destination_scheme": "none",
      "name": "string",
      "source_scheme": "none",
      "source_value": "string"
    }
  ],
  "template_version_id": "0ba39c92-1f1b-4c32-aa3e-9925d7713eb1"
}

Parameters

NameInTypeRequiredDescription
organizationpathstringtrueOrganization ID
bodybodycodersdk.CreateTemplateRequesttrueRequest body

Example responses

200 Response

{
  "active_user_count": 0,
  "active_version_id": "eae64611-bd53-4a80-bb77-df1e432c0fbc",
  "allow_user_cancel_workspace_jobs": true,
  "build_time_stats": {
    "property1": {
      "p50": 123,
      "p95": 146
    },
    "property2": {
      "p50": 123,
      "p95": 146
    }
  },
  "created_at": "2019-08-24T14:15:22Z",
  "created_by_id": "9377d689-01fb-4abf-8450-3368d2c1924f",
  "created_by_name": "string",
  "default_ttl_ms": 0,
  "description": "string",
  "display_name": "string",
  "icon": "string",
  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  "name": "string",
  "organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6",
  "provisioner": "terraform",
  "updated_at": "2019-08-24T14:15:22Z",
  "workspace_owner_count": 0
}

Responses

StatusMeaningDescriptionSchema
200OKOKcodersdk.Template

To perform this operation, you must be authenticated. Learn more.

Get template examples by organization

Code samples

# Example request using curl
curl -X GET http://coder-server:8080/api/v2/organizations/{organization}/templates/examples \
  -H 'Accept: application/json' \
  -H 'Coder-Session-Token: API_KEY'

GET /organizations/{organization}/templates/examples

Parameters

NameInTypeRequiredDescription
organizationpathstring(uuid)trueOrganization ID

Example responses

200 Response

[
  {
    "description": "string",
    "icon": "string",
    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
    "markdown": "string",
    "name": "string",
    "tags": ["string"],
    "url": "string"
  }
]

Responses

StatusMeaningDescriptionSchema
200OKOKarray of codersdk.TemplateExample

Response Schema

Status Code 200

NameTypeRequiredRestrictionsDescription
[array item]arrayfalse
» descriptionstringfalse
» iconstringfalse
» idstring(uuid)false
» markdownstringfalse
» namestringfalse
» tagsarrayfalse
» urlstringfalse

To perform this operation, you must be authenticated. Learn more.

Get templates by organization and template name

Code samples

# Example request using curl
curl -X GET http://coder-server:8080/api/v2/organizations/{organization}/templates/{templatename} \
  -H 'Accept: application/json' \
  -H 'Coder-Session-Token: API_KEY'

GET /organizations/{organization}/templates/{templatename}

Parameters

NameInTypeRequiredDescription
organizationpathstring(uuid)trueOrganization ID
templatenamepathstringtrueTemplate name

Example responses

200 Response

{
  "active_user_count": 0,
  "active_version_id": "eae64611-bd53-4a80-bb77-df1e432c0fbc",
  "allow_user_cancel_workspace_jobs": true,
  "build_time_stats": {
    "property1": {
      "p50": 123,
      "p95": 146
    },
    "property2": {
      "p50": 123,
      "p95": 146
    }
  },
  "created_at": "2019-08-24T14:15:22Z",
  "created_by_id": "9377d689-01fb-4abf-8450-3368d2c1924f",
  "created_by_name": "string",
  "default_ttl_ms": 0,
  "description": "string",
  "display_name": "string",
  "icon": "string",
  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  "name": "string",
  "organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6",
  "provisioner": "terraform",
  "updated_at": "2019-08-24T14:15:22Z",
  "workspace_owner_count": 0
}

Responses

StatusMeaningDescriptionSchema
200OKOKcodersdk.Template

To perform this operation, you must be authenticated. Learn more.

Create template version by organization

Code samples

# Example request using curl
curl -X POST http://coder-server:8080/api/v2/organizations/{organization}/templateversions \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'Coder-Session-Token: API_KEY'

POST /organizations/{organization}/templateversions

Body parameter

{
  "parameter_values": [
    {
      "copy_from_parameter": "000e07d6-021d-446c-be14-48a9c20bca0b",
      "destination_scheme": "none",
      "name": "string",
      "source_scheme": "none",
      "source_value": "string"
    }
  ],
  "rich_parameter_values": [
    {
      "name": "string",
      "value": "string"
    }
  ],
  "workspace_name": "string"
}

Parameters

NameInTypeRequiredDescription
organizationpathstring(uuid)trueOrganization ID
bodybodycodersdk.CreateTemplateVersionDryRunRequesttrueCreate template version request

Example responses

201 Response

{
  "created_at": "2019-08-24T14:15:22Z",
  "created_by": {
    "avatar_url": "http://example.com",
    "created_at": "2019-08-24T14:15:22Z",
    "email": "[email protected]",
    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
    "last_seen_at": "2019-08-24T14:15:22Z",
    "organization_ids": ["497f6eca-6276-4993-bfeb-53cbbbba6f08"],
    "roles": [
      {
        "display_name": "string",
        "name": "string"
      }
    ],
    "status": "active",
    "username": "string"
  },
  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  "job": {
    "canceled_at": "2019-08-24T14:15:22Z",
    "completed_at": "2019-08-24T14:15:22Z",
    "created_at": "2019-08-24T14:15:22Z",
    "error": "string",
    "file_id": "8a0cfb4f-ddc9-436d-91bb-75133c583767",
    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
    "started_at": "2019-08-24T14:15:22Z",
    "status": "pending",
    "tags": {
      "property1": "string",
      "property2": "string"
    },
    "worker_id": "ae5fa6f7-c55b-40c1-b40a-b36ac467652b"
  },
  "name": "string",
  "organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6",
  "readme": "string",
  "template_id": "c6d67e98-83ea-49f0-8812-e4abae2b68bc",
  "updated_at": "2019-08-24T14:15:22Z"
}

Responses

StatusMeaningDescriptionSchema
201CreatedCreatedcodersdk.TemplateVersion

To perform this operation, you must be authenticated. Learn more.

Get template version by organization and name

Code samples

# Example request using curl
curl -X GET http://coder-server:8080/api/v2/organizations/{organization}/templateversions/{templateversionname} \
  -H 'Accept: application/json' \
  -H 'Coder-Session-Token: API_KEY'

GET /organizations/{organization}/templateversions/{templateversionname}

Parameters

NameInTypeRequiredDescription
organizationpathstring(uuid)trueOrganization ID
templateversionnamepathstringtrueTemplate version name

Example responses

200 Response

{
  "created_at": "2019-08-24T14:15:22Z",
  "created_by": {
    "avatar_url": "http://example.com",
    "created_at": "2019-08-24T14:15:22Z",
    "email": "[email protected]",
    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
    "last_seen_at": "2019-08-24T14:15:22Z",
    "organization_ids": ["497f6eca-6276-4993-bfeb-53cbbbba6f08"],
    "roles": [
      {
        "display_name": "string",
        "name": "string"
      }
    ],
    "status": "active",
    "username": "string"
  },
  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  "job": {
    "canceled_at": "2019-08-24T14:15:22Z",
    "completed_at": "2019-08-24T14:15:22Z",
    "created_at": "2019-08-24T14:15:22Z",
    "error": "string",
    "file_id": "8a0cfb4f-ddc9-436d-91bb-75133c583767",
    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
    "started_at": "2019-08-24T14:15:22Z",
    "status": "pending",
    "tags": {
      "property1": "string",
      "property2": "string"
    },
    "worker_id": "ae5fa6f7-c55b-40c1-b40a-b36ac467652b"
  },
  "name": "string",
  "organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6",
  "readme": "string",
  "template_id": "c6d67e98-83ea-49f0-8812-e4abae2b68bc",
  "updated_at": "2019-08-24T14:15:22Z"
}

Responses

StatusMeaningDescriptionSchema
200OKOKcodersdk.TemplateVersion

To perform this operation, you must be authenticated. Learn more.

Get previous template version by organization and name

Code samples

# Example request using curl
curl -X GET http://coder-server:8080/api/v2/organizations/{organization}/templateversions/{templateversionname}/previous \
  -H 'Accept: application/json' \
  -H 'Coder-Session-Token: API_KEY'

GET /organizations/{organization}/templateversions/{templateversionname}/previous

Parameters

NameInTypeRequiredDescription
organizationpathstring(uuid)trueOrganization ID
templateversionnamepathstringtrueTemplate version name

Example responses

200 Response

{
  "created_at": "2019-08-24T14:15:22Z",
  "created_by": {
    "avatar_url": "http://example.com",
    "created_at": "2019-08-24T14:15:22Z",
    "email": "[email protected]",
    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
    "last_seen_at": "2019-08-24T14:15:22Z",
    "organization_ids": ["497f6eca-6276-4993-bfeb-53cbbbba6f08"],
    "roles": [
      {
        "display_name": "string",
        "name": "string"
      }
    ],
    "status": "active",
    "username": "string"
  },
  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  "job": {
    "canceled_at": "2019-08-24T14:15:22Z",
    "completed_at": "2019-08-24T14:15:22Z",
    "created_at": "2019-08-24T14:15:22Z",
    "error": "string",
    "file_id": "8a0cfb4f-ddc9-436d-91bb-75133c583767",
    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
    "started_at": "2019-08-24T14:15:22Z",
    "status": "pending",
    "tags": {
      "property1": "string",
      "property2": "string"
    },
    "worker_id": "ae5fa6f7-c55b-40c1-b40a-b36ac467652b"
  },
  "name": "string",
  "organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6",
  "readme": "string",
  "template_id": "c6d67e98-83ea-49f0-8812-e4abae2b68bc",
  "updated_at": "2019-08-24T14:15:22Z"
}

Responses

StatusMeaningDescriptionSchema
200OKOKcodersdk.TemplateVersion

To perform this operation, you must be authenticated. Learn more.

Get template metadata by ID

Code samples

# Example request using curl
curl -X GET http://coder-server:8080/api/v2/templates/{template} \
  -H 'Accept: application/json' \
  -H 'Coder-Session-Token: API_KEY'

GET /templates/{template}

Parameters

NameInTypeRequiredDescription
templatepathstring(uuid)trueTemplate ID

Example responses

200 Response

{
  "active_user_count": 0,
  "active_version_id": "eae64611-bd53-4a80-bb77-df1e432c0fbc",
  "allow_user_cancel_workspace_jobs": true,
  "build_time_stats": {
    "property1": {
      "p50": 123,
      "p95": 146
    },
    "property2": {
      "p50": 123,
      "p95": 146
    }
  },
  "created_at": "2019-08-24T14:15:22Z",
  "created_by_id": "9377d689-01fb-4abf-8450-3368d2c1924f",
  "created_by_name": "string",
  "default_ttl_ms": 0,
  "description": "string",
  "display_name": "string",
  "icon": "string",
  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  "name": "string",
  "organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6",
  "provisioner": "terraform",
  "updated_at": "2019-08-24T14:15:22Z",
  "workspace_owner_count": 0
}

Responses

StatusMeaningDescriptionSchema
200OKOKcodersdk.Template

To perform this operation, you must be authenticated. Learn more.

Delete template by ID

Code samples

# Example request using curl
curl -X DELETE http://coder-server:8080/api/v2/templates/{template} \
  -H 'Accept: application/json' \
  -H 'Coder-Session-Token: API_KEY'

DELETE /templates/{template}

Parameters

NameInTypeRequiredDescription
templatepathstring(uuid)trueTemplate ID

Example responses

200 Response

{
  "detail": "string",
  "message": "string",
  "validations": [
    {
      "detail": "string",
      "field": "string"
    }
  ]
}

Responses

StatusMeaningDescriptionSchema
200OKOKcodersdk.Response

To perform this operation, you must be authenticated. Learn more.

Update template metadata by ID

Code samples

# Example request using curl
curl -X PATCH http://coder-server:8080/api/v2/templates/{template} \
  -H 'Accept: application/json' \
  -H 'Coder-Session-Token: API_KEY'

PATCH /templates/{template}

Parameters

NameInTypeRequiredDescription
templatepathstring(uuid)trueTemplate ID

Example responses

200 Response

{
  "active_user_count": 0,
  "active_version_id": "eae64611-bd53-4a80-bb77-df1e432c0fbc",
  "allow_user_cancel_workspace_jobs": true,
  "build_time_stats": {
    "property1": {
      "p50": 123,
      "p95": 146
    },
    "property2": {
      "p50": 123,
      "p95": 146
    }
  },
  "created_at": "2019-08-24T14:15:22Z",
  "created_by_id": "9377d689-01fb-4abf-8450-3368d2c1924f",
  "created_by_name": "string",
  "default_ttl_ms": 0,
  "description": "string",
  "display_name": "string",
  "icon": "string",
  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  "name": "string",
  "organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6",
  "provisioner": "terraform",
  "updated_at": "2019-08-24T14:15:22Z",
  "workspace_owner_count": 0
}

Responses

StatusMeaningDescriptionSchema
200OKOKcodersdk.Template

To perform this operation, you must be authenticated. Learn more.

Get template DAUs by ID

Code samples

# Example request using curl
curl -X GET http://coder-server:8080/api/v2/templates/{template}/daus \
  -H 'Accept: application/json' \
  -H 'Coder-Session-Token: API_KEY'

GET /templates/{template}/daus

Parameters

NameInTypeRequiredDescription
templatepathstring(uuid)trueTemplate ID

Example responses

200 Response

{
  "entries": [
    {
      "amount": 0,
      "date": "2019-08-24T14:15:22Z"
    }
  ]
}

Responses

StatusMeaningDescriptionSchema
200OKOKcodersdk.TemplateDAUsResponse

To perform this operation, you must be authenticated. Learn more.

List template versions by template ID

Code samples

# Example request using curl
curl -X GET http://coder-server:8080/api/v2/templates/{template}/versions \
  -H 'Accept: application/json' \
  -H 'Coder-Session-Token: API_KEY'

GET /templates/{template}/versions

Parameters

NameInTypeRequiredDescription
templatepathstring(uuid)trueTemplate ID
after_idquerystring(uuid)falseAfter ID
limitqueryintegerfalsePage limit
offsetqueryintegerfalsePage offset

Example responses

200 Response

[
  {
    "created_at": "2019-08-24T14:15:22Z",
    "created_by": {
      "avatar_url": "http://example.com",
      "created_at": "2019-08-24T14:15:22Z",
      "email": "[email protected]",
      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
      "last_seen_at": "2019-08-24T14:15:22Z",
      "organization_ids": ["497f6eca-6276-4993-bfeb-53cbbbba6f08"],
      "roles": [
        {
          "display_name": "string",
          "name": "string"
        }
      ],
      "status": "active",
      "username": "string"
    },
    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
    "job": {
      "canceled_at": "2019-08-24T14:15:22Z",
      "completed_at": "2019-08-24T14:15:22Z",
      "created_at": "2019-08-24T14:15:22Z",
      "error": "string",
      "file_id": "8a0cfb4f-ddc9-436d-91bb-75133c583767",
      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
      "started_at": "2019-08-24T14:15:22Z",
      "status": "pending",
      "tags": {
        "property1": "string",
        "property2": "string"
      },
      "worker_id": "ae5fa6f7-c55b-40c1-b40a-b36ac467652b"
    },
    "name": "string",
    "organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6",
    "readme": "string",
    "template_id": "c6d67e98-83ea-49f0-8812-e4abae2b68bc",
    "updated_at": "2019-08-24T14:15:22Z"
  }
]

Responses

StatusMeaningDescriptionSchema
200OKOKarray of codersdk.TemplateVersion

Response Schema

Status Code 200

NameTypeRequiredRestrictionsDescription
[array item]arrayfalse
» created_atstring(date-time)false
» created_bycodersdk.Userfalse
»» avatar_urlstring(uri)false
»» created_atstring(date-time)true
»» emailstring(email)true
»» idstring(uuid)true
»» last_seen_atstring(date-time)false
»» organization_idsarrayfalse
»» rolesarrayfalse
»»» display_namestringfalse
»»» namestringfalse
»» statuscodersdk.UserStatusfalse
»» usernamestringtrue
» idstring(uuid)false
» jobcodersdk.ProvisionerJobfalse
»» canceled_atstring(date-time)false
»» completed_atstring(date-time)false
»» created_atstring(date-time)false
»» errorstringfalse
»» file_idstring(uuid)false
»» idstring(uuid)false
»» started_atstring(date-time)false
»» statuscodersdk.ProvisionerJobStatusfalse
»» tagsobjectfalse
»»» [any property]stringfalse
»» worker_idstring(uuid)false
» namestringfalse
» organization_idstring(uuid)false
» readmestringfalse
» template_idstring(uuid)false
» updated_atstring(date-time)false

Enumerated Values

PropertyValue
statusactive
statussuspended
statuspending
statusrunning
statussucceeded
statuscanceling
statuscanceled
statusfailed

To perform this operation, you must be authenticated. Learn more.

Update active template version by template ID

Code samples

# Example request using curl
curl -X PATCH http://coder-server:8080/api/v2/templates/{template}/versions \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'Coder-Session-Token: API_KEY'

PATCH /templates/{template}/versions

Body parameter

{
  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}

Parameters

NameInTypeRequiredDescription
templatepathstring(uuid)trueTemplate ID
bodybodycodersdk.UpdateActiveTemplateVersiontrueModified template version

Example responses

200 Response

{
  "detail": "string",
  "message": "string",
  "validations": [
    {
      "detail": "string",
      "field": "string"
    }
  ]
}

Responses

StatusMeaningDescriptionSchema
200OKOKcodersdk.Response

To perform this operation, you must be authenticated. Learn more.

Get template version by template ID and name

Code samples

# Example request using curl
curl -X GET http://coder-server:8080/api/v2/templates/{template}/versions/{templateversionname} \
  -H 'Accept: application/json' \
  -H 'Coder-Session-Token: API_KEY'

GET /templates/{template}/versions/{templateversionname}

Parameters

NameInTypeRequiredDescription
templatepathstring(uuid)trueTemplate ID
templateversionnamepathstringtrueTemplate version name

Example responses

200 Response

[
  {
    "created_at": "2019-08-24T14:15:22Z",
    "created_by": {
      "avatar_url": "http://example.com",
      "created_at": "2019-08-24T14:15:22Z",
      "email": "[email protected]",
      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
      "last_seen_at": "2019-08-24T14:15:22Z",
      "organization_ids": ["497f6eca-6276-4993-bfeb-53cbbbba6f08"],
      "roles": [
        {
          "display_name": "string",
          "name": "string"
        }
      ],
      "status": "active",
      "username": "string"
    },
    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
    "job": {
      "canceled_at": "2019-08-24T14:15:22Z",
      "completed_at": "2019-08-24T14:15:22Z",
      "created_at": "2019-08-24T14:15:22Z",
      "error": "string",
      "file_id": "8a0cfb4f-ddc9-436d-91bb-75133c583767",
      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
      "started_at": "2019-08-24T14:15:22Z",
      "status": "pending",
      "tags": {
        "property1": "string",
        "property2": "string"
      },
      "worker_id": "ae5fa6f7-c55b-40c1-b40a-b36ac467652b"
    },
    "name": "string",
    "organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6",
    "readme": "string",
    "template_id": "c6d67e98-83ea-49f0-8812-e4abae2b68bc",
    "updated_at": "2019-08-24T14:15:22Z"
  }
]

Responses

StatusMeaningDescriptionSchema
200OKOKarray of codersdk.TemplateVersion

Response Schema

Status Code 200

NameTypeRequiredRestrictionsDescription
[array item]arrayfalse
» created_atstring(date-time)false
» created_bycodersdk.Userfalse
»» avatar_urlstring(uri)false
»» created_atstring(date-time)true
»» emailstring(email)true
»» idstring(uuid)true
»» last_seen_atstring(date-time)false
»» organization_idsarrayfalse
»» rolesarrayfalse
»»» display_namestringfalse
»»» namestringfalse
»» statuscodersdk.UserStatusfalse
»» usernamestringtrue
» idstring(uuid)false
» jobcodersdk.ProvisionerJobfalse
»» canceled_atstring(date-time)false
»» completed_atstring(date-time)false
»» created_atstring(date-time)false
»» errorstringfalse
»» file_idstring(uuid)false
»» idstring(uuid)false
»» started_atstring(date-time)false
»» statuscodersdk.ProvisionerJobStatusfalse
»» tagsobjectfalse
»»» [any property]stringfalse
»» worker_idstring(uuid)false
» namestringfalse
» organization_idstring(uuid)false
» readmestringfalse
» template_idstring(uuid)false
» updated_atstring(date-time)false

Enumerated Values

PropertyValue
statusactive
statussuspended
statuspending
statusrunning
statussucceeded
statuscanceling
statuscanceled
statusfailed

To perform this operation, you must be authenticated. Learn more.

Get template version by ID

Code samples

# Example request using curl
curl -X GET http://coder-server:8080/api/v2/templateversions/{templateversion} \
  -H 'Accept: application/json' \
  -H 'Coder-Session-Token: API_KEY'

GET /templateversions/{templateversion}

Parameters

NameInTypeRequiredDescription
templateversionpathstring(uuid)trueTemplate version ID

Example responses

200 Response

{
  "created_at": "2019-08-24T14:15:22Z",
  "created_by": {
    "avatar_url": "http://example.com",
    "created_at": "2019-08-24T14:15:22Z",
    "email": "[email protected]",
    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
    "last_seen_at": "2019-08-24T14:15:22Z",
    "organization_ids": ["497f6eca-6276-4993-bfeb-53cbbbba6f08"],
    "roles": [
      {
        "display_name": "string",
        "name": "string"
      }
    ],
    "status": "active",
    "username": "string"
  },
  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  "job": {
    "canceled_at": "2019-08-24T14:15:22Z",
    "completed_at": "2019-08-24T14:15:22Z",
    "created_at": "2019-08-24T14:15:22Z",
    "error": "string",
    "file_id": "8a0cfb4f-ddc9-436d-91bb-75133c583767",
    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
    "started_at": "2019-08-24T14:15:22Z",
    "status": "pending",
    "tags": {
      "property1": "string",
      "property2": "string"
    },
    "worker_id": "ae5fa6f7-c55b-40c1-b40a-b36ac467652b"
  },
  "name": "string",
  "organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6",
  "readme": "string",
  "template_id": "c6d67e98-83ea-49f0-8812-e4abae2b68bc",
  "updated_at": "2019-08-24T14:15:22Z"
}

Responses

StatusMeaningDescriptionSchema
200OKOKcodersdk.TemplateVersion

To perform this operation, you must be authenticated. Learn more.

Cancel template version by ID

Code samples

# Example request using curl
curl -X PATCH http://coder-server:8080/api/v2/templateversions/{templateversion}/cancel \
  -H 'Accept: application/json' \
  -H 'Coder-Session-Token: API_KEY'

PATCH /templateversions/{templateversion}/cancel

Parameters

NameInTypeRequiredDescription
templateversionpathstring(uuid)trueTemplate version ID

Example responses

200 Response

{
  "detail": "string",
  "message": "string",
  "validations": [
    {
      "detail": "string",
      "field": "string"
    }
  ]
}

Responses

StatusMeaningDescriptionSchema
200OKOKcodersdk.Response

To perform this operation, you must be authenticated. Learn more.

Create template version dry-run

Code samples

# Example request using curl
curl -X POST http://coder-server:8080/api/v2/templateversions/{templateversion}/dry-run \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'Coder-Session-Token: API_KEY'

POST /templateversions/{templateversion}/dry-run

Body parameter

{
  "parameter_values": [
    {
      "copy_from_parameter": "000e07d6-021d-446c-be14-48a9c20bca0b",
      "destination_scheme": "none",
      "name": "string",
      "source_scheme": "none",
      "source_value": "string"
    }
  ],
  "rich_parameter_values": [
    {
      "name": "string",
      "value": "string"
    }
  ],
  "workspace_name": "string"
}

Parameters

NameInTypeRequiredDescription
templateversionpathstring(uuid)trueTemplate version ID
bodybodycodersdk.CreateTemplateVersionDryRunRequesttrueDry-run request

Example responses

201 Response

{
  "canceled_at": "2019-08-24T14:15:22Z",
  "completed_at": "2019-08-24T14:15:22Z",
  "created_at": "2019-08-24T14:15:22Z",
  "error": "string",
  "file_id": "8a0cfb4f-ddc9-436d-91bb-75133c583767",
  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  "started_at": "2019-08-24T14:15:22Z",
  "status": "pending",
  "tags": {
    "property1": "string",
    "property2": "string"
  },
  "worker_id": "ae5fa6f7-c55b-40c1-b40a-b36ac467652b"
}

Responses

StatusMeaningDescriptionSchema
201CreatedCreatedcodersdk.ProvisionerJob

To perform this operation, you must be authenticated. Learn more.

Get template version dry-run by job ID

Code samples

# Example request using curl
curl -X GET http://coder-server:8080/api/v2/templateversions/{templateversion}/dry-run/{jobID} \
  -H 'Accept: application/json' \
  -H 'Coder-Session-Token: API_KEY'

GET /templateversions/{templateversion}/dry-run/{jobID}

Parameters

NameInTypeRequiredDescription
templateversionpathstring(uuid)trueTemplate version ID
jobIDpathstring(uuid)trueJob ID

Example responses

200 Response

{
  "canceled_at": "2019-08-24T14:15:22Z",
  "completed_at": "2019-08-24T14:15:22Z",
  "created_at": "2019-08-24T14:15:22Z",
  "error": "string",
  "file_id": "8a0cfb4f-ddc9-436d-91bb-75133c583767",
  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  "started_at": "2019-08-24T14:15:22Z",
  "status": "pending",
  "tags": {
    "property1": "string",
    "property2": "string"
  },
  "worker_id": "ae5fa6f7-c55b-40c1-b40a-b36ac467652b"
}

Responses

StatusMeaningDescriptionSchema
200OKOKcodersdk.ProvisionerJob

To perform this operation, you must be authenticated. Learn more.

Cancel template version dry-run by job ID

Code samples

# Example request using curl
curl -X PATCH http://coder-server:8080/api/v2/templateversions/{templateversion}/dry-run/{jobID}/cancel \
  -H 'Accept: application/json' \
  -H 'Coder-Session-Token: API_KEY'

PATCH /templateversions/{templateversion}/dry-run/{jobID}/cancel

Parameters

NameInTypeRequiredDescription
jobIDpathstring(uuid)trueJob ID
templateversionpathstring(uuid)trueTemplate version ID

Example responses

200 Response

{
  "detail": "string",
  "message": "string",
  "validations": [
    {
      "detail": "string",
      "field": "string"
    }
  ]
}

Responses

StatusMeaningDescriptionSchema
200OKOKcodersdk.Response

To perform this operation, you must be authenticated. Learn more.

Get template version dry-run logs by job ID

Code samples

# Example request using curl
curl -X GET http://coder-server:8080/api/v2/templateversions/{templateversion}/dry-run/{jobID}/logs \
  -H 'Accept: application/json' \
  -H 'Coder-Session-Token: API_KEY'

GET /templateversions/{templateversion}/dry-run/{jobID}/logs

Parameters

NameInTypeRequiredDescription
templateversionpathstring(uuid)trueTemplate version ID
jobIDpathstring(uuid)trueJob ID
beforequeryintegerfalseBefore Unix timestamp
afterqueryintegerfalseAfter Unix timestamp
followquerybooleanfalseFollow log stream

Example responses

200 Response

[
  {
    "created_at": "2019-08-24T14:15:22Z",
    "id": 0,
    "log_level": "trace",
    "log_source": "provisioner_daemon",
    "output": "string",
    "stage": "string"
  }
]

Responses

StatusMeaningDescriptionSchema
200OKOKarray of codersdk.ProvisionerJobLog

Response Schema

Status Code 200

NameTypeRequiredRestrictionsDescription
[array item]arrayfalse
» created_atstring(date-time)false
» idintegerfalse
» log_levelcodersdk.LogLevelfalse
» log_sourcecodersdk.LogSourcefalse
» outputstringfalse
» stagestringfalse

Enumerated Values

PropertyValue
log_leveltrace
log_leveldebug
log_levelinfo
log_levelwarn
log_levelerror
log_sourceprovisioner_daemon
log_sourceprovisioner

To perform this operation, you must be authenticated. Learn more.

Get template version dry-run resources by job ID

Code samples

# Example request using curl
curl -X GET http://coder-server:8080/api/v2/templateversions/{templateversion}/dry-run/{jobID}/resources \
  -H 'Accept: application/json' \
  -H 'Coder-Session-Token: API_KEY'

GET /templateversions/{templateversion}/dry-run/{jobID}/resources

Parameters

NameInTypeRequiredDescription
templateversionpathstring(uuid)trueTemplate version ID
jobIDpathstring(uuid)trueJob ID

Example responses

200 Response

[
  {
    "agents": [
      {
        "apps": [
          {
            "command": "string",
            "display_name": "string",
            "external": true,
            "health": "disabled",
            "healthcheck": {
              "interval": 0,
              "threshold": 0,
              "url": "string"
            },
            "icon": "string",
            "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
            "sharing_level": "owner",
            "slug": "string",
            "subdomain": true,
            "url": "string"
          }
        ],
        "architecture": "string",
        "connection_timeout_seconds": 0,
        "created_at": "2019-08-24T14:15:22Z",
        "delay_login_until_ready": true,
        "directory": "string",
        "disconnected_at": "2019-08-24T14:15:22Z",
        "environment_variables": {
          "property1": "string",
          "property2": "string"
        },
        "first_connected_at": "2019-08-24T14:15:22Z",
        "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
        "instance_id": "string",
        "last_connected_at": "2019-08-24T14:15:22Z",
        "latency": {
          "property1": {
            "latency_ms": 0,
            "preferred": true
          },
          "property2": {
            "latency_ms": 0,
            "preferred": true
          }
        },
        "lifecycle_state": "created",
        "name": "string",
        "operating_system": "string",
        "resource_id": "4d5215ed-38bb-48ed-879a-fdb9ca58522f",
        "startup_script": "string",
        "startup_script_timeout_seconds": 0,
        "status": "connecting",
        "troubleshooting_url": "string",
        "updated_at": "2019-08-24T14:15:22Z",
        "version": "string"
      }
    ],
    "created_at": "2019-08-24T14:15:22Z",
    "daily_cost": 0,
    "hide": true,
    "icon": "string",
    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
    "job_id": "453bd7d7-5355-4d6d-a38e-d9e7eb218c3f",
    "metadata": [
      {
        "key": "string",
        "sensitive": true,
        "value": "string"
      }
    ],
    "name": "string",
    "type": "string",
    "workspace_transition": "start"
  }
]

Responses

StatusMeaningDescriptionSchema
200OKOKarray of codersdk.WorkspaceResource

Response Schema

Status Code 200

NameTypeRequiredRestrictionsDescription
[array item]arrayfalse
» agentsarrayfalse
»» appsarrayfalse
»»» commandstringfalse
»»» display_namestringfalse»»display name is a friendly name for the app.
»»» externalbooleanfalseExternal specifies whether the URL should be opened externally on the client or not.
»»» healthcodersdk.WorkspaceAppHealthfalse
»»» healthcheckcodersdk.HealthcheckfalseHealthcheck specifies the configuration for checking app health.
»»»» intervalintegerfalseInterval specifies the seconds between each health check.
»»»» thresholdintegerfalseThreshold specifies the number of consecutive failed health checks before returning "unhealthy".
»»»» urlstringfalse»»»url specifies the endpoint to check for the app health.
»»» iconstringfalseIcon is a relative path or external URL that specifies an icon to be displayed in the dashboard.
»»» idstring(uuid)false
»»» sharing_levelcodersdk.WorkspaceAppSharingLevelfalse
»»» slugstringfalseSlug is a unique identifier within the agent.
»»» subdomainbooleanfalseSubdomain denotes whether the app should be accessed via a path on the coder server or via a hostname-based dev URL. If this is set to true and there is no app wildcard configured on the server, the app will not be accessible in the UI.
»»» urlstringfalse»»url is the address being proxied to inside the workspace. If external is specified, this will be opened on the client.
»» architecturestringfalse
»» connection_timeout_secondsintegerfalse
»» created_atstring(date-time)false
»» delay_login_until_readybooleanfalse»delay login until ready if true, the agent will delay logins until it is ready (e.g. executing startup script has ended).
»» directorystringfalse
»» disconnected_atstring(date-time)false
»» environment_variablesobjectfalse
»»» [any property]stringfalse
»» first_connected_atstring(date-time)false
»» idstring(uuid)false
»» instance_idstringfalse
»» last_connected_atstring(date-time)false
»» latencyobjectfalse»latency is mapped by region name (e.g. "New York City", "Seattle").
»»» [any property]codersdk.DERPRegionfalse
»»»» latency_msnumberfalse
»»»» preferredbooleanfalse
»» lifecycle_statecodersdk.WorkspaceAgentLifecyclefalse
»» namestringfalse
»» operating_systemstringfalse
»» resource_idstring(uuid)false
»» startup_scriptstringfalse
»» startup_script_timeout_secondsintegerfalse»startup script timeout seconds is the number of seconds to wait for the startup script to complete. If the script does not complete within this time, the agent lifecycle will be marked as start_timeout.
»» statuscodersdk.WorkspaceAgentStatusfalse
»» troubleshooting_urlstringfalse
»» updated_atstring(date-time)false
»» versionstringfalse
» created_atstring(date-time)false
» daily_costintegerfalse
» hidebooleanfalse
» iconstringfalse
» idstring(uuid)false
» job_idstring(uuid)false
» metadataarrayfalse
»» keystringfalse
»» sensitivebooleanfalse
»» valuestringfalse
» namestringfalse
» typestringfalse
» workspace_transitioncodersdk.WorkspaceTransitionfalse

Enumerated Values

PropertyValue
healthdisabled
healthinitializing
healthhealthy
healthunhealthy
sharing_levelowner
sharing_levelauthenticated
sharing_levelpublic
lifecycle_statecreated
lifecycle_statestarting
lifecycle_statestart_timeout
lifecycle_statestart_error
lifecycle_stateready
statusconnecting
statusconnected
statusdisconnected
statustimeout
workspace_transitionstart
workspace_transitionstop
workspace_transitiondelete

To perform this operation, you must be authenticated. Learn more.

Get logs by template version

Code samples

# Example request using curl
curl -X GET http://coder-server:8080/api/v2/templateversions/{templateversion}/logs \
  -H 'Accept: application/json' \
  -H 'Coder-Session-Token: API_KEY'

GET /templateversions/{templateversion}/logs

Parameters

NameInTypeRequiredDescription
templateversionpathstring(uuid)trueTemplate version ID
beforequeryintegerfalseBefore Unix timestamp
afterqueryintegerfalseAfter Unix timestamp
followquerybooleanfalseFollow log stream

Example responses

200 Response

[
  {
    "created_at": "2019-08-24T14:15:22Z",
    "id": 0,
    "log_level": "trace",
    "log_source": "provisioner_daemon",
    "output": "string",
    "stage": "string"
  }
]

Responses

StatusMeaningDescriptionSchema
200OKOKarray of codersdk.ProvisionerJobLog

Response Schema

Status Code 200

NameTypeRequiredRestrictionsDescription
[array item]arrayfalse
» created_atstring(date-time)false
» idintegerfalse
» log_levelcodersdk.LogLevelfalse
» log_sourcecodersdk.LogSourcefalse
» outputstringfalse
» stagestringfalse

Enumerated Values

PropertyValue
log_leveltrace
log_leveldebug
log_levelinfo
log_levelwarn
log_levelerror
log_sourceprovisioner_daemon
log_sourceprovisioner

To perform this operation, you must be authenticated. Learn more.

Get parameters by template version

Code samples

# Example request using curl
curl -X GET http://coder-server:8080/api/v2/templateversions/{templateversion}/parameters \
  -H 'Accept: application/json' \
  -H 'Coder-Session-Token: API_KEY'

GET /templateversions/{templateversion}/parameters

Parameters

NameInTypeRequiredDescription
templateversionpathstring(uuid)trueTemplate version ID

Example responses

200 Response

[
  {
    "created_at": "string",
    "default_source_value": true,
    "destination_scheme": "none",
    "id": "string",
    "name": "string",
    "schema_id": "string",
    "scope": "template",
    "scope_id": "string",
    "source_scheme": "none",
    "source_value": "string",
    "updated_at": "string"
  }
]

Responses

StatusMeaningDescriptionSchema
200OKOKarray of parameter.ComputedValue

Response Schema

Status Code 200

NameTypeRequiredRestrictionsDescription
[array item]arrayfalse
» created_atstringfalse
» default_source_valuebooleanfalse
» destination_schemedatabase.ParameterDestinationSchemefalse
» idstringfalse
» namestringfalse
» schema_idstringfalse
» scopedatabase.ParameterScopefalse
» scope_idstringfalse
» source_schemedatabase.ParameterSourceSchemefalse
» source_valuestringfalse
» updated_atstringfalse

Enumerated Values

PropertyValue
destination_schemenone
destination_schemeenvironment_variable
destination_schemeprovisioner_variable
scopetemplate
scopeimport_job
scopeworkspace
source_schemenone
source_schemedata

To perform this operation, you must be authenticated. Learn more.

Get resources by template version

Code samples

# Example request using curl
curl -X GET http://coder-server:8080/api/v2/templateversions/{templateversion}/resources \
  -H 'Accept: application/json' \
  -H 'Coder-Session-Token: API_KEY'

GET /templateversions/{templateversion}/resources

Parameters

NameInTypeRequiredDescription
templateversionpathstring(uuid)trueTemplate version ID

Example responses

200 Response

[
  {
    "agents": [
      {
        "apps": [
          {
            "command": "string",
            "display_name": "string",
            "external": true,
            "health": "disabled",
            "healthcheck": {
              "interval": 0,
              "threshold": 0,
              "url": "string"
            },
            "icon": "string",
            "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
            "sharing_level": "owner",
            "slug": "string",
            "subdomain": true,
            "url": "string"
          }
        ],
        "architecture": "string",
        "connection_timeout_seconds": 0,
        "created_at": "2019-08-24T14:15:22Z",
        "delay_login_until_ready": true,
        "directory": "string",
        "disconnected_at": "2019-08-24T14:15:22Z",
        "environment_variables": {
          "property1": "string",
          "property2": "string"
        },
        "first_connected_at": "2019-08-24T14:15:22Z",
        "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
        "instance_id": "string",
        "last_connected_at": "2019-08-24T14:15:22Z",
        "latency": {
          "property1": {
            "latency_ms": 0,
            "preferred": true
          },
          "property2": {
            "latency_ms": 0,
            "preferred": true
          }
        },
        "lifecycle_state": "created",
        "name": "string",
        "operating_system": "string",
        "resource_id": "4d5215ed-38bb-48ed-879a-fdb9ca58522f",
        "startup_script": "string",
        "startup_script_timeout_seconds": 0,
        "status": "connecting",
        "troubleshooting_url": "string",
        "updated_at": "2019-08-24T14:15:22Z",
        "version": "string"
      }
    ],
    "created_at": "2019-08-24T14:15:22Z",
    "daily_cost": 0,
    "hide": true,
    "icon": "string",
    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
    "job_id": "453bd7d7-5355-4d6d-a38e-d9e7eb218c3f",
    "metadata": [
      {
        "key": "string",
        "sensitive": true,
        "value": "string"
      }
    ],
    "name": "string",
    "type": "string",
    "workspace_transition": "start"
  }
]

Responses

StatusMeaningDescriptionSchema
200OKOKarray of codersdk.WorkspaceResource

Response Schema

Status Code 200

NameTypeRequiredRestrictionsDescription
[array item]arrayfalse
» agentsarrayfalse
»» appsarrayfalse
»»» commandstringfalse
»»» display_namestringfalse»»display name is a friendly name for the app.
»»» externalbooleanfalseExternal specifies whether the URL should be opened externally on the client or not.
»»» healthcodersdk.WorkspaceAppHealthfalse
»»» healthcheckcodersdk.HealthcheckfalseHealthcheck specifies the configuration for checking app health.
»»»» intervalintegerfalseInterval specifies the seconds between each health check.
»»»» thresholdintegerfalseThreshold specifies the number of consecutive failed health checks before returning "unhealthy".
»»»» urlstringfalse»»»url specifies the endpoint to check for the app health.
»»» iconstringfalseIcon is a relative path or external URL that specifies an icon to be displayed in the dashboard.
»»» idstring(uuid)false
»»» sharing_levelcodersdk.WorkspaceAppSharingLevelfalse
»»» slugstringfalseSlug is a unique identifier within the agent.
»»» subdomainbooleanfalseSubdomain denotes whether the app should be accessed via a path on the coder server or via a hostname-based dev URL. If this is set to true and there is no app wildcard configured on the server, the app will not be accessible in the UI.
»»» urlstringfalse»»url is the address being proxied to inside the workspace. If external is specified, this will be opened on the client.
»» architecturestringfalse
»» connection_timeout_secondsintegerfalse
»» created_atstring(date-time)false
»» delay_login_until_readybooleanfalse»delay login until ready if true, the agent will delay logins until it is ready (e.g. executing startup script has ended).
»» directorystringfalse
»» disconnected_atstring(date-time)false
»» environment_variablesobjectfalse
»»» [any property]stringfalse
»» first_connected_atstring(date-time)false
»» idstring(uuid)false
»» instance_idstringfalse
»» last_connected_atstring(date-time)false
»» latencyobjectfalse»latency is mapped by region name (e.g. "New York City", "Seattle").
»»» [any property]codersdk.DERPRegionfalse
»»»» latency_msnumberfalse
»»»» preferredbooleanfalse
»» lifecycle_statecodersdk.WorkspaceAgentLifecyclefalse
»» namestringfalse
»» operating_systemstringfalse
»» resource_idstring(uuid)false
»» startup_scriptstringfalse
»» startup_script_timeout_secondsintegerfalse»startup script timeout seconds is the number of seconds to wait for the startup script to complete. If the script does not complete within this time, the agent lifecycle will be marked as start_timeout.
»» statuscodersdk.WorkspaceAgentStatusfalse
»» troubleshooting_urlstringfalse
»» updated_atstring(date-time)false
»» versionstringfalse
» created_atstring(date-time)false
» daily_costintegerfalse
» hidebooleanfalse
» iconstringfalse
» idstring(uuid)false
» job_idstring(uuid)false
» metadataarrayfalse
»» keystringfalse
»» sensitivebooleanfalse
»» valuestringfalse
» namestringfalse
» typestringfalse
» workspace_transitioncodersdk.WorkspaceTransitionfalse

Enumerated Values

PropertyValue
healthdisabled
healthinitializing
healthhealthy
healthunhealthy
sharing_levelowner
sharing_levelauthenticated
sharing_levelpublic
lifecycle_statecreated
lifecycle_statestarting
lifecycle_statestart_timeout
lifecycle_statestart_error
lifecycle_stateready
statusconnecting
statusconnected
statusdisconnected
statustimeout
workspace_transitionstart
workspace_transitionstop
workspace_transitiondelete

To perform this operation, you must be authenticated. Learn more.

Get rich parameters by template version

Code samples

# Example request using curl
curl -X GET http://coder-server:8080/api/v2/templateversions/{templateversion}/rich-parameters \
  -H 'Accept: application/json' \
  -H 'Coder-Session-Token: API_KEY'

GET /templateversions/{templateversion}/rich-parameters

Parameters

NameInTypeRequiredDescription
templateversionpathstring(uuid)trueTemplate version ID

Example responses

200 Response

[
  {
    "created_at": "string",
    "default_source_value": true,
    "destination_scheme": "none",
    "id": "string",
    "name": "string",
    "schema_id": "string",
    "scope": "template",
    "scope_id": "string",
    "source_scheme": "none",
    "source_value": "string",
    "updated_at": "string"
  }
]

Responses

StatusMeaningDescriptionSchema
200OKOKarray of parameter.ComputedValue

Response Schema

Status Code 200

NameTypeRequiredRestrictionsDescription
[array item]arrayfalse
» created_atstringfalse
» default_source_valuebooleanfalse
» destination_schemedatabase.ParameterDestinationSchemefalse
» idstringfalse
» namestringfalse
» schema_idstringfalse
» scopedatabase.ParameterScopefalse
» scope_idstringfalse
» source_schemedatabase.ParameterSourceSchemefalse
» source_valuestringfalse
» updated_atstringfalse

Enumerated Values

PropertyValue
destination_schemenone
destination_schemeenvironment_variable
destination_schemeprovisioner_variable
scopetemplate
scopeimport_job
scopeworkspace
source_schemenone
source_schemedata

To perform this operation, you must be authenticated. Learn more.

Get schema by template version

Code samples

# Example request using curl
curl -X GET http://coder-server:8080/api/v2/templateversions/{templateversion}/schema \
  -H 'Accept: application/json' \
  -H 'Coder-Session-Token: API_KEY'

GET /templateversions/{templateversion}/schema

Parameters

NameInTypeRequiredDescription
templateversionpathstring(uuid)trueTemplate version ID

Example responses

200 Response

[
  {
    "allow_override_destination": true,
    "allow_override_source": true,
    "created_at": "2019-08-24T14:15:22Z",
    "default_destination_scheme": "none",
    "default_refresh": "string",
    "default_source_scheme": "none",
    "default_source_value": "string",
    "description": "string",
    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
    "job_id": "453bd7d7-5355-4d6d-a38e-d9e7eb218c3f",
    "name": "string",
    "redisplay_value": true,
    "validation_condition": "string",
    "validation_contains": ["string"],
    "validation_error": "string",
    "validation_type_system": "string",
    "validation_value_type": "string"
  }
]

Responses

StatusMeaningDescriptionSchema
200OKOKarray of codersdk.ParameterSchema

Response Schema

Status Code 200

NameTypeRequiredRestrictionsDescription
[array item]arrayfalse
» allow_override_destinationbooleanfalse
» allow_override_sourcebooleanfalse
» created_atstring(date-time)false
» default_destination_schemecodersdk.ParameterDestinationSchemefalse
» default_refreshstringfalse
» default_source_schemecodersdk.ParameterSourceSchemefalse
» default_source_valuestringfalse
» descriptionstringfalse
» idstring(uuid)false
» job_idstring(uuid)false
» namestringfalse
» redisplay_valuebooleanfalse
» validation_conditionstringfalse
» validation_containsarrayfalseThis is a special array of items provided if the validation condition explicitly states the value must be one of a set.
» validation_errorstringfalse
» validation_type_systemstringfalse
» validation_value_typestringfalse

Enumerated Values

PropertyValue
default_destination_schemenone
default_destination_schemeenvironment_variable
default_destination_schemeprovisioner_variable
default_source_schemenone
default_source_schemedata

To perform this operation, you must be authenticated. Learn more.

See an opportunity to improve our docs? Make an edit.