agentsdk.AWSInstanceIdentityToken 
{
	"document": "string",
	"signature": "string"
}
 
 Properties 
Name Type Required Restrictions Description documentstring true signaturestring true 
 
 agentsdk.AuthenticateResponse 
{
	"session_token": "string"
}
 
 Properties 
Name Type Required Restrictions Description session_tokenstring false 
 
 agentsdk.AzureInstanceIdentityToken 
{
	"encoding": "string",
	"signature": "string"
}
 
 Properties 
Name Type Required Restrictions Description encodingstring true signaturestring true 
 
 agentsdk.ExternalAuthResponse 
{
	"access_token": "string",
	"password": "string",
	"token_extra": {},
	"type": "string",
	"url": "string",
	"username": "string"
}
 
 Properties 
Name Type Required Restrictions Description access_tokenstring false passwordstring false token_extraobject false typestring false urlstring false usernamestring false Deprecated: Only supported on /workspaceagents/me/gitauth for backwards compatibility. 
 
 agentsdk.GitSSHKey 
{
	"private_key": "string",
	"public_key": "string"
}
 
 Properties 
Name Type Required Restrictions Description private_keystring false public_keystring false 
 
 agentsdk.GoogleInstanceIdentityToken 
{
	"json_web_token": "string"
}
 
 Properties 
Name Type Required Restrictions Description json_web_tokenstring true 
 
 agentsdk.Log 
{
	"created_at": "string",
	"level": "trace",
	"output": "string"
}
 
 Properties 
Name Type Required Restrictions Description created_atstring false levelcodersdk.LogLevel false outputstring false 
 
 agentsdk.PatchLogs 
{
	"log_source_id": "string",
	"logs": [
		{
			"created_at": "string",
			"level": "trace",
			"output": "string"
		}
	]
}
 
 Properties 
Name Type Required Restrictions Description log_source_idstring false logsarray of agentsdk.Log  false 
 
 agentsdk.PostLogSourceRequest 
{
	"display_name": "string",
	"icon": "string",
	"id": "string"
}
 
 Properties 
Name Type Required Restrictions Description display_namestring false iconstring false idstring false ID is a unique identifier for the log source. It is scoped to a workspace agent, and can be statically defined inside code to prevent duplicate sources from being created for the same agent. 
 
 coderd.SCIMUser 
{
	"active": true,
	"emails": [
		{
			"display": "string",
			"primary": true,
			"type": "string",
			"value": "[email protected] "
		}
	],
	"groups": [null],
	"id": "string",
	"meta": {
		"resourceType": "string"
	},
	"name": {
		"familyName": "string",
		"givenName": "string"
	},
	"schemas": ["string"],
	"userName": "string"
}
 
 Properties 
Name Type Required Restrictions Description activeboolean false emailsarray of object false » displaystring false » primaryboolean false » typestring false » valuestring false groupsarray of undefined false idstring false metaobject false » resourceTypestring false nameobject false » familyNamestring false » givenNamestring false schemasarray of string false userNamestring false 
 
 coderd.cspViolation 
 Properties 
Name Type Required Restrictions Description csp-reportobject false 
 
 codersdk.ACLAvailable 
{
	"groups": [
		{
			"avatar_url": "string",
			"display_name": "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",
					"login_type": "",
					"name": "string",
					"status": "active",
					"theme_preference": "string",
					"updated_at": "2019-08-24T14:15:22Z",
					"username": "string"
				}
			],
			"name": "string",
			"organization_display_name": "string",
			"organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6",
			"organization_name": "string",
			"quota_allowance": 0,
			"source": "user",
			"total_member_count": 0
		}
	],
	"users": [
		{
			"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",
			"login_type": "",
			"name": "string",
			"status": "active",
			"theme_preference": "string",
			"updated_at": "2019-08-24T14:15:22Z",
			"username": "string"
		}
	]
}
 
 Properties 
 codersdk.APIKey 
{
	"created_at": "2019-08-24T14:15:22Z",
	"expires_at": "2019-08-24T14:15:22Z",
	"id": "string",
	"last_used": "2019-08-24T14:15:22Z",
	"lifetime_seconds": 0,
	"login_type": "password",
	"scope": "all",
	"token_name": "string",
	"updated_at": "2019-08-24T14:15:22Z",
	"user_id": "a169451c-8525-4352-b8ca-070dd449a1a5"
}
 
 Properties 
Name Type Required Restrictions Description created_atstring true expires_atstring true idstring true last_usedstring true lifetime_secondsinteger true login_typecodersdk.LoginType true scopecodersdk.APIKeyScope true token_namestring true updated_atstring true user_idstring true 
 
 Enumerated Values 
Property Value login_typepasswordlogin_typegithublogin_typeoidclogin_typetokenscopeallscopeapplication_connect
 
 codersdk.APIKeyScope 
 Properties 
 Enumerated Values 
Value allapplication_connect
 
 codersdk.AddLicenseRequest 
 Properties 
Name Type Required Restrictions Description licensestring true 
 
 codersdk.AgentSubsystem 
 Properties 
 Enumerated Values 
Value envboxenvbuilderexectrace
 
 codersdk.AppHostResponse 
 Properties 
Name Type Required Restrictions Description hoststring false Host is the externally accessible URL for the Coder instance. 
 
 codersdk.AppearanceConfig 
{
	"announcement_banners": [
		{
			"background_color": "string",
			"enabled": true,
			"message": "string"
		}
	],
	"application_name": "string",
	"docs_url": "string",
	"logo_url": "string",
	"service_banner": {
		"background_color": "string",
		"enabled": true,
		"message": "string"
	},
	"support_links": [
		{
			"icon": "bug",
			"name": "string",
			"target": "string"
		}
	]
}
 
 Properties 
Name Type Required Restrictions Description announcement_bannersarray of codersdk.BannerConfig  false application_namestring false docs_urlstring false logo_urlstring false service_bannercodersdk.BannerConfig false Deprecated: ServiceBanner has been replaced by AnnouncementBanners. support_linksarray of codersdk.LinkConfig  false 
 
 codersdk.ArchiveTemplateVersionsRequest 
 Properties 
Name Type Required Restrictions Description allboolean false By default, only failed versions are archived. Set this to true to archive all unused versions regardless of job status. 
 
 codersdk.AssignableRoles 
{
	"assignable": true,
	"built_in": true,
	"display_name": "string",
	"name": "string",
	"organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6",
	"organization_permissions": [
		{
			"action": "application_connect",
			"negate": true,
			"resource_type": "*"
		}
	],
	"site_permissions": [
		{
			"action": "application_connect",
			"negate": true,
			"resource_type": "*"
		}
	],
	"user_permissions": [
		{
			"action": "application_connect",
			"negate": true,
			"resource_type": "*"
		}
	]
}
 
 Properties 
Name Type Required Restrictions Description assignableboolean false built_inboolean false Built in roles are immutable display_namestring false namestring false organization_idstring false organization_permissionsarray of codersdk.Permission  false Organization permissions are specific for the organization in the field 'OrganizationID' above. site_permissionsarray of codersdk.Permission  false user_permissionsarray of codersdk.Permission  false 
 
 codersdk.AuditAction 
 Properties 
 Enumerated Values 
Value createwritedeletestartstoploginlogoutregister
 
 codersdk.AuditDiff 
{
	"property1": {
		"new": null,
		"old": null,
		"secret": true
	},
	"property2": {
		"new": null,
		"old": null,
		"secret": true
	}
}
 
 Properties 
 codersdk.AuditDiffField 
{
	"new": null,
	"old": null,
	"secret": true
}
 
 Properties 
Name Type Required Restrictions Description newany false oldany false secretboolean false 
 
 codersdk.AuditLog 
{
	"action": "create",
	"additional_fields": [0],
	"description": "string",
	"diff": {
		"property1": {
			"new": null,
			"old": null,
			"secret": true
		},
		"property2": {
			"new": null,
			"old": null,
			"secret": true
		}
	},
	"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
	"ip": "string",
	"is_deleted": true,
	"organization": {
		"display_name": "string",
		"icon": "string",
		"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
		"name": "string"
	},
	"organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6",
	"request_id": "266ea41d-adf5-480b-af50-15b940c2b846",
	"resource_icon": "string",
	"resource_id": "4d5215ed-38bb-48ed-879a-fdb9ca58522f",
	"resource_link": "string",
	"resource_target": "string",
	"resource_type": "template",
	"status_code": 0,
	"time": "2019-08-24T14:15:22Z",
	"user": {
		"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",
		"login_type": "",
		"name": "string",
		"organization_ids": ["497f6eca-6276-4993-bfeb-53cbbbba6f08"],
		"roles": [
			{
				"display_name": "string",
				"name": "string",
				"organization_id": "string"
			}
		],
		"status": "active",
		"theme_preference": "string",
		"updated_at": "2019-08-24T14:15:22Z",
		"username": "string"
	},
	"user_agent": "string"
}
 
 Properties 
Name Type Required Restrictions Description actioncodersdk.AuditAction false additional_fieldsarray of integer false descriptionstring false diffcodersdk.AuditDiff false idstring false ipstring false is_deletedboolean false organizationcodersdk.MinimalOrganization false organization_idstring false Deprecated: Use 'organization.id' instead. request_idstring false resource_iconstring false resource_idstring false resource_linkstring false resource_targetstring false Resource target is the name of the resource. resource_typecodersdk.ResourceType false status_codeinteger false timestring false usercodersdk.User false user_agentstring false 
 
 codersdk.AuditLogResponse 
{
	"audit_logs": [
		{
			"action": "create",
			"additional_fields": [0],
			"description": "string",
			"diff": {
				"property1": {
					"new": null,
					"old": null,
					"secret": true
				},
				"property2": {
					"new": null,
					"old": null,
					"secret": true
				}
			},
			"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
			"ip": "string",
			"is_deleted": true,
			"organization": {
				"display_name": "string",
				"icon": "string",
				"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
				"name": "string"
			},
			"organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6",
			"request_id": "266ea41d-adf5-480b-af50-15b940c2b846",
			"resource_icon": "string",
			"resource_id": "4d5215ed-38bb-48ed-879a-fdb9ca58522f",
			"resource_link": "string",
			"resource_target": "string",
			"resource_type": "template",
			"status_code": 0,
			"time": "2019-08-24T14:15:22Z",
			"user": {
				"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",
				"login_type": "",
				"name": "string",
				"organization_ids": ["497f6eca-6276-4993-bfeb-53cbbbba6f08"],
				"roles": [
					{
						"display_name": "string",
						"name": "string",
						"organization_id": "string"
					}
				],
				"status": "active",
				"theme_preference": "string",
				"updated_at": "2019-08-24T14:15:22Z",
				"username": "string"
			},
			"user_agent": "string"
		}
	],
	"count": 0
}
 
 Properties 
Name Type Required Restrictions Description audit_logsarray of codersdk.AuditLog  false countinteger false 
 
 codersdk.AuthMethod 
 Properties 
Name Type Required Restrictions Description enabledboolean false 
 
 codersdk.AuthMethods 
{
	"github": {
		"enabled": true
	},
	"oidc": {
		"enabled": true,
		"iconUrl": "string",
		"signInText": "string"
	},
	"password": {
		"enabled": true
	},
	"terms_of_service_url": "string"
}
 
 Properties 
 codersdk.AuthorizationCheck 
{
	"action": "create",
	"object": {
		"any_org": true,
		"organization_id": "string",
		"owner_id": "string",
		"resource_id": "string",
		"resource_type": "*"
	}
}
 
AuthorizationCheck is used to check if the currently authenticated user (or the specified user) can do a given action to a given set of objects.
 Properties 
Name Type Required Restrictions Description actioncodersdk.RBACAction false objectcodersdk.AuthorizationObject false Object can represent a "set" of objects, such as: all workspaces in an organization, all workspaces owned by me, and all workspaces across the entire product. When defining an object, use the most specific language when possible to produce the smallest set. Meaning to set as many fields on 'Object' as you can. Example, if you want to check if you can update all workspaces owned by 'me', try to also add an 'OrganizationID' to the settings. Omitting the 'OrganizationID' could produce the incorrect value, as workspaces have both user and organization owners. 
 
 Enumerated Values 
Property Value actioncreateactionreadactionupdateactiondelete
 
 codersdk.AuthorizationObject 
{
	"any_org": true,
	"organization_id": "string",
	"owner_id": "string",
	"resource_id": "string",
	"resource_type": "*"
}
 
AuthorizationObject can represent a "set" of objects, such as: all workspaces in an organization, all workspaces owned by me, all workspaces across the entire product.
 Properties 
Name Type Required Restrictions Description any_orgboolean false Any org (optional) will disregard the org_owner when checking for permissions. This cannot be set to true if the OrganizationID is set. organization_idstring false Organization ID (optional) adds the set constraint to all resources owned by a given organization. owner_idstring false Owner ID (optional) adds the set constraint to all resources owned by a given user. resource_idstring false Resource ID (optional) reduces the set to a singular resource. This assigns a resource ID to the resource type, eg: a single workspace. The rbac library will not fetch the resource from the database, so if you are using this option, you should also set the owner ID and organization ID if possible. Be as specific as possible using all the fields relevant. resource_typecodersdk.RBACResource false Resource type is the name of the resource. ./coderd/rbac/object.go has the list of valid resource types. 
 
 codersdk.AuthorizationRequest 
{
	"checks": {
		"property1": {
			"action": "create",
			"object": {
				"any_org": true,
				"organization_id": "string",
				"owner_id": "string",
				"resource_id": "string",
				"resource_type": "*"
			}
		},
		"property2": {
			"action": "create",
			"object": {
				"any_org": true,
				"organization_id": "string",
				"owner_id": "string",
				"resource_id": "string",
				"resource_type": "*"
			}
		}
	}
}
 
 Properties 
Name Type Required Restrictions Description checksobject false Checks is a map keyed with an arbitrary string to a permission check. The key can be any string that is helpful to the caller, and allows multiple permission checks to be run in a single request. The key ensures that each permission check has the same key in the response. » [any property] codersdk.AuthorizationCheck false It is used to check if the currently authenticated user (or the specified user) can do a given action to a given set of objects. 
 
 codersdk.AuthorizationResponse 
{
	"property1": true,
	"property2": true
}
 
 Properties 
Name Type Required Restrictions Description [any property]boolean false 
 
 codersdk.AutomaticUpdates 
 Properties 
 Enumerated Values 
 codersdk.BannerConfig 
{
	"background_color": "string",
	"enabled": true,
	"message": "string"
}
 
 Properties 
Name Type Required Restrictions Description background_colorstring false enabledboolean false messagestring false 
 
 codersdk.BuildInfoResponse 
{
	"agent_api_version": "string",
	"dashboard_url": "string",
	"deployment_id": "string",
	"external_url": "string",
	"provisioner_api_version": "string",
	"telemetry": true,
	"upgrade_message": "string",
	"version": "string",
	"workspace_proxy": true
}
 
 Properties 
Name Type Required Restrictions Description agent_api_versionstring false Agent api version is the current version of the Agent API (back versions MAY still be supported). dashboard_urlstring false Dashboard URL is the URL to hit the deployment's dashboard. For external workspace proxies, this is the coderd they are connected to. deployment_idstring false Deployment ID is the unique identifier for this deployment. external_urlstring false External URL references the current Coder version. For production builds, this will link directly to a release. For development builds, this will link to a commit. provisioner_api_versionstring false Provisioner api version is the current version of the Provisioner API telemetryboolean false Telemetry is a boolean that indicates whether telemetry is enabled. upgrade_messagestring false Upgrade message is the message displayed to users when an outdated client is detected. versionstring false Version returns the semantic version of the build. workspace_proxyboolean false 
 
 codersdk.BuildReason 
 Properties 
 Enumerated Values 
Value initiatorautostartautostop
 
 codersdk.ConnectionLatency 
{
	"p50": 31.312,
	"p95": 119.832
}
 
 Properties 
Name Type Required Restrictions Description p50number false p95number false 
 
 codersdk.ConvertLoginRequest 
{
	"password": "string",
	"to_type": ""
}
 
 Properties 
Name Type Required Restrictions Description passwordstring true to_typecodersdk.LoginType true To type is the login type to convert to. 
 
 codersdk.CreateFirstUserRequest 
{
	"email": "string",
	"name": "string",
	"password": "string",
	"trial": true,
	"trial_info": {
		"company_name": "string",
		"country": "string",
		"developers": "string",
		"first_name": "string",
		"job_title": "string",
		"last_name": "string",
		"phone_number": "string"
	},
	"username": "string"
}
 
 Properties 
Name Type Required Restrictions Description emailstring true namestring false passwordstring true trialboolean false trial_infocodersdk.CreateFirstUserTrialInfo false usernamestring true 
 
 codersdk.CreateFirstUserResponse 
{
	"organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6",
	"user_id": "a169451c-8525-4352-b8ca-070dd449a1a5"
}
 
 Properties 
Name Type Required Restrictions Description organization_idstring false user_idstring false 
 
 codersdk.CreateFirstUserTrialInfo 
{
	"company_name": "string",
	"country": "string",
	"developers": "string",
	"first_name": "string",
	"job_title": "string",
	"last_name": "string",
	"phone_number": "string"
}
 
 Properties 
Name Type Required Restrictions Description company_namestring false countrystring false developersstring false first_namestring false job_titlestring false last_namestring false phone_numberstring false 
 
 codersdk.CreateGroupRequest 
{
	"avatar_url": "string",
	"display_name": "string",
	"name": "string",
	"quota_allowance": 0
}
 
 Properties 
Name Type Required Restrictions Description avatar_urlstring false display_namestring false namestring true quota_allowanceinteger false 
 
 codersdk.CreateOrganizationRequest 
{
	"description": "string",
	"display_name": "string",
	"icon": "string",
	"name": "string"
}
 
 Properties 
Name Type Required Restrictions Description descriptionstring false display_namestring false Display name will default to the same value as Name if not provided. iconstring false namestring true 
 
 codersdk.CreateProvisionerKeyResponse 
 Properties 
Name Type Required Restrictions Description keystring false 
 
 codersdk.CreateTemplateRequest 
{
	"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
	},
	"default_ttl_ms": 0,
	"delete_ttl_ms": 0,
	"description": "string",
	"disable_everyone_group_access": true,
	"display_name": "string",
	"dormant_ttl_ms": 0,
	"failure_ttl_ms": 0,
	"icon": "string",
	"max_port_share_level": "owner",
	"name": "string",
	"require_active_version": true,
	"template_version_id": "0ba39c92-1f1b-4c32-aa3e-9925d7713eb1"
}
 
 Properties 
Name Type Required Restrictions Description activity_bump_msinteger false Activity bump ms allows optionally specifying the activity bump duration for all workspaces created from this template. Defaults to 1h but can be set to 0 to disable activity bumping. allow_user_autostartboolean false Allow user autostart allows users to set a schedule for autostarting their workspace. By default this is true. This can only be disabled when using an enterprise license. allow_user_autostopboolean false Allow user autostop allows users to set a custom workspace TTL to use in place of the template's DefaultTTL field. By default this is true. If false, the DefaultTTL will always be used. This can only be disabled when using an enterprise license. allow_user_cancel_workspace_jobsboolean false Allow users to cancel in-progress workspace jobs. *bool as the default value is "true". autostart_requirementcodersdk.TemplateAutostartRequirement false Autostart requirement allows optionally specifying the autostart allowed days for workspaces created from this template. This is an enterprise feature. autostop_requirementcodersdk.TemplateAutostopRequirement false Autostop requirement allows optionally specifying the autostop requirement for workspaces created from this template. This is an enterprise feature. default_ttl_msinteger false Default ttl ms allows optionally specifying the default TTL for all workspaces created from this template. delete_ttl_msinteger false Delete ttl ms allows optionally specifying the max lifetime before Coder permanently deletes dormant workspaces created from this template. descriptionstring false Description is a description of what the template contains. It must be less than 128 bytes. disable_everyone_group_accessboolean false Disable everyone group access allows optionally disabling the default behavior of granting the 'everyone' group access to use the template. If this is set to true, the template will not be available to all users, and must be explicitly granted to users or groups in the permissions settings of the template. display_namestring false Display name is the displayed name of the template. dormant_ttl_msinteger false Dormant ttl ms allows optionally specifying the max lifetime before Coder locks inactive workspaces created from this template. failure_ttl_msinteger false Failure ttl ms allows optionally specifying the max lifetime before Coder stops all resources for failed workspaces created from this template. iconstring false Icon is a relative path or external URL that specifies an icon to be displayed in the dashboard. max_port_share_levelcodersdk.WorkspaceAgentPortShareLevel false Max port share level allows optionally specifying the maximum port share level for workspaces created from the template. namestring true Name is the name of the template. require_active_versionboolean false Require active version mandates that workspaces are built with the active template version. template_version_idstring true Template version ID is an in-progress or completed job to use as an initial version of the template. This is required on creation to enable a user-flow of validating a template works. There is no reason the data-model cannot support empty templates, but it doesn't make sense for users. 
 
 codersdk.CreateTemplateVersionDryRunRequest 
{
	"rich_parameter_values": [
		{
			"name": "string",
			"value": "string"
		}
	],
	"user_variable_values": [
		{
			"name": "string",
			"value": "string"
		}
	],
	"workspace_name": "string"
}
 
 Properties 
 codersdk.CreateTemplateVersionRequest 
{
	"example_id": "string",
	"file_id": "8a0cfb4f-ddc9-436d-91bb-75133c583767",
	"message": "string",
	"name": "string",
	"provisioner": "terraform",
	"storage_method": "file",
	"tags": {
		"property1": "string",
		"property2": "string"
	},
	"template_id": "c6d67e98-83ea-49f0-8812-e4abae2b68bc",
	"user_variable_values": [
		{
			"name": "string",
			"value": "string"
		}
	]
}
 
 Properties 
Name Type Required Restrictions Description example_idstring false file_idstring false messagestring false namestring false provisionerstring true storage_methodcodersdk.ProvisionerStorageMethod true tagsobject false » [any property] string false template_idstring false Template ID optionally associates a version with a template. user_variable_valuesarray of codersdk.VariableValue  false 
 
 Enumerated Values 
Property Value provisionerterraformprovisionerechostorage_methodfile
 
 codersdk.CreateTestAuditLogRequest 
{
	"action": "create",
	"additional_fields": [0],
	"build_reason": "autostart",
	"organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6",
	"resource_id": "4d5215ed-38bb-48ed-879a-fdb9ca58522f",
	"resource_type": "template",
	"time": "2019-08-24T14:15:22Z"
}
 
 Properties 
 Enumerated Values 
Property Value actioncreateactionwriteactiondeleteactionstartactionstopbuild_reasonautostartbuild_reasonautostopbuild_reasoninitiatorresource_typetemplateresource_typetemplate_versionresource_typeuserresource_typeworkspaceresource_typeworkspace_buildresource_typegit_ssh_keyresource_typeauditable_group
 
 codersdk.CreateTokenRequest 
{
	"lifetime": 0,
	"scope": "all",
	"token_name": "string"
}
 
 Properties 
Name Type Required Restrictions Description lifetimeinteger false scopecodersdk.APIKeyScope false token_namestring false 
 
 Enumerated Values 
Property Value scopeallscopeapplication_connect
 
 codersdk.CreateUserRequestWithOrgs 
{
	"email": "[email protected] ",
	"login_type": "",
	"name": "string",
	"organization_ids": ["497f6eca-6276-4993-bfeb-53cbbbba6f08"],
	"password": "string",
	"username": "string"
}
 
 Properties 
