Skip to main content
HomeReferenceREST APITemplateBuilder

TemplateBuilder

List template builder base templates

Code samples

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

GET /api/v2/templatebuilder/bases

Example responses

200 Response

{ "bases": [ { "description": "string", "icon": "string", "id": "string", "name": "string", "os": "string", "variables": [ { "default": [ 0 ], "description": "string", "name": "string", "required": true, "sensitive": true, "type": "string" } ] } ] }

Responses

StatusMeaningDescriptionSchema
200OKOKcodersdk.TemplateBuilderBasesResponse

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

Compose template from base and modules

Code samples

# Example request using curl curl -X POST http://coder-server:8080/api/v2/templatebuilder/compose \ -H 'Content-Type: application/json' \ -H 'Coder-Session-Token: API_KEY'

POST /api/v2/templatebuilder/compose

Body parameter

{ "base_template_id": "string", "base_variable_values": { "property1": "string", "property2": "string" }, "modules": [ { "id": "string", "variables": { "property1": "string", "property2": "string" } } ] }

Parameters

NameInTypeRequiredDescription
bodybodycodersdk.TemplateBuilderComposeRequesttrueCompose request

Responses

StatusMeaningDescriptionSchema
200OKOK

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

Compose and create a template

Code samples

# Example request using curl curl -X POST http://coder-server:8080/api/v2/templatebuilder/compose/template \ -H 'Content-Type: application/json' \ -H 'Accept: application/json' \ -H 'Coder-Session-Token: API_KEY'

POST /api/v2/templatebuilder/compose/template

Body parameter

{ "base_template_id": "string", "base_variable_values": { "property1": "string", "property2": "string" }, "description": "string", "display_name": "string", "icon": "string", "modules": [ { "id": "string", "variables": { "property1": "string", "property2": "string" } } ], "name": "string", "organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6", "provisioner_tags": { "property1": "string", "property2": "string" } }

Parameters

NameInTypeRequiredDescription
bodybodycodersdk.TemplateBuilderCreateTemplateRequesttrueCreate template request

Example responses

201 Response

{ "template": { "active_user_count": 0, "active_version_id": "eae64611-bd53-4a80-bb77-df1e432c0fbc", "activity_bump_ms": 0, "allow_user_autostart": true, "allow_user_autostop": true, "allow_user_cancel_workspace_jobs": true, "autostart_requirement": { "days_of_week": [ "monday" ] }, "autostop_requirement": { "days_of_week": [ "monday" ], "weeks": 0 }, "build_time_stats": { "property1": { "p50": 123, "p95": 146 }, "property2": { "p50": 123, "p95": 146 } }, "cors_behavior": "simple", "created_at": "2019-08-24T14:15:22Z", "created_by_id": "9377d689-01fb-4abf-8450-3368d2c1924f", "created_by_name": "string", "default_ttl_ms": 0, "deleted": true, "deprecated": true, "deprecation_message": "string", "description": "string", "disable_module_cache": true, "display_name": "string", "failure_ttl_ms": 0, "icon": "string", "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "max_port_share_level": "owner", "name": "string", "organization_display_name": "string", "organization_icon": "string", "organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6", "organization_name": "string", "provisioner": "terraform", "require_active_version": true, "time_til_dormant_autodelete_ms": 0, "time_til_dormant_ms": 0, "updated_at": "2019-08-24T14:15:22Z", "use_classic_parameter_flow": true } }

Responses

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

List template builder modules

Code samples

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

GET /api/v2/templatebuilder/modules

Parameters

NameInTypeRequiredDescription
basequerystringfalseBase template example ID for OS-compatibility filtering

Example responses

200 Response

{ "modules": [ { "category": "string", "compatible_os": [ "string" ], "conflicts_with": [ "string" ], "description": "string", "display_name": "string", "icon": "string", "id": "string", "variables": [ { "default": [ 0 ], "description": "string", "name": "string", "required": true, "sensitive": true, "type": "string" } ], "version": "string" } ] }

Responses

StatusMeaningDescriptionSchema
200OKOKcodersdk.TemplateBuilderModulesResponse

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