Schemas
agentsdk.AWSInstanceIdentityToken
{
"document" : "string" ,
"signature" : "string"
}
Properties
Name Type Required Restrictions Description document
string true signature
string true
agentsdk.AgentMetric
{
"labels" : [
{
"name" : "string" ,
"value" : "string"
}
],
"name" : "string" ,
"type" : "counter" ,
"value" : 0
}
Properties
Enumerated Values
Property Value type
counter
type
gauge
agentsdk.AgentMetricLabel
{
"name" : "string" ,
"value" : "string"
}
Properties
Name Type Required Restrictions Description name
string true value
string true
agentsdk.AgentMetricType
Properties
Enumerated Values
agentsdk.AuthenticateResponse
{
"session_token" : "string"
}
Properties
Name Type Required Restrictions Description session_token
string false
agentsdk.AzureInstanceIdentityToken
{
"encoding" : "string" ,
"signature" : "string"
}
Properties
Name Type Required Restrictions Description encoding
string true signature
string true
agentsdk.ExternalAuthResponse
{
"access_token" : "string" ,
"password" : "string" ,
"token_extra" : {},
"type" : "string" ,
"url" : "string" ,
"username" : "string"
}
Properties
Name Type Required Restrictions Description access_token
string false password
string false token_extra
object false type
string false url
string false username
string 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_key
string false public_key
string false
agentsdk.GoogleInstanceIdentityToken
{
"json_web_token" : "string"
}
Properties
Name Type Required Restrictions Description json_web_token
string true
agentsdk.Log
{
"created_at" : "string" ,
"level" : "trace" ,
"output" : "string"
}
Properties
Name Type Required Restrictions Description created_at
string false level
codersdk.LogLevel false output
string false
agentsdk.Manifest
{
"agent_id" : "string" ,
"apps" : [
{
"command" : "string" ,
"display_name" : "string" ,
"external" : true ,
"health" : "disabled" ,
"healthcheck" : {
"interval" : 0 ,
"threshold" : 0 ,
"url" : "string"
},
"icon" : "string" ,
"id" : "497f6eca-6276-4993-bfeb-53cbbbba6f08" ,
"sharing_level" : "owner" ,
"slug" : "string" ,
"subdomain" : true ,
"subdomain_name" : "string" ,
"url" : "string"
}
],
"derp_force_websockets" : true ,
"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"
}
}
},
"directory" : "string" ,
"disable_direct_connections" : true ,
"environment_variables" : {
"property1" : "string" ,
"property2" : "string"
},
"git_auth_configs" : 0 ,
"metadata" : [
{
"display_name" : "string" ,
"interval" : 0 ,
"key" : "string" ,
"script" : "string" ,
"timeout" : 0
}
],
"motd_file" : "string" ,
"owner_name" : "string" ,
"scripts" : [
{
"cron" : "string" ,
"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
}
],
"vscode_port_proxy_uri" : "string" ,
"workspace_id" : "string"
}
Properties
Name Type Required Restrictions Description agent_id
string false apps
array of codersdk.WorkspaceApp false derp_force_websockets
boolean false derpmap
tailcfg.DERPMap false directory
string false disable_direct_connections
boolean false environment_variables
object false » [any property]
string false git_auth_configs
integer false Git auth configs stores the number of Git configurations the Coder deployment has. If this number is >0, we set up special configuration in the workspace. metadata
array of codersdk.WorkspaceAgentMetadataDescription false motd_file
string false owner_name
string false Owner name and WorkspaceID are used by an open-source user to identify the workspace. We do not provide insurance that this will not be removed in the future, but if it's easy to persist lets keep it around. scripts
array of codersdk.WorkspaceAgentScript false vscode_port_proxy_uri
string false workspace_id
string false
{
"age" : 0 ,
"collected_at" : "2019-08-24T14:15:22Z" ,
"error" : "string" ,
"key" : "string" ,
"value" : "string"
}
Properties
Name Type Required Restrictions Description age
integer false Age is the number of seconds since the metadata was collected. It is provided in addition to CollectedAt to protect against clock skew. collected_at
string false error
string false key
string false value
string false
agentsdk.PatchLogs
{
"log_source_id" : "string" ,
"logs" : [
{
"created_at" : "string" ,
"level" : "trace" ,
"output" : "string"
}
]
}
Properties
Name Type Required Restrictions Description log_source_id
string false logs
array of agentsdk.Log false
agentsdk.PostAppHealthsRequest
{
"healths" : {
"property1" : "disabled" ,
"property2" : "disabled"
}
}
Properties
Name Type Required Restrictions Description healths
object false Healths is a map of the workspace app name and the health of the app. » [any property]
codersdk.WorkspaceAppHealth false
agentsdk.PostLifecycleRequest
{
"changed_at" : "string" ,
"state" : "created"
}
Properties
agentsdk.PostMetadataRequest
{
"metadata" : [
{
"age" : 0 ,
"collected_at" : "2019-08-24T14:15:22Z" ,
"error" : "string" ,
"key" : "string" ,
"value" : "string"
}
]
}
Properties
agentsdk.PostMetadataRequestDeprecated
{
"age" : 0 ,
"collected_at" : "2019-08-24T14:15:22Z" ,
"error" : "string" ,
"value" : "string"
}
Properties
Name Type Required Restrictions Description age
integer false Age is the number of seconds since the metadata was collected. It is provided in addition to CollectedAt to protect against clock skew. collected_at
string false error
string false value
string false
agentsdk.PostStartupRequest
{
"expanded_directory" : "string" ,
"subsystems" : ["envbox" ],
"version" : "string"
}
Properties
Name Type Required Restrictions Description expanded_directory
string false subsystems
array of codersdk.AgentSubsystem false version
string false
agentsdk.Stats
{
"connection_count" : 0 ,
"connection_median_latency_ms" : 0 ,
"connections_by_proto" : {
"property1" : 0 ,
"property2" : 0
},
"metrics" : [
{
"labels" : [
{
"name" : "string" ,
"value" : "string"
}
],
"name" : "string" ,
"type" : "counter" ,
"value" : 0
}
],
"rx_bytes" : 0 ,
"rx_packets" : 0 ,
"session_count_jetbrains" : 0 ,
"session_count_reconnecting_pty" : 0 ,
"session_count_ssh" : 0 ,
"session_count_vscode" : 0 ,
"tx_bytes" : 0 ,
"tx_packets" : 0
}
Properties
Name Type Required Restrictions Description connection_count
integer false Connection count is the number of connections received by an agent. connection_median_latency_ms
number false Connection median latency ms is the median latency of all connections in milliseconds. connections_by_proto
object false Connections by proto is a count of connections by protocol. » [any property]
integer false metrics
array of agentsdk.AgentMetric false Metrics collected by the agent rx_bytes
integer false Rx bytes is the number of received bytes. rx_packets
integer false Rx packets is the number of received packets. session_count_jetbrains
integer false Session count jetbrains is the number of connections received by an agent that are from our JetBrains extension. session_count_reconnecting_pty
integer false Session count reconnecting pty is the number of connections received by an agent that are from the reconnecting web terminal. session_count_ssh
integer false Session count ssh is the number of connections received by an agent that are normal, non-tagged SSH sessions. session_count_vscode
integer false Session count vscode is the number of connections received by an agent that are from our VS Code extension. tx_bytes
integer false Tx bytes is the number of transmitted bytes. tx_packets
integer false Tx packets is the number of transmitted bytes.
agentsdk.StatsResponse
Properties
Name Type Required Restrictions Description report_interval
integer false Report interval is the duration after which the agent should send stats again.
clibase.Annotations
{
"property1" : "string" ,
"property2" : "string"
}
Properties
Name Type Required Restrictions Description [any property]
string false
clibase.Group
{
"description" : "string" ,
"name" : "string" ,
"parent" : {
"description" : "string" ,
"name" : "string" ,
"parent" : {},
"yaml" : "string"
},
"yaml" : "string"
}
Properties
Name Type Required Restrictions Description description
string false name
string false parent
clibase.Group false yaml
string false
clibase.HostPort
{
"host" : "string" ,
"port" : "string"
}
Properties
Name Type Required Restrictions Description host
string false port
string false
clibase.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 annotations
clibase.Annotations false Annotations enable extensions to clibase higher up in the stack. It's useful for help formatting and documentation generation. default
string false Default is parsed into Value if set. description
string false env
string false Env is the environment variable used to configure this option. If unset, environment configuring is disabled. flag
string false Flag is the long name of the flag used to configure this option. If unset, flag configuring is disabled. flag_shorthand
string false Flag shorthand is the one-character shorthand for the flag. If unset, no shorthand is used. group
clibase.Group false Group is a group hierarchy that helps organize this option in help, configs and other documentation. hidden
boolean false name
string false required
boolean false Required means this value must be set by some means. It requires ValueSource != ValueSourceNone
If Default
is set, then Required
is ignored. use_instead
array of clibase.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. value
any false Value includes the types listed in values.go. value_source
clibase.ValueSource false yaml
string false Yaml is the YAML key used to configure this option. If unset, YAML configuring is disabled.
clibase.Regexp
Properties
None
clibase.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" ,
"extra_token_keys" : ["string" ],
"id" : "string" ,
"no_refresh" : true ,
"regex" : "string" ,
"scopes" : ["string" ],
"token_url" : "string" ,
"type" : "string" ,
"validate_url" : "string"
}
]
}
Properties
clibase.Struct-array_codersdk_LinkConfig
{
"value" : [
{
"icon" : "string" ,
"name" : "string" ,
"target" : "string"
}
]
}
Properties
clibase.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 forceQuery
boolean false append a query ('?') even if RawQuery is empty fragment
string false fragment for references, without '#' host
string false host or host:port omitHost
boolean false do not emit empty host (authority) opaque
string false encoded opaque data path
string false path (relative paths may omit leading slash) rawFragment
string false encoded fragment hint (see EscapedFragment method) rawPath
string false encoded path hint (see EscapedPath method) rawQuery
string false encoded query values, without '?' scheme
string false user
url.Userinfo false username and password information
clibase.ValueSource
Properties
Enumerated Values
Value `` flag
env
yaml
default
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 active
boolean false emails
array of object false » display
string false » primary
boolean false » type
string false » value
string false groups
array of undefined false id
string false meta
object false » resourceType
string false name
object false » familyName
string false » givenName
string false schemas
array of string false userName
string false
coderd.cspViolation
Properties
Name Type Required Restrictions Description csp-report
object 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" : "" ,
"organization_ids" : ["497f6eca-6276-4993-bfeb-53cbbbba6f08" ],
"roles" : [
{
"display_name" : "string" ,
"name" : "string"
}
],
"status" : "active" ,
"username" : "string"
}
],
"name" : "string" ,
"organization_id" : "7c60d51f-b44e-4682-87d6-449835ea4de6" ,
"quota_allowance" : 0 ,
"source" : "user"
}
],
"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" : "" ,
"organization_ids" : ["497f6eca-6276-4993-bfeb-53cbbbba6f08" ],
"roles" : [
{
"display_name" : "string" ,
"name" : "string"
}
],
"status" : "active" ,
"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_at
string true expires_at
string true id
string true last_used
string true lifetime_seconds
integer true login_type
codersdk.LoginType true scope
codersdk.APIKeyScope true token_name
string true updated_at
string true user_id
string true
Enumerated Values
Property Value login_type
password
login_type
github
login_type
oidc
login_type
token
scope
all
scope
application_connect
codersdk.APIKeyScope
Properties
Enumerated Values
Value all
application_connect
codersdk.AddLicenseRequest
Properties
Name Type Required Restrictions Description license
string true
codersdk.AgentSubsystem
Properties
Enumerated Values
Value envbox
envbuilder
exectrace
codersdk.AppHostResponse
Properties
Name Type Required Restrictions Description host
string false Host is the externally accessible URL for the Coder instance.
codersdk.AppearanceConfig
{
"application_name" : "string" ,
"logo_url" : "string" ,
"service_banner" : {
"background_color" : "string" ,
"enabled" : true ,
"message" : "string"
},
"support_links" : [
{
"icon" : "string" ,
"name" : "string" ,
"target" : "string"
}
]
}
Properties
codersdk.ArchiveTemplateVersionsRequest
Properties
Name Type Required Restrictions Description all
boolean 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 ,
"display_name" : "string" ,
"name" : "string"
}
Properties
Name Type Required Restrictions Description assignable
boolean false display_name
string false name
string false
codersdk.AuditAction
Properties
Enumerated Values
Value create
write
delete
start
stop
login
logout
register
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 new
any false old
any false secret
boolean 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_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" : "" ,
"organization_ids" : ["497f6eca-6276-4993-bfeb-53cbbbba6f08" ],
"roles" : [
{
"display_name" : "string" ,
"name" : "string"
}
],
"status" : "active" ,
"username" : "string"
},
"user_agent" : "string"
}
Properties
Name Type Required Restrictions Description action
codersdk.AuditAction false additional_fields
array of integer false description
string false diff
codersdk.AuditDiff false id
string false ip
string false is_deleted
boolean false organization_id
string false request_id
string false resource_icon
string false resource_id
string false resource_link
string false resource_target
string false Resource target is the name of the resource. resource_type
codersdk.ResourceType false status_code
integer false time
string false user
codersdk.User false user_agent
string 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_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" : "" ,
"organization_ids" : ["497f6eca-6276-4993-bfeb-53cbbbba6f08" ],
"roles" : [
{
"display_name" : "string" ,
"name" : "string"
}
],
"status" : "active" ,
"username" : "string"
},
"user_agent" : "string"
}
],
"count" : 0
}
Properties
Name Type Required Restrictions Description audit_logs
array of codersdk.AuditLog false count
integer false
codersdk.AuthMethod
Properties
Name Type Required Restrictions Description enabled
boolean false
codersdk.AuthMethods
{
"github" : {
"enabled" : true
},
"oidc" : {
"enabled" : true ,
"iconUrl" : "string" ,
"signInText" : "string"
},
"password" : {
"enabled" : true
}
}
Properties
codersdk.AuthorizationCheck
{
"action" : "create" ,
"object" : {
"organization_id" : "string" ,
"owner_id" : "string" ,
"resource_id" : "string" ,
"resource_type" : "workspace"
}
}
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 action
string false object
codersdk.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 action
create
action
read
action
update
action
delete
codersdk.AuthorizationObject
{
"organization_id" : "string" ,
"owner_id" : "string" ,
"resource_id" : "string" ,
"resource_type" : "workspace"
}
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 organization_id
string false Organization ID (optional) adds the set constraint to all resources owned by a given organization. owner_id
string false Owner ID (optional) adds the set constraint to all resources owned by a given user. resource_id
string 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_type
codersdk.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" : {
"organization_id" : "string" ,
"owner_id" : "string" ,
"resource_id" : "string" ,
"resource_type" : "workspace"
}
},
"property2" : {
"action" : "create" ,
"object" : {
"organization_id" : "string" ,
"owner_id" : "string" ,
"resource_id" : "string" ,
"resource_type" : "workspace"
}
}
}
}
Properties
Name Type Required Restrictions Description checks
object 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.BuildInfoResponse
{
"agent_api_version" : "string" ,
"dashboard_url" : "string" ,
"external_url" : "string" ,
"version" : "string" ,
"workspace_proxy" : true
}
Properties
Name Type Required Restrictions Description agent_api_version
string false Agent api version is the current version of the Agent API (back versions MAY still be supported). dashboard_url
string false Dashboard URL is the URL to hit the deployment's dashboard. For external workspace proxies, this is the coderd they are connected to. external_url
string 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. version
string false Version returns the semantic version of the build. workspace_proxy
boolean false
codersdk.BuildReason
Properties
Enumerated Values
Value initiator
autostart
autostop
codersdk.ConnectionLatency
{
"p50" : 31.312 ,
"p95" : 119.832
}
Properties
Name Type Required Restrictions Description p50
number false p95
number false
codersdk.ConvertLoginRequest
{
"password" : "string" ,
"to_type" : ""
}
Properties
Name Type Required Restrictions Description password
string true to_type
codersdk.LoginType true To type is the login type to convert to.
codersdk.CreateFirstUserRequest
{
"email" : "string" ,
"password" : "string" ,
"trial" : true ,
"username" : "string"
}
Properties
Name Type Required Restrictions Description email
string true password
string true trial
boolean false username
string true
codersdk.CreateFirstUserResponse
{
"organization_id" : "7c60d51f-b44e-4682-87d6-449835ea4de6" ,
"user_id" : "a169451c-8525-4352-b8ca-070dd449a1a5"
}
Properties
Name Type Required Restrictions Description organization_id
string false user_id
string false
codersdk.CreateGroupRequest
{
"avatar_url" : "string" ,
"display_name" : "string" ,
"name" : "string" ,
"quota_allowance" : 0
}
Properties
Name Type Required Restrictions Description avatar_url
string false display_name
string false name
string false quota_allowance
integer false
codersdk.CreateOrganizationRequest
Properties
Name Type Required Restrictions Description name
string true
codersdk.CreateTemplateRequest
{
"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_ttl_ms" : 0 ,
"name" : "string" ,
"require_active_version" : true ,
"template_version_id" : "0ba39c92-1f1b-4c32-aa3e-9925d7713eb1"
}
Properties
Name Type Required Restrictions Description allow_user_autostart
boolean 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_autostop
boolean 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_jobs
boolean false Allow users to cancel in-progress workspace jobs. *bool as the default value is "true". autostart_requirement
codersdk.TemplateAutostartRequirement false Autostart requirement allows optionally specifying the autostart allowed days for workspaces created from this template. This is an enterprise feature. autostop_requirement
codersdk.TemplateAutostopRequirement false Autostop requirement allows optionally specifying the autostop requirement for workspaces created from this template. This is an enterprise feature. default_ttl_ms
integer false Default ttl ms allows optionally specifying the default TTL for all workspaces created from this template. delete_ttl_ms
integer false Delete ttl ms allows optionally specifying the max lifetime before Coder permanently deletes dormant workspaces created from this template. description
string false Description is a description of what the template contains. It must be less than 128 bytes. disable_everyone_group_access
boolean 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_name
string false Display name is the displayed name of the template. dormant_ttl_ms
integer false Dormant ttl ms allows optionally specifying the max lifetime before Coder locks inactive workspaces created from this template. failure_ttl_ms
integer false Failure ttl ms allows optionally specifying the max lifetime before Coder stops all resources for failed workspaces created from this template. icon
string false Icon is a relative path or external URL that specifies an icon to be displayed in the dashboard. max_ttl_ms
integer false Max ttl ms remove max_ttl once autostop_requirement is matured name
string true Name is the name of the template. require_active_version
boolean false Require active version mandates that workspaces are built with the active template version. template_version_id
string 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_id
string false file_id
string false message
string false name
string false provisioner
string true storage_method
codersdk.ProvisionerStorageMethod true tags
object false » [any property]
string false template_id
string false Template ID optionally associates a version with a template. user_variable_values
array of codersdk.VariableValue false
Enumerated Values
Property Value provisioner
terraform
provisioner
echo
storage_method
file
codersdk.CreateTestAuditLogRequest
{
"action" : "create" ,
"additional_fields" : [0 ],
"build_reason" : "autostart" ,
"resource_id" : "4d5215ed-38bb-48ed-879a-fdb9ca58522f" ,
"resource_type" : "template" ,
"time" : "2019-08-24T14:15:22Z"
}
Properties
Enumerated Values
Property Value action
create
action
write
action
delete
action
start
action
stop
build_reason
autostart
build_reason
autostop
build_reason
initiator
resource_type
template
resource_type
template_version
resource_type
user
resource_type
workspace
resource_type
workspace_build
resource_type
git_ssh_key
resource_type
auditable_group
codersdk.CreateTokenRequest
{
"lifetime" : 0 ,
"scope" : "all" ,
"token_name" : "string"
}
Properties
Name Type Required Restrictions Description lifetime
integer false scope
codersdk.APIKeyScope false token_name
string false
Enumerated Values
Property Value scope
all
scope
application_connect
codersdk.CreateUserRequest
{
"disable_login" : true ,
"email" : "[email protected] " ,
"login_type" : "" ,
"organization_id" : "7c60d51f-b44e-4682-87d6-449835ea4de6" ,
"password" : "string" ,
"username" : "string"
}
Properties
Name Type Required Restrictions Description disable_login
boolean false Disable login sets the user's login type to 'none'. This prevents the user from being able to use a password or any other authentication method to login. Deprecated: Set UserLoginType=LoginTypeDisabled instead. email
string true login_type
codersdk.LoginType false Login type defaults to LoginTypePassword. organization_id
string false password
string false username
string 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_run
boolean false log_level
codersdk.ProvisionerLogLevel false Log level changes the default logging verbosity of a provider ("info" if empty). orphan
boolean false Orphan may be set for the Destroy transition. rich_parameter_values
array 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. state
array of integer false template_version_id
string false transition
codersdk.WorkspaceTransition true
Enumerated Values
Property Value log_level
debug
transition
create
transition
start
transition
stop
transition
delete
codersdk.CreateWorkspaceProxyRequest
{
"display_name" : "string" ,
"icon" : "string" ,
"name" : "string"
}
Properties
Name Type Required Restrictions Description display_name
string false icon
string false name
string 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
}
Properties
Name Type Required Restrictions Description automatic_updates
codersdk.AutomaticUpdates false autostart_schedule
string false name
string true rich_parameter_values
array of codersdk.WorkspaceBuildParameter false Rich parameter values allows for additional parameters to be provided during the initial provision. template_id
string false Template ID specifies which template should be used for creating the workspace. template_version_id
string false Template version ID can be used to specify a specific version of a template for creating the workspace. ttl_ms
integer false
codersdk.DAUEntry
{
"amount" : 0 ,
"date" : "2019-08-24T14:15:22Z"
}
Properties
Name Type Required Restrictions Description amount
integer false date
string false
codersdk.DAUsResponse
{
"entries" : [
{
"amount" : 0 ,
"date" : "2019-08-24T14:15:22Z"
}
],
"tz_hour_offset" : 0
}
Properties
Name Type Required Restrictions Description entries
array of codersdk.DAUEntry false tz_hour_offset
integer 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_direct
boolean false force_websockets
boolean false path
string false url
string false
codersdk.DERPRegion
{
"latency_ms" : 0 ,
"preferred" : true
}
Properties
Name Type Required Restrictions Description latency_ms
number false preferred
boolean 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 enable
boolean false region_code
string false region_id
integer false region_name
string false relay_url
clibase.URL false stun_addresses
array 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_cors
boolean false allow_path_app_sharing
boolean false allow_path_app_site_owner_access
boolean 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 ,
"autobuild_poll_interval" : 0 ,
"browser_only" : true ,
"cache_directory" : "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 ,
"disable_session_expiry_refresh" : 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" ,
"extra_token_keys" : ["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"
},
"max_session_expiry" : 0 ,
"max_token_lifetime" : 0 ,
"metrics_cache_refresh_interval" : 0 ,
"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" ,
"scopes" : ["string" ],
"sign_in_text" : "string" ,
"user_role_field" : "string" ,
"user_role_mapping" : {},
"user_roles_default" : ["string" ],
"username_field" : "string"
},
"pg_connection_url" : "string" ,
"pprof" : {
"address" : {
"host" : "string" ,
"port" : "string"
},
"enable" : true
},
"prometheus" : {
"address" : {
"host" : "string" ,
"port" : "string"
},
"collect_agent_stats" : true ,
"collect_db_metrics" : true ,
"enable" : true
},
"provisioner" : {
"daemon_poll_interval" : 0 ,
"daemon_poll_jitter" : 0 ,
"daemon_psk" : "string" ,
"daemons" : 0 ,
"daemons_echo" : true ,
"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 ,
"ssh_keygen_algorithm" : "string" ,
"strict_transport_security" : 0 ,
"strict_transport_security_options" : ["string" ],
"support" : {
"links" : {
"value" : [
{
"icon" : "string" ,
"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" : {}
}
},
"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" : {
"default_schedule" : "string"
},
"verbose" : true ,
"web_terminal_renderer" : "string" ,
"wgtunnel_host" : "string" ,
"wildcard_access_url" : {
"forceQuery" : true ,
"fragment" : "string" ,
"host" : "string" ,
"omitHost" : true ,
"opaque" : "string" ,
"path" : "string" ,
"rawFragment" : "string" ,
"rawPath" : "string" ,
"rawQuery" : "string" ,
"scheme" : "string" ,
"user" : {}
},
"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_from
string false Aggregated from is the time in which stats are aggregated from. This might be back in time a specific duration or interval. collected_at
string false Collected at is the time in which stats are collected at. next_update_at
string false Next update at is the time when the next batch of stats will be updated. session_count
codersdk.SessionCountDeploymentStats false workspaces
codersdk.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 ,
"autobuild_poll_interval" : 0 ,
"browser_only" : true ,
"cache_directory" : "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 ,
"disable_session_expiry_refresh" : 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" ,
"extra_token_keys" : ["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"
},
"max_session_expiry" : 0 ,
"max_token_lifetime" : 0 ,
"metrics_cache_refresh_interval" : 0 ,
"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" ,
"scopes" : ["string" ],
"sign_in_text" : "string" ,
"user_role_field" : "string" ,
"user_role_mapping" : {},
"user_roles_default" : ["string" ],
"username_field" : "string"
},
"pg_connection_url" : "string" ,
"pprof" : {
"address" : {
"host" : "string" ,
"port" : "string"
},
"enable" : true
},
"prometheus" : {
"address" : {
"host" : "string" ,
"port" : "string"
},
"collect_agent_stats" : true ,
"collect_db_metrics" : true ,
"enable" : true
},
"provisioner" : {
"daemon_poll_interval" : 0 ,
"daemon_poll_jitter" : 0 ,
"daemon_psk" : "string" ,
"daemons" : 0 ,
"daemons_echo" : true ,
"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 ,
"ssh_keygen_algorithm" : "string" ,
"strict_transport_security" : 0 ,
"strict_transport_security_options" : ["string" ],
"support" : {
"links" : {
"value" : [
{
"icon" : "string" ,
"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" : {}
}
},
"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" : {
"default_schedule" : "string"
},
"verbose" : true ,
"web_terminal_renderer" : "string" ,
"wgtunnel_host" : "string" ,
"wildcard_access_url" : {
"forceQuery" : true ,
"fragment" : "string" ,
"host" : "string" ,
"omitHost" : true ,
"opaque" : "string" ,
"path" : "string" ,
"rawFragment" : "string" ,
"rawPath" : "string" ,
"rawQuery" : "string" ,
"scheme" : "string" ,
"user" : {}
},
"write_config" : true
}
Properties
codersdk.DisplayApp
Properties
Enumerated Values
Value vscode
vscode_insiders
web_terminal
port_forwarding_helper
ssh_helper
codersdk.Entitlement
Properties
Enumerated Values
Value entitled
grace_period
not_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 errors
array of string false features
object false » [any property]
codersdk.Feature false has_license
boolean false refreshed_at
string false require_telemetry
boolean false trial
boolean false warnings
array of string false
codersdk.Experiment
Properties
Enumerated Values
Value moons
workspace_actions
tailnet_pg_coordinator
single_tailnet
template_autostop_requirement
deployment_health_page
template_update_policies
codersdk.ExternalAuth
{
"app_install_url" : "string" ,
"app_installable" : true ,
"authenticated" : true ,
"device" : true ,
"display_name" : "string" ,
"installations" : [
{
"account" : {
"avatar_url" : "string" ,
"login" : "string" ,
"name" : "string" ,
"profile_url" : "string"
},
"configure_url" : "string" ,
"id" : 0
}
],
"user" : {
"avatar_url" : "string" ,
"login" : "string" ,
"name" : "string" ,
"profile_url" : "string"
}
}
Properties
Name Type Required Restrictions Description app_install_url
string false App install URL is the URL to install the app. app_installable
boolean false App installable is true if the request for app installs was successful. authenticated
boolean false device
boolean false display_name
string false installations
array of codersdk.ExternalAuthAppInstallation false Installations are the installations that the user has access to. user
codersdk.ExternalAuthUser false User is the user that authenticated with the provider.
codersdk.ExternalAuthAppInstallation
{
"account" : {
"avatar_url" : "string" ,
"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" ,
"extra_token_keys" : ["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_url
string false app_installations_url
string false auth_url
string false client_id
string false device_code_url
string false device_flow
boolean false display_icon
string false Display icon is a URL to an icon to display in the UI. display_name
string false Display name is shown in the UI to identify the auth config. extra_token_keys
array of string false id
string false ID is a unique identifier for the auth config. It defaults to type
when not provided. no_refresh
boolean false regex
string 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. scopes
array of string false token_url
string false type
string false Type is the type of external auth config. validate_url
string false
codersdk.ExternalAuthDevice
{
"device_code" : "string" ,
"expires_in" : 0 ,
"interval" : 0 ,
"user_code" : "string" ,
"verification_uri" : "string"
}
Properties
Name Type Required Restrictions Description device_code
string false expires_in
integer false interval
integer false user_code
string false verification_uri
string 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 authenticated
boolean false created_at
string false expires
string false has_refresh_token
boolean false provider_id
string false updated_at
string false validate_error
string false
codersdk.ExternalAuthUser
{
"avatar_url" : "string" ,
"login" : "string" ,
"name" : "string" ,
"profile_url" : "string"
}
Properties
Name Type Required Restrictions Description avatar_url
string false login
string false name
string false profile_url
string false
codersdk.Feature
{
"actual" : 0 ,
"enabled" : true ,
"entitlement" : "entitled" ,
"limit" : 0
}
Properties
Name Type Required Restrictions Description actual
integer false enabled
boolean false entitlement
codersdk.Entitlement false limit
integer false
codersdk.GenerateAPIKeyResponse
Properties
Name Type Required Restrictions Description key
string 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" : "" ,
"organization_ids" : ["497f6eca-6276-4993-bfeb-53cbbbba6f08" ],
"roles" : [
{
"display_name" : "string" ,
"name" : "string"
}
],
"status" : "active" ,
"username" : "string"
}
]
}
Properties
Name Type Required Restrictions Description count
integer false users
array 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_at
string false public_key
string false updated_at
string false user_id
string 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" : "" ,
"organization_ids" : ["497f6eca-6276-4993-bfeb-53cbbbba6f08" ],
"roles" : [
{
"display_name" : "string" ,
"name" : "string"
}
],
"status" : "active" ,
"username" : "string"
}
],
"name" : "string" ,
"organization_id" : "7c60d51f-b44e-4682-87d6-449835ea4de6" ,
"quota_allowance" : 0 ,
"source" : "user"
}
Properties
Name Type Required Restrictions Description avatar_url
string false display_name
string false id
string false members
array of codersdk.User false name
string false organization_id
string false quota_allowance
integer false source
codersdk.GroupSource false
codersdk.GroupSource
Properties
Enumerated Values
codersdk.HealthSection
Properties
Enumerated Values
Value DERP
AccessURL
Websocket
Database
WorkspaceProxy
codersdk.HealthSettings
{
"dismissed_healthchecks" : ["DERP" ]
}
Properties
codersdk.Healthcheck
{
"interval" : 0 ,
"threshold" : 0 ,
"url" : "string"
}
Properties
Name Type Required Restrictions Description interval
integer false Interval specifies the seconds between each health check. threshold
integer false Threshold specifies the number of consecutive failed health checks before returning "unhealthy". url
string false URL specifies the endpoint to check for the app health.
codersdk.HealthcheckConfig
{
"refresh" : 0 ,
"threshold_database" : 0
}
Properties
Name Type Required Restrictions Description refresh
integer false threshold_database
integer false
codersdk.InsightsReportInterval
Properties
Enumerated Values
codersdk.IssueReconnectingPTYSignedTokenRequest
{
"agentID" : "bc282582-04f9-45ce-b904-3e3bfab66958" ,
"url" : "string"
}
Properties
Name Type Required Restrictions Description agentID
string true url
string 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_token
string 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 claims
object 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. id
integer false uploaded_at
string false uuid
string false
codersdk.LinkConfig
{
"icon" : "string" ,
"name" : "string" ,
"target" : "string"
}
Properties
Name Type Required Restrictions Description icon
string false name
string false target
string false
codersdk.LogLevel
Properties
Enumerated Values
Value trace
debug
info
warn
error
codersdk.LogSource
Properties
Enumerated Values
Value provisioner_daemon
provisioner
codersdk.LoggingConfig
{
"human" : "string" ,
"json" : "string" ,
"log_filter" : ["string" ],
"stackdriver" : "string"
}
Properties
Name Type Required Restrictions Description human
string false json
string false log_filter
array of string false stackdriver
string false
codersdk.LoginType
Properties
Enumerated Values
Value `` password
github
oidc
token
none
codersdk.LoginWithPasswordRequest
Properties
Name Type Required Restrictions Description email
string true password
string true
codersdk.LoginWithPasswordResponse
{
"session_token" : "string"
}
Properties
Name Type Required Restrictions Description session_token
string true
codersdk.MinimalUser
{
"avatar_url" : "http://example.com" ,
"id" : "497f6eca-6276-4993-bfeb-53cbbbba6f08" ,
"username" : "string"
}
Properties
Name Type Required Restrictions Description avatar_url
string false id
string true username
string true
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_everyone
boolean false allow_signups
boolean false allowed_orgs
array of string false allowed_teams
array of string false client_id
string false client_secret
string false enterprise_base_url
string 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_at
string false state_string
string false to_type
codersdk.LoginType false user_id
string false
codersdk.OIDCAuthMethod
{
"enabled" : true ,
"iconUrl" : "string" ,
"signInText" : "string"
}
Properties
Name Type Required Restrictions Description enabled
boolean false iconUrl
string false signInText
string 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" ,
"scopes" : ["string" ],
"sign_in_text" : "string" ,
"user_role_field" : "string" ,
"user_role_mapping" : {},
"user_roles_default" : ["string" ],
"username_field" : "string"
}
Properties
Name Type Required Restrictions Description allow_signups
boolean false auth_url_params
object false client_cert_file
string false client_id
string false client_key_file
string false Client key file & ClientCertFile are used in place of ClientSecret for PKI auth. client_secret
string false email_domain
array of string false email_field
string false group_allow_list
array of string false group_auto_create
boolean false group_mapping
object false group_regex_filter
clibase.Regexp false groups_field
string false icon_url
clibase.URL false ignore_email_verified
boolean false ignore_user_info
boolean false issuer_url
string false scopes
array of string false sign_in_text
string false user_role_field
string false user_role_mapping
object false user_roles_default
array of string false username_field
string false
codersdk.Organization
{
"created_at" : "2019-08-24T14:15:22Z" ,
"id" : "497f6eca-6276-4993-bfeb-53cbbbba6f08" ,
"name" : "string" ,
"updated_at" : "2019-08-24T14:15:22Z"
}
Properties
Name Type Required Restrictions Description created_at
string true id
string true name
string true updated_at
string true
codersdk.OrganizationMember
{
"created_at" : "2019-08-24T14:15:22Z" ,
"organization_id" : "7c60d51f-b44e-4682-87d6-449835ea4de6" ,
"roles" : [
{
"display_name" : "string" ,
"name" : "string"
}
],
"updated_at" : "2019-08-24T14:15:22Z" ,
"user_id" : "a169451c-8525-4352-b8ca-070dd449a1a5"
}
Properties
Name Type Required Restrictions Description created_at
string false organization_id
string false roles
array of codersdk.Role false updated_at
string false user_id
string false
codersdk.PatchGroupRequest
{
"add_users" : ["string" ],
"avatar_url" : "string" ,
"display_name" : "string" ,
"name" : "string" ,
"quota_allowance" : 0 ,
"remove_users" : ["string" ]
}