Name Type Required Restrictions Description emailstring true login_typecodersdk.LoginType false Login type defaults to LoginTypePassword. namestring false organization_idsarray of string false Organization ids is a list of organization IDs that the user should be a member of. passwordstring false usernamestring true 
 
 codersdk.CreateWorkspaceBuildRequest 
{
	"dry_run": true,
	"log_level": "debug",
	"orphan": true,
	"rich_parameter_values": [
		{
			"name": "string",
			"value": "string"
		}
	],
	"state": [0],
	"template_version_id": "0ba39c92-1f1b-4c32-aa3e-9925d7713eb1",
	"transition": "create"
}
 
 Properties 
Name Type Required Restrictions Description dry_runboolean false log_levelcodersdk.ProvisionerLogLevel false Log level changes the default logging verbosity of a provider ("info" if empty). orphanboolean false Orphan may be set for the Destroy transition. rich_parameter_valuesarray of codersdk.WorkspaceBuildParameter  false Rich parameter values are optional. It will write params to the 'workspace' scope. This will overwrite any existing parameters with the same name. This will not delete old params not included in this list. statearray of integer false template_version_idstring false transitioncodersdk.WorkspaceTransition true 
 
 Enumerated Values 
Property Value log_leveldebugtransitioncreatetransitionstarttransitionstoptransitiondelete
 
 codersdk.CreateWorkspaceProxyRequest 
{
	"display_name": "string",
	"icon": "string",
	"name": "string"
}
 
 Properties 
Name Type Required Restrictions Description display_namestring false iconstring false namestring true 
 
 codersdk.CreateWorkspaceRequest 
{
	"automatic_updates": "always",
	"autostart_schedule": "string",
	"name": "string",
	"rich_parameter_values": [
		{
			"name": "string",
			"value": "string"
		}
	],
	"template_id": "c6d67e98-83ea-49f0-8812-e4abae2b68bc",
	"template_version_id": "0ba39c92-1f1b-4c32-aa3e-9925d7713eb1",
	"ttl_ms": 0
}
 
CreateWorkspaceRequest provides options for creating a new workspace. Only one of TemplateID or TemplateVersionID can be specified, not both. If TemplateID is specified, the active version of the template will be used.
 Properties 
Name Type Required Restrictions Description automatic_updatescodersdk.AutomaticUpdates false autostart_schedulestring false namestring true rich_parameter_valuesarray of codersdk.WorkspaceBuildParameter  false Rich parameter values allows for additional parameters to be provided during the initial provision. template_idstring false Template ID specifies which template should be used for creating the workspace. template_version_idstring false Template version ID can be used to specify a specific version of a template for creating the workspace. ttl_msinteger false 
 
 codersdk.CustomRoleRequest 
{
	"display_name": "string",
	"name": "string",
	"organization_permissions": [
		{
			"action": "application_connect",
			"negate": true,
			"resource_type": "*"
		}
	],
	"site_permissions": [
		{
			"action": "application_connect",
			"negate": true,
			"resource_type": "*"
		}
	],
	"user_permissions": [
		{
			"action": "application_connect",
			"negate": true,
			"resource_type": "*"
		}
	]
}
 
 Properties 
Name Type Required Restrictions Description display_namestring false namestring false organization_permissionsarray of codersdk.Permission  false Organization permissions are specific to the organization the role belongs to. site_permissionsarray of codersdk.Permission  false user_permissionsarray of codersdk.Permission  false 
 
 codersdk.DAUEntry 
{
	"amount": 0,
	"date": "string"
}
 
 Properties 
Name Type Required Restrictions Description amountinteger false datestring false Date is a string formatted as 2024-01-31. Timezone and time information is not included. 
 
 codersdk.DAUsResponse 
{
	"entries": [
		{
			"amount": 0,
			"date": "string"
		}
	],
	"tz_hour_offset": 0
}
 
 Properties 
Name Type Required Restrictions Description entriesarray of codersdk.DAUEntry  false tz_hour_offsetinteger false 
 
 codersdk.DERP 
{
	"config": {
		"block_direct": true,
		"force_websockets": true,
		"path": "string",
		"url": "string"
	},
	"server": {
		"enable": true,
		"region_code": "string",
		"region_id": 0,
		"region_name": "string",
		"relay_url": {
			"forceQuery": true,
			"fragment": "string",
			"host": "string",
			"omitHost": true,
			"opaque": "string",
			"path": "string",
			"rawFragment": "string",
			"rawPath": "string",
			"rawQuery": "string",
			"scheme": "string",
			"user": {}
		},
		"stun_addresses": ["string"]
	}
}
 
 Properties 
 codersdk.DERPConfig 
{
	"block_direct": true,
	"force_websockets": true,
	"path": "string",
	"url": "string"
}
 
 Properties 
Name Type Required Restrictions Description block_directboolean false force_websocketsboolean false pathstring false urlstring false 
 
 codersdk.DERPRegion 
{
	"latency_ms": 0,
	"preferred": true
}
 
 Properties 
Name Type Required Restrictions Description latency_msnumber false preferredboolean false 
 
 codersdk.DERPServerConfig 
{
	"enable": true,
	"region_code": "string",
	"region_id": 0,
	"region_name": "string",
	"relay_url": {
		"forceQuery": true,
		"fragment": "string",
		"host": "string",
		"omitHost": true,
		"opaque": "string",
		"path": "string",
		"rawFragment": "string",
		"rawPath": "string",
		"rawQuery": "string",
		"scheme": "string",
		"user": {}
	},
	"stun_addresses": ["string"]
}
 
 Properties 
Name Type Required Restrictions Description enableboolean false region_codestring false region_idinteger false region_namestring false relay_urlserpent.URL false stun_addressesarray of string false 
 
 codersdk.DangerousConfig 
{
	"allow_all_cors": true,
	"allow_path_app_sharing": true,
	"allow_path_app_site_owner_access": true
}
 
 Properties 
Name Type Required Restrictions Description allow_all_corsboolean false allow_path_app_sharingboolean false allow_path_app_site_owner_accessboolean false 
 
 codersdk.DeleteWorkspaceAgentPortShareRequest 
{
	"agent_name": "string",
	"port": 0
}
 
 Properties 
Name Type Required Restrictions Description agent_namestring false portinteger false 
 
 codersdk.DeploymentConfig 
{
	"config": {
		"access_url": {
			"forceQuery": true,
			"fragment": "string",
			"host": "string",
			"omitHost": true,
			"opaque": "string",
			"path": "string",
			"rawFragment": "string",
			"rawPath": "string",
			"rawQuery": "string",
			"scheme": "string",
			"user": {}
		},
		"address": {
			"host": "string",
			"port": "string"
		},
		"agent_fallback_troubleshooting_url": {
			"forceQuery": true,
			"fragment": "string",
			"host": "string",
			"omitHost": true,
			"opaque": "string",
			"path": "string",
			"rawFragment": "string",
			"rawPath": "string",
			"rawQuery": "string",
			"scheme": "string",
			"user": {}
		},
		"agent_stat_refresh_interval": 0,
		"allow_workspace_renames": true,
		"autobuild_poll_interval": 0,
		"browser_only": true,
		"cache_directory": "string",
		"cli_upgrade_message": "string",
		"config": "string",
		"config_ssh": {
			"deploymentName": "string",
			"sshconfigOptions": ["string"]
		},
		"dangerous": {
			"allow_all_cors": true,
			"allow_path_app_sharing": true,
			"allow_path_app_site_owner_access": true
		},
		"derp": {
			"config": {
				"block_direct": true,
				"force_websockets": true,
				"path": "string",
				"url": "string"
			},
			"server": {
				"enable": true,
				"region_code": "string",
				"region_id": 0,
				"region_name": "string",
				"relay_url": {
					"forceQuery": true,
					"fragment": "string",
					"host": "string",
					"omitHost": true,
					"opaque": "string",
					"path": "string",
					"rawFragment": "string",
					"rawPath": "string",
					"rawQuery": "string",
					"scheme": "string",
					"user": {}
				},
				"stun_addresses": ["string"]
			}
		},
		"disable_owner_workspace_exec": true,
		"disable_password_auth": true,
		"disable_path_apps": true,
		"docs_url": {
			"forceQuery": true,
			"fragment": "string",
			"host": "string",
			"omitHost": true,
			"opaque": "string",
			"path": "string",
			"rawFragment": "string",
			"rawPath": "string",
			"rawQuery": "string",
			"scheme": "string",
			"user": {}
		},
		"enable_terraform_debug_mode": true,
		"experiments": ["string"],
		"external_auth": {
			"value": [
				{
					"app_install_url": "string",
					"app_installations_url": "string",
					"auth_url": "string",
					"client_id": "string",
					"device_code_url": "string",
					"device_flow": true,
					"display_icon": "string",
					"display_name": "string",
					"id": "string",
					"no_refresh": true,
					"regex": "string",
					"scopes": ["string"],
					"token_url": "string",
					"type": "string",
					"validate_url": "string"
				}
			]
		},
		"external_token_encryption_keys": ["string"],
		"healthcheck": {
			"refresh": 0,
			"threshold_database": 0
		},
		"http_address": "string",
		"in_memory_database": true,
		"job_hang_detector_interval": 0,
		"logging": {
			"human": "string",
			"json": "string",
			"log_filter": ["string"],
			"stackdriver": "string"
		},
		"metrics_cache_refresh_interval": 0,
		"notifications": {
			"dispatch_timeout": 0,
			"email": {
				"auth": {
					"identity": "string",
					"password": "string",
					"password_file": "string",
					"username": "string"
				},
				"force_tls": true,
				"from": "string",
				"hello": "string",
				"smarthost": {
					"host": "string",
					"port": "string"
				},
				"tls": {
					"ca_file": "string",
					"cert_file": "string",
					"insecure_skip_verify": true,
					"key_file": "string",
					"server_name": "string",
					"start_tls": true
				}
			},
			"fetch_interval": 0,
			"lease_count": 0,
			"lease_period": 0,
			"max_send_attempts": 0,
			"method": "string",
			"retry_interval": 0,
			"sync_buffer_size": 0,
			"sync_interval": 0,
			"webhook": {
				"endpoint": {
					"forceQuery": true,
					"fragment": "string",
					"host": "string",
					"omitHost": true,
					"opaque": "string",
					"path": "string",
					"rawFragment": "string",
					"rawPath": "string",
					"rawQuery": "string",
					"scheme": "string",
					"user": {}
				}
			}
		},
		"oauth2": {
			"github": {
				"allow_everyone": true,
				"allow_signups": true,
				"allowed_orgs": ["string"],
				"allowed_teams": ["string"],
				"client_id": "string",
				"client_secret": "string",
				"enterprise_base_url": "string"
			}
		},
		"oidc": {
			"allow_signups": true,
			"auth_url_params": {},
			"client_cert_file": "string",
			"client_id": "string",
			"client_key_file": "string",
			"client_secret": "string",
			"email_domain": ["string"],
			"email_field": "string",
			"group_allow_list": ["string"],
			"group_auto_create": true,
			"group_mapping": {},
			"group_regex_filter": {},
			"groups_field": "string",
			"icon_url": {
				"forceQuery": true,
				"fragment": "string",
				"host": "string",
				"omitHost": true,
				"opaque": "string",
				"path": "string",
				"rawFragment": "string",
				"rawPath": "string",
				"rawQuery": "string",
				"scheme": "string",
				"user": {}
			},
			"ignore_email_verified": true,
			"ignore_user_info": true,
			"issuer_url": "string",
			"name_field": "string",
			"organization_assign_default": true,
			"organization_field": "string",
			"organization_mapping": {},
			"scopes": ["string"],
			"sign_in_text": "string",
			"signups_disabled_text": "string",
			"skip_issuer_checks": true,
			"user_role_field": "string",
			"user_role_mapping": {},
			"user_roles_default": ["string"],
			"username_field": "string"
		},
		"pg_auth": "string",
		"pg_connection_url": "string",
		"pprof": {
			"address": {
				"host": "string",
				"port": "string"
			},
			"enable": true
		},
		"prometheus": {
			"address": {
				"host": "string",
				"port": "string"
			},
			"aggregate_agent_stats_by": ["string"],
			"collect_agent_stats": true,
			"collect_db_metrics": true,
			"enable": true
		},
		"provisioner": {
			"daemon_poll_interval": 0,
			"daemon_poll_jitter": 0,
			"daemon_psk": "string",
			"daemon_types": ["string"],
			"daemons": 0,
			"force_cancel_interval": 0
		},
		"proxy_health_status_interval": 0,
		"proxy_trusted_headers": ["string"],
		"proxy_trusted_origins": ["string"],
		"rate_limit": {
			"api": 0,
			"disable_all": true
		},
		"redirect_to_access_url": true,
		"scim_api_key": "string",
		"secure_auth_cookie": true,
		"session_lifetime": {
			"default_duration": 0,
			"default_token_lifetime": 0,
			"disable_expiry_refresh": true,
			"max_token_lifetime": 0
		},
		"ssh_keygen_algorithm": "string",
		"strict_transport_security": 0,
		"strict_transport_security_options": ["string"],
		"support": {
			"links": {
				"value": [
					{
						"icon": "bug",
						"name": "string",
						"target": "string"
					}
				]
			}
		},
		"swagger": {
			"enable": true
		},
		"telemetry": {
			"enable": true,
			"trace": true,
			"url": {
				"forceQuery": true,
				"fragment": "string",
				"host": "string",
				"omitHost": true,
				"opaque": "string",
				"path": "string",
				"rawFragment": "string",
				"rawPath": "string",
				"rawQuery": "string",
				"scheme": "string",
				"user": {}
			}
		},
		"terms_of_service_url": "string",
		"tls": {
			"address": {
				"host": "string",
				"port": "string"
			},
			"allow_insecure_ciphers": true,
			"cert_file": ["string"],
			"client_auth": "string",
			"client_ca_file": "string",
			"client_cert_file": "string",
			"client_key_file": "string",
			"enable": true,
			"key_file": ["string"],
			"min_version": "string",
			"redirect_http": true,
			"supported_ciphers": ["string"]
		},
		"trace": {
			"capture_logs": true,
			"data_dog": true,
			"enable": true,
			"honeycomb_api_key": "string"
		},
		"update_check": true,
		"user_quiet_hours_schedule": {
			"allow_user_custom": true,
			"default_schedule": "string"
		},
		"verbose": true,
		"web_terminal_renderer": "string",
		"wgtunnel_host": "string",
		"wildcard_access_url": "string",
		"write_config": true
	},
	"options": [
		{
			"annotations": {
				"property1": "string",
				"property2": "string"
			},
			"default": "string",
			"description": "string",
			"env": "string",
			"flag": "string",
			"flag_shorthand": "string",
			"group": {
				"description": "string",
				"name": "string",
				"parent": {
					"description": "string",
					"name": "string",
					"parent": {},
					"yaml": "string"
				},
				"yaml": "string"
			},
			"hidden": true,
			"name": "string",
			"required": true,
			"use_instead": [{}],
			"value": null,
			"value_source": "",
			"yaml": "string"
		}
	]
}
 
 Properties 
 codersdk.DeploymentStats 
{
	"aggregated_from": "2019-08-24T14:15:22Z",
	"collected_at": "2019-08-24T14:15:22Z",
	"next_update_at": "2019-08-24T14:15:22Z",
	"session_count": {
		"jetbrains": 0,
		"reconnecting_pty": 0,
		"ssh": 0,
		"vscode": 0
	},
	"workspaces": {
		"building": 0,
		"connection_latency_ms": {
			"p50": 0,
			"p95": 0
		},
		"failed": 0,
		"pending": 0,
		"running": 0,
		"rx_bytes": 0,
		"stopped": 0,
		"tx_bytes": 0
	}
}
 
 Properties 
Name Type Required Restrictions Description aggregated_fromstring false Aggregated from is the time in which stats are aggregated from. This might be back in time a specific duration or interval. collected_atstring false Collected at is the time in which stats are collected at. next_update_atstring false Next update at is the time when the next batch of stats will be updated. session_countcodersdk.SessionCountDeploymentStats false workspacescodersdk.WorkspaceDeploymentStats false 
 
 codersdk.DeploymentValues 
{
	"access_url": {
		"forceQuery": true,
		"fragment": "string",
		"host": "string",
		"omitHost": true,
		"opaque": "string",
		"path": "string",
		"rawFragment": "string",
		"rawPath": "string",
		"rawQuery": "string",
		"scheme": "string",
		"user": {}
	},
	"address": {
		"host": "string",
		"port": "string"
	},
	"agent_fallback_troubleshooting_url": {
		"forceQuery": true,
		"fragment": "string",
		"host": "string",
		"omitHost": true,
		"opaque": "string",
		"path": "string",
		"rawFragment": "string",
		"rawPath": "string",
		"rawQuery": "string",
		"scheme": "string",
		"user": {}
	},
	"agent_stat_refresh_interval": 0,
	"allow_workspace_renames": true,
	"autobuild_poll_interval": 0,
	"browser_only": true,
	"cache_directory": "string",
	"cli_upgrade_message": "string",
	"config": "string",
	"config_ssh": {
		"deploymentName": "string",
		"sshconfigOptions": ["string"]
	},
	"dangerous": {
		"allow_all_cors": true,
		"allow_path_app_sharing": true,
		"allow_path_app_site_owner_access": true
	},
	"derp": {
		"config": {
			"block_direct": true,
			"force_websockets": true,
			"path": "string",
			"url": "string"
		},
		"server": {
			"enable": true,
			"region_code": "string",
			"region_id": 0,
			"region_name": "string",
			"relay_url": {
				"forceQuery": true,
				"fragment": "string",
				"host": "string",
				"omitHost": true,
				"opaque": "string",
				"path": "string",
				"rawFragment": "string",
				"rawPath": "string",
				"rawQuery": "string",
				"scheme": "string",
				"user": {}
			},
			"stun_addresses": ["string"]
		}
	},
	"disable_owner_workspace_exec": true,
	"disable_password_auth": true,
	"disable_path_apps": true,
	"docs_url": {
		"forceQuery": true,
		"fragment": "string",
		"host": "string",
		"omitHost": true,
		"opaque": "string",
		"path": "string",
		"rawFragment": "string",
		"rawPath": "string",
		"rawQuery": "string",
		"scheme": "string",
		"user": {}
	},
	"enable_terraform_debug_mode": true,
	"experiments": ["string"],
	"external_auth": {
		"value": [
			{
				"app_install_url": "string",
				"app_installations_url": "string",
				"auth_url": "string",
				"client_id": "string",
				"device_code_url": "string",
				"device_flow": true,
				"display_icon": "string",
				"display_name": "string",
				"id": "string",
				"no_refresh": true,
				"regex": "string",
				"scopes": ["string"],
				"token_url": "string",
				"type": "string",
				"validate_url": "string"
			}
		]
	},
	"external_token_encryption_keys": ["string"],
	"healthcheck": {
		"refresh": 0,
		"threshold_database": 0
	},
	"http_address": "string",
	"in_memory_database": true,
	"job_hang_detector_interval": 0,
	"logging": {
		"human": "string",
		"json": "string",
		"log_filter": ["string"],
		"stackdriver": "string"
	},
	"metrics_cache_refresh_interval": 0,
	"notifications": {
		"dispatch_timeout": 0,
		"email": {
			"auth": {
				"identity": "string",
				"password": "string",
				"password_file": "string",
				"username": "string"
			},
			"force_tls": true,
			"from": "string",
			"hello": "string",
			"smarthost": {
				"host": "string",
				"port": "string"
			},
			"tls": {
				"ca_file": "string",
				"cert_file": "string",
				"insecure_skip_verify": true,
				"key_file": "string",
				"server_name": "string",
				"start_tls": true
			}
		},
		"fetch_interval": 0,
		"lease_count": 0,
		"lease_period": 0,
		"max_send_attempts": 0,
		"method": "string",
		"retry_interval": 0,
		"sync_buffer_size": 0,
		"sync_interval": 0,
		"webhook": {
			"endpoint": {
				"forceQuery": true,
				"fragment": "string",
				"host": "string",
				"omitHost": true,
				"opaque": "string",
				"path": "string",
				"rawFragment": "string",
				"rawPath": "string",
				"rawQuery": "string",
				"scheme": "string",
				"user": {}
			}
		}
	},
	"oauth2": {
		"github": {
			"allow_everyone": true,
			"allow_signups": true,
			"allowed_orgs": ["string"],
			"allowed_teams": ["string"],
			"client_id": "string",
			"client_secret": "string",
			"enterprise_base_url": "string"
		}
	},
	"oidc": {
		"allow_signups": true,
		"auth_url_params": {},
		"client_cert_file": "string",
		"client_id": "string",
		"client_key_file": "string",
		"client_secret": "string",
		"email_domain": ["string"],
		"email_field": "string",
		"group_allow_list": ["string"],
		"group_auto_create": true,
		"group_mapping": {},
		"group_regex_filter": {},
		"groups_field": "string",
		"icon_url": {
			"forceQuery": true,
			"fragment": "string",
			"host": "string",
			"omitHost": true,
			"opaque": "string",
			"path": "string",
			"rawFragment": "string",
			"rawPath": "string",
			"rawQuery": "string",
			"scheme": "string",
			"user": {}
		},
		"ignore_email_verified": true,
		"ignore_user_info": true,
		"issuer_url": "string",
		"name_field": "string",
		"organization_assign_default": true,
		"organization_field": "string",
		"organization_mapping": {},
		"scopes": ["string"],
		"sign_in_text": "string",
		"signups_disabled_text": "string",
		"skip_issuer_checks": true,
		"user_role_field": "string",
		"user_role_mapping": {},
		"user_roles_default": ["string"],
		"username_field": "string"
	},
	"pg_auth": "string",
	"pg_connection_url": "string",
	"pprof": {
		"address": {
			"host": "string",
			"port": "string"
		},
		"enable": true
	},
	"prometheus": {
		"address": {
			"host": "string",
			"port": "string"
		},
		"aggregate_agent_stats_by": ["string"],
		"collect_agent_stats": true,
		"collect_db_metrics": true,
		"enable": true
	},
	"provisioner": {
		"daemon_poll_interval": 0,
		"daemon_poll_jitter": 0,
		"daemon_psk": "string",
		"daemon_types": ["string"],
		"daemons": 0,
		"force_cancel_interval": 0
	},
	"proxy_health_status_interval": 0,
	"proxy_trusted_headers": ["string"],
	"proxy_trusted_origins": ["string"],
	"rate_limit": {
		"api": 0,
		"disable_all": true
	},
	"redirect_to_access_url": true,
	"scim_api_key": "string",
	"secure_auth_cookie": true,
	"session_lifetime": {
		"default_duration": 0,
		"default_token_lifetime": 0,
		"disable_expiry_refresh": true,
		"max_token_lifetime": 0
	},
	"ssh_keygen_algorithm": "string",
	"strict_transport_security": 0,
	"strict_transport_security_options": ["string"],
	"support": {
		"links": {
			"value": [
				{
					"icon": "bug",
					"name": "string",
					"target": "string"
				}
			]
		}
	},
	"swagger": {
		"enable": true
	},
	"telemetry": {
		"enable": true,
		"trace": true,
		"url": {
			"forceQuery": true,
			"fragment": "string",
			"host": "string",
			"omitHost": true,
			"opaque": "string",
			"path": "string",
			"rawFragment": "string",
			"rawPath": "string",
			"rawQuery": "string",
			"scheme": "string",
			"user": {}
		}
	},
	"terms_of_service_url": "string",
	"tls": {
		"address": {
			"host": "string",
			"port": "string"
		},
		"allow_insecure_ciphers": true,
		"cert_file": ["string"],
		"client_auth": "string",
		"client_ca_file": "string",
		"client_cert_file": "string",
		"client_key_file": "string",
		"enable": true,
		"key_file": ["string"],
		"min_version": "string",
		"redirect_http": true,
		"supported_ciphers": ["string"]
	},
	"trace": {
		"capture_logs": true,
		"data_dog": true,
		"enable": true,
		"honeycomb_api_key": "string"
	},
	"update_check": true,
	"user_quiet_hours_schedule": {
		"allow_user_custom": true,
		"default_schedule": "string"
	},
	"verbose": true,
	"web_terminal_renderer": "string",
	"wgtunnel_host": "string",
	"wildcard_access_url": "string",
	"write_config": true
}
 
 Properties 
 codersdk.DisplayApp 
 Properties 
 Enumerated Values 
Value vscodevscode_insidersweb_terminalport_forwarding_helperssh_helper
 
 codersdk.Entitlement 
 Properties 
 Enumerated Values 
Value entitledgrace_periodnot_entitled
 
 codersdk.Entitlements 
{
	"errors": ["string"],
	"features": {
		"property1": {
			"actual": 0,
			"enabled": true,
			"entitlement": "entitled",
			"limit": 0
		},
		"property2": {
			"actual": 0,
			"enabled": true,
			"entitlement": "entitled",
			"limit": 0
		}
	},
	"has_license": true,
	"refreshed_at": "2019-08-24T14:15:22Z",
	"require_telemetry": true,
	"trial": true,
	"warnings": ["string"]
}
 
 Properties 
Name Type Required Restrictions Description errorsarray of string false featuresobject false » [any property] codersdk.Feature false has_licenseboolean false refreshed_atstring false require_telemetryboolean false trialboolean false warningsarray of string false 
 
 codersdk.Experiment 
 Properties 
 Enumerated Values 
Value exampleauto-fill-parametersnotificationsworkspace-usage
 
 codersdk.ExternalAuth 
{
	"app_install_url": "string",
	"app_installable": true,
	"authenticated": true,
	"device": true,
	"display_name": "string",
	"installations": [
		{
			"account": {
				"avatar_url": "string",
				"id": 0,
				"login": "string",
				"name": "string",
				"profile_url": "string"
			},
			"configure_url": "string",
			"id": 0
		}
	],
	"user": {
		"avatar_url": "string",
		"id": 0,
		"login": "string",
		"name": "string",
		"profile_url": "string"
	}
}
 
 Properties 
Name Type Required Restrictions Description app_install_urlstring false App install URL is the URL to install the app. app_installableboolean false App installable is true if the request for app installs was successful. authenticatedboolean false deviceboolean false display_namestring false installationsarray of codersdk.ExternalAuthAppInstallation  false Installations are the installations that the user has access to. usercodersdk.ExternalAuthUser false User is the user that authenticated with the provider. 
 
 codersdk.ExternalAuthAppInstallation 
{
	"account": {
		"avatar_url": "string",
		"id": 0,
		"login": "string",
		"name": "string",
		"profile_url": "string"
	},
	"configure_url": "string",
	"id": 0
}
 
 Properties 
 codersdk.ExternalAuthConfig 
{
	"app_install_url": "string",
	"app_installations_url": "string",
	"auth_url": "string",
	"client_id": "string",
	"device_code_url": "string",
	"device_flow": true,
	"display_icon": "string",
	"display_name": "string",
	"id": "string",
	"no_refresh": true,
	"regex": "string",
	"scopes": ["string"],
	"token_url": "string",
	"type": "string",
	"validate_url": "string"
}
 
 Properties 
Name Type Required Restrictions Description app_install_urlstring false app_installations_urlstring false auth_urlstring false client_idstring false device_code_urlstring false device_flowboolean false display_iconstring false Display icon is a URL to an icon to display in the UI. display_namestring false Display name is shown in the UI to identify the auth config. idstring false ID is a unique identifier for the auth config. It defaults to type when not provided. no_refreshboolean false regexstring false Regex allows API requesters to match an auth config by a string (e.g. coder.com) instead of by it's type. Git clone makes use of this by parsing the URL from: 'Username for "https://github.com ":' And sending it to the Coder server to match against the Regex. scopesarray of string false token_urlstring false typestring false Type is the type of external auth config. validate_urlstring false 
 
 codersdk.ExternalAuthDevice 
{
	"device_code": "string",
	"expires_in": 0,
	"interval": 0,
	"user_code": "string",
	"verification_uri": "string"
}
 
 Properties 
Name Type Required Restrictions Description device_codestring false expires_ininteger false intervalinteger false user_codestring false verification_uristring false 
 
 codersdk.ExternalAuthLink 
{
	"authenticated": true,
	"created_at": "2019-08-24T14:15:22Z",
	"expires": "2019-08-24T14:15:22Z",
	"has_refresh_token": true,
	"provider_id": "string",
	"updated_at": "2019-08-24T14:15:22Z",
	"validate_error": "string"
}
 
 Properties 
Name Type Required Restrictions Description authenticatedboolean false created_atstring false expiresstring false has_refresh_tokenboolean false provider_idstring false updated_atstring false validate_errorstring false 
 
 codersdk.ExternalAuthUser 
{
	"avatar_url": "string",
	"id": 0,
	"login": "string",
	"name": "string",
	"profile_url": "string"
}
 
 Properties 
Name Type Required Restrictions Description avatar_urlstring false idinteger false loginstring false namestring false profile_urlstring false 
 
 codersdk.Feature 
{
	"actual": 0,
	"enabled": true,
	"entitlement": "entitled",
	"limit": 0
}
 
 Properties 
Name Type Required Restrictions Description actualinteger false enabledboolean false entitlementcodersdk.Entitlement false limitinteger false 
 
 codersdk.GenerateAPIKeyResponse 
 Properties 
Name Type Required Restrictions Description keystring false 
 
 codersdk.GetUsersResponse 
{
	"count": 0,
	"users": [
		{
			"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",
			"login_type": "",
			"name": "string",
			"organization_ids": ["497f6eca-6276-4993-bfeb-53cbbbba6f08"],
			"roles": [
				{
					"display_name": "string",
					"name": "string",
					"organization_id": "string"
				}
			],
			"status": "active",
			"theme_preference": "string",
			"updated_at": "2019-08-24T14:15:22Z",
			"username": "string"
		}
	]
}
 
 Properties 
Name Type Required Restrictions Description countinteger false usersarray of codersdk.User  false 
 
 codersdk.GitSSHKey 
{
	"created_at": "2019-08-24T14:15:22Z",
	"public_key": "string",
	"updated_at": "2019-08-24T14:15:22Z",
	"user_id": "a169451c-8525-4352-b8ca-070dd449a1a5"
}
 
 Properties 
Name Type Required Restrictions Description created_atstring false public_keystring false updated_atstring false user_idstring false 
 
 codersdk.Group 
{
	"avatar_url": "string",
	"display_name": "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",
			"login_type": "",
			"name": "string",
			"status": "active",
			"theme_preference": "string",
			"updated_at": "2019-08-24T14:15:22Z",
			"username": "string"
		}
	],
	"name": "string",
	"organization_display_name": "string",
	"organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6",
	"organization_name": "string",
	"quota_allowance": 0,
	"source": "user",
	"total_member_count": 0
}
 
 Properties 
Name Type Required Restrictions Description avatar_urlstring false display_namestring false idstring false membersarray of codersdk.ReducedUser  false namestring false organization_display_namestring false organization_idstring false organization_namestring false quota_allowanceinteger false sourcecodersdk.GroupSource false total_member_countinteger false How many members are in this group. Shows the total count, even if the user is not authorized to read group member details. May be greater than len(Group.Members). 
 
 codersdk.GroupSource 
 Properties 
 Enumerated Values 
 codersdk.GroupSyncSettings 
{
	"auto_create_missing_groups": true,
	"field": "string",
	"legacy_group_name_mapping": {
		"property1": "string",
		"property2": "string"
	},
	"mapping": {
		"property1": ["string"],
		"property2": ["string"]
	},
	"regex_filter": {}
}
 
 Properties 
Name Type Required Restrictions Description auto_create_missing_groupsboolean false Auto create missing groups controls whether groups returned by the OIDC provider are automatically created in Coder if they are missing. fieldstring false Field selects the claim field to be used as the created user's groups. If the group field is the empty string, then no group updates will ever come from the OIDC provider. legacy_group_name_mappingobject false Legacy group name mapping is deprecated. It remaps an IDP group name to a Coder group name. Since configuration is now done at runtime, group IDs are used to account for group renames. For legacy configurations, this config option has to remain. Deprecated: Use Mapping instead. » [any property] string false mappingobject false Mapping maps from an OIDC group --> Coder group ID » [any property] array of string false regex_filterregexp.Regexp false Regex filter is a regular expression that filters the groups returned by the OIDC provider. Any group not matched by this regex will be ignored. If the group filter is nil, then no group filtering will occur. 
 
 codersdk.Healthcheck 
{
	"interval": 0,
	"threshold": 0,
	"url": "string"
}
 
 Properties 
Name Type Required Restrictions Description intervalinteger false Interval specifies the seconds between each health check. thresholdinteger false Threshold specifies the number of consecutive failed health checks before returning "unhealthy". urlstring false URL specifies the endpoint to check for the app health. 
 
 codersdk.HealthcheckConfig 
{
	"refresh": 0,
	"threshold_database": 0
}
 
 Properties 
Name Type Required Restrictions Description refreshinteger false threshold_databaseinteger false 
 
 codersdk.InsightsReportInterval 
 Properties 
 Enumerated Values 
 codersdk.IssueReconnectingPTYSignedTokenRequest 
{
	"agentID": "bc282582-04f9-45ce-b904-3e3bfab66958",
	"url": "string"
}
 
 Properties 
Name Type Required Restrictions Description agentIDstring true urlstring true URL is the URL of the reconnecting-pty endpoint you are connecting to. 
 
 codersdk.IssueReconnectingPTYSignedTokenResponse 
{
	"signed_token": "string"
}
 
 Properties 
Name Type Required Restrictions Description signed_tokenstring false 
 
 codersdk.JFrogXrayScan 
{
	"agent_id": "2b1e3b65-2c04-4fa2-a2d7-467901e98978",
	"critical": 0,
	"high": 0,
	"medium": 0,
	"results_url": "string",
	"workspace_id": "0967198e-ec7b-4c6b-b4d3-f71244cadbe9"
}
 
 Properties 
Name Type Required Restrictions Description agent_idstring false criticalinteger false highinteger false mediuminteger false results_urlstring false workspace_idstring false 
 
 codersdk.JobErrorCode 
"REQUIRED_TEMPLATE_VARIABLES"
 
 Properties 
 Enumerated Values 
Value REQUIRED_TEMPLATE_VARIABLES
 
 codersdk.License 
{
	"claims": {},
	"id": 0,
	"uploaded_at": "2019-08-24T14:15:22Z",
	"uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f"
}
 
 Properties 
Name Type Required Restrictions Description claimsobject false Claims are the JWT claims asserted by the license. Here we use a generic string map to ensure that all data from the server is parsed verbatim, not just the fields this version of Coder understands. idinteger false uploaded_atstring false uuidstring false 
 
 codersdk.LinkConfig 
{
	"icon": "bug",
	"name": "string",
	"target": "string"
}
 
 Properties 
Name Type Required Restrictions Description iconstring false namestring false targetstring false 
 
 Enumerated Values 
Property Value iconbugiconchaticondocs
 
 codersdk.LogLevel 
 Properties 
 Enumerated Values 
Value tracedebuginfowarnerror
 
 codersdk.LogSource 
 Properties 
 Enumerated Values 
Value provisioner_daemonprovisioner
 
 codersdk.LoggingConfig 
{
	"human": "string",
	"json": "string",
	"log_filter": ["string"],
	"stackdriver": "string"
}
 
 Properties 
Name Type Required Restrictions Description humanstring false jsonstring false log_filterarray of string false stackdriverstring false 
 
 codersdk.LoginType 
 Properties 
 Enumerated Values 
Value `` passwordgithuboidctokennone
 
 codersdk.LoginWithPasswordRequest 
 Properties 
Name Type Required Restrictions Description emailstring true passwordstring true 
 
 codersdk.LoginWithPasswordResponse 
{
	"session_token": "string"
}
 
 Properties 
Name Type Required Restrictions Description session_tokenstring true 
 
 codersdk.MinimalOrganization 
{
	"display_name": "string",
	"icon": "string",
	"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
	"name": "string"
}
 
 Properties 
Name Type Required Restrictions Description display_namestring false iconstring false idstring true namestring false 
 
 codersdk.MinimalUser 
{
	"avatar_url": "http://example.com",
	"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
	"username": "string"
}
 
 Properties 
Name Type Required Restrictions Description avatar_urlstring false idstring true usernamestring true 
 
 codersdk.NotificationMethodsResponse 
{
	"available": ["string"],
	"default": "string"
}
 
 Properties 
Name Type Required Restrictions Description availablearray of string false defaultstring false 
 
 codersdk.NotificationPreference 
{
	"disabled": true,
	"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
	"updated_at": "2019-08-24T14:15:22Z"
}
 
 Properties 
Name Type Required Restrictions Description disabledboolean false idstring false updated_atstring false 
 
 codersdk.NotificationTemplate 
{
	"actions": "string",
	"body_template": "string",
	"group": "string",
	"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
	"kind": "string",
	"method": "string",
	"name": "string",
	"title_template": "string"
}
 
 Properties 
Name Type Required Restrictions Description actionsstring false body_templatestring false groupstring false idstring false kindstring false methodstring false namestring false title_templatestring false 
 
 codersdk.NotificationsConfig 
{
	"dispatch_timeout": 0,
	"email": {
		"auth": {
			"identity": "string",
			"password": "string",
			"password_file": "string",
			"username": "string"
		},
		"force_tls": true,
		"from": "string",
		"hello": "string",
		"smarthost": {
			"host": "string",
			"port": "string"
		},
		"tls": {
			"ca_file": "string",
			"cert_file": "string",
			"insecure_skip_verify": true,
			"key_file": "string",
			"server_name": "string",
			"start_tls": true
		}
	},
	"fetch_interval": 0,
	"lease_count": 0,
	"lease_period": 0,
	"max_send_attempts": 0,
	"method": "string",
	"retry_interval": 0,
	"sync_buffer_size": 0,
	"sync_interval": 0,
	"webhook": {
		"endpoint": {
			"forceQuery": true,
			"fragment": "string",
			"host": "string",
			"omitHost": true,
			"opaque": "string",
			"path": "string",
			"rawFragment": "string",
			"rawPath": "string",
			"rawQuery": "string",
			"scheme": "string",
			"user": {}
		}
	}
}
 
 Properties 
Name Type Required Restrictions Description dispatch_timeoutinteger false How long to wait while a notification is being sent before giving up. emailcodersdk.NotificationsEmailConfig false Email settings. fetch_intervalinteger false How often to query the database for queued notifications. lease_countinteger false How many notifications a notifier should lease per fetch interval. lease_periodinteger false How long a notifier should lease a message. This is effectively how long a notification is 'owned' by a notifier, and once this period expires it will be available for lease by another notifier. Leasing is important in order for multiple running notifiers to not pick the same messages to deliver concurrently. This lease period will only expire if a notifier shuts down ungracefully; a dispatch of the notification releases the lease. max_send_attemptsinteger false The upper limit of attempts to send a notification. methodstring false Which delivery method to use (available options: 'smtp', 'webhook'). retry_intervalinteger false The minimum time between retries. sync_buffer_sizeinteger false The notifications system buffers message updates in memory to ease pressure on the database. This option controls how many updates are kept in memory. The lower this value the lower the change of state inconsistency in a non-graceful shutdown - but it also increases load on the database. It is recommended to keep this option at its default value. sync_intervalinteger false The notifications system buffers message updates in memory to ease pressure on the database. This option controls how often it synchronizes its state with the database. The shorter this value the lower the change of state inconsistency in a non-graceful shutdown - but it also increases load on the database. It is recommended to keep this option at its default value. webhookcodersdk.NotificationsWebhookConfig false Webhook settings. 
 
 codersdk.NotificationsEmailAuthConfig 
{
	"identity": "string",
	"password": "string",
	"password_file": "string",
	"username": "string"
}
 
 Properties 
Name Type Required Restrictions Description identitystring false Identity for PLAIN auth. passwordstring false Password for LOGIN/PLAIN auth. password_filestring false File from which to load the password for LOGIN/PLAIN auth. usernamestring false Username for LOGIN/PLAIN auth. 
 
 codersdk.NotificationsEmailConfig 
{
	"auth": {
		"identity": "string",
		"password": "string",
		"password_file": "string",
		"username": "string"
	},
	"force_tls": true,
	"from": "string",
	"hello": "string",
	"smarthost": {
		"host": "string",
		"port": "string"
	},
	"tls": {
		"ca_file": "string",
		"cert_file": "string",
		"insecure_skip_verify": true,
		"key_file": "string",
		"server_name": "string",
		"start_tls": true
	}
}
 
 Properties 
 codersdk.NotificationsEmailTLSConfig 
{
	"ca_file": "string",
	"cert_file": "string",
	"insecure_skip_verify": true,
	"key_file": "string",
	"server_name": "string",
	"start_tls": true
}
 
 Properties 
Name Type Required Restrictions Description ca_filestring false Ca file specifies the location of the CA certificate to use. cert_filestring false Cert file specifies the location of the certificate to use. insecure_skip_verifyboolean false Insecure skip verify skips target certificate validation. key_filestring false Key file specifies the location of the key to use. server_namestring false Server name to verify the hostname for the targets. start_tlsboolean false Start tls attempts to upgrade plain connections to TLS. 
 
 codersdk.NotificationsSettings 
{
	"notifier_paused": true
}
 
 Properties 
Name Type Required Restrictions Description notifier_pausedboolean false 
 
 codersdk.NotificationsWebhookConfig 
{
	"endpoint": {
		"forceQuery": true,
		"fragment": "string",
		"host": "string",
		"omitHost": true,
		"opaque": "string",
		"path": "string",
		"rawFragment": "string",
		"rawPath": "string",
		"rawQuery": "string",
		"scheme": "string",
		"user": {}
	}
}
 
 Properties 
Name Type Required Restrictions Description endpointserpent.URL false The URL to which the payload will be sent with an HTTP POST request. 
 
 codersdk.OAuth2AppEndpoints 
{
	"authorization": "string",
	"device_authorization": "string",
	"token": "string"
}
 
 Properties 
Name Type Required Restrictions Description authorizationstring false device_authorizationstring false Device authorization is optional. tokenstring false 
 
 codersdk.OAuth2Config 
{
	"github": {
		"allow_everyone": true,
		"allow_signups": true,
		"allowed_orgs": ["string"],
		"allowed_teams": ["string"],
		"client_id": "string",
		"client_secret": "string",
		"enterprise_base_url": "string"
	}
}
 
 Properties 
 codersdk.OAuth2GithubConfig 
{
	"allow_everyone": true,
	"allow_signups": true,
	"allowed_orgs": ["string"],
	"allowed_teams": ["string"],
	"client_id": "string",
	"client_secret": "string",
	"enterprise_base_url": "string"
}
 
 Properties 
Name Type Required Restrictions Description allow_everyoneboolean false allow_signupsboolean false allowed_orgsarray of string false allowed_teamsarray of string false client_idstring false client_secretstring false enterprise_base_urlstring false 
 
 codersdk.OAuth2ProviderApp 
{
	"callback_url": "string",
	"endpoints": {
		"authorization": "string",
		"device_authorization": "string",
		"token": "string"
	},
	"icon": "string",
	"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
	"name": "string"
}
 
 Properties 
Name Type Required Restrictions Description callback_urlstring false endpointscodersdk.OAuth2AppEndpoints false Endpoints are included in the app response for easier discovery. The OAuth2 spec does not have a defined place to find these (for comparison, OIDC has a '/.well-known/openid-configuration' endpoint). iconstring false idstring false namestring false 
 
 codersdk.OAuth2ProviderAppSecret 
{
	"client_secret_truncated": "string",
	"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
	"last_used_at": "string"
}
 
 Properties 
Name Type Required Restrictions Description client_secret_truncatedstring false idstring false last_used_atstring false 
 
 codersdk.OAuth2ProviderAppSecretFull 
{
	"client_secret_full": "string",
	"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}
 
 Properties 
Name Type Required Restrictions Description client_secret_fullstring false idstring false 
 
 codersdk.OAuthConversionResponse 
{
	"expires_at": "2019-08-24T14:15:22Z",
	"state_string": "string",
	"to_type": "",
	"user_id": "a169451c-8525-4352-b8ca-070dd449a1a5"
}
 
 Properties 
Name Type Required Restrictions Description expires_atstring false state_stringstring false to_typecodersdk.LoginType false user_idstring false 
 
 codersdk.OIDCAuthMethod 
{
	"enabled": true,
	"iconUrl": "string",
	"signInText": "string"
}
 
 Properties 
Name Type Required Restrictions Description enabledboolean false iconUrlstring false signInTextstring false 
 
 codersdk.OIDCConfig 
{
	"allow_signups": true,
	"auth_url_params": {},
	"client_cert_file": "string",
	"client_id": "string",
	"client_key_file": "string",
	"client_secret": "string",
	"email_domain": ["string"],
	"email_field": "string",
	"group_allow_list": ["string"],
	"group_auto_create": true,
	"group_mapping": {},
	"group_regex_filter": {},
	"groups_field": "string",
	"icon_url": {
		"forceQuery": true,
		"fragment": "string",
		"host": "string",
		"omitHost": true,
		"opaque": "string",
		"path": "string",
		"rawFragment": "string",
		"rawPath": "string",
		"rawQuery": "string",
		"scheme": "string",
		"user": {}
	},
	"ignore_email_verified": true,
	"ignore_user_info": true,
	"issuer_url": "string",
	"name_field": "string",
	"organization_assign_default": true,
	"organization_field": "string",
	"organization_mapping": {},
	"scopes": ["string"],
	"sign_in_text": "string",
	"signups_disabled_text": "string",
	"skip_issuer_checks": true,
	"user_role_field": "string",
	"user_role_mapping": {},
	"user_roles_default": ["string"],
	"username_field": "string"
}
 
 Properties 
Name Type Required Restrictions Description allow_signupsboolean false auth_url_paramsobject false client_cert_filestring false client_idstring false client_key_filestring false Client key file & ClientCertFile are used in place of ClientSecret for PKI auth. client_secretstring false email_domainarray of string false email_fieldstring false group_allow_listarray of string false group_auto_createboolean false group_mappingobject false group_regex_filterserpent.Regexp false groups_fieldstring false icon_urlserpent.URL false ignore_email_verifiedboolean false ignore_user_infoboolean false issuer_urlstring false name_fieldstring false organization_assign_defaultboolean false organization_fieldstring false organization_mappingobject false scopesarray of string false sign_in_textstring false signups_disabled_textstring false skip_issuer_checksboolean false user_role_fieldstring false user_role_mappingobject false user_roles_defaultarray of string false username_fieldstring false 
 
 codersdk.Organization 
{
	"created_at": "2019-08-24T14:15:22Z",
	"description": "string",
	"display_name": "string",
	"icon": "string",
	"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
	"is_default": true,
	"name": "string",
	"updated_at": "2019-08-24T14:15:22Z"
}
 
 Properties 
Name Type Required Restrictions Description created_atstring true descriptionstring false display_namestring false iconstring false idstring true is_defaultboolean true namestring false updated_atstring true 
 
 codersdk.OrganizationMember 
{
	"created_at": "2019-08-24T14:15:22Z",
	"organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6",
	"roles": [
		{
			"display_name": "string",
			"name": "string",
			"organization_id": "string"
		}
	],
	"updated_at": "2019-08-24T14:15:22Z",
	"user_id": "a169451c-8525-4352-b8ca-070dd449a1a5"
}
 
 Properties 
Name Type Required Restrictions Description created_atstring false organization_idstring false rolesarray of codersdk.SlimRole  false updated_atstring false user_idstring false 
 
 codersdk.OrganizationMemberWithUserData 
{
	"avatar_url": "string",
	"created_at": "2019-08-24T14:15:22Z",
	"email": "string",
	"global_roles": [
		{
			"display_name": "string",
			"name": "string",
			"organization_id": "string"
		}
	],
	"name": "string",
	"organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6",
	"roles": [
		{
			"display_name": "string",
			"name": "string",
			"organization_id": "string"
		}
	],
	"updated_at": "2019-08-24T14:15:22Z",
	"user_id": "a169451c-8525-4352-b8ca-070dd449a1a5",
	"username": "string"
}
 
 Properties 
Name Type Required Restrictions Description avatar_urlstring false created_atstring false emailstring false global_rolesarray of codersdk.SlimRole  false namestring false organization_idstring false rolesarray of codersdk.SlimRole  false updated_atstring false user_idstring false usernamestring false 
 
 codersdk.PatchGroupRequest 
{
	"add_users": ["string"],
	"avatar_url": "string",
	"display_name": "string",
	"name": "string",
	"quota_allowance": 0,
	"remove_users": ["string"]
}
 
 Properties 
Name Type Required Restrictions Description add_usersarray of string false avatar_urlstring false display_namestring false namestring false quota_allowanceinteger false remove_usersarray of string false 
 
 codersdk.PatchTemplateVersionRequest 
{
	"message": "string",
	"name": "string"
}
 
 Properties 
Name Type Required Restrictions Description messagestring false namestring false 
 
 codersdk.PatchWorkspaceProxy 
{
	"display_name": "string",
	"icon": "string",
	"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
	"name": "string",
	"regenerate_token": true
}
 
 Properties 
Name Type Required Restrictions Description display_namestring true iconstring true idstring true namestring true regenerate_tokenboolean false 
 
 codersdk.Permission 
{
	"action": "application_connect",
	"negate": true,
	"resource_type": "*"
}
 
 Properties 
 codersdk.PostOAuth2ProviderAppRequest 
{
	"callback_url": "string",
	"icon": "string",
	"name": "string"
}
 
 Properties 
Name Type Required Restrictions Description callback_urlstring true iconstring false namestring true 
 
 codersdk.PostWorkspaceUsageRequest 
{
	"agent_id": "2b1e3b65-2c04-4fa2-a2d7-467901e98978",
	"app_name": "vscode"
}
 
 Properties 
 codersdk.PprofConfig 
{
	"address": {
		"host": "string",
		"port": "string"
	},
	"enable": true
}
 
 Properties 
Name Type Required Restrictions Description addressserpent.HostPort false enableboolean false 
 
 codersdk.PrometheusConfig 
{
	"address": {
		"host": "string",
		"port": "string"
	},
	"aggregate_agent_stats_by": ["string"],
	"collect_agent_stats": true,
	"collect_db_metrics": true,
	"enable": true
}
 
 Properties 
Name Type Required Restrictions Description addressserpent.HostPort false aggregate_agent_stats_byarray of string false collect_agent_statsboolean false collect_db_metricsboolean false enableboolean false 
 
 codersdk.ProvisionerConfig 
{
	"daemon_poll_interval": 0,
	"daemon_poll_jitter": 0,
	"daemon_psk": "string",
	"daemon_types": ["string"],
	"daemons": 0,
	"force_cancel_interval": 0
}
 
 Properties 
Name Type Required Restrictions Description daemon_poll_intervalinteger false daemon_poll_jitterinteger false daemon_pskstring false daemon_typesarray of string false daemonsinteger false Daemons is the number of built-in terraform provisioners. force_cancel_intervalinteger false 
 
 codersdk.ProvisionerDaemon 
{
	"api_version": "string",
	"created_at": "2019-08-24T14:15:22Z",
	"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
	"key_id": "1e779c8a-6786-4c89-b7c3-a6666f5fd6b5",
	"last_seen_at": "2019-08-24T14:15:22Z",
	"name": "string",
	"organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6",
	"provisioners": ["string"],
	"tags": {
		"property1": "string",
		"property2": "string"
	},
	"version": "string"
}
 
 Properties 
Name Type Required Restrictions Description api_versionstring false created_atstring false idstring false key_idstring false last_seen_atstring false namestring false organization_idstring false provisionersarray of string false tagsobject false » [any property] string false versionstring false 
 
 codersdk.ProvisionerJob 
{
	"canceled_at": "2019-08-24T14:15:22Z",
	"completed_at": "2019-08-24T14:15:22Z",
	"created_at": "2019-08-24T14:15:22Z",
	"error": "string",
	"error_code": "REQUIRED_TEMPLATE_VARIABLES",
	"file_id": "8a0cfb4f-ddc9-436d-91bb-75133c583767",
	"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
	"queue_position": 0,
	"queue_size": 0,
	"started_at": "2019-08-24T14:15:22Z",
	"status": "pending",
	"tags": {
		"property1": "string",
		"property2": "string"
	},
	"worker_id": "ae5fa6f7-c55b-40c1-b40a-b36ac467652b"
}
 
 Properties 
Name Type Required Restrictions Description canceled_atstring false completed_atstring false created_atstring false errorstring false error_codecodersdk.JobErrorCode false file_idstring false idstring false queue_positioninteger false queue_sizeinteger false started_atstring false statuscodersdk.ProvisionerJobStatus false tagsobject false » [any property] string false worker_idstring false 
 
 Enumerated Values 
Property Value error_codeREQUIRED_TEMPLATE_VARIABLESstatuspendingstatusrunningstatussucceededstatuscancelingstatuscanceledstatusfailed
 
 codersdk.ProvisionerJobLog 
{
	"created_at": "2019-08-24T14:15:22Z",
	"id": 0,
	"log_level": "trace",
	"log_source": "provisioner_daemon",
	"output": "string",
	"stage": "string"
}
 
 Properties 
 Enumerated Values 
Property Value log_leveltracelog_leveldebuglog_levelinfolog_levelwarnlog_levelerror
 
 codersdk.ProvisionerJobStatus 
 Properties 
 Enumerated Values 
Value pendingrunningsucceededcancelingcanceledfailedunknown
 
 codersdk.ProvisionerKey 
{
	"created_at": "2019-08-24T14:15:22Z",
	"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
	"name": "string",
	"organization": "452c1a86-a0af-475b-b03f-724878b0f387",
	"tags": {
		"property1": "string",
		"property2": "string"
	}
}
 
 Properties 
Name Type Required Restrictions Description created_atstring false idstring false namestring false organizationstring false tagscodersdk.ProvisionerKeyTags false 
 
 codersdk.ProvisionerKeyDaemons 
{
	"daemons": [
		{
			"api_version": "string",
			"created_at": "2019-08-24T14:15:22Z",
			"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
			"key_id": "1e779c8a-6786-4c89-b7c3-a6666f5fd6b5",
			"last_seen_at": "2019-08-24T14:15:22Z",
			"name": "string",
			"organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6",
			"provisioners": ["string"],
			"tags": {
				"property1": "string",
				"property2": "string"
			},
			"version": "string"
		}
	],
	"key": {
		"created_at": "2019-08-24T14:15:22Z",
		"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
		"name": "string",
		"organization": "452c1a86-a0af-475b-b03f-724878b0f387",
		"tags": {
			"property1": "string",
			"property2": "string"
		}
	}
}
 
 Properties 
{
	"property1": "string",
	"property2": "string"
}
 
 Properties 
Name Type Required Restrictions Description [any property]string false 
 
 codersdk.ProvisionerLogLevel 
 Properties 
 Enumerated Values 
 codersdk.ProvisionerStorageMethod 
 Properties 
 Enumerated Values 
 codersdk.ProvisionerTiming 
{
	"action": "string",
	"ended_at": "2019-08-24T14:15:22Z",
	"job_id": "453bd7d7-5355-4d6d-a38e-d9e7eb218c3f",
	"resource": "string",
	"source": "string",
	"stage": "string",
	"started_at": "2019-08-24T14:15:22Z"
}
 
 Properties 
Name Type Required Restrictions Description actionstring false ended_atstring false job_idstring false resourcestring false sourcestring false stagestring false started_atstring false 
 
 codersdk.ProxyHealthReport 
{
	"errors": ["string"],
	"warnings": ["string"]
}
 
 Properties 
Name Type Required Restrictions Description errorsarray of string false Errors are problems that prevent the workspace proxy from being healthy warningsarray of string false Warnings do not prevent the workspace proxy from being healthy, but should be addressed. 
 
 codersdk.ProxyHealthStatus 
 Properties 
 Enumerated Values 
Value okunreachableunhealthyunregistered
 
 codersdk.PutExtendWorkspaceRequest 
{
	"deadline": "2019-08-24T14:15:22Z"
}
 
 Properties 
Name Type Required Restrictions Description deadlinestring true 
 
 codersdk.PutOAuth2ProviderAppRequest 
{
	"callback_url": "string",
	"icon": "string",
	"name": "string"
}
 
 Properties 
Name Type Required Restrictions Description callback_urlstring true iconstring false namestring true 
 
 codersdk.RBACAction 
 Properties 
 Enumerated Values 
Value application_connectassigncreatedeletereadread_personalsshupdateupdate_personaluseview_insightsstartstop
 
 codersdk.RBACResource 
 Properties 
 Enumerated Values 
Value *api_keyassign_org_roleassign_roleaudit_logcrypto_keydebug_infodeployment_configdeployment_statsfilegroupgroup_memberidpsync_settingslicensenotification_preferencenotification_templateoauth2_appoauth2_app_code_tokenoauth2_app_secretorganizationorganization_memberprovisioner_daemonprovisioner_keysreplicassystemtailnet_coordinatortemplateuserworkspaceworkspace_dormantworkspace_proxy
 
 codersdk.RateLimitConfig 
{
	"api": 0,
	"disable_all": true
}
 
 Properties 
Name Type Required Restrictions Description apiinteger false disable_allboolean false 
 
 codersdk.ReducedUser 
{
	"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",
	"login_type": "",
	"name": "string",
	"status": "active",
	"theme_preference": "string",
	"updated_at": "2019-08-24T14:15:22Z",
	"username": "string"
}
 
 Properties 
Name Type Required Restrictions Description avatar_urlstring false created_atstring true emailstring true idstring true last_seen_atstring false login_typecodersdk.LoginType false namestring false statuscodersdk.UserStatus false theme_preferencestring false updated_atstring false usernamestring true 
 
 Enumerated Values 
Property Value statusactivestatussuspended
 
 codersdk.Region 
{
	"display_name": "string",
	"healthy": true,
	"icon_url": "string",
	"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
	"name": "string",
	"path_app_url": "string",
	"wildcard_hostname": "string"
}
 
 Properties 
Name Type Required Restrictions Description display_namestring false healthyboolean false icon_urlstring false idstring false namestring false path_app_urlstring false Path app URL is the URL to the base path for path apps. Optional unless wildcard_hostname is set. E.g. https://us.example.com  wildcard_hostnamestring false Wildcard hostname is the wildcard hostname for subdomain apps. E.g. _.us.example.com E.g. _--suffix.au.example.com Optional. Does not need to be on the same domain as PathAppURL. 
 
 codersdk.RegionsResponse-codersdk_Region 
{
	"regions": [
		{
			"display_name": "string",
			"healthy": true,
			"icon_url": "string",
			"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
			"name": "string",
			"path_app_url": "string",
			"wildcard_hostname": "string"
		}
	]
}
 
 Properties 
Name Type Required Restrictions Description regionsarray of codersdk.Region  false 
 
 codersdk.RegionsResponse-codersdk_WorkspaceProxy 
{
	"regions": [
		{
			"created_at": "2019-08-24T14:15:22Z",
			"deleted": true,
			"derp_enabled": true,
			"derp_only": true,
			"display_name": "string",
			"healthy": true,
			"icon_url": "string",
			"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
			"name": "string",
			"path_app_url": "string",
			"status": {
				"checked_at": "2019-08-24T14:15:22Z",
				"report": {
					"errors": ["string"],
					"warnings": ["string"]
				},
				"status": "ok"
			},
			"updated_at": "2019-08-24T14:15:22Z",
			"version": "string",
			"wildcard_hostname": "string"
		}
	]
}
 
 Properties 
 codersdk.Replica 
{
	"created_at": "2019-08-24T14:15:22Z",
	"database_latency": 0,
	"error": "string",
	"hostname": "string",
	"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
	"region_id": 0,
	"relay_address": "string"
}
 
 Properties 
Name Type Required Restrictions Description created_atstring false Created at is the timestamp when the replica was first seen. database_latencyinteger false Database latency is the latency in microseconds to the database. errorstring false Error is the replica error. hostnamestring false Hostname is the hostname of the replica. idstring false ID is the unique identifier for the replica. region_idinteger false Region ID is the region of the replica. relay_addressstring false Relay address is the accessible address to relay DERP connections. 
 
 codersdk.ResolveAutostartResponse 
{
	"parameter_mismatch": true
}
 
 Properties 
Name Type Required Restrictions Description parameter_mismatchboolean false 
 
 codersdk.ResourceType 
 Properties 
 Enumerated Values 
Value templatetemplate_versionuserworkspaceworkspace_buildgit_ssh_keyapi_keygrouplicenseconvert_loginhealth_settingsnotifications_settingsworkspace_proxyorganizationoauth2_provider_appoauth2_provider_app_secretcustom_role
 
 codersdk.Response 
{
	"detail": "string",
	"message": "string",
	"validations": [
		{
			"detail": "string",
			"field": "string"
		}
	]
}
 
 Properties 
Name Type Required Restrictions Description detailstring false Detail is a debug message that provides further insight into why the action failed. This information can be technical and a regular golang err.Error() text. - "database: too many open connections" - "stat: too many open files" messagestring false Message is an actionable message that depicts actions the request took. These messages should be fully formed sentences with proper punctuation. Examples: - "A user has been created." - "Failed to create a user." validationsarray of codersdk.ValidationError  false Validations are form field-specific friendly error messages. They will be shown on a form field in the UI. These can also be used to add additional context if there is a set of errors in the primary 'Message'. 
 
 codersdk.Role 
{
	"display_name": "string",
	"name": "string",
	"organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6",
	"organization_permissions": [
		{
			"action": "application_connect",
			"negate": true,
			"resource_type": "*"
		}
	],
	"site_permissions": [
		{
			"action": "application_connect",
			"negate": true,
			"resource_type": "*"
		}
	],
	"user_permissions": [
		{
			"action": "application_connect",
			"negate": true,
			"resource_type": "*"
		}
	]
}
 
 Properties 
Name Type Required Restrictions Description display_namestring false namestring false organization_idstring false organization_permissionsarray of codersdk.Permission  false Organization permissions are specific for the organization in the field 'OrganizationID' above. site_permissionsarray of codersdk.Permission  false user_permissionsarray of codersdk.Permission  false 
 
 codersdk.RoleSyncSettings 
{
	"field": "string",
	"mapping": {
		"property1": ["string"],
		"property2": ["string"]
	}
}
 
 Properties 
Name Type Required Restrictions Description fieldstring false Field selects the claim field to be used as the created user's groups. If the group field is the empty string, then no group updates will ever come from the OIDC provider. mappingobject false Mapping maps from an OIDC group --> Coder organization role » [any property] array of string false 
 
 codersdk.SSHConfig 
{
	"deploymentName": "string",
	"sshconfigOptions": ["string"]
}
 
 Properties 
Name Type Required Restrictions Description deploymentNamestring false Deploymentname is the config-ssh Hostname prefix sshconfigOptionsarray of string false Sshconfigoptions are additional options to add to the ssh config file. This will override defaults. 
 
 codersdk.SSHConfigResponse 
{
	"hostname_prefix": "string",
	"ssh_config_options": {
		"property1": "string",
		"property2": "string"
	}
}
 
 Properties 
Name Type Required Restrictions Description hostname_prefixstring false ssh_config_optionsobject false » [any property] string false 
 
 codersdk.SessionCountDeploymentStats 
{
	"jetbrains": 0,
	"reconnecting_pty": 0,
	"ssh": 0,
	"vscode": 0
}
 
 Properties 
Name Type Required Restrictions Description jetbrainsinteger false reconnecting_ptyinteger false sshinteger false vscodeinteger false 
 
 codersdk.SessionLifetime 
{
	"default_duration": 0,
	"default_token_lifetime": 0,
	"disable_expiry_refresh": true,
	"max_token_lifetime": 0
}
 
 Properties 
Name Type Required Restrictions Description default_durationinteger false Default duration is only for browser, workspace app and oauth sessions. default_token_lifetimeinteger false disable_expiry_refreshboolean false Disable expiry refresh will disable automatically refreshing api keys when they are used from the api. This means the api key lifetime at creation is the lifetime of the api key. max_token_lifetimeinteger false 
 
 codersdk.SlimRole 
{
	"display_name": "string",
	"name": "string",
	"organization_id": "string"
}
 
 Properties 
Name Type Required Restrictions Description display_namestring false namestring false organization_idstring false 
 
 codersdk.SupportConfig 
{
	"links": {
		"value": [
			{
				"icon": "bug",
				"name": "string",
				"target": "string"
			}
		]
	}
}
 
 Properties 
 codersdk.SwaggerConfig 
 Properties 
Name Type Required Restrictions Description enableboolean false 
 
 codersdk.TLSConfig 
{
	"address": {
		"host": "string",
		"port": "string"
	},
	"allow_insecure_ciphers": true,
	"cert_file": ["string"],
	"client_auth": "string",
	"client_ca_file": "string",
	"client_cert_file": "string",
	"client_key_file": "string",
	"enable": true,
	"key_file": ["string"],
	"min_version": "string",
	"redirect_http": true,
	"supported_ciphers": ["string"]
}
 
 Properties 
Name Type Required Restrictions Description addressserpent.HostPort false allow_insecure_ciphersboolean false cert_filearray of string false client_authstring false client_ca_filestring false client_cert_filestring false client_key_filestring false enableboolean false key_filearray of string false min_versionstring false redirect_httpboolean false supported_ciphersarray of string false 
 
 codersdk.TelemetryConfig 
{
	"enable": true,
	"trace": true,
	"url": {
		"forceQuery": true,
		"fragment": "string",
		"host": "string",
		"omitHost": true,
		"opaque": "string",
		"path": "string",
		"rawFragment": "string",
		"rawPath": "string",
		"rawQuery": "string",
		"scheme": "string",
		"user": {}
	}
}
 
 Properties 
Name Type Required Restrictions Description enableboolean false traceboolean false urlserpent.URL false 
 
 codersdk.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
		}
	},
	"created_at": "2019-08-24T14:15:22Z",
	"created_by_id": "9377d689-01fb-4abf-8450-3368d2c1924f",
	"created_by_name": "string",
	"default_ttl_ms": 0,
	"deprecated": true,
	"deprecation_message": "string",
	"description": "string",
	"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"
}
 
 Properties 
Name Type Required Restrictions Description active_user_countinteger false Active user count is set to -1 when loading. active_version_idstring false activity_bump_msinteger false allow_user_autostartboolean false Allow user autostart and AllowUserAutostop are enterprise-only. Their values are only used if your license is entitled to use the advanced template scheduling feature. allow_user_autostopboolean false allow_user_cancel_workspace_jobsboolean false autostart_requirementcodersdk.TemplateAutostartRequirement false autostop_requirementcodersdk.TemplateAutostopRequirement false Autostop requirement and AutostartRequirement are enterprise features. Its value is only used if your license is entitled to use the advanced template scheduling feature. build_time_statscodersdk.TemplateBuildTimeStats false created_atstring false created_by_idstring false created_by_namestring false default_ttl_msinteger false deprecatedboolean false deprecation_messagestring false descriptionstring false display_namestring false failure_ttl_msinteger false Failure ttl ms TimeTilDormantMillis, and TimeTilDormantAutoDeleteMillis are enterprise-only. Their values are used if your license is entitled to use the advanced template scheduling feature. iconstring false idstring false max_port_share_levelcodersdk.WorkspaceAgentPortShareLevel false namestring false organization_display_namestring false organization_iconstring false organization_idstring false organization_namestring false provisionerstring false require_active_versionboolean false Require active version mandates that workspaces are built with the active template version. time_til_dormant_autodelete_msinteger false time_til_dormant_msinteger false updated_atstring false 
 
 Enumerated Values 
Property Value provisionerterraform
 
 codersdk.TemplateAppUsage 
{
	"display_name": "Visual Studio Code",
	"icon": "string",
	"seconds": 80500,
	"slug": "vscode",
	"template_ids": ["497f6eca-6276-4993-bfeb-53cbbbba6f08"],
	"times_used": 2,
	"type": "builtin"
}
 
 Properties 
Name Type Required Restrictions Description display_namestring false iconstring false secondsinteger false slugstring false template_idsarray of string false times_usedinteger false typecodersdk.TemplateAppsType false 
 
 codersdk.TemplateAppsType 
 Properties 
 Enumerated Values 
 codersdk.TemplateAutostartRequirement 
{
	"days_of_week": ["monday"]
}
 
 Properties 
Name Type Required Restrictions Description days_of_weekarray of string false Days of week is a list of days of the week in which autostart is allowed to happen. If no days are specified, autostart is not allowed. 
 
 codersdk.TemplateAutostopRequirement 
{
	"days_of_week": ["monday"],
	"weeks": 0
}
 
 Properties 
Name Type Required Restrictions Description days_of_weekarray of string false Days of week is a list of days of the week on which restarts are required. Restarts happen within the user's quiet hours (in their configured timezone). If no days are specified, restarts are not required. Weekdays cannot be specified twice. Restarts will only happen on weekdays in this list on weeks which line up with Weeks. weeksinteger false Weeks is the number of weeks between required restarts. Weeks are synced across all workspaces (and Coder deployments) using modulo math on a hardcoded epoch week of January 2nd, 2023 (the first Monday of 2023). Values of 0 or 1 indicate weekly restarts. Values of 2 indicate fortnightly restarts, etc. 
 
 codersdk.TemplateBuildTimeStats 
{
	"property1": {
		"p50": 123,
		"p95": 146
	},
	"property2": {
		"p50": 123,
		"p95": 146
	}
}
 
 Properties 
 codersdk.TemplateExample 
{
	"description": "string",
	"icon": "string",
	"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
	"markdown": "string",
	"name": "string",
	"tags": ["string"],
	"url": "string"
}
 
 Properties 
Name Type Required Restrictions Description descriptionstring false iconstring false idstring false markdownstring false namestring false tagsarray of string false urlstring false 
 
 codersdk.TemplateInsightsIntervalReport 
{
	"active_users": 14,
	"end_time": "2019-08-24T14:15:22Z",
	"interval": "week",
	"start_time": "2019-08-24T14:15:22Z",
	"template_ids": ["497f6eca-6276-4993-bfeb-53cbbbba6f08"]
}
 
 Properties 
Name Type Required Restrictions Description active_usersinteger false end_timestring false intervalcodersdk.InsightsReportInterval false start_timestring false template_idsarray of string false 
 
 codersdk.TemplateInsightsReport 
{
	"active_users": 22,
	"apps_usage": [
		{
			"display_name": "Visual Studio Code",
			"icon": "string",
			"seconds": 80500,
			"slug": "vscode",
			"template_ids": ["497f6eca-6276-4993-bfeb-53cbbbba6f08"],
			"times_used": 2,
			"type": "builtin"
		}
	],
	"end_time": "2019-08-24T14:15:22Z",
	"parameters_usage": [
		{
			"description": "string",
			"display_name": "string",
			"name": "string",
			"options": [
				{
					"description": "string",
					"icon": "string",
					"name": "string",
					"value": "string"
				}
			],
			"template_ids": ["497f6eca-6276-4993-bfeb-53cbbbba6f08"],
			"type": "string",
			"values": [
				{
					"count": 0,
					"value": "string"
				}
			]
		}
	],
	"start_time": "2019-08-24T14:15:22Z",
	"template_ids": ["497f6eca-6276-4993-bfeb-53cbbbba6f08"]
}
 
 Properties 
 codersdk.TemplateInsightsResponse 
{
	"interval_reports": [
		{
			"active_users": 14,
			"end_time": "2019-08-24T14:15:22Z",
			"interval": "week",
			"start_time": "2019-08-24T14:15:22Z",
			"template_ids": ["497f6eca-6276-4993-bfeb-53cbbbba6f08"]
		}
	],
	"report": {
		"active_users": 22,
		"apps_usage": [
			{
				"display_name": "Visual Studio Code",
				"icon": "string",
				"seconds": 80500,
				"slug": "vscode",
				"template_ids": ["497f6eca-6276-4993-bfeb-53cbbbba6f08"],
				"times_used": 2,
				"type": "builtin"
			}
		],
		"end_time": "2019-08-24T14:15:22Z",
		"parameters_usage": [
			{
				"description": "string",
				"display_name": "string",
				"name": "string",
				"options": [
					{
						"description": "string",
						"icon": "string",
						"name": "string",
						"value": "string"
					}
				],
				"template_ids": ["497f6eca-6276-4993-bfeb-53cbbbba6f08"],
				"type": "string",
				"values": [
					{
						"count": 0,
						"value": "string"
					}
				]
			}
		],
		"start_time": "2019-08-24T14:15:22Z",
		"template_ids": ["497f6eca-6276-4993-bfeb-53cbbbba6f08"]
	}
}
 
 Properties 
 codersdk.TemplateParameterUsage 
{
	"description": "string",
	"display_name": "string",
	"name": "string",
	"options": [
		{
			"description": "string",
			"icon": "string",
			"name": "string",
			"value": "string"
		}
	],
	"template_ids": ["497f6eca-6276-4993-bfeb-53cbbbba6f08"],
	"type": "string",
	"values": [
		{
			"count": 0,
			"value": "string"
		}
	]
}
 
 Properties 
 codersdk.TemplateParameterValue 
{
	"count": 0,
	"value": "string"
}
 
 Properties 
Name Type Required Restrictions Description countinteger false valuestring false 
 
 codersdk.TemplateRole 
 Properties 
 Enumerated Values 
 codersdk.TemplateUser 
{
	"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",
	"login_type": "",
	"name": "string",
	"organization_ids": ["497f6eca-6276-4993-bfeb-53cbbbba6f08"],
	"role": "admin",
	"roles": [
		{
			"display_name": "string",
			"name": "string",
			"organization_id": "string"
		}
	],
	"status": "active",
	"theme_preference": "string",
	"updated_at": "2019-08-24T14:15:22Z",
	"username": "string"
}
 
 Properties 
Name Type Required Restrictions Description avatar_urlstring false created_atstring true emailstring true idstring true last_seen_atstring false login_typecodersdk.LoginType false namestring false organization_idsarray of string false rolecodersdk.TemplateRole false rolesarray of codersdk.SlimRole  false statuscodersdk.UserStatus false theme_preferencestring false updated_atstring false usernamestring true 
 
 Enumerated Values 
Property Value roleadminroleusestatusactivestatussuspended
 
 codersdk.TemplateVersion 
{
	"archived": true,
	"created_at": "2019-08-24T14:15:22Z",
	"created_by": {
		"avatar_url": "http://example.com",
		"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
		"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",
		"error_code": "REQUIRED_TEMPLATE_VARIABLES",
		"file_id": "8a0cfb4f-ddc9-436d-91bb-75133c583767",
		"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
		"queue_position": 0,
		"queue_size": 0,
		"started_at": "2019-08-24T14:15:22Z",
		"status": "pending",
		"tags": {
			"property1": "string",
			"property2": "string"
		},
		"worker_id": "ae5fa6f7-c55b-40c1-b40a-b36ac467652b"
	},
	"message": "string",
	"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",
	"warnings": ["UNSUPPORTED_WORKSPACES"]
}
 
 Properties 
 codersdk.TemplateVersionExternalAuth 
{
	"authenticate_url": "string",
	"authenticated": true,
	"display_icon": "string",
	"display_name": "string",
	"id": "string",
	"optional": true,
	"type": "string"
}
 
 Properties 
Name Type Required Restrictions Description authenticate_urlstring false authenticatedboolean false display_iconstring false display_namestring false idstring false optionalboolean false typestring false 
 
 codersdk.TemplateVersionParameter 
{
	"default_value": "string",
	"description": "string",
	"description_plaintext": "string",
	"display_name": "string",
	"ephemeral": true,
	"icon": "string",
	"mutable": true,
	"name": "string",
	"options": [
		{
			"description": "string",
			"icon": "string",
			"name": "string",
			"value": "string"
		}
	],
	"required": true,
	"type": "string",
	"validation_error": "string",
	"validation_max": 0,
	"validation_min": 0,
	"validation_monotonic": "increasing",
	"validation_regex": "string"
}
 
 Properties 
Name Type Required Restrictions Description default_valuestring false descriptionstring false description_plaintextstring false display_namestring false ephemeralboolean false iconstring false mutableboolean false namestring false optionsarray of codersdk.TemplateVersionParameterOption  false requiredboolean false typestring false validation_errorstring false validation_maxinteger false validation_mininteger false validation_monotoniccodersdk.ValidationMonotonicOrder false validation_regexstring false 
 
 Enumerated Values 
Property Value typestringtypenumbertypebooltypelist(string)validation_monotonicincreasingvalidation_monotonicdecreasing
 
 codersdk.TemplateVersionParameterOption 
{
	"description": "string",
	"icon": "string",
	"name": "string",
	"value": "string"
}
 
 Properties 
Name Type Required Restrictions Description descriptionstring false iconstring false namestring false valuestring false 
 
 codersdk.TemplateVersionVariable 
{
	"default_value": "string",
	"description": "string",
	"name": "string",
	"required": true,
	"sensitive": true,
	"type": "string",
	"value": "string"
}
 
 Properties 
Name Type Required Restrictions Description default_valuestring false descriptionstring false namestring false requiredboolean false sensitiveboolean false typestring false valuestring false 
 
 Enumerated Values 
Property Value typestringtypenumbertypebool
 
 codersdk.TemplateVersionWarning 
 Properties 
 Enumerated Values 
Value UNSUPPORTED_WORKSPACES
 
 codersdk.TokenConfig 
{
	"max_token_lifetime": 0
}
 
 Properties 
Name Type Required Restrictions Description max_token_lifetimeinteger false 
 
 codersdk.TraceConfig 
{
	"capture_logs": true,
	"data_dog": true,
	"enable": true,
	"honeycomb_api_key": "string"
}
 
 Properties 
Name Type Required Restrictions Description capture_logsboolean false data_dogboolean false enableboolean false honeycomb_api_keystring false 
 
 codersdk.TransitionStats 
{
	"p50": 123,
	"p95": 146
}
 
 Properties 
Name Type Required Restrictions Description p50integer false p95integer false 
 
 codersdk.UpdateActiveTemplateVersion 
{
	"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}
 
 Properties 
Name Type Required Restrictions Description idstring true 
 
 codersdk.UpdateAppearanceConfig 
{
	"announcement_banners": [
		{
			"background_color": "string",
			"enabled": true,
			"message": "string"
		}
	],
	"application_name": "string",
	"logo_url": "string",
	"service_banner": {
		"background_color": "string",
		"enabled": true,
		"message": "string"
	}
}
 
 Properties 
Name Type Required Restrictions Description announcement_bannersarray of codersdk.BannerConfig  false application_namestring false logo_urlstring false service_bannercodersdk.BannerConfig false Deprecated: ServiceBanner has been replaced by AnnouncementBanners. 
 
 codersdk.UpdateCheckResponse 
{
	"current": true,
	"url": "string",
	"version": "string"
}
 
 Properties 
Name Type Required Restrictions Description currentboolean false Current indicates whether the server version is the same as the latest. urlstring false URL to download the latest release of Coder. versionstring false Version is the semantic version for the latest release of Coder. 
 
 codersdk.UpdateOrganizationRequest 
{
	"description": "string",
	"display_name": "string",
	"icon": "string",
	"name": "string"
}
 
 Properties 
Name Type Required Restrictions Description descriptionstring false display_namestring false iconstring false namestring false 
 
 codersdk.UpdateRoles 
 Properties 
Name Type Required Restrictions Description rolesarray of string false 
 
 codersdk.UpdateTemplateACL 
{
	"group_perms": {
		"8bd26b20-f3e8-48be-a903-46bb920cf671": "use",
		"<user_id>>": "admin"
	},
	"user_perms": {
		"4df59e74-c027-470b-ab4d-cbba8963a5e9": "use",
		"<group_id>": "admin"
	}
}
 
 Properties 
Name Type Required Restrictions Description group_permsobject false Group perms should be a mapping of group ID to role. » [any property] codersdk.TemplateRole false user_permsobject false User perms should be a mapping of user ID to role. The user ID must be the uuid of the user, not a username or email address. » [any property] codersdk.TemplateRole false 
 
 codersdk.UpdateUserAppearanceSettingsRequest 
{
	"theme_preference": "string"
}
 
 Properties 
Name Type Required Restrictions Description theme_preferencestring true 
 
 codersdk.UpdateUserNotificationPreferences 
{
	"template_disabled_map": {
		"property1": true,
		"property2": true
	}
}
 
 Properties 
Name Type Required Restrictions Description template_disabled_mapobject false » [any property] boolean false 
 
 codersdk.UpdateUserPasswordRequest 
{
	"old_password": "string",
	"password": "string"
}
 
 Properties 
Name Type Required Restrictions Description old_passwordstring false passwordstring true 
 
 codersdk.UpdateUserProfileRequest 
{
	"name": "string",
	"username": "string"
}
 
 Properties 
Name Type Required Restrictions Description namestring false usernamestring true 
 
 Properties 
Name Type Required Restrictions Description schedulestring true Schedule is a cron expression that defines when the user's quiet hours window is. Schedule must not be empty. For new users, the schedule is set to 2am in their browser or computer's timezone. The schedule denotes the beginning of a 4 hour window where the workspace is allowed to automatically stop or restart due to maintenance or template schedule. 
 
The schedule must be daily with a single time, and should have a timezone specified via a CRON_TZ prefix (otherwise UTC will be used).
If the schedule is empty, the user will be updated to use the default schedule.|
 codersdk.UpdateWorkspaceAutomaticUpdatesRequest 
{
	"automatic_updates": "always"
}
 
 Properties 
 codersdk.UpdateWorkspaceAutostartRequest 
 Properties 
Name Type Required Restrictions Description schedulestring false Schedule is expected to be of the form CRON_TZ=<IANA Timezone> <min> <hour> * * <dow> Example: CRON_TZ=US/Central 30 9 * * 1-5 represents 0930 in the timezone US/Central on weekdays (Mon-Fri). CRON_TZ defaults to UTC if not present. 
 
 codersdk.UpdateWorkspaceDormancy 
 Properties 
Name Type Required Restrictions Description dormantboolean false 
 
 codersdk.UpdateWorkspaceRequest 
 Properties 
Name Type Required Restrictions Description namestring false 
 
 codersdk.UpdateWorkspaceTTLRequest 
 Properties 
Name Type Required Restrictions Description ttl_msinteger false 
 
 codersdk.UploadResponse 
{
	"hash": "19686d84-b10d-4f90-b18e-84fd3fa038fd"
}
 
 Properties 
Name Type Required Restrictions Description hashstring false 
 
 codersdk.UpsertWorkspaceAgentPortShareRequest 
{
	"agent_name": "string",
	"port": 0,
	"protocol": "http",
	"share_level": "owner"
}
 
 Properties 
 Enumerated Values 
Property Value protocolhttpprotocolhttpsshare_levelownershare_levelauthenticatedshare_levelpublic
 
 codersdk.UsageAppName 
 Properties 
 Enumerated Values 
Value vscodejetbrainsreconnecting-ptyssh
 
 codersdk.User 
{
	"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",
	"login_type": "",
	"name": "string",
	"organization_ids": ["497f6eca-6276-4993-bfeb-53cbbbba6f08"],
	"roles": [
		{
			"display_name": "string",
			"name": "string",
			"organization_id": "string"
		}
	],
	"status": "active",
	"theme_preference": "string",
	"updated_at": "2019-08-24T14:15:22Z",
	"username": "string"
}
 
 Properties 
Name Type Required Restrictions Description avatar_urlstring false created_atstring true emailstring true idstring true last_seen_atstring false login_typecodersdk.LoginType false namestring false organization_idsarray of string false rolesarray of codersdk.SlimRole  false statuscodersdk.UserStatus false theme_preferencestring false updated_atstring false usernamestring true 
 
 Enumerated Values 
Property Value statusactivestatussuspended
 
 codersdk.UserActivity 
{
	"avatar_url": "http://example.com",
	"seconds": 80500,
	"template_ids": ["497f6eca-6276-4993-bfeb-53cbbbba6f08"],
	"user_id": "a169451c-8525-4352-b8ca-070dd449a1a5",
	"username": "string"
}
 
 Properties 
Name Type Required Restrictions Description avatar_urlstring false secondsinteger false template_idsarray of string false user_idstring false usernamestring false 
 
 codersdk.UserActivityInsightsReport 
{
	"end_time": "2019-08-24T14:15:22Z",
	"start_time": "2019-08-24T14:15:22Z",
	"template_ids": ["497f6eca-6276-4993-bfeb-53cbbbba6f08"],
	"users": [
		{
			"avatar_url": "http://example.com",
			"seconds": 80500,
			"template_ids": ["497f6eca-6276-4993-bfeb-53cbbbba6f08"],
			"user_id": "a169451c-8525-4352-b8ca-070dd449a1a5",
			"username": "string"
		}
	]
}
 
 Properties 
Name Type Required Restrictions Description end_timestring false start_timestring false template_idsarray of string false usersarray of codersdk.UserActivity  false 
 
 codersdk.UserActivityInsightsResponse 
{
	"report": {
		"end_time": "2019-08-24T14:15:22Z",
		"start_time": "2019-08-24T14:15:22Z",
		"template_ids": ["497f6eca-6276-4993-bfeb-53cbbbba6f08"],
		"users": [
			{
				"avatar_url": "http://example.com",
				"seconds": 80500,
				"template_ids": ["497f6eca-6276-4993-bfeb-53cbbbba6f08"],
				"user_id": "a169451c-8525-4352-b8ca-070dd449a1a5",
				"username": "string"
			}
		]
	}
}
 
 Properties 
 codersdk.UserLatency 
{
	"avatar_url": "http://example.com",
	"latency_ms": {
		"p50": 31.312,
		"p95": 119.832
	},
	"template_ids": ["497f6eca-6276-4993-bfeb-53cbbbba6f08"],
	"user_id": "a169451c-8525-4352-b8ca-070dd449a1a5",
	"username": "string"
}
 
 Properties 
Name Type Required Restrictions Description avatar_urlstring false latency_mscodersdk.ConnectionLatency false template_idsarray of string false user_idstring false usernamestring false 
 
 codersdk.UserLatencyInsightsReport 
{
	"end_time": "2019-08-24T14:15:22Z",
	"start_time": "2019-08-24T14:15:22Z",
	"template_ids": ["497f6eca-6276-4993-bfeb-53cbbbba6f08"],
	"users": [
		{
			"avatar_url": "http://example.com",
			"latency_ms": {
				"p50": 31.312,
				"p95": 119.832
			},
			"template_ids": ["497f6eca-6276-4993-bfeb-53cbbbba6f08"],
			"user_id": "a169451c-8525-4352-b8ca-070dd449a1a5",
			"username": "string"
		}
	]
}
 
 Properties 
Name Type Required Restrictions Description end_timestring false start_timestring false template_idsarray of string false usersarray of codersdk.UserLatency  false 
 
 codersdk.UserLatencyInsightsResponse 
{
	"report": {
		"end_time": "2019-08-24T14:15:22Z",
		"start_time": "2019-08-24T14:15:22Z",
		"template_ids": ["497f6eca-6276-4993-bfeb-53cbbbba6f08"],
		"users": [
			{
				"avatar_url": "http://example.com",
				"latency_ms": {
					"p50": 31.312,
					"p95": 119.832
				},
				"template_ids": ["497f6eca-6276-4993-bfeb-53cbbbba6f08"],
				"user_id": "a169451c-8525-4352-b8ca-070dd449a1a5",
				"username": "string"
			}
		]
	}
}
 
 Properties 
 codersdk.UserLoginType 
 Properties 
 codersdk.UserParameter 
{
	"name": "string",
	"value": "string"
}
 
 Properties 
Name Type Required Restrictions Description namestring false valuestring false 
 
{
	"allow_user_custom": true,
	"default_schedule": "string"
}
 
 Properties 
Name Type Required Restrictions Description allow_user_customboolean false default_schedulestring false 
 
{
	"next": "2019-08-24T14:15:22Z",
	"raw_schedule": "string",
	"time": "string",
	"timezone": "string",
	"user_can_set": true,
	"user_set": true
}
 
 Properties 
Name Type Required Restrictions Description nextstring false Next is the next time that the quiet hours window will start. raw_schedulestring false timestring false Time is the time of day that the quiet hours window starts in the given Timezone each day. timezonestring false raw format from the cron expression, UTC if unspecified user_can_setboolean false User can set is true if the user is allowed to set their own quiet hours schedule. If false, the user cannot set a custom schedule and the default schedule will always be used. user_setboolean false User set is true if the user has set their own quiet hours schedule. If false, the user is using the default schedule. 
 
 codersdk.UserStatus 
 Properties 
 Enumerated Values 
Value activedormantsuspended
 
 codersdk.ValidationError 
{
	"detail": "string",
	"field": "string"
}
 
 Properties 
Name Type Required Restrictions Description detailstring true fieldstring true 
 
 codersdk.ValidationMonotonicOrder 
 Properties 
 Enumerated Values 
Value increasingdecreasing
 
 codersdk.VariableValue 
{
	"name": "string",
	"value": "string"
}
 
 Properties 
Name Type Required Restrictions Description namestring false valuestring false 
 
 codersdk.Workspace 
{
	"allow_renames": true,
	"automatic_updates": "always",
	"autostart_schedule": "string",
	"created_at": "2019-08-24T14:15:22Z",
	"deleting_at": "2019-08-24T14:15:22Z",
	"dormant_at": "2019-08-24T14:15:22Z",
	"favorite": true,
	"health": {
		"failing_agents": ["497f6eca-6276-4993-bfeb-53cbbbba6f08"],
		"healthy": false
	},
	"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
	"last_used_at": "2019-08-24T14:15:22Z",
	"latest_build": {
		"build_number": 0,
		"created_at": "2019-08-24T14:15:22Z",
		"daily_cost": 0,
		"deadline": "2019-08-24T14:15:22Z",
		"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
		"initiator_id": "06588898-9a84-4b35-ba8f-f9cbd64946f3",
		"initiator_name": "string",
		"job": {
			"canceled_at": "2019-08-24T14:15:22Z",
			"completed_at": "2019-08-24T14:15:22Z",
			"created_at": "2019-08-24T14:15:22Z",
			"error": "string",
			"error_code": "REQUIRED_TEMPLATE_VARIABLES",
			"file_id": "8a0cfb4f-ddc9-436d-91bb-75133c583767",
			"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
			"queue_position": 0,
			"queue_size": 0,
			"started_at": "2019-08-24T14:15:22Z",
			"status": "pending",
			"tags": {
				"property1": "string",
				"property2": "string"
			},
			"worker_id": "ae5fa6f7-c55b-40c1-b40a-b36ac467652b"
		},
		"max_deadline": "2019-08-24T14:15:22Z",
		"reason": "initiator",
		"resources": [
			{
				"agents": [
					{
						"api_version": "string",
						"apps": [
							{
								"command": "string",
								"display_name": "string",
								"external": true,
								"health": "disabled",
								"healthcheck": {
									"interval": 0,
									"threshold": 0,
									"url": "string"
								},
								"hidden": true,
								"icon": "string",
								"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
								"sharing_level": "owner",
								"slug": "string",
								"subdomain": true,
								"subdomain_name": "string",
								"url": "string"
							}
						],
						"architecture": "string",
						"connection_timeout_seconds": 0,
						"created_at": "2019-08-24T14:15:22Z",
						"directory": "string",
						"disconnected_at": "2019-08-24T14:15:22Z",
						"display_apps": ["vscode"],
						"environment_variables": {
							"property1": "string",
							"property2": "string"
						},
						"expanded_directory": "string",
						"first_connected_at": "2019-08-24T14:15:22Z",
						"health": {
							"healthy": false,
							"reason": "agent has lost connection"
						},
						"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",
						"log_sources": [
							{
								"created_at": "2019-08-24T14:15:22Z",
								"display_name": "string",
								"icon": "string",
								"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
								"workspace_agent_id": "7ad2e618-fea7-4c1a-b70a-f501566a72f1"
							}
						],
						"logs_length": 0,
						"logs_overflowed": true,
						"name": "string",
						"operating_system": "string",
						"ready_at": "2019-08-24T14:15:22Z",
						"resource_id": "4d5215ed-38bb-48ed-879a-fdb9ca58522f",
						"scripts": [
							{
								"cron": "string",
								"display_name": "string",
								"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
								"log_path": "string",
								"log_source_id": "4197ab25-95cf-4b91-9c78-f7f2af5d353a",
								"run_on_start": true,
								"run_on_stop": true,
								"script": "string",
								"start_blocks_login": true,
								"timeout": 0
							}
						],
						"started_at": "2019-08-24T14:15:22Z",
						"startup_script_behavior": "blocking",
						"status": "connecting",
						"subsystems": ["envbox"],
						"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"
			}
		],
		"status": "pending",
		"template_version_id": "0ba39c92-1f1b-4c32-aa3e-9925d7713eb1",
		"template_version_name": "string",
		"transition": "start",
		"updated_at": "2019-08-24T14:15:22Z",
		"workspace_id": "0967198e-ec7b-4c6b-b4d3-f71244cadbe9",
		"workspace_name": "string",
		"workspace_owner_avatar_url": "string",
		"workspace_owner_id": "e7078695-5279-4c86-8774-3ac2367a2fc7",
		"workspace_owner_name": "string"
	},
	"name": "string",
	"organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6",
	"organization_name": "string",
	"outdated": true,
	"owner_avatar_url": "string",
	"owner_id": "8826ee2e-7933-4665-aef2-2393f84a0d05",
	"owner_name": "string",
	"template_active_version_id": "b0da9c29-67d8-4c87-888c-bafe356f7f3c",
	"template_allow_user_cancel_workspace_jobs": true,
	"template_display_name": "string",
	"template_icon": "string",
	"template_id": "c6d67e98-83ea-49f0-8812-e4abae2b68bc",
	"template_name": "string",
	"template_require_active_version": true,
	"ttl_ms": 0,
	"updated_at": "2019-08-24T14:15:22Z"
}
 
 Properties 
Name Type Required Restrictions Description allow_renamesboolean false automatic_updatescodersdk.AutomaticUpdates false autostart_schedulestring false created_atstring false deleting_atstring false Deleting at indicates the time at which the workspace will be permanently deleted. A workspace is eligible for deletion if it is dormant (a non-nil dormant_at value) and a value has been specified for time_til_dormant_autodelete on its template. dormant_atstring false Dormant at being non-nil indicates a workspace that is dormant. A dormant workspace is no longer accessible must be activated. It is subject to deletion if it breaches the duration of the timetil  field on its template. favoriteboolean false healthcodersdk.WorkspaceHealth false Health shows the health of the workspace and information about what is causing an unhealthy status. idstring false last_used_atstring false latest_buildcodersdk.WorkspaceBuild false namestring false organization_idstring false organization_namestring false outdatedboolean false owner_avatar_urlstring false owner_idstring false owner_namestring false template_active_version_idstring false template_allow_user_cancel_workspace_jobsboolean false template_display_namestring false template_iconstring false template_idstring false template_namestring false template_require_active_versionboolean false ttl_msinteger false updated_atstring false 
 
 Enumerated Values 
Property Value automatic_updatesalwaysautomatic_updatesnever
 
 codersdk.WorkspaceAgent 
{
	"api_version": "string",
	"apps": [
		{
			"command": "string",
			"display_name": "string",
			"external": true,
			"health": "disabled",
			"healthcheck": {
				"interval": 0,
				"threshold": 0,
				"url": "string"
			},
			"hidden": true,
			"icon": "string",
			"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
			"sharing_level": "owner",
			"slug": "string",
			"subdomain": true,
			"subdomain_name": "string",
			"url": "string"
		}
	],
	"architecture": "string",
	"connection_timeout_seconds": 0,
	"created_at": "2019-08-24T14:15:22Z",
	"directory": "string",
	"disconnected_at": "2019-08-24T14:15:22Z",
	"display_apps": ["vscode"],
	"environment_variables": {
		"property1": "string",
		"property2": "string"
	},
	"expanded_directory": "string",
	"first_connected_at": "2019-08-24T14:15:22Z",
	"health": {
		"healthy": false,
		"reason": "agent has lost connection"
	},
	"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",
	"log_sources": [
		{
			"created_at": "2019-08-24T14:15:22Z",
			"display_name": "string",
			"icon": "string",
			"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
			"workspace_agent_id": "7ad2e618-fea7-4c1a-b70a-f501566a72f1"
		}
	],
	"logs_length": 0,
	"logs_overflowed": true,
	"name": "string",
	"operating_system": "string",
	"ready_at": "2019-08-24T14:15:22Z",
	"resource_id": "4d5215ed-38bb-48ed-879a-fdb9ca58522f",
	"scripts": [
		{
			"cron": "string",
			"display_name": "string",
			"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
			"log_path": "string",
			"log_source_id": "4197ab25-95cf-4b91-9c78-f7f2af5d353a",
			"run_on_start": true,
			"run_on_stop": true,
			"script": "string",
			"start_blocks_login": true,
			"timeout": 0
		}
	],
	"started_at": "2019-08-24T14:15:22Z",
	"startup_script_behavior": "blocking",
	"status": "connecting",
	"subsystems": ["envbox"],
	"troubleshooting_url": "string",
	"updated_at": "2019-08-24T14:15:22Z",
	"version": "string"
}
 
 Properties 
 codersdk.WorkspaceAgentHealth 
{
	"healthy": false,
	"reason": "agent has lost connection"
}
 
 Properties 
Name Type Required Restrictions Description healthyboolean false Healthy is true if the agent is healthy. reasonstring false Reason is a human-readable explanation of the agent's health. It is empty if Healthy is true. 
 
 codersdk.WorkspaceAgentLifecycle 
 Properties 
 Enumerated Values 
Value createdstartingstart_timeoutstart_errorreadyshutting_downshutdown_timeoutshutdown_erroroff
 
 codersdk.WorkspaceAgentListeningPort 
{
	"network": "string",
	"port": 0,
	"process_name": "string"
}
 
 Properties 
Name Type Required Restrictions Description networkstring false only "tcp" at the moment portinteger false process_namestring false may be empty 
 
 codersdk.WorkspaceAgentListeningPortsResponse 
{
	"ports": [
		{
			"network": "string",
			"port": 0,
			"process_name": "string"
		}
	]
}
 
 Properties 
Name Type Required Restrictions Description portsarray of codersdk.WorkspaceAgentListeningPort  false If there are no ports in the list, nothing should be displayed in the UI. There must not be a "no ports available" message or anything similar, as there will always be no ports displayed on platforms where our port detection logic is unsupported. 
 
 codersdk.WorkspaceAgentLog 
{
	"created_at": "2019-08-24T14:15:22Z",
	"id": 0,
	"level": "trace",
	"output": "string",
	"source_id": "ae50a35c-df42-4eff-ba26-f8bc28d2af81"
}
 
 Properties 
Name Type Required Restrictions Description created_atstring false idinteger false levelcodersdk.LogLevel false outputstring false source_idstring false 
 
 codersdk.WorkspaceAgentLogSource 
{
	"created_at": "2019-08-24T14:15:22Z",
	"display_name": "string",
	"icon": "string",
	"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
	"workspace_agent_id": "7ad2e618-fea7-4c1a-b70a-f501566a72f1"
}
 
 Properties 
Name Type Required Restrictions Description created_atstring false display_namestring false iconstring false idstring false workspace_agent_idstring false 
 
 codersdk.WorkspaceAgentPortShare 
{
	"agent_name": "string",
	"port": 0,
	"protocol": "http",
	"share_level": "owner",
	"workspace_id": "0967198e-ec7b-4c6b-b4d3-f71244cadbe9"
}
 
 Properties 
 Enumerated Values 
Property Value protocolhttpprotocolhttpsshare_levelownershare_levelauthenticatedshare_levelpublic
 
 codersdk.WorkspaceAgentPortShareLevel 
 Properties 
 Enumerated Values 
Value ownerauthenticatedpublic
 
 codersdk.WorkspaceAgentPortShareProtocol 
 Properties 
 Enumerated Values 
 codersdk.WorkspaceAgentPortShares 
{
	"shares": [
		{
			"agent_name": "string",
			"port": 0,
			"protocol": "http",
			"share_level": "owner",
			"workspace_id": "0967198e-ec7b-4c6b-b4d3-f71244cadbe9"
		}
	]
}
 
 Properties 
 codersdk.WorkspaceAgentScript 
{
	"cron": "string",
	"display_name": "string",
	"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
	"log_path": "string",
	"log_source_id": "4197ab25-95cf-4b91-9c78-f7f2af5d353a",
	"run_on_start": true,
	"run_on_stop": true,
	"script": "string",
	"start_blocks_login": true,
	"timeout": 0
}
 
 Properties 
Name Type Required Restrictions Description cronstring false display_namestring false idstring false log_pathstring false log_source_idstring false run_on_startboolean false run_on_stopboolean false scriptstring false start_blocks_loginboolean false timeoutinteger false 
 
 codersdk.WorkspaceAgentStartupScriptBehavior 
 Properties 
 Enumerated Values 
Value blockingnon-blocking
 
 codersdk.WorkspaceAgentStatus 
 Properties 
 Enumerated Values 
Value connectingconnecteddisconnectedtimeout
 
 codersdk.WorkspaceApp 
{
	"command": "string",
	"display_name": "string",
	"external": true,
	"health": "disabled",
	"healthcheck": {
		"interval": 0,
		"threshold": 0,
		"url": "string"
	},
	"hidden": true,
	"icon": "string",
	"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
	"sharing_level": "owner",
	"slug": "string",
	"subdomain": true,
	"subdomain_name": "string",
	"url": "string"
}
 
 Properties 
Name Type Required Restrictions Description commandstring false display_namestring false Display name is a friendly name for the app. externalboolean false External specifies whether the URL should be opened externally on the client or not. healthcodersdk.WorkspaceAppHealth false healthcheckcodersdk.Healthcheck false Healthcheck specifies the configuration for checking app health. hiddenboolean false iconstring false Icon is a relative path or external URL that specifies an icon to be displayed in the dashboard. idstring false sharing_levelcodersdk.WorkspaceAppSharingLevel false slugstring false Slug is a unique identifier within the agent. subdomainboolean false Subdomain 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. subdomain_namestring false Subdomain name is the application domain exposed on the coder server. urlstring false URL is the address being proxied to inside the workspace. If external is specified, this will be opened on the client. 
 
 Enumerated Values 
Property Value sharing_levelownersharing_levelauthenticatedsharing_levelpublic
 
 codersdk.WorkspaceAppHealth 
 Properties 
 Enumerated Values 
Value disabledinitializinghealthyunhealthy
 
 codersdk.WorkspaceAppSharingLevel 
 Properties 
 Enumerated Values 
Value ownerauthenticatedpublic
 
 codersdk.WorkspaceBuild 
{
	"build_number": 0,
	"created_at": "2019-08-24T14:15:22Z",
	"daily_cost": 0,
	"deadline": "2019-08-24T14:15:22Z",
	"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
	"initiator_id": "06588898-9a84-4b35-ba8f-f9cbd64946f3",
	"initiator_name": "string",
	"job": {
		"canceled_at": "2019-08-24T14:15:22Z",
		"completed_at": "2019-08-24T14:15:22Z",
		"created_at": "2019-08-24T14:15:22Z",
		"error": "string",
		"error_code": "REQUIRED_TEMPLATE_VARIABLES",
		"file_id": "8a0cfb4f-ddc9-436d-91bb-75133c583767",
		"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
		"queue_position": 0,
		"queue_size": 0,
		"started_at": "2019-08-24T14:15:22Z",
		"status": "pending",
		"tags": {
			"property1": "string",
			"property2": "string"
		},
		"worker_id": "ae5fa6f7-c55b-40c1-b40a-b36ac467652b"
	},
	"max_deadline": "2019-08-24T14:15:22Z",
	"reason": "initiator",
	"resources": [
		{
			"agents": [
				{
					"api_version": "string",
					"apps": [
						{
							"command": "string",
							"display_name": "string",
							"external": true,
							"health": "disabled",
							"healthcheck": {
								"interval": 0,
								"threshold": 0,
								"url": "string"
							},
							"hidden": true,
							"icon": "string",
							"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
							"sharing_level": "owner",
							"slug": "string",
							"subdomain": true,
							"subdomain_name": "string",
							"url": "string"
						}
					],
					"architecture": "string",
					"connection_timeout_seconds": 0,
					"created_at": "2019-08-24T14:15:22Z",
					"directory": "string",
					"disconnected_at": "2019-08-24T14:15:22Z",
					"display_apps": ["vscode"],
					"environment_variables": {
						"property1": "string",
						"property2": "string"
					},
					"expanded_directory": "string",
					"first_connected_at": "2019-08-24T14:15:22Z",
					"health": {
						"healthy": false,
						"reason": "agent has lost connection"
					},
					"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",
					"log_sources": [
						{
							"created_at": "2019-08-24T14:15:22Z",
							"display_name": "string",
							"icon": "string",
							"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
							"workspace_agent_id": "7ad2e618-fea7-4c1a-b70a-f501566a72f1"
						}
					],
					"logs_length": 0,
					"logs_overflowed": true,
					"name": "string",
					"operating_system": "string",
					"ready_at": "2019-08-24T14:15:22Z",
					"resource_id": "4d5215ed-38bb-48ed-879a-fdb9ca58522f",
					"scripts": [
						{
							"cron": "string",
							"display_name": "string",
							"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
							"log_path": "string",
							"log_source_id": "4197ab25-95cf-4b91-9c78-f7f2af5d353a",
							"run_on_start": true,
							"run_on_stop": true,
							"script": "string",
							"start_blocks_login": true,
							"timeout": 0
						}
					],
					"started_at": "2019-08-24T14:15:22Z",
					"startup_script_behavior": "blocking",
					"status": "connecting",
					"subsystems": ["envbox"],
					"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"
		}
	],
	"status": "pending",
	"template_version_id": "0ba39c92-1f1b-4c32-aa3e-9925d7713eb1",
	"template_version_name": "string",
	"transition": "start",
	"updated_at": "2019-08-24T14:15:22Z",
	"workspace_id": "0967198e-ec7b-4c6b-b4d3-f71244cadbe9",
	"workspace_name": "string",
	"workspace_owner_avatar_url": "string",
	"workspace_owner_id": "e7078695-5279-4c86-8774-3ac2367a2fc7",
	"workspace_owner_name": "string"
}
 
 Properties 
Name Type Required Restrictions Description build_numberinteger false created_atstring false daily_costinteger false deadlinestring false idstring false initiator_idstring false initiator_namestring false jobcodersdk.ProvisionerJob false max_deadlinestring false reasoncodersdk.BuildReason false resourcesarray of codersdk.WorkspaceResource  false statuscodersdk.WorkspaceStatus false template_version_idstring false template_version_namestring false transitioncodersdk.WorkspaceTransition false updated_atstring false workspace_idstring false workspace_namestring false workspace_owner_avatar_urlstring false workspace_owner_idstring false workspace_owner_namestring false 
 
 Enumerated Values 
Property Value reasoninitiatorreasonautostartreasonautostopstatuspendingstatusstartingstatusrunningstatusstoppingstatusstoppedstatusfailedstatuscancelingstatuscanceledstatusdeletingstatusdeletedtransitionstarttransitionstoptransitiondelete
 
 codersdk.WorkspaceBuildParameter 
{
	"name": "string",
	"value": "string"
}
 
 Properties 
Name Type Required Restrictions Description namestring false valuestring false 
 
 codersdk.WorkspaceConnectionLatencyMS 
 Properties 
Name Type Required Restrictions Description p50number false p95number false 
 
 codersdk.WorkspaceDeploymentStats 
{
	"building": 0,
	"connection_latency_ms": {
		"p50": 0,
		"p95": 0
	},
	"failed": 0,
	"pending": 0,
	"running": 0,
	"rx_bytes": 0,
	"stopped": 0,
	"tx_bytes": 0
}
 
 Properties 
Name Type Required Restrictions Description buildinginteger false connection_latency_mscodersdk.WorkspaceConnectionLatencyMS false failedinteger false pendinginteger false runninginteger false rx_bytesinteger false stoppedinteger false tx_bytesinteger false 
 
 codersdk.WorkspaceHealth 
{
	"failing_agents": ["497f6eca-6276-4993-bfeb-53cbbbba6f08"],
	"healthy": false
}
 
 Properties 
Name Type Required Restrictions Description failing_agentsarray of string false Failing agents lists the IDs of the agents that are failing, if any. healthyboolean false Healthy is true if the workspace is healthy. 
 
 codersdk.WorkspaceProxy 
{
	"created_at": "2019-08-24T14:15:22Z",
	"deleted": true,
	"derp_enabled": true,
	"derp_only": true,
	"display_name": "string",
	"healthy": true,
	"icon_url": "string",
	"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
	"name": "string",
	"path_app_url": "string",
	"status": {
		"checked_at": "2019-08-24T14:15:22Z",
		"report": {
			"errors": ["string"],
			"warnings": ["string"]
		},
		"status": "ok"
	},
	"updated_at": "2019-08-24T14:15:22Z",
	"version": "string",
	"wildcard_hostname": "string"
}
 
 Properties 
Name Type Required Restrictions Description created_atstring false deletedboolean false derp_enabledboolean false derp_onlyboolean false display_namestring false healthyboolean false icon_urlstring false idstring false namestring false path_app_urlstring false Path app URL is the URL to the base path for path apps. Optional unless wildcard_hostname is set. E.g. https://us.example.com  statuscodersdk.WorkspaceProxyStatus false Status is the latest status check of the proxy. This will be empty for deleted proxies. This value can be used to determine if a workspace proxy is healthy and ready to use. updated_atstring false versionstring false wildcard_hostnamestring false Wildcard hostname is the wildcard hostname for subdomain apps. E.g. _.us.example.com E.g. _--suffix.au.example.com Optional. Does not need to be on the same domain as PathAppURL. 
 
 codersdk.WorkspaceProxyStatus 
{
	"checked_at": "2019-08-24T14:15:22Z",
	"report": {
		"errors": ["string"],
		"warnings": ["string"]
	},
	"status": "ok"
}
 
 Properties 
 codersdk.WorkspaceQuota 
{
	"budget": 0,
	"credits_consumed": 0
}
 
 Properties 
Name Type Required Restrictions Description budgetinteger false credits_consumedinteger false 
 
 codersdk.WorkspaceResource 
{
	"agents": [
		{
			"api_version": "string",
			"apps": [
				{
					"command": "string",
					"display_name": "string",
					"external": true,
					"health": "disabled",
					"healthcheck": {
						"interval": 0,
						"threshold": 0,
						"url": "string"
					},
					"hidden": true,
					"icon": "string",
					"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
					"sharing_level": "owner",
					"slug": "string",
					"subdomain": true,
					"subdomain_name": "string",
					"url": "string"
				}
			],
			"architecture": "string",
			"connection_timeout_seconds": 0,
			"created_at": "2019-08-24T14:15:22Z",
			"directory": "string",
			"disconnected_at": "2019-08-24T14:15:22Z",
			"display_apps": ["vscode"],
			"environment_variables": {
				"property1": "string",
				"property2": "string"
			},
			"expanded_directory": "string",
			"first_connected_at": "2019-08-24T14:15:22Z",
			"health": {
				"healthy": false,
				"reason": "agent has lost connection"
			},
			"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",
			"log_sources": [
				{
					"created_at": "2019-08-24T14:15:22Z",
					"display_name": "string",
					"icon": "string",
					"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
					"workspace_agent_id": "7ad2e618-fea7-4c1a-b70a-f501566a72f1"
				}
			],
			"logs_length": 0,
			"logs_overflowed": true,
			"name": "string",
			"operating_system": "string",
			"ready_at": "2019-08-24T14:15:22Z",
			"resource_id": "4d5215ed-38bb-48ed-879a-fdb9ca58522f",
			"scripts": [
				{
					"cron": "string",
					"display_name": "string",
					"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
					"log_path": "string",
					"log_source_id": "4197ab25-95cf-4b91-9c78-f7f2af5d353a",
					"run_on_start": true,
					"run_on_stop": true,
					"script": "string",
					"start_blocks_login": true,
					"timeout": 0
				}
			],
			"started_at": "2019-08-24T14:15:22Z",
			"startup_script_behavior": "blocking",
			"status": "connecting",
			"subsystems": ["envbox"],
			"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"
}
 
 Properties 
 Enumerated Values 
Property Value workspace_transitionstartworkspace_transitionstopworkspace_transitiondelete
 
{
	"key": "string",
	"sensitive": true,
	"value": "string"
}
 
 Properties 
Name Type Required Restrictions Description keystring false sensitiveboolean false valuestring false 
 
 codersdk.WorkspaceStatus 
 Properties 
 Enumerated Values 
Value pendingstartingrunningstoppingstoppedfailedcancelingcanceleddeletingdeleted
 
 codersdk.WorkspaceTimings 
{
	"provisioner_timings": [
		{
			"action": "string",
			"ended_at": "2019-08-24T14:15:22Z",
			"job_id": "453bd7d7-5355-4d6d-a38e-d9e7eb218c3f",
			"resource": "string",
			"source": "string",
			"stage": "string",
			"started_at": "2019-08-24T14:15:22Z"
		}
	]
}
 
 Properties 
 codersdk.WorkspaceTransition 
 Properties 
 Enumerated Values 
 codersdk.WorkspacesResponse 
{
	"count": 0,
	"workspaces": [
		{
			"allow_renames": true,
			"automatic_updates": "always",
			"autostart_schedule": "string",
			"created_at": "2019-08-24T14:15:22Z",
			"deleting_at": "2019-08-24T14:15:22Z",
			"dormant_at": "2019-08-24T14:15:22Z",
			"favorite": true,
			"health": {
				"failing_agents": ["497f6eca-6276-4993-bfeb-53cbbbba6f08"],
				"healthy": false
			},
			"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
			"last_used_at": "2019-08-24T14:15:22Z",
			"latest_build": {
				"build_number": 0,
				"created_at": "2019-08-24T14:15:22Z",
				"daily_cost": 0,
				"deadline": "2019-08-24T14:15:22Z",
				"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
				"initiator_id": "06588898-9a84-4b35-ba8f-f9cbd64946f3",
				"initiator_name": "string",
				"job": {
					"canceled_at": "2019-08-24T14:15:22Z",
					"completed_at": "2019-08-24T14:15:22Z",
					"created_at": "2019-08-24T14:15:22Z",
					"error": "string",
					"error_code": "REQUIRED_TEMPLATE_VARIABLES",
					"file_id": "8a0cfb4f-ddc9-436d-91bb-75133c583767",
					"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
					"queue_position": 0,
					"queue_size": 0,
					"started_at": "2019-08-24T14:15:22Z",
					"status": "pending",
					"tags": {
						"property1": "string",
						"property2": "string"
					},
					"worker_id": "ae5fa6f7-c55b-40c1-b40a-b36ac467652b"
				},
				"max_deadline": "2019-08-24T14:15:22Z",
				"reason": "initiator",
				"resources": [
					{
						"agents": [
							{
								"api_version": "string",
								"apps": [
									{
										"command": "string",
										"display_name": "string",
										"external": true,
										"health": "disabled",
										"healthcheck": {},
										"hidden": true,
										"icon": "string",
										"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
										"sharing_level": "owner",
										"slug": "string",
										"subdomain": true,
										"subdomain_name": "string",
										"url": "string"
									}
								],
								"architecture": "string",
								"connection_timeout_seconds": 0,
								"created_at": "2019-08-24T14:15:22Z",
								"directory": "string",
								"disconnected_at": "2019-08-24T14:15:22Z",
								"display_apps": ["vscode"],
								"environment_variables": {
									"property1": "string",
									"property2": "string"
								},
								"expanded_directory": "string",
								"first_connected_at": "2019-08-24T14:15:22Z",
								"health": {
									"healthy": false,
									"reason": "agent has lost connection"
								},
								"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",
								"log_sources": [
									{
										"created_at": "2019-08-24T14:15:22Z",
										"display_name": "string",
										"icon": "string",
										"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
										"workspace_agent_id": "7ad2e618-fea7-4c1a-b70a-f501566a72f1"
									}
								],
								"logs_length": 0,
								"logs_overflowed": true,
								"name": "string",
								"operating_system": "string",
								"ready_at": "2019-08-24T14:15:22Z",
								"resource_id": "4d5215ed-38bb-48ed-879a-fdb9ca58522f",
								"scripts": [
									{
										"cron": "string",
										"display_name": "string",
										"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
										"log_path": "string",
										"log_source_id": "4197ab25-95cf-4b91-9c78-f7f2af5d353a",
										"run_on_start": true,
										"run_on_stop": true,
										"script": "string",
										"start_blocks_login": true,
										"timeout": 0
									}
								],
								"started_at": "2019-08-24T14:15:22Z",
								"startup_script_behavior": "blocking",
								"status": "connecting",
								"subsystems": ["envbox"],
								"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"
					}
				],
				"status": "pending",
				"template_version_id": "0ba39c92-1f1b-4c32-aa3e-9925d7713eb1",
				"template_version_name": "string",
				"transition": "start",
				"updated_at": "2019-08-24T14:15:22Z",
				"workspace_id": "0967198e-ec7b-4c6b-b4d3-f71244cadbe9",
				"workspace_name": "string",
				"workspace_owner_avatar_url": "string",
				"workspace_owner_id": "e7078695-5279-4c86-8774-3ac2367a2fc7",
				"workspace_owner_name": "string"
			},
			"name": "string",
			"organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6",
			"organization_name": "string",
			"outdated": true,
			"owner_avatar_url": "string",
			"owner_id": "8826ee2e-7933-4665-aef2-2393f84a0d05",
			"owner_name": "string",
			"template_active_version_id": "b0da9c29-67d8-4c87-888c-bafe356f7f3c",
			"template_allow_user_cancel_workspace_jobs": true,
			"template_display_name": "string",
			"template_icon": "string",
			"template_id": "c6d67e98-83ea-49f0-8812-e4abae2b68bc",
			"template_name": "string",
			"template_require_active_version": true,
			"ttl_ms": 0,
			"updated_at": "2019-08-24T14:15:22Z"
		}
	]
}
 
 Properties 
Name Type Required Restrictions Description countinteger false workspacesarray of codersdk.Workspace  false 
 
 derp.BytesSentRecv 
{
	"key": {},
	"recv": 0,
	"sent": 0
}
 
 Properties 
Name Type Required Restrictions Description keykey.NodePublic false Key is the public key of the client which sent/received these bytes. recvinteger false sentinteger false 
 
 derp.ServerInfoMessage 
{
	"tokenBucketBytesBurst": 0,
	"tokenBucketBytesPerSecond": 0
}
 
 Properties 
Name Type Required Restrictions Description tokenBucketBytesBurstinteger false Tokenbucketbytesburst is how many bytes the server will allow to burst, temporarily violating TokenBucketBytesPerSecond. Zero means unspecified. There might be a limit, but the client need not try to respect it. tokenBucketBytesPerSecondinteger false Tokenbucketbytespersecond is how many bytes per second the server says it will accept, including all framing bytes. Zero means unspecified. There might be a limit, but the client need not try to respect it. 
 
 health.Code 
 Properties 
 Enumerated Values 
Value EUNKNOWNEWP01EWP02EWP04EDB01EDB02EWS01EWS02EWS03EACS01EACS02EACS03EACS04EDERP01EDERP02EPD01EPD02EPD03
 
 health.Message 
{
	"code": "EUNKNOWN",
	"message": "string"
}
 
 Properties 
Name Type Required Restrictions Description codehealth.Code false messagestring false 
 
 health.Severity 
 Properties 
 Enumerated Values 
 healthsdk.AccessURLReport 
{
	"access_url": "string",
	"dismissed": true,
	"error": "string",
	"healthy": true,
	"healthz_response": "string",
	"reachable": true,
	"severity": "ok",
	"status_code": 0,
	"warnings": [
		{
			"code": "EUNKNOWN",
			"message": "string"
		}
	]
}
 
 Properties 
Name Type Required Restrictions Description access_urlstring false dismissedboolean false errorstring false healthyboolean false Healthy is deprecated and left for backward compatibility purposes, use Severity instead. healthz_responsestring false reachableboolean false severityhealth.Severity false status_codeinteger false warningsarray of health.Message  false 
 
 Enumerated Values 
Property Value severityokseveritywarningseverityerror
 
 healthsdk.DERPHealthReport 
{
	"dismissed": true,
	"error": "string",
	"healthy": true,
	"netcheck": {
		"captivePortal": "string",
		"globalV4": "string",
		"globalV6": "string",
		"hairPinning": "string",
		"icmpv4": true,
		"ipv4": true,
		"ipv4CanSend": true,
		"ipv6": true,
		"ipv6CanSend": true,
		"mappingVariesByDestIP": "string",
		"oshasIPv6": true,
		"pcp": "string",
		"pmp": "string",
		"preferredDERP": 0,
		"regionLatency": {
			"property1": 0,
			"property2": 0
		},
		"regionV4Latency": {
			"property1": 0,
			"property2": 0
		},
		"regionV6Latency": {
			"property1": 0,
			"property2": 0
		},
		"udp": true,
		"upnP": "string"
	},
	"netcheck_err": "string",
	"netcheck_logs": ["string"],
	"regions": {
		"property1": {
			"error": "string",
			"healthy": true,
			"node_reports": [
				{
					"can_exchange_messages": true,
					"client_errs": [["string"]],
					"client_logs": [["string"]],
					"error": "string",
					"healthy": true,
					"node": {
						"canPort80": true,
						"certName": "string",
						"derpport": 0,
						"forceHTTP": true,
						"hostName": "string",
						"insecureForTests": true,
						"ipv4": "string",
						"ipv6": "string",
						"name": "string",
						"regionID": 0,
						"stunonly": true,
						"stunport": 0,
						"stuntestIP": "string"
					},
					"node_info": {
						"tokenBucketBytesBurst": 0,
						"tokenBucketBytesPerSecond": 0
					},
					"round_trip_ping": "string",
					"round_trip_ping_ms": 0,
					"severity": "ok",
					"stun": {
						"canSTUN": true,
						"enabled": true,
						"error": "string"
					},
					"uses_websocket": true,
					"warnings": [
						{
							"code": "EUNKNOWN",
							"message": "string"
						}
					]
				}
			],
			"region": {
				"avoid": true,
				"embeddedRelay": true,
				"nodes": [
					{
						"canPort80": true,
						"certName": "string",
						"derpport": 0,
						"forceHTTP": true,
						"hostName": "string",
						"insecureForTests": true,
						"ipv4": "string",
						"ipv6": "string",
						"name": "string",
						"regionID": 0,
						"stunonly": true,
						"stunport": 0,
						"stuntestIP": "string"
					}
				],
				"regionCode": "string",
				"regionID": 0,
				"regionName": "string"
			},
			"severity": "ok",
			"warnings": [
				{
					"code": "EUNKNOWN",
					"message": "string"
				}
			]
		},
		"property2": {
			"error": "string",
			"healthy": true,
			"node_reports": [
				{
					"can_exchange_messages": true,
					"client_errs": [["string"]],
					"client_logs": [["string"]],
					"error": "string",
					"healthy": true,
					"node": {
						"canPort80": true,
						"certName": "string",
						"derpport": 0,
						"forceHTTP": true,
						"hostName": "string",
						"insecureForTests": true,
						"ipv4": "string",
						"ipv6": "string",
						"name": "string",
						"regionID": 0,
						"stunonly": true,
						"stunport": 0,
						"stuntestIP": "string"
					},
					"node_info": {
						"tokenBucketBytesBurst": 0,
						"tokenBucketBytesPerSecond": 0
					},
					"round_trip_ping": "string",
					"round_trip_ping_ms": 0,
					"severity": "ok",
					"stun": {
						"canSTUN": true,
						"enabled": true,
						"error": "string"
					},
					"uses_websocket": true,
					"warnings": [
						{
							"code": "EUNKNOWN",
							"message": "string"
						}
					]
				}
			],
			"region": {
				"avoid": true,
				"embeddedRelay": true,
				"nodes": [
					{
						"canPort80": true,
						"certName": "string",
						"derpport": 0,
						"forceHTTP": true,
						"hostName": "string",
						"insecureForTests": true,
						"ipv4": "string",
						"ipv6": "string",
						"name": "string",
						"regionID": 0,
						"stunonly": true,
						"stunport": 0,
						"stuntestIP": "string"
					}
				],
				"regionCode": "string",
				"regionID": 0,
				"regionName": "string"
			},
			"severity": "ok",
			"warnings": [
				{
					"code": "EUNKNOWN",
					"message": "string"
				}
			]
		}
	},
	"severity": "ok",
	"warnings": [
		{
			"code": "EUNKNOWN",
			"message": "string"
		}
	]
}
 
 Properties 
Name Type Required Restrictions Description dismissedboolean false errorstring false healthyboolean false Healthy is deprecated and left for backward compatibility purposes, use Severity instead. netchecknetcheck.Report false netcheck_errstring false netcheck_logsarray of string false regionsobject false » [any property] healthsdk.DERPRegionReport false severityhealth.Severity false warningsarray of health.Message  false 
 
 Enumerated Values 
Property Value severityokseveritywarningseverityerror
 
 healthsdk.DERPNodeReport 
{
	"can_exchange_messages": true,
	"client_errs": [["string"]],
	"client_logs": [["string"]],
	"error": "string",
	"healthy": true,
	"node": {
		"canPort80": true,
		"certName": "string",
		"derpport": 0,
		"forceHTTP": true,
		"hostName": "string",
		"insecureForTests": true,
		"ipv4": "string",
		"ipv6": "string",
		"name": "string",
		"regionID": 0,
		"stunonly": true,
		"stunport": 0,
		"stuntestIP": "string"
	},
	"node_info": {
		"tokenBucketBytesBurst": 0,
		"tokenBucketBytesPerSecond": 0
	},
	"round_trip_ping": "string",
	"round_trip_ping_ms": 0,
	"severity": "ok",
	"stun": {
		"canSTUN": true,
		"enabled": true,
		"error": "string"
	},
	"uses_websocket": true,
	"warnings": [
		{
			"code": "EUNKNOWN",
			"message": "string"
		}
	]
}
 
 Properties 
Name Type Required Restrictions Description can_exchange_messagesboolean false client_errsarray of array false client_logsarray of array false errorstring false healthyboolean false Healthy is deprecated and left for backward compatibility purposes, use Severity instead. nodetailcfg.DERPNode false node_infoderp.ServerInfoMessage false round_trip_pingstring false round_trip_ping_msinteger false severityhealth.Severity false stunhealthsdk.STUNReport false uses_websocketboolean false warningsarray of health.Message  false 
 
 Enumerated Values 
Property Value severityokseveritywarningseverityerror
 
 healthsdk.DERPRegionReport 
{
	"error": "string",
	"healthy": true,
	"node_reports": [
		{
			"can_exchange_messages": true,
			"client_errs": [["string"]],
			"client_logs": [["string"]],
			"error": "string",
			"healthy": true,
			"node": {
				"canPort80": true,
				"certName": "string",
				"derpport": 0,
				"forceHTTP": true,
				"hostName": "string",
				"insecureForTests": true,
				"ipv4": "string",
				"ipv6": "string",
				"name": "string",
				"regionID": 0,
				"stunonly": true,
				"stunport": 0,
				"stuntestIP": "string"
			},
			"node_info": {
				"tokenBucketBytesBurst": 0,
				"tokenBucketBytesPerSecond": 0
			},
			"round_trip_ping": "string",
			"round_trip_ping_ms": 0,
			"severity": "ok",
			"stun": {
				"canSTUN": true,
				"enabled": true,
				"error": "string"
			},
			"uses_websocket": true,
			"warnings": [
				{
					"code": "EUNKNOWN",
					"message": "string"
				}
			]
		}
	],
	"region": {
		"avoid": true,
		"embeddedRelay": true,
		"nodes": [
			{
				"canPort80": true,
				"certName": "string",
				"derpport": 0,
				"forceHTTP": true,
				"hostName": "string",
				"insecureForTests": true,
				"ipv4": "string",
				"ipv6": "string",
				"name": "string",
				"regionID": 0,
				"stunonly": true,
				"stunport": 0,
				"stuntestIP": "string"
			}
		],
		"regionCode": "string",
		"regionID": 0,
		"regionName": "string"
	},
	"severity": "ok",
	"warnings": [
		{
			"code": "EUNKNOWN",
			"message": "string"
		}
	]
}
 
 Properties 
 Enumerated Values 
Property Value severityokseveritywarningseverityerror
 
 healthsdk.DatabaseReport 
{
	"dismissed": true,
	"error": "string",
	"healthy": true,
	"latency": "string",
	"latency_ms": 0,
	"reachable": true,
	"severity": "ok",
	"threshold_ms": 0,
	"warnings": [
		{
			"code": "EUNKNOWN",
			"message": "string"
		}
	]
}
 
 Properties 
Name Type Required Restrictions Description dismissedboolean false errorstring false healthyboolean false Healthy is deprecated and left for backward compatibility purposes, use Severity instead. latencystring false latency_msinteger false reachableboolean false severityhealth.Severity false threshold_msinteger false warningsarray of health.Message  false 
 
 Enumerated Values 
Property Value severityokseveritywarningseverityerror
 
 healthsdk.HealthSection 
 Properties 
 Enumerated Values 
Value DERPAccessURLWebsocketDatabaseWorkspaceProxyProvisionerDaemons
 
 healthsdk.HealthSettings 
{
	"dismissed_healthchecks": ["DERP"]
}
 
 Properties 
 healthsdk.HealthcheckReport 
{
	"access_url": {
		"access_url": "string",
		"dismissed": true,
		"error": "string",
		"healthy": true,
		"healthz_response": "string",
		"reachable": true,
		"severity": "ok",
		"status_code": 0,
		"warnings": [
			{
				"code": "EUNKNOWN",
				"message": "string"
			}
		]
	},
	"coder_version": "string",
	"database": {
		"dismissed": true,
		"error": "string",
		"healthy": true,
		"latency": "string",
		"latency_ms": 0,
		"reachable": true,
		"severity": "ok",
		"threshold_ms": 0,
		"warnings": [
			{
				"code": "EUNKNOWN",
				"message": "string"
			}
		]
	},
	"derp": {
		"dismissed": true,
		"error": "string",
		"healthy": true,
		"netcheck": {
			"captivePortal": "string",
			"globalV4": "string",
			"globalV6": "string",
			"hairPinning": "string",
			"icmpv4": true,
			"ipv4": true,
			"ipv4CanSend": true,
			"ipv6": true,
			"ipv6CanSend": true,
			"mappingVariesByDestIP": "string",
			"oshasIPv6": true,
			"pcp": "string",
			"pmp": "string",
			"preferredDERP": 0,
			"regionLatency": {
				"property1": 0,
				"property2": 0
			},
			"regionV4Latency": {
				"property1": 0,
				"property2": 0
			},
			"regionV6Latency": {
				"property1": 0,
				"property2": 0
			},
			"udp": true,
			"upnP": "string"
		},
		"netcheck_err": "string",
		"netcheck_logs": ["string"],
		"regions": {
			"property1": {
				"error": "string",
				"healthy": true,
				"node_reports": [
					{
						"can_exchange_messages": true,
						"client_errs": [["string"]],
						"client_logs": [["string"]],
						"error": "string",
						"healthy": true,
						"node": {
							"canPort80": true,
							"certName": "string",
							"derpport": 0,
							"forceHTTP": true,
							"hostName": "string",
							"insecureForTests": true,
							"ipv4": "string",
							"ipv6": "string",
							"name": "string",
							"regionID": 0,
							"stunonly": true,
							"stunport": 0,
							"stuntestIP": "string"
						},
						"node_info": {
							"tokenBucketBytesBurst": 0,
							"tokenBucketBytesPerSecond": 0
						},
						"round_trip_ping": "string",
						"round_trip_ping_ms": 0,
						"severity": "ok",
						"stun": {
							"canSTUN": true,
							"enabled": true,
							"error": "string"
						},
						"uses_websocket": true,
						"warnings": [
							{
								"code": "EUNKNOWN",
								"message": "string"
							}
						]
					}
				],
				"region": {
					"avoid": true,
					"embeddedRelay": true,
					"nodes": [
						{
							"canPort80": true,
							"certName": "string",
							"derpport": 0,
							"forceHTTP": true,
							"hostName": "string",
							"insecureForTests": true,
							"ipv4": "string",
							"ipv6": "string",
							"name": "string",
							"regionID": 0,
							"stunonly": true,
							"stunport": 0,
							"stuntestIP": "string"
						}
					],
					"regionCode": "string",
					"regionID": 0,
					"regionName": "string"
				},
				"severity": "ok",
				"warnings": [
					{
						"code": "EUNKNOWN",
						"message": "string"
					}
				]
			},
			"property2": {
				"error": "string",
				"healthy": true,
				"node_reports": [
					{
						"can_exchange_messages": true,
						"client_errs": [["string"]],
						"client_logs": [["string"]],
						"error": "string",
						"healthy": true,
						"node": {
							"canPort80": true,
							"certName": "string",
							"derpport": 0,
							"forceHTTP": true,
							"hostName": "string",
							"insecureForTests": true,
							"ipv4": "string",
							"ipv6": "string",
							"name": "string",
							"regionID": 0,
							"stunonly": true,
							"stunport": 0,
							"stuntestIP": "string"
						},
						"node_info": {
							"tokenBucketBytesBurst": 0,
							"tokenBucketBytesPerSecond": 0
						},
						"round_trip_ping": "string",
						"round_trip_ping_ms": 0,
						"severity": "ok",
						"stun": {
							"canSTUN": true,
							"enabled": true,
							"error": "string"
						},
						"uses_websocket": true,
						"warnings": [
							{
								"code": "EUNKNOWN",
								"message": "string"
							}
						]
					}
				],
				"region": {
					"avoid": true,
					"embeddedRelay": true,
					"nodes": [
						{
							"canPort80": true,
							"certName": "string",
							"derpport": 0,
							"forceHTTP": true,
							"hostName": "string",
							"insecureForTests": true,
							"ipv4": "string",
							"ipv6": "string",
							"name": "string",
							"regionID": 0,
							"stunonly": true,
							"stunport": 0,
							"stuntestIP": "string"
						}
					],
					"regionCode": "string",
					"regionID": 0,
					"regionName": "string"
				},
				"severity": "ok",
				"warnings": [
					{
						"code": "EUNKNOWN",
						"message": "string"
					}
				]
			}
		},
		"severity": "ok",
		"warnings": [
			{
				"code": "EUNKNOWN",
				"message": "string"
			}
		]
	},
	"healthy": true,
	"provisioner_daemons": {
		"dismissed": true,
		"error": "string",
		"items": [
			{
				"provisioner_daemon": {
					"api_version": "string",
					"created_at": "2019-08-24T14:15:22Z",
					"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
					"key_id": "1e779c8a-6786-4c89-b7c3-a6666f5fd6b5",
					"last_seen_at": "2019-08-24T14:15:22Z",
					"name": "string",
					"organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6",
					"provisioners": ["string"],
					"tags": {
						"property1": "string",
						"property2": "string"
					},
					"version": "string"
				},
				"warnings": [
					{
						"code": "EUNKNOWN",
						"message": "string"
					}
				]
			}
		],
		"severity": "ok",
		"warnings": [
			{
				"code": "EUNKNOWN",
				"message": "string"
			}
		]
	},
	"severity": "ok",
	"time": "2019-08-24T14:15:22Z",
	"websocket": {
		"body": "string",
		"code": 0,
		"dismissed": true,
		"error": "string",
		"healthy": true,
		"severity": "ok",
		"warnings": [
			{
				"code": "EUNKNOWN",
				"message": "string"
			}
		]
	},
	"workspace_proxy": {
		"dismissed": true,
		"error": "string",
		"healthy": true,
		"severity": "ok",
		"warnings": [
			{
				"code": "EUNKNOWN",
				"message": "string"
			}
		],
		"workspace_proxies": {
			"regions": [
				{
					"created_at": "2019-08-24T14:15:22Z",
					"deleted": true,
					"derp_enabled": true,
					"derp_only": true,
					"display_name": "string",
					"healthy": true,
					"icon_url": "string",
					"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
					"name": "string",
					"path_app_url": "string",
					"status": {
						"checked_at": "2019-08-24T14:15:22Z",
						"report": {
							"errors": ["string"],
							"warnings": ["string"]
						},
						"status": "ok"
					},
					"updated_at": "2019-08-24T14:15:22Z",
					"version": "string",
					"wildcard_hostname": "string"
				}
			]
		}
	}
}
 
 Properties 
 Enumerated Values 
Property Value severityokseveritywarningseverityerror
 
 healthsdk.ProvisionerDaemonsReport 
{
	"dismissed": true,
	"error": "string",
	"items": [
		{
			"provisioner_daemon": {
				"api_version": "string",
				"created_at": "2019-08-24T14:15:22Z",
				"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
				"key_id": "1e779c8a-6786-4c89-b7c3-a6666f5fd6b5",
				"last_seen_at": "2019-08-24T14:15:22Z",
				"name": "string",
				"organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6",
				"provisioners": ["string"],
				"tags": {
					"property1": "string",
					"property2": "string"
				},
				"version": "string"
			},
			"warnings": [
				{
					"code": "EUNKNOWN",
					"message": "string"
				}
			]
		}
	],
	"severity": "ok",
	"warnings": [
		{
			"code": "EUNKNOWN",
			"message": "string"
		}
	]
}
 
 Properties 
 Enumerated Values 
Property Value severityokseveritywarningseverityerror
 
 healthsdk.ProvisionerDaemonsReportItem 
{
	"provisioner_daemon": {
		"api_version": "string",
		"created_at": "2019-08-24T14:15:22Z",
		"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
		"key_id": "1e779c8a-6786-4c89-b7c3-a6666f5fd6b5",
		"last_seen_at": "2019-08-24T14:15:22Z",
		"name": "string",
		"organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6",
		"provisioners": ["string"],
		"tags": {
			"property1": "string",
			"property2": "string"
		},
		"version": "string"
	},
	"warnings": [
		{
			"code": "EUNKNOWN",
			"message": "string"
		}
	]
}
 
 Properties 
 healthsdk.STUNReport 
{
	"canSTUN": true,
	"enabled": true,
	"error": "string"
}
 
 Properties 
Name Type Required Restrictions Description canSTUNboolean false enabledboolean false errorstring false 
 
 healthsdk.UpdateHealthSettings 
{
	"dismissed_healthchecks": ["DERP"]
}
 
 Properties 
 healthsdk.WebsocketReport 
{
	"body": "string",
	"code": 0,
	"dismissed": true,
	"error": "string",
	"healthy": true,
	"severity": "ok",
	"warnings": [
		{
			"code": "EUNKNOWN",
			"message": "string"
		}
	]
}
 
 Properties 
Name Type Required Restrictions Description bodystring false codeinteger false dismissedboolean false errorstring false healthyboolean false Healthy is deprecated and left for backward compatibility purposes, use Severity instead. severityhealth.Severity false warningsarray of health.Message  false 
 
 Enumerated Values 
Property Value severityokseveritywarningseverityerror
 
 healthsdk.WorkspaceProxyReport 
{
	"dismissed": true,
	"error": "string",
	"healthy": true,
	"severity": "ok",
	"warnings": [
		{
			"code": "EUNKNOWN",
			"message": "string"
		}
	],
	"workspace_proxies": {
		"regions": [
			{
				"created_at": "2019-08-24T14:15:22Z",
				"deleted": true,
				"derp_enabled": true,
				"derp_only": true,
				"display_name": "string",
				"healthy": true,
				"icon_url": "string",
				"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
				"name": "string",
				"path_app_url": "string",
				"status": {
					"checked_at": "2019-08-24T14:15:22Z",
					"report": {
						"errors": ["string"],
						"warnings": ["string"]
					},
					"status": "ok"
				},
				"updated_at": "2019-08-24T14:15:22Z",
				"version": "string",
				"wildcard_hostname": "string"
			}
		]
	}
}
 
 Properties 
 Enumerated Values 
Property Value severityokseveritywarningseverityerror
 
 key.NodePublic 
 Properties 
None 
 netcheck.Report 
{
	"captivePortal": "string",
	"globalV4": "string",
	"globalV6": "string",
	"hairPinning": "string",
	"icmpv4": true,
	"ipv4": true,
	"ipv4CanSend": true,
	"ipv6": true,
	"ipv6CanSend": true,
	"mappingVariesByDestIP": "string",
	"oshasIPv6": true,
	"pcp": "string",
	"pmp": "string",
	"preferredDERP": 0,
	"regionLatency": {
		"property1": 0,
		"property2": 0
	},
	"regionV4Latency": {
		"property1": 0,
		"property2": 0
	},
	"regionV6Latency": {
		"property1": 0,
		"property2": 0
	},
	"udp": true,
	"upnP": "string"
}
 
 Properties 
Name Type Required Restrictions Description captivePortalstring false Captiveportal is set when we think there's a captive portal that is intercepting HTTP traffic. globalV4string false ip:port of global IPv4 globalV6string false [ip]:port of global IPv6 hairPinningstring false Hairpinning is whether the router supports communicating between two local devices through the NATted public IP address (on IPv4). icmpv4boolean false an ICMPv4 round trip completed ipv4boolean false an IPv4 STUN round trip completed ipv4CanSendboolean false an IPv4 packet was able to be sent ipv6boolean false an IPv6 STUN round trip completed ipv6CanSendboolean false an IPv6 packet was able to be sent mappingVariesByDestIPstring false Mappingvariesbydestip is whether STUN results depend which STUN server you're talking to (on IPv4). oshasIPv6boolean false could bind a socket to ::1 pcpstring false Pcp is whether PCP appears present on the LAN. Empty means not checked. pmpstring false Pmp is whether NAT-PMP appears present on the LAN. Empty means not checked. preferredDERPinteger false or 0 for unknown regionLatencyobject false keyed by DERP Region ID » [any property] integer false regionV4Latencyobject false keyed by DERP Region ID » [any property] integer false regionV6Latencyobject false keyed by DERP Region ID » [any property] integer false udpboolean false a UDP STUN round trip completed upnPstring false Upnp is whether UPnP appears present on the LAN. Empty means not checked. 
 
 oauth2.Token 
{
	"access_token": "string",
	"expires_in": 0,
	"expiry": "string",
	"refresh_token": "string",
	"token_type": "string"
}
 
 Properties 
Name Type Required Restrictions Description access_tokenstring false Access token is the token that authorizes and authenticates the requests. expires_ininteger false Expires in is the OAuth2 wire format "expires_in" field, which specifies how many seconds later the token expires, relative to an unknown time base approximately around "now". It is the application's responsibility to populate Expiry from ExpiresIn when required. expirystring false Expiry is the optional expiration time of the access token. If zero, TokenSource implementations will reuse the same token forever and RefreshToken or equivalent mechanisms for that TokenSource will not be used. refresh_tokenstring false Refresh token is a token that's used by the application (as opposed to the user) to refresh the access token if it expires. token_typestring false Token type is the type of token. The Type method returns either this or "Bearer", the default. 
 
 regexp.Regexp 
 Properties 
None 
 serpent.Annotations 
{
	"property1": "string",
	"property2": "string"
}
 
 Properties 
Name Type Required Restrictions Description [any property]string false 
 
 serpent.Group 
{
	"description": "string",
	"name": "string",
	"parent": {
		"description": "string",
		"name": "string",
		"parent": {},
		"yaml": "string"
	},
	"yaml": "string"
}
 
 Properties 
Name Type Required Restrictions Description descriptionstring false namestring false parentserpent.Group false yamlstring false 
 
 serpent.HostPort 
{
	"host": "string",
	"port": "string"
}
 
 Properties 
Name Type Required Restrictions Description hoststring false portstring false 
 
 serpent.Option 
{
	"annotations": {
		"property1": "string",
		"property2": "string"
	},
	"default": "string",
	"description": "string",
	"env": "string",
	"flag": "string",
	"flag_shorthand": "string",
	"group": {
		"description": "string",
		"name": "string",
		"parent": {
			"description": "string",
			"name": "string",
			"parent": {},
			"yaml": "string"
		},
		"yaml": "string"
	},
	"hidden": true,
	"name": "string",
	"required": true,
	"use_instead": [
		{
			"annotations": {
				"property1": "string",
				"property2": "string"
			},
			"default": "string",
			"description": "string",
			"env": "string",
			"flag": "string",
			"flag_shorthand": "string",
			"group": {
				"description": "string",
				"name": "string",
				"parent": {
					"description": "string",
					"name": "string",
					"parent": {},
					"yaml": "string"
				},
				"yaml": "string"
			},
			"hidden": true,
			"name": "string",
			"required": true,
			"use_instead": [],
			"value": null,
			"value_source": "",
			"yaml": "string"
		}
	],
	"value": null,
	"value_source": "",
	"yaml": "string"
}
 
 Properties 
Name Type Required Restrictions Description annotationsserpent.Annotations false Annotations enable extensions to serpent higher up in the stack. It's useful for help formatting and documentation generation. defaultstring false Default is parsed into Value if set. descriptionstring false envstring false Env is the environment variable used to configure this option. If unset, environment configuring is disabled. flagstring false Flag is the long name of the flag used to configure this option. If unset, flag configuring is disabled. flag_shorthandstring false Flag shorthand is the one-character shorthand for the flag. If unset, no shorthand is used. groupserpent.Group false Group is a group hierarchy that helps organize this option in help, configs and other documentation. hiddenboolean false namestring false requiredboolean false Required means this value must be set by some means. It requires ValueSource != ValueSourceNone If Default is set, then Required is ignored. use_insteadarray of serpent.Option  false Use instead is a list of options that should be used instead of this one. The field is used to generate a deprecation warning. valueany false Value includes the types listed in values.go. value_sourceserpent.ValueSource false yamlstring false Yaml is the YAML key used to configure this option. If unset, YAML configuring is disabled. 
 
 serpent.Regexp 
 Properties 
None 
 serpent.Struct-array_codersdk_ExternalAuthConfig 
{
	"value": [
		{
			"app_install_url": "string",
			"app_installations_url": "string",
			"auth_url": "string",
			"client_id": "string",
			"device_code_url": "string",
			"device_flow": true,
			"display_icon": "string",
			"display_name": "string",
			"id": "string",
			"no_refresh": true,
			"regex": "string",
			"scopes": ["string"],
			"token_url": "string",
			"type": "string",
			"validate_url": "string"
		}
	]
}
 
 Properties 
 serpent.Struct-array_codersdk_LinkConfig 
{
	"value": [
		{
			"icon": "bug",
			"name": "string",
			"target": "string"
		}
	]
}
 
 Properties 
 serpent.URL 
{
	"forceQuery": true,
	"fragment": "string",
	"host": "string",
	"omitHost": true,
	"opaque": "string",
	"path": "string",
	"rawFragment": "string",
	"rawPath": "string",
	"rawQuery": "string",
	"scheme": "string",
	"user": {}
}
 
 Properties 
Name Type Required Restrictions Description forceQueryboolean false append a query ('?') even if RawQuery is empty fragmentstring false fragment for references, without '#' hoststring false host or host:port (see Hostname and Port methods) omitHostboolean false do not emit empty host (authority) opaquestring false encoded opaque data pathstring false path (relative paths may omit leading slash) rawFragmentstring false encoded fragment hint (see EscapedFragment method) rawPathstring false encoded path hint (see EscapedPath method) rawQuerystring false encoded query values, without '?' schemestring false userurl.Userinfo false username and password information 
 
 serpent.ValueSource 
 Properties 
 Enumerated Values 
Value `` flagenvyamldefault
 
 tailcfg.DERPHomeParams 
{
	"regionScore": {
		"property1": 0,
		"property2": 0
	}
}
 
 Properties 
Name Type Required Restrictions Description regionScoreobject false Regionscore scales latencies of DERP regions by a given scaling factor when determining which region to use as the home ("preferred") DERP. Scores in the range (0, 1) will cause this region to be proportionally more preferred, and scores in the range (1, ∞) will penalize a region. 
 
If a region is not present in this map, it is treated as having a score of 1.0.
Scores should not be 0 or negative; such scores will be ignored.
A nil map means no change from the previous value (if any); an empty non-nil map can be sent to reset all scores back to 1.0.|
|» [any property]|number|false|||
 tailcfg.DERPMap 
{
	"homeParams": {
		"regionScore": {
			"property1": 0,
			"property2": 0
		}
	},
	"omitDefaultRegions": true,
	"regions": {
		"property1": {
			"avoid": true,
			"embeddedRelay": true,
			"nodes": [
				{
					"canPort80": true,
					"certName": "string",
					"derpport": 0,
					"forceHTTP": true,
					"hostName": "string",
					"insecureForTests": true,
					"ipv4": "string",
					"ipv6": "string",
					"name": "string",
					"regionID": 0,
					"stunonly": true,
					"stunport": 0,
					"stuntestIP": "string"
				}
			],
			"regionCode": "string",
			"regionID": 0,
			"regionName": "string"
		},
		"property2": {
			"avoid": true,
			"embeddedRelay": true,
			"nodes": [
				{
					"canPort80": true,
					"certName": "string",
					"derpport": 0,
					"forceHTTP": true,
					"hostName": "string",
					"insecureForTests": true,
					"ipv4": "string",
					"ipv6": "string",
					"name": "string",
					"regionID": 0,
					"stunonly": true,
					"stunport": 0,
					"stuntestIP": "string"
				}
			],
			"regionCode": "string",
			"regionID": 0,
			"regionName": "string"
		}
	}
}
 
 Properties 
Name Type Required Restrictions Description homeParamstailcfg.DERPHomeParams false Homeparams if non-nil, is a change in home parameters. The rest of the DEPRMap fields, if zero, means unchanged. omitDefaultRegionsboolean false Omitdefaultregions specifies to not use Tailscale's DERP servers, and only use those specified in this DERPMap. If there are none set outside of the defaults, this is a noop. This field is only meaningful if the Regions map is non-nil (indicating a change). regionsobject false Regions is the set of geographic regions running DERP node(s). 
 
It's keyed by the DERPRegion.RegionID.
The numbers are not necessarily contiguous.|
|» [any property]|tailcfg.DERPRegion |false|||
 tailcfg.DERPNode 
{
	"canPort80": true,
	"certName": "string",
	"derpport": 0,
	"forceHTTP": true,
	"hostName": "string",
	"insecureForTests": true,
	"ipv4": "string",
	"ipv6": "string",
	"name": "string",
	"regionID": 0,
	"stunonly": true,
	"stunport": 0,
	"stuntestIP": "string"
}
 
 Properties 
Name Type Required Restrictions Description canPort80boolean false Canport80 specifies whether this DERP node is accessible over HTTP on port 80 specifically. This is used for captive portal checks. certNamestring false Certname optionally specifies the expected TLS cert common name. If empty, HostName is used. If CertName is non-empty, HostName is only used for the TCP dial (if IPv4/IPv6 are not present) + TLS ClientHello. derpportinteger false Derpport optionally provides an alternate TLS port number for the DERP HTTPS server. If zero, 443 is used. forceHTTPboolean false Forcehttp is used by unit tests to force HTTP. It should not be set by users. hostNamestring false Hostname is the DERP node's hostname. It is required but need not be unique; multiple nodes may have the same HostName but vary in configuration otherwise. insecureForTestsboolean false Insecurefortests is used by unit tests to disable TLS verification. It should not be set by users. ipv4string false Ipv4 optionally forces an IPv4 address to use, instead of using DNS. If empty, A record(s) from DNS lookups of HostName are used. If the string is not an IPv4 address, IPv4 is not used; the conventional string to disable IPv4 (and not use DNS) is "none". ipv6string false Ipv6 optionally forces an IPv6 address to use, instead of using DNS. If empty, AAAA record(s) from DNS lookups of HostName are used. If the string is not an IPv6 address, IPv6 is not used; the conventional string to disable IPv6 (and not use DNS) is "none". namestring false Name is a unique node name (across all regions). It is not a host name. It's typically of the form "1b", "2a", "3b", etc. (region ID + suffix within that region) regionIDinteger false Regionid is the RegionID of the DERPRegion that this node is running in. stunonlyboolean false Stunonly marks a node as only a STUN server and not a DERP server. stunportinteger false Port optionally specifies a STUN port to use. Zero means 3478. To disable STUN on this node, use -1. stuntestIPstring false Stuntestip is used in tests to override the STUN server's IP. If empty, it's assumed to be the same as the DERP server. 
 
 tailcfg.DERPRegion 
{
	"avoid": true,
	"embeddedRelay": true,
	"nodes": [
		{
			"canPort80": true,
			"certName": "string",
			"derpport": 0,
			"forceHTTP": true,
			"hostName": "string",
			"insecureForTests": true,
			"ipv4": "string",
			"ipv6": "string",
			"name": "string",
			"regionID": 0,
			"stunonly": true,
			"stunport": 0,
			"stuntestIP": "string"
		}
	],
	"regionCode": "string",
	"regionID": 0,
	"regionName": "string"
}
 
 Properties 
Name Type Required Restrictions Description avoidboolean false Avoid is whether the client should avoid picking this as its home region. The region should only be used if a peer is there. Clients already using this region as their home should migrate away to a new region without Avoid set. embeddedRelayboolean false Embeddedrelay is true when the region is bundled with the Coder control plane. nodesarray of tailcfg.DERPNode  false Nodes are the DERP nodes running in this region, in priority order for the current client. Client TLS connections should ideally only go to the first entry (falling back to the second if necessary). STUN packets should go to the first 1 or 2. If nodes within a region route packets amongst themselves, but not to other regions. That said, each user/domain should get a the same preferred node order, so if all nodes for a user/network pick the first one (as they should, when things are healthy), the inter-cluster routing is minimal to zero. regionCodestring false Regioncode is a short name for the region. It's usually a popular city or airport code in the region: "nyc", "sf", "sin", "fra", etc. regionIDinteger false Regionid is a unique integer for a geographic region. 
 
It corresponds to the legacy derpN.tailscale.com hostnames used by older clients. (Older clients will continue to resolve derpN.tailscale.com when contacting peers, rather than use the server-provided DERPMap)
RegionIDs must be non-zero, positive, and guaranteed to fit in a JavaScript number.
RegionIDs in range 900-999 are reserved for end users to run their own DERP nodes.|
|regionName|string|false||Regionname is a long English name for the region: "New York City", "San Francisco", "Singapore", "Frankfurt", etc.|
 url.Userinfo 
 Properties 
None 
 workspaceapps.AccessMethod 
 Properties 
 Enumerated Values 
Value pathsubdomainterminal
 
 workspaceapps.IssueTokenRequest 
{
	"app_hostname": "string",
	"app_path": "string",
	"app_query": "string",
	"app_request": {
		"access_method": "path",
		"agent_name_or_id": "string",
		"app_prefix": "string",
		"app_slug_or_port": "string",
		"base_path": "string",
		"username_or_id": "string",
		"workspace_name_or_id": "string"
	},
	"path_app_base_url": "string",
	"session_token": "string"
}
 
 Properties 
Name Type Required Restrictions Description app_hostnamestring false App hostname is the optional hostname for subdomain apps on the external proxy. It must start with an asterisk. app_pathstring false App path is the path of the user underneath the app base path. app_querystring false App query is the query parameters the user provided in the app request. app_requestworkspaceapps.Request false path_app_base_urlstring false Path app base URL is required. session_tokenstring false Session token is the session token provided by the user. 
 
 workspaceapps.Request 
{
	"access_method": "path",
	"agent_name_or_id": "string",
	"app_prefix": "string",
	"app_slug_or_port": "string",
	"base_path": "string",
	"username_or_id": "string",
	"workspace_name_or_id": "string"
}
 
 Properties 
Name Type Required Restrictions Description access_methodworkspaceapps.AccessMethod false agent_name_or_idstring false Agent name or ID is not required if the workspace has only one agent. app_prefixstring false Prefix is the prefix of the subdomain app URL. Prefix should have a trailing "---" if set. app_slug_or_portstring false base_pathstring false Base path of the app. For path apps, this is the path prefix in the router for this particular app. For subdomain apps, this should be "/". This is used for setting the cookie path. username_or_idstring false For the following fields, if the AccessMethod is AccessMethodTerminal, then only AgentNameOrID may be set and it must be a UUID. The other fields must be left blank. workspace_name_or_idstring false 
 
 workspaceapps.StatsReport 
{
	"access_method": "path",
	"agent_id": "string",
	"requests": 0,
	"session_ended_at": "string",
	"session_id": "string",
	"session_started_at": "string",
	"slug_or_port": "string",
	"user_id": "string",
	"workspace_id": "string"
}
 
 Properties 
Name Type Required Restrictions Description access_methodworkspaceapps.AccessMethod false agent_idstring false requestsinteger false session_ended_atstring false Updated periodically while app is in use active and when the last connection is closed. session_idstring false session_started_atstring false slug_or_portstring false user_idstring false workspace_idstring false 
 
 workspacesdk.AgentConnectionInfo 
{
	"derp_force_websockets": true,
	"derp_map": {
		"homeParams": {
			"regionScore": {
				"property1": 0,
				"property2": 0
			}
		},
		"omitDefaultRegions": true,
		"regions": {
			"property1": {
				"avoid": true,
				"embeddedRelay": true,
				"nodes": [
					{
						"canPort80": true,
						"certName": "string",
						"derpport": 0,
						"forceHTTP": true,
						"hostName": "string",
						"insecureForTests": true,
						"ipv4": "string",
						"ipv6": "string",
						"name": "string",
						"regionID": 0,
						"stunonly": true,
						"stunport": 0,
						"stuntestIP": "string"
					}
				],
				"regionCode": "string",
				"regionID": 0,
				"regionName": "string"
			},
			"property2": {
				"avoid": true,
				"embeddedRelay": true,
				"nodes": [
					{
						"canPort80": true,
						"certName": "string",
						"derpport": 0,
						"forceHTTP": true,
						"hostName": "string",
						"insecureForTests": true,
						"ipv4": "string",
						"ipv6": "string",
						"name": "string",
						"regionID": 0,
						"stunonly": true,
						"stunport": 0,
						"stuntestIP": "string"
					}
				],
				"regionCode": "string",
				"regionID": 0,
				"regionName": "string"
			}
		}
	},
	"disable_direct_connections": true
}
 
 Properties 
Name Type Required Restrictions Description derp_force_websocketsboolean false derp_maptailcfg.DERPMap false disable_direct_connectionsboolean false 
 
 wsproxysdk.CryptoKey 
{
	"deletes_at": "string",
	"feature": "workspace_apps",
	"secret": "string",
	"sequence": 0,
	"starts_at": "string"
}
 
 Properties 
Name Type Required Restrictions Description deletes_atstring false featurewsproxysdk.CryptoKeyFeature false secretstring false sequenceinteger false starts_atstring false 
 
 wsproxysdk.CryptoKeyFeature 
 Properties 
 Enumerated Values 
Value workspace_appsoidc_converttailnet_resume
 
 wsproxysdk.CryptoKeysResponse 
{
	"crypto_keys": [
		{
			"deletes_at": "string",
			"feature": "workspace_apps",
			"secret": "string",
			"sequence": 0,
			"starts_at": "string"
		}
	]
}
 
 Properties 
 wsproxysdk.DeregisterWorkspaceProxyRequest 
{
	"replica_id": "string"
}
 
 Properties 
Name Type Required Restrictions Description replica_idstring false Replica ID is a unique identifier for the replica of the proxy that is deregistering. It should be generated by the client on startup and should've already been passed to the register endpoint. 
 
 wsproxysdk.IssueSignedAppTokenResponse 
{
	"signed_token_str": "string"
}
 
 Properties 
Name Type Required Restrictions Description signed_token_strstring false Signed token str should be set as a cookie on the response. 
 
 wsproxysdk.RegisterWorkspaceProxyRequest 
{
	"access_url": "string",
	"derp_enabled": true,
	"derp_only": true,
	"hostname": "string",
	"replica_error": "string",
	"replica_id": "string",
	"replica_relay_address": "string",
	"version": "string",
	"wildcard_hostname": "string"
}
 
 Properties 
Name Type Required Restrictions Description access_urlstring false Access URL that hits the workspace proxy api. derp_enabledboolean false Derp enabled indicates whether the proxy should be included in the DERP map or not. derp_onlyboolean false Derp only indicates whether the proxy should only be included in the DERP map and should not be used for serving apps. hostnamestring false Hostname is the OS hostname of the machine that the proxy is running on. This is only used for tracking purposes in the replicas table. replica_errorstring false Replica error is the error that the replica encountered when trying to dial it's peers. This is stored in the replicas table for debugging purposes but does not affect the proxy's ability to register. This value is only stored on subsequent requests to the register endpoint, not the first request. replica_idstring false Replica ID is a unique identifier for the replica of the proxy that is registering. It should be generated by the client on startup and persisted (in memory only) until the process is restarted. replica_relay_addressstring false Replica relay address is the DERP address of the replica that other replicas may use to connect internally for DERP meshing. versionstring false Version is the Coder version of the proxy. wildcard_hostnamestring false Wildcard hostname that the workspace proxy api is serving for subdomain apps. 
 
 wsproxysdk.RegisterWorkspaceProxyResponse 
{
	"app_security_key": "string",
	"derp_force_websockets": true,
	"derp_map": {
		"homeParams": {
			"regionScore": {
				"property1": 0,
				"property2": 0
			}
		},
		"omitDefaultRegions": true,
		"regions": {
			"property1": {
				"avoid": true,
				"embeddedRelay": true,
				"nodes": [
					{
						"canPort80": true,
						"certName": "string",
						"derpport": 0,
						"forceHTTP": true,
						"hostName": "string",
						"insecureForTests": true,
						"ipv4": "string",
						"ipv6": "string",
						"name": "string",
						"regionID": 0,
						"stunonly": true,
						"stunport": 0,
						"stuntestIP": "string"
					}
				],
				"regionCode": "string",
				"regionID": 0,
				"regionName": "string"
			},
			"property2": {
				"avoid": true,
				"embeddedRelay": true,
				"nodes": [
					{
						"canPort80": true,
						"certName": "string",
						"derpport": 0,
						"forceHTTP": true,
						"hostName": "string",
						"insecureForTests": true,
						"ipv4": "string",
						"ipv6": "string",
						"name": "string",
						"regionID": 0,
						"stunonly": true,
						"stunport": 0,
						"stuntestIP": "string"
					}
				],
				"regionCode": "string",
				"regionID": 0,
				"regionName": "string"
			}
		}
	},
	"derp_mesh_key": "string",
	"derp_region_id": 0,
	"sibling_replicas": [
		{
			"created_at": "2019-08-24T14:15:22Z",
			"database_latency": 0,
			"error": "string",
			"hostname": "string",
			"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
			"region_id": 0,
			"relay_address": "string"
		}
	]
}
 
 Properties 
Name Type Required Restrictions Description app_security_keystring false derp_force_websocketsboolean false derp_maptailcfg.DERPMap false derp_mesh_keystring false derp_region_idinteger false sibling_replicasarray of codersdk.Replica  false Sibling replicas is a list of all other replicas of the proxy that have not timed out. 
 
 wsproxysdk.ReportAppStatsRequest 
{
	"stats": [
		{
			"access_method": "path",
			"agent_id": "string",
			"requests": 0,
			"session_ended_at": "string",
			"session_id": "string",
			"session_started_at": "string",
			"slug_or_port": "string",
			"user_id": "string",
			"workspace_id": "string"
		}
	]
}
 
 Properties