mirror of https://github.com/coder/coder.git
8301 lines
275 KiB
Go
8301 lines
275 KiB
Go
// Package apidoc GENERATED BY SWAG; DO NOT EDIT
|
|
// This file was generated by swaggo/swag
|
|
package apidoc
|
|
|
|
import "github.com/swaggo/swag"
|
|
|
|
const docTemplate = `{
|
|
"schemes": {{ marshal .Schemes }},
|
|
"swagger": "2.0",
|
|
"info": {
|
|
"description": "{{escape .Description}}",
|
|
"title": "{{.Title}}",
|
|
"termsOfService": "https://coder.com/legal/terms-of-service",
|
|
"contact": {
|
|
"name": "API Support",
|
|
"url": "https://coder.com",
|
|
"email": "support@coder.com"
|
|
},
|
|
"license": {
|
|
"name": "AGPL-3.0",
|
|
"url": "https://github.com/coder/coder/blob/main/LICENSE"
|
|
},
|
|
"version": "{{.Version}}"
|
|
},
|
|
"host": "{{.Host}}",
|
|
"basePath": "{{.BasePath}}",
|
|
"paths": {
|
|
"/": {
|
|
"get": {
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"General"
|
|
],
|
|
"summary": "API root handler",
|
|
"operationId": "api-root-handler",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.Response"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/appearance": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Enterprise"
|
|
],
|
|
"summary": "Get appearance",
|
|
"operationId": "get-appearance",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.AppearanceConfig"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"put": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Enterprise"
|
|
],
|
|
"summary": "Update appearance",
|
|
"operationId": "update-appearance",
|
|
"parameters": [
|
|
{
|
|
"description": "Update appearance request",
|
|
"name": "request",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.AppearanceConfig"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.AppearanceConfig"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/applications/auth-redirect": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"tags": [
|
|
"Applications"
|
|
],
|
|
"summary": "Redirect to URI with encrypted API key",
|
|
"operationId": "redirect-to-uri-with-encrypted-api-key",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "Redirect destination",
|
|
"name": "redirect_uri",
|
|
"in": "query"
|
|
}
|
|
],
|
|
"responses": {
|
|
"307": {
|
|
"description": "Temporary Redirect"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/applications/host": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Applications"
|
|
],
|
|
"summary": "Get applications host",
|
|
"operationId": "get-applications-host",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.GetAppHostResponse"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/audit": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Audit"
|
|
],
|
|
"summary": "Get audit logs",
|
|
"operationId": "get-audit-logs",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "Search query",
|
|
"name": "q",
|
|
"in": "query",
|
|
"required": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "After ID",
|
|
"name": "after_id",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"description": "Page limit",
|
|
"name": "limit",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"description": "Page offset",
|
|
"name": "offset",
|
|
"in": "query"
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.AuditLogResponse"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/audit/testgenerate": {
|
|
"post": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Audit"
|
|
],
|
|
"summary": "Generate fake audit log",
|
|
"operationId": "generate-fake-audit-log",
|
|
"parameters": [
|
|
{
|
|
"description": "Audit log request",
|
|
"name": "request",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.CreateTestAuditLogRequest"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"204": {
|
|
"description": "No Content"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/authcheck": {
|
|
"post": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Authorization"
|
|
],
|
|
"summary": "Check authorization",
|
|
"operationId": "check-authorization",
|
|
"parameters": [
|
|
{
|
|
"description": "Authorization request",
|
|
"name": "request",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.AuthorizationRequest"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.AuthorizationResponse"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/buildinfo": {
|
|
"get": {
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"General"
|
|
],
|
|
"summary": "Build info",
|
|
"operationId": "build-info",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.BuildInfoResponse"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/config/deployment": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"General"
|
|
],
|
|
"summary": "Get deployment config",
|
|
"operationId": "get-deployment-config",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfig"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/csp/reports": {
|
|
"post": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"General"
|
|
],
|
|
"summary": "Report CSP violations",
|
|
"operationId": "report-csp-violations",
|
|
"parameters": [
|
|
{
|
|
"description": "Violation report",
|
|
"name": "request",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/coderd.cspViolation"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/entitlements": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Enterprise"
|
|
],
|
|
"summary": "Get entitlements",
|
|
"operationId": "get-entitlements",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.Entitlements"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/files": {
|
|
"post": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"description": "Swagger notice: Swagger 2.0 doesn't support file upload with a ` + "`" + `content-type` + "`" + ` different than ` + "`" + `application/x-www-form-urlencoded` + "`" + `.",
|
|
"consumes": [
|
|
"application/x-tar"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Files"
|
|
],
|
|
"summary": "Upload file",
|
|
"operationId": "upload-file",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"default": "application/x-tar",
|
|
"description": "Content-Type must be ` + "`" + `application/x-tar` + "`" + `",
|
|
"name": "Content-Type",
|
|
"in": "header",
|
|
"required": true
|
|
},
|
|
{
|
|
"type": "file",
|
|
"description": "File to be uploaded",
|
|
"name": "file",
|
|
"in": "formData",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"201": {
|
|
"description": "Created",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.UploadResponse"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/files/{fileID}": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"tags": [
|
|
"Files"
|
|
],
|
|
"summary": "Get file by ID",
|
|
"operationId": "get-file-by-id",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "File ID",
|
|
"name": "fileID",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/groups": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Enterprise"
|
|
],
|
|
"summary": "Get groups",
|
|
"operationId": "get-groups",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Organization ID",
|
|
"name": "organization",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/codersdk.Group"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/groups/{group}": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Enterprise"
|
|
],
|
|
"summary": "Get group by name",
|
|
"operationId": "get-group-by-name",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "Group name",
|
|
"name": "group",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.Group"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Enterprise"
|
|
],
|
|
"summary": "Delete group by name",
|
|
"operationId": "delete-group-by-name",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "Group name",
|
|
"name": "group",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.Group"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"patch": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Enterprise"
|
|
],
|
|
"summary": "Update group by name",
|
|
"operationId": "update-group-by-name",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "Group name",
|
|
"name": "group",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.Group"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/licenses": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Enterprise"
|
|
],
|
|
"summary": "Get licenses",
|
|
"operationId": "get-licenses",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/codersdk.License"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Organizations"
|
|
],
|
|
"summary": "Add new license",
|
|
"operationId": "add-new-license",
|
|
"parameters": [
|
|
{
|
|
"description": "Add license request",
|
|
"name": "request",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.AddLicenseRequest"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"201": {
|
|
"description": "Created",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.License"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/licenses/{id}": {
|
|
"delete": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Enterprise"
|
|
],
|
|
"summary": "Delete license",
|
|
"operationId": "delete-license",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "number",
|
|
"description": "License ID",
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/organizations": {
|
|
"post": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Organizations"
|
|
],
|
|
"summary": "Create organization",
|
|
"operationId": "create-organization",
|
|
"parameters": [
|
|
{
|
|
"description": "Create organization request",
|
|
"name": "request",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.CreateOrganizationRequest"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"201": {
|
|
"description": "Created",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.Organization"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/organizations/{organization}": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Organizations"
|
|
],
|
|
"summary": "Get organization by ID",
|
|
"operationId": "get-organization-by-id",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Organization ID",
|
|
"name": "organization",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.Organization"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/organizations/{organization}/groups": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Enterprise"
|
|
],
|
|
"summary": "Get groups by organization",
|
|
"operationId": "get-groups-by-organization",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Organization ID",
|
|
"name": "organization",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/codersdk.Group"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Templates"
|
|
],
|
|
"summary": "Create group for organization",
|
|
"operationId": "create-group-for-organization",
|
|
"parameters": [
|
|
{
|
|
"description": "Create group request",
|
|
"name": "request",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.CreateGroupRequest"
|
|
}
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "Organization ID",
|
|
"name": "organization",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"201": {
|
|
"description": "Created",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.Group"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/organizations/{organization}/groups/{groupName}": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Enterprise"
|
|
],
|
|
"summary": "Get group by organization and group name",
|
|
"operationId": "get-group-by-organization-and-group-name",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Organization ID",
|
|
"name": "organization",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "Group name",
|
|
"name": "groupName",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.Group"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/organizations/{organization}/members/roles": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Members"
|
|
],
|
|
"summary": "Get member roles by organization",
|
|
"operationId": "get-member-roles-by-organization",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Organization ID",
|
|
"name": "organization",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/codersdk.AssignableRoles"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/organizations/{organization}/members/{user}/roles": {
|
|
"put": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Members"
|
|
],
|
|
"summary": "Assign role to organization member",
|
|
"operationId": "assign-role-to-organization-member",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "Organization ID",
|
|
"name": "organization",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "User ID, name, or me",
|
|
"name": "user",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"description": "Update roles request",
|
|
"name": "request",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.UpdateRoles"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.OrganizationMember"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/organizations/{organization}/members/{user}/workspaces": {
|
|
"post": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Workspaces"
|
|
],
|
|
"summary": "Create user workspace by organization",
|
|
"operationId": "create-user-workspace-by-organization",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Organization ID",
|
|
"name": "organization",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "Username, UUID, or me",
|
|
"name": "user",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.Workspace"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/organizations/{organization}/provisionerdaemons": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Enterprise"
|
|
],
|
|
"summary": "Get provisioner daemons",
|
|
"operationId": "get-provisioner-daemons",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Organization ID",
|
|
"name": "organization",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/codersdk.ProvisionerDaemon"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/organizations/{organization}/provisionerdaemons/serve": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"tags": [
|
|
"Enterprise"
|
|
],
|
|
"summary": "Serve provisioner daemon",
|
|
"operationId": "serve-provisioner-daemon",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Organization ID",
|
|
"name": "organization",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"101": {
|
|
"description": "Switching Protocols"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/organizations/{organization}/templates": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Templates"
|
|
],
|
|
"summary": "Get templates by organization",
|
|
"operationId": "get-templates-by-organization",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Organization ID",
|
|
"name": "organization",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/codersdk.Template"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Templates"
|
|
],
|
|
"summary": "Create template by organization",
|
|
"operationId": "create-template-by-organization",
|
|
"parameters": [
|
|
{
|
|
"description": "Request body",
|
|
"name": "request",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.CreateTemplateRequest"
|
|
}
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "Organization ID",
|
|
"name": "organization",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.Template"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/organizations/{organization}/templates/examples": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Templates"
|
|
],
|
|
"summary": "Get template examples by organization",
|
|
"operationId": "get-template-examples-by-organization",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Organization ID",
|
|
"name": "organization",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/codersdk.TemplateExample"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/organizations/{organization}/templates/{templatename}": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Templates"
|
|
],
|
|
"summary": "Get templates by organization and template name",
|
|
"operationId": "get-templates-by-organization-and-template-name",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Organization ID",
|
|
"name": "organization",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "Template name",
|
|
"name": "templatename",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.Template"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/organizations/{organization}/templateversions": {
|
|
"post": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Templates"
|
|
],
|
|
"summary": "Create template version by organization",
|
|
"operationId": "create-template-version-by-organization",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Organization ID",
|
|
"name": "organization",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"description": "Create template version request",
|
|
"name": "request",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.CreateTemplateVersionDryRunRequest"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"201": {
|
|
"description": "Created",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.TemplateVersion"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/organizations/{organization}/templateversions/{templateversionname}": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Templates"
|
|
],
|
|
"summary": "Get template version by organization and name",
|
|
"operationId": "get-template-version-by-organization-and-name",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Organization ID",
|
|
"name": "organization",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "Template version name",
|
|
"name": "templateversionname",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.TemplateVersion"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/organizations/{organization}/templateversions/{templateversionname}/previous": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Templates"
|
|
],
|
|
"summary": "Get previous template version by organization and name",
|
|
"operationId": "get-previous-template-version-by-organization-and-name",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Organization ID",
|
|
"name": "organization",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "Template version name",
|
|
"name": "templateversionname",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.TemplateVersion"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/parameters/{scope}/{id}": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Parameters"
|
|
],
|
|
"summary": "Get parameters",
|
|
"operationId": "get-parameters",
|
|
"parameters": [
|
|
{
|
|
"enum": [
|
|
"template",
|
|
"workspace",
|
|
"import_job"
|
|
],
|
|
"type": "string",
|
|
"description": "Scope",
|
|
"name": "scope",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "ID",
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/codersdk.Parameter"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Parameters"
|
|
],
|
|
"summary": "Create parameter",
|
|
"operationId": "create-parameter",
|
|
"parameters": [
|
|
{
|
|
"description": "Parameter request",
|
|
"name": "request",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.CreateParameterRequest"
|
|
}
|
|
},
|
|
{
|
|
"enum": [
|
|
"template",
|
|
"workspace",
|
|
"import_job"
|
|
],
|
|
"type": "string",
|
|
"description": "Scope",
|
|
"name": "scope",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "ID",
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"201": {
|
|
"description": "Created",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.Parameter"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/parameters/{scope}/{id}/{name}": {
|
|
"delete": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Parameters"
|
|
],
|
|
"summary": "Delete parameter",
|
|
"operationId": "delete-parameter",
|
|
"parameters": [
|
|
{
|
|
"enum": [
|
|
"template",
|
|
"workspace",
|
|
"import_job"
|
|
],
|
|
"type": "string",
|
|
"description": "Scope",
|
|
"name": "scope",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "ID",
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "Name",
|
|
"name": "name",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.Response"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/replicas": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Enterprise"
|
|
],
|
|
"summary": "Get active replicas",
|
|
"operationId": "get-active-replicas",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/codersdk.Replica"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/scim/v2/Users": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/scim+json"
|
|
],
|
|
"tags": [
|
|
"Enterprise"
|
|
],
|
|
"summary": "SCIM 2.0: Get users",
|
|
"operationId": "scim-get-users",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Enterprise"
|
|
],
|
|
"summary": "SCIM 2.0: Create new user",
|
|
"operationId": "scim-create-new-user",
|
|
"parameters": [
|
|
{
|
|
"description": "New user",
|
|
"name": "request",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/coderd.SCIMUser"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/coderd.SCIMUser"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/scim/v2/Users/{id}": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/scim+json"
|
|
],
|
|
"tags": [
|
|
"Enterprise"
|
|
],
|
|
"summary": "SCIM 2.0: Get user by ID",
|
|
"operationId": "scim-get-user-by-id",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "User ID",
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"404": {
|
|
"description": "Not Found"
|
|
}
|
|
}
|
|
},
|
|
"patch": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/scim+json"
|
|
],
|
|
"tags": [
|
|
"Enterprise"
|
|
],
|
|
"summary": "SCIM 2.0: Update user account",
|
|
"operationId": "scim-update-user-status",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "User ID",
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"description": "Update user request",
|
|
"name": "request",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/coderd.SCIMUser"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.User"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/templates/{template}": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Templates"
|
|
],
|
|
"summary": "Get template metadata by ID",
|
|
"operationId": "get-template-metadata-by-id",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Template ID",
|
|
"name": "template",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.Template"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Templates"
|
|
],
|
|
"summary": "Delete template by ID",
|
|
"operationId": "delete-template-by-id",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Template ID",
|
|
"name": "template",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.Response"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"patch": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Templates"
|
|
],
|
|
"summary": "Update template metadata by ID",
|
|
"operationId": "update-template-metadata-by-id",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Template ID",
|
|
"name": "template",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.Template"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/templates/{template}/acl": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Enterprise"
|
|
],
|
|
"summary": "Get template ACLs",
|
|
"operationId": "get-template-acls",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Template ID",
|
|
"name": "template",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/codersdk.TemplateUser"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"patch": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Enterprise"
|
|
],
|
|
"summary": "Update template ACL",
|
|
"operationId": "update-template-acl",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Template ID",
|
|
"name": "template",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"description": "Update template request",
|
|
"name": "request",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.UpdateTemplateACL"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.Response"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/templates/{template}/daus": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Templates"
|
|
],
|
|
"summary": "Get template DAUs by ID",
|
|
"operationId": "get-template-daus-by-id",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Template ID",
|
|
"name": "template",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.TemplateDAUsResponse"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/templates/{template}/versions": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Templates"
|
|
],
|
|
"summary": "List template versions by template ID",
|
|
"operationId": "list-template-versions-by-template-id",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Template ID",
|
|
"name": "template",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "After ID",
|
|
"name": "after_id",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"description": "Page limit",
|
|
"name": "limit",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"description": "Page offset",
|
|
"name": "offset",
|
|
"in": "query"
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/codersdk.TemplateVersion"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"patch": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Templates"
|
|
],
|
|
"summary": "Update active template version by template ID",
|
|
"operationId": "update-active-template-version-by-template-id",
|
|
"parameters": [
|
|
{
|
|
"description": "Modified template version",
|
|
"name": "request",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.UpdateActiveTemplateVersion"
|
|
}
|
|
},
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Template ID",
|
|
"name": "template",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.Response"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/templates/{template}/versions/{templateversionname}": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Templates"
|
|
],
|
|
"summary": "Get template version by template ID and name",
|
|
"operationId": "get-template-version-by-template-id-and-name",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Template ID",
|
|
"name": "template",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "Template version name",
|
|
"name": "templateversionname",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/codersdk.TemplateVersion"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/templateversions/{templateversion}": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Templates"
|
|
],
|
|
"summary": "Get template version by ID",
|
|
"operationId": "get-template-version-by-id",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Template version ID",
|
|
"name": "templateversion",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.TemplateVersion"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/templateversions/{templateversion}/cancel": {
|
|
"patch": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Templates"
|
|
],
|
|
"summary": "Cancel template version by ID",
|
|
"operationId": "cancel-template-version-by-id",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Template version ID",
|
|
"name": "templateversion",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.Response"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/templateversions/{templateversion}/dry-run": {
|
|
"post": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Templates"
|
|
],
|
|
"summary": "Create template version dry-run",
|
|
"operationId": "create-template-version-dry-run",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Template version ID",
|
|
"name": "templateversion",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"description": "Dry-run request",
|
|
"name": "request",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.CreateTemplateVersionDryRunRequest"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"201": {
|
|
"description": "Created",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.ProvisionerJob"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/templateversions/{templateversion}/dry-run/{jobID}": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Templates"
|
|
],
|
|
"summary": "Get template version dry-run by job ID",
|
|
"operationId": "get-template-version-dry-run-by-job-id",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Template version ID",
|
|
"name": "templateversion",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Job ID",
|
|
"name": "jobID",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.ProvisionerJob"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/templateversions/{templateversion}/dry-run/{jobID}/cancel": {
|
|
"patch": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Templates"
|
|
],
|
|
"summary": "Cancel template version dry-run by job ID",
|
|
"operationId": "cancel-template-version-dry-run-by-job-id",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Job ID",
|
|
"name": "jobID",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Template version ID",
|
|
"name": "templateversion",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.Response"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/templateversions/{templateversion}/dry-run/{jobID}/logs": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Templates"
|
|
],
|
|
"summary": "Get template version dry-run logs by job ID",
|
|
"operationId": "get-template-version-dry-run-logs-by-job-id",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Template version ID",
|
|
"name": "templateversion",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Job ID",
|
|
"name": "jobID",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"description": "Before Unix timestamp",
|
|
"name": "before",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"description": "After Unix timestamp",
|
|
"name": "after",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "boolean",
|
|
"description": "Follow log stream",
|
|
"name": "follow",
|
|
"in": "query"
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/codersdk.ProvisionerJobLog"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/templateversions/{templateversion}/dry-run/{jobID}/resources": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Templates"
|
|
],
|
|
"summary": "Get template version dry-run resources by job ID",
|
|
"operationId": "get-template-version-dry-run-resources-by-job-id",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Template version ID",
|
|
"name": "templateversion",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Job ID",
|
|
"name": "jobID",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/codersdk.WorkspaceResource"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/templateversions/{templateversion}/logs": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Templates"
|
|
],
|
|
"summary": "Get logs by template version",
|
|
"operationId": "get-logs-by-template-version",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Template version ID",
|
|
"name": "templateversion",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"description": "Before Unix timestamp",
|
|
"name": "before",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"description": "After Unix timestamp",
|
|
"name": "after",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "boolean",
|
|
"description": "Follow log stream",
|
|
"name": "follow",
|
|
"in": "query"
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/codersdk.ProvisionerJobLog"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/templateversions/{templateversion}/parameters": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Templates"
|
|
],
|
|
"summary": "Get parameters by template version",
|
|
"operationId": "get-parameters-by-template-version",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Template version ID",
|
|
"name": "templateversion",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/parameter.ComputedValue"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/templateversions/{templateversion}/resources": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Templates"
|
|
],
|
|
"summary": "Get resources by template version",
|
|
"operationId": "get-resources-by-template-version",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Template version ID",
|
|
"name": "templateversion",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/codersdk.WorkspaceResource"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/templateversions/{templateversion}/rich-parameters": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Templates"
|
|
],
|
|
"summary": "Get rich parameters by template version",
|
|
"operationId": "get-rich-parameters-by-template-version",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Template version ID",
|
|
"name": "templateversion",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/parameter.ComputedValue"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/templateversions/{templateversion}/schema": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Templates"
|
|
],
|
|
"summary": "Get schema by template version",
|
|
"operationId": "get-schema-by-template-version",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Template version ID",
|
|
"name": "templateversion",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/codersdk.ParameterSchema"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/updatecheck": {
|
|
"get": {
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"General"
|
|
],
|
|
"summary": "Update check",
|
|
"operationId": "update-check",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.UpdateCheckResponse"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/users": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Users"
|
|
],
|
|
"summary": "Get users",
|
|
"operationId": "get-users",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "Search query",
|
|
"name": "q",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "After ID",
|
|
"name": "after_id",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"description": "Page limit",
|
|
"name": "limit",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"description": "Page offset",
|
|
"name": "offset",
|
|
"in": "query"
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.GetUsersResponse"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Users"
|
|
],
|
|
"summary": "Create new user",
|
|
"operationId": "create-new-user",
|
|
"parameters": [
|
|
{
|
|
"description": "Create user request",
|
|
"name": "request",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.CreateUserRequest"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"201": {
|
|
"description": "Created",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.User"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/users/authmethods": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Users"
|
|
],
|
|
"summary": "Get authentication methods",
|
|
"operationId": "get-authentication-methods",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.AuthMethods"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/users/first": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Users"
|
|
],
|
|
"summary": "Check initial user created",
|
|
"operationId": "check-initial-user-created",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.Response"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Users"
|
|
],
|
|
"summary": "Create initial user",
|
|
"operationId": "create-initial-user",
|
|
"parameters": [
|
|
{
|
|
"description": "First user request",
|
|
"name": "request",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.CreateFirstUserRequest"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"201": {
|
|
"description": "Created",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.CreateFirstUserResponse"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/users/login": {
|
|
"post": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Authorization"
|
|
],
|
|
"summary": "Log in user",
|
|
"operationId": "log-in-user",
|
|
"parameters": [
|
|
{
|
|
"description": "Login request",
|
|
"name": "request",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.LoginWithPasswordRequest"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"201": {
|
|
"description": "Created",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.LoginWithPasswordResponse"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/users/logout": {
|
|
"post": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Users"
|
|
],
|
|
"summary": "Log out user",
|
|
"operationId": "log-out-user",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.Response"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/users/oauth2/github/callback": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"tags": [
|
|
"Users"
|
|
],
|
|
"summary": "OAuth 2.0 GitHub Callback",
|
|
"operationId": "oauth-20-github-callback",
|
|
"responses": {
|
|
"307": {
|
|
"description": "Temporary Redirect"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/users/oidc/callback": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"tags": [
|
|
"Users"
|
|
],
|
|
"summary": "OpenID Connect Callback",
|
|
"operationId": "openid-connect-callback",
|
|
"responses": {
|
|
"307": {
|
|
"description": "Temporary Redirect"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/users/roles": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Members"
|
|
],
|
|
"summary": "Get site member roles",
|
|
"operationId": "get-site-member-roles",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/codersdk.AssignableRoles"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/users/{user}": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Users"
|
|
],
|
|
"summary": "Get user by name",
|
|
"operationId": "get-user-by-name",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "User ID, name, or me",
|
|
"name": "user",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.User"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Users"
|
|
],
|
|
"summary": "Delete user",
|
|
"operationId": "delete-user",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "User ID, name, or me",
|
|
"name": "user",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.User"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/users/{user}/gitsshkey": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Users"
|
|
],
|
|
"summary": "Get user Git SSH key",
|
|
"operationId": "get-user-git-ssh-key",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "User ID, name, or me",
|
|
"name": "user",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.GitSSHKey"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"put": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Users"
|
|
],
|
|
"summary": "Regenerate user SSH key",
|
|
"operationId": "regenerate-user-ssh-key",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "User ID, name, or me",
|
|
"name": "user",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.GitSSHKey"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/users/{user}/keys": {
|
|
"post": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Users"
|
|
],
|
|
"summary": "Create new session key",
|
|
"operationId": "create-new-session-key",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "User ID, name, or me",
|
|
"name": "user",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"201": {
|
|
"description": "Created",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.GenerateAPIKeyResponse"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/users/{user}/keys/tokens": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Users"
|
|
],
|
|
"summary": "Get user tokens",
|
|
"operationId": "get-user-tokens",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "User ID, name, or me",
|
|
"name": "user",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/codersdk.APIKey"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Users"
|
|
],
|
|
"summary": "Create token API key",
|
|
"operationId": "create-token-api-key",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "User ID, name, or me",
|
|
"name": "user",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"description": "Create token request",
|
|
"name": "request",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.CreateTokenRequest"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"201": {
|
|
"description": "Created",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.GenerateAPIKeyResponse"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/users/{user}/keys/{keyid}": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Users"
|
|
],
|
|
"summary": "Get API key",
|
|
"operationId": "get-api-key",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "User ID, name, or me",
|
|
"name": "user",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Key ID",
|
|
"name": "keyid",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.APIKey"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"tags": [
|
|
"Users"
|
|
],
|
|
"summary": "Delete API key",
|
|
"operationId": "delete-api-key",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "User ID, name, or me",
|
|
"name": "user",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Key ID",
|
|
"name": "keyid",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"204": {
|
|
"description": "No Content"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/users/{user}/organizations": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Users"
|
|
],
|
|
"summary": "Get organizations by user",
|
|
"operationId": "get-organizations-by-user",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "User ID, name, or me",
|
|
"name": "user",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/codersdk.Organization"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/users/{user}/organizations/{organizationname}": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Users"
|
|
],
|
|
"summary": "Get organization by user and organization name",
|
|
"operationId": "get-organization-by-user-and-organization-name",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "User ID, name, or me",
|
|
"name": "user",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "Organization name",
|
|
"name": "organizationname",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.Organization"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/users/{user}/password": {
|
|
"put": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Users"
|
|
],
|
|
"summary": "Update user password",
|
|
"operationId": "update-user-password",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "User ID, name, or me",
|
|
"name": "user",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"description": "Update password request",
|
|
"name": "request",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.UpdateUserPasswordRequest"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"204": {
|
|
"description": "No Content"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/users/{user}/profile": {
|
|
"put": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Users"
|
|
],
|
|
"summary": "Update user profile",
|
|
"operationId": "update-user-profile",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "User ID, name, or me",
|
|
"name": "user",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"description": "Updated profile",
|
|
"name": "request",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.UpdateUserProfileRequest"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.User"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/users/{user}/roles": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Users"
|
|
],
|
|
"summary": "Get user roles",
|
|
"operationId": "get-user-roles",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "User ID, name, or me",
|
|
"name": "user",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.User"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"put": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Users"
|
|
],
|
|
"summary": "Assign role to user",
|
|
"operationId": "assign-role-to-user",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "User ID, name, or me",
|
|
"name": "user",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"description": "Update roles request",
|
|
"name": "request",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.UpdateRoles"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.User"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/users/{user}/status/activate": {
|
|
"put": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Users"
|
|
],
|
|
"summary": "Activate user account",
|
|
"operationId": "activate-user-account",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "User ID, name, or me",
|
|
"name": "user",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.User"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/users/{user}/status/suspend": {
|
|
"put": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Users"
|
|
],
|
|
"summary": "Suspend user account",
|
|
"operationId": "suspend-user-account",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "User ID, name, or me",
|
|
"name": "user",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.User"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/users/{user}/workspace/{workspacename}": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Workspaces"
|
|
],
|
|
"summary": "Get workspace metadata by user and workspace name",
|
|
"operationId": "get-workspace-metadata-by-user-and-workspace-name",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "User ID, name, or me",
|
|
"name": "user",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "Workspace name",
|
|
"name": "workspacename",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"type": "boolean",
|
|
"description": "Return data instead of HTTP 404 if the workspace is deleted",
|
|
"name": "include_deleted",
|
|
"in": "query"
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.Workspace"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/users/{user}/workspace/{workspacename}/builds/{buildnumber}": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Builds"
|
|
],
|
|
"summary": "Get workspace build by user, workspace name, and build number",
|
|
"operationId": "get-workspace-build-by-user-workspace-name-and-build-number",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "User ID, name, or me",
|
|
"name": "user",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "Workspace name",
|
|
"name": "workspacename",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"format": "number",
|
|
"description": "Build number",
|
|
"name": "buildnumber",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.WorkspaceBuild"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/workspace-quota/{user}": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Enterprise"
|
|
],
|
|
"summary": "Get workspace quota by user",
|
|
"operationId": "get-workspace-quota-by-user",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "User ID, name, or me",
|
|
"name": "user",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.WorkspaceQuota"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/workspaceagents/aws-instance-identity": {
|
|
"post": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Agents"
|
|
],
|
|
"summary": "Authenticate agent on AWS instance",
|
|
"operationId": "authenticate-agent-on-aws-instance",
|
|
"parameters": [
|
|
{
|
|
"description": "Instance identity token",
|
|
"name": "request",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.AWSInstanceIdentityToken"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.WorkspaceAgentAuthenticateResponse"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/workspaceagents/azure-instance-identity": {
|
|
"post": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Agents"
|
|
],
|
|
"summary": "Authenticate agent on Azure instance",
|
|
"operationId": "authenticate-agent-on-azure-instance",
|
|
"parameters": [
|
|
{
|
|
"description": "Instance identity token",
|
|
"name": "request",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.AzureInstanceIdentityToken"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.WorkspaceAgentAuthenticateResponse"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/workspaceagents/google-instance-identity": {
|
|
"post": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Agents"
|
|
],
|
|
"summary": "Authenticate agent on Google Cloud instance",
|
|
"operationId": "authenticate-agent-on-google-cloud-instance",
|
|
"parameters": [
|
|
{
|
|
"description": "Instance identity token",
|
|
"name": "request",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.GoogleInstanceIdentityToken"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.WorkspaceAgentAuthenticateResponse"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/workspaceagents/me/app-health": {
|
|
"post": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Agents"
|
|
],
|
|
"summary": "Submit workspace agent application health",
|
|
"operationId": "submit-workspace-agent-application-health",
|
|
"parameters": [
|
|
{
|
|
"description": "Application health request",
|
|
"name": "request",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.PostWorkspaceAppHealthsRequest"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/workspaceagents/me/coordinate": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"description": "It accepts a WebSocket connection to an agent that listens to\nincoming connections and publishes node updates.",
|
|
"tags": [
|
|
"Agents"
|
|
],
|
|
"summary": "Coordinate workspace agent via Tailnet",
|
|
"operationId": "coordinate-workspace-agent-via-tailnet",
|
|
"responses": {
|
|
"101": {
|
|
"description": "Switching Protocols"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/workspaceagents/me/gitauth": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Agents"
|
|
],
|
|
"summary": "Get workspace agent Git auth",
|
|
"operationId": "get-workspace-agent-git-auth",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uri",
|
|
"description": "Git URL",
|
|
"name": "url",
|
|
"in": "query",
|
|
"required": true
|
|
},
|
|
{
|
|
"type": "boolean",
|
|
"description": "Wait for a new token to be issued",
|
|
"name": "listen",
|
|
"in": "query"
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.WorkspaceAgentGitAuthResponse"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/workspaceagents/me/gitsshkey": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Agents"
|
|
],
|
|
"summary": "Get workspace agent Git SSH key",
|
|
"operationId": "get-workspace-agent-git-ssh-key",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.AgentGitSSHKey"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/workspaceagents/me/metadata": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Agents"
|
|
],
|
|
"summary": "Get authorized workspace agent metadata",
|
|
"operationId": "get-authorized-workspace-agent-metadata",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.WorkspaceAgentMetadata"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/workspaceagents/me/report-stats": {
|
|
"post": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Agents"
|
|
],
|
|
"summary": "Submit workspace agent stats",
|
|
"operationId": "submit-workspace-agent-stats",
|
|
"parameters": [
|
|
{
|
|
"description": "Stats request",
|
|
"name": "request",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.AgentStats"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.AgentStatsResponse"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/workspaceagents/me/version": {
|
|
"post": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Agents"
|
|
],
|
|
"summary": "Submit workspace agent version",
|
|
"operationId": "submit-workspace-agent-version",
|
|
"parameters": [
|
|
{
|
|
"description": "Version request",
|
|
"name": "request",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.PostWorkspaceAgentVersionRequest"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
},
|
|
"x-apidocgen": {
|
|
"skip": true
|
|
}
|
|
}
|
|
},
|
|
"/workspaceagents/{workspaceagent}": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Agents"
|
|
],
|
|
"summary": "Get workspace agent by ID",
|
|
"operationId": "get-workspace-agent-by-id",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Workspace agent ID",
|
|
"name": "workspaceagent",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.WorkspaceAgent"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/workspaceagents/{workspaceagent}/connection": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Agents"
|
|
],
|
|
"summary": "Get connection info for workspace agent",
|
|
"operationId": "get-connection-info-for-workspace-agent",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Workspace agent ID",
|
|
"name": "workspaceagent",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.WorkspaceAgentConnectionInfo"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/workspaceagents/{workspaceagent}/coordinate": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"tags": [
|
|
"Agents"
|
|
],
|
|
"summary": "Coordinate workspace agent",
|
|
"operationId": "coordinate-workspace-agent",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Workspace agent ID",
|
|
"name": "workspaceagent",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"101": {
|
|
"description": "Switching Protocols"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/workspaceagents/{workspaceagent}/listening-ports": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Agents"
|
|
],
|
|
"summary": "Get listening ports for workspace agent",
|
|
"operationId": "get-listening-ports-for-workspace-agent",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Workspace agent ID",
|
|
"name": "workspaceagent",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.ListeningPortsResponse"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/workspaceagents/{workspaceagent}/pty": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"tags": [
|
|
"Agents"
|
|
],
|
|
"summary": "Open PTY to workspace agent",
|
|
"operationId": "open-pty-to-workspace-agent",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Workspace agent ID",
|
|
"name": "workspaceagent",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"101": {
|
|
"description": "Switching Protocols"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/workspacebuilds/{workspacebuild}": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Builds"
|
|
],
|
|
"summary": "Get workspace build",
|
|
"operationId": "get-workspace-build",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "Workspace build ID",
|
|
"name": "workspacebuild",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.WorkspaceBuild"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/workspacebuilds/{workspacebuild}/cancel": {
|
|
"patch": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Builds"
|
|
],
|
|
"summary": "Cancel workspace build",
|
|
"operationId": "cancel-workspace-build",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "Workspace build ID",
|
|
"name": "workspacebuild",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.Response"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/workspacebuilds/{workspacebuild}/logs": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Builds"
|
|
],
|
|
"summary": "Get workspace build logs",
|
|
"operationId": "get-workspace-build-logs",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "Workspace build ID",
|
|
"name": "workspacebuild",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"description": "Before Unix timestamp",
|
|
"name": "before",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"description": "After Unix timestamp",
|
|
"name": "after",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "boolean",
|
|
"description": "Follow log stream",
|
|
"name": "follow",
|
|
"in": "query"
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/codersdk.ProvisionerJobLog"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/workspacebuilds/{workspacebuild}/parameters": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Builds"
|
|
],
|
|
"summary": "Get build parameters for workspace build",
|
|
"operationId": "get-build-parameters-for-workspace-build",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "Workspace build ID",
|
|
"name": "workspacebuild",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/codersdk.WorkspaceBuildParameter"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/workspacebuilds/{workspacebuild}/resources": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Builds"
|
|
],
|
|
"summary": "Get workspace resources for workspace build",
|
|
"operationId": "get-workspace-resources-for-workspace-build",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "Workspace build ID",
|
|
"name": "workspacebuild",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/codersdk.WorkspaceResource"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/workspacebuilds/{workspacebuild}/state": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Builds"
|
|
],
|
|
"summary": "Get provisioner state for workspace build",
|
|
"operationId": "get-provisioner-state-for-workspace-build",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "Workspace build ID",
|
|
"name": "workspacebuild",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.WorkspaceBuild"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/workspaces": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Workspaces"
|
|
],
|
|
"summary": "List workspaces",
|
|
"operationId": "list-workspaces",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "Filter by owner username",
|
|
"name": "owner",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "Filter by template name",
|
|
"name": "template",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "Filter with partial-match by workspace name",
|
|
"name": "name",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"enum": [
|
|
"pending",
|
|
"running",
|
|
"stopping",
|
|
"stopped",
|
|
"failed",
|
|
"canceling",
|
|
"canceled",
|
|
"deleted",
|
|
"deleting"
|
|
],
|
|
"type": "string",
|
|
"description": "Filter by workspace status",
|
|
"name": "status",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"enum": [
|
|
"connected",
|
|
"connecting",
|
|
"disconnected",
|
|
"timeout"
|
|
],
|
|
"type": "string",
|
|
"description": "Filter by agent status",
|
|
"name": "has_agent",
|
|
"in": "query"
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.WorkspacesResponse"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/workspaces/{workspace}": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Workspaces"
|
|
],
|
|
"summary": "Get workspace metadata by ID",
|
|
"operationId": "get-workspace-metadata-by-id",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Workspace ID",
|
|
"name": "workspace",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"type": "boolean",
|
|
"description": "Return data instead of HTTP 404 if the workspace is deleted",
|
|
"name": "include_deleted",
|
|
"in": "query"
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.Workspace"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"patch": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Workspaces"
|
|
],
|
|
"summary": "Update workspace metadata by ID",
|
|
"operationId": "update-workspace-metadata-by-id",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Workspace ID",
|
|
"name": "workspace",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"description": "Metadata update request",
|
|
"name": "request",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.UpdateWorkspaceRequest"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"204": {
|
|
"description": "No Content"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/workspaces/{workspace}/autostart": {
|
|
"put": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Workspaces"
|
|
],
|
|
"summary": "Update workspace autostart schedule by ID",
|
|
"operationId": "update-workspace-autostart-schedule-by-id",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Workspace ID",
|
|
"name": "workspace",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"description": "Schedule update request",
|
|
"name": "request",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.UpdateWorkspaceAutostartRequest"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"204": {
|
|
"description": "No Content"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/workspaces/{workspace}/builds": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Builds"
|
|
],
|
|
"summary": "Get workspace builds by workspace ID",
|
|
"operationId": "get-workspace-builds-by-workspace-id",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Workspace ID",
|
|
"name": "workspace",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "After ID",
|
|
"name": "after_id",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"description": "Page limit",
|
|
"name": "limit",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"description": "Page offset",
|
|
"name": "offset",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"description": "Since timestamp",
|
|
"name": "since",
|
|
"in": "query"
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/codersdk.WorkspaceBuild"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Builds"
|
|
],
|
|
"summary": "Create workspace build",
|
|
"operationId": "create-workspace-build",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Workspace ID",
|
|
"name": "workspace",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"description": "Create workspace build request",
|
|
"name": "request",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.CreateWorkspaceBuildRequest"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.WorkspaceBuild"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/workspaces/{workspace}/extend": {
|
|
"put": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Workspaces"
|
|
],
|
|
"summary": "Extend workspace deadline by ID",
|
|
"operationId": "extend-workspace-deadline-by-id",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Workspace ID",
|
|
"name": "workspace",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"description": "Extend deadline update request",
|
|
"name": "request",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.PutExtendWorkspaceRequest"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.Response"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/workspaces/{workspace}/ttl": {
|
|
"put": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Workspaces"
|
|
],
|
|
"summary": "Update workspace TTL by ID",
|
|
"operationId": "update-workspace-ttl-by-id",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Workspace ID",
|
|
"name": "workspace",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"description": "Workspace TTL update request",
|
|
"name": "request",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.UpdateWorkspaceTTLRequest"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"204": {
|
|
"description": "No Content"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/workspaces/{workspace}/watch": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"CoderSessionToken": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"text/event-stream"
|
|
],
|
|
"tags": [
|
|
"Workspaces"
|
|
],
|
|
"summary": "Watch workspace by ID",
|
|
"operationId": "watch-workspace-by-id",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"description": "Workspace ID",
|
|
"name": "workspace",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/codersdk.Response"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"definitions": {
|
|
"coderd.SCIMUser": {
|
|
"type": "object",
|
|
"properties": {
|
|
"active": {
|
|
"type": "boolean"
|
|
},
|
|
"emails": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"display": {
|
|
"type": "string"
|
|
},
|
|
"primary": {
|
|
"type": "boolean"
|
|
},
|
|
"type": {
|
|
"type": "string"
|
|
},
|
|
"value": {
|
|
"type": "string",
|
|
"format": "email"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"groups": {
|
|
"type": "array",
|
|
"items": {}
|
|
},
|
|
"id": {
|
|
"type": "string"
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"resourceType": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"name": {
|
|
"type": "object",
|
|
"properties": {
|
|
"familyName": {
|
|
"type": "string"
|
|
},
|
|
"givenName": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"schemas": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"userName": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"coderd.cspViolation": {
|
|
"type": "object",
|
|
"properties": {
|
|
"csp-report": {
|
|
"type": "object",
|
|
"additionalProperties": true
|
|
}
|
|
}
|
|
},
|
|
"codersdk.APIKey": {
|
|
"type": "object",
|
|
"required": [
|
|
"created_at",
|
|
"expires_at",
|
|
"id",
|
|
"last_used",
|
|
"lifetime_seconds",
|
|
"login_type",
|
|
"scope",
|
|
"updated_at",
|
|
"user_id"
|
|
],
|
|
"properties": {
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"expires_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"id": {
|
|
"type": "string"
|
|
},
|
|
"last_used": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"lifetime_seconds": {
|
|
"type": "integer"
|
|
},
|
|
"login_type": {
|
|
"enum": [
|
|
"password",
|
|
"github",
|
|
"oidc",
|
|
"token"
|
|
],
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/definitions/codersdk.LoginType"
|
|
}
|
|
]
|
|
},
|
|
"scope": {
|
|
"enum": [
|
|
"all",
|
|
"application_connect"
|
|
],
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/definitions/codersdk.APIKeyScope"
|
|
}
|
|
]
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"user_id": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.APIKeyScope": {
|
|
"type": "string",
|
|
"enum": [
|
|
"all",
|
|
"application_connect"
|
|
],
|
|
"x-enum-varnames": [
|
|
"APIKeyScopeAll",
|
|
"APIKeyScopeApplicationConnect"
|
|
]
|
|
},
|
|
"codersdk.AWSInstanceIdentityToken": {
|
|
"type": "object",
|
|
"required": [
|
|
"document",
|
|
"signature"
|
|
],
|
|
"properties": {
|
|
"document": {
|
|
"type": "string"
|
|
},
|
|
"signature": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.AddLicenseRequest": {
|
|
"type": "object",
|
|
"required": [
|
|
"license"
|
|
],
|
|
"properties": {
|
|
"license": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.AgentGitSSHKey": {
|
|
"type": "object",
|
|
"properties": {
|
|
"private_key": {
|
|
"type": "string"
|
|
},
|
|
"public_key": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.AgentStats": {
|
|
"type": "object",
|
|
"properties": {
|
|
"conns_by_proto": {
|
|
"description": "ConnsByProto is a count of connections by protocol.",
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"num_comms": {
|
|
"description": "NumConns is the number of connections received by an agent.",
|
|
"type": "integer"
|
|
},
|
|
"rx_bytes": {
|
|
"description": "RxBytes is the number of received bytes.",
|
|
"type": "integer"
|
|
},
|
|
"rx_packets": {
|
|
"description": "RxPackets is the number of received packets.",
|
|
"type": "integer"
|
|
},
|
|
"tx_bytes": {
|
|
"description": "TxBytes is the number of transmitted bytes.",
|
|
"type": "integer"
|
|
},
|
|
"tx_packets": {
|
|
"description": "TxPackets is the number of transmitted bytes.",
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.AgentStatsResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"report_interval": {
|
|
"description": "ReportInterval is the duration after which the agent should send stats\nagain.",
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.AppearanceConfig": {
|
|
"type": "object",
|
|
"properties": {
|
|
"logo_url": {
|
|
"type": "string"
|
|
},
|
|
"service_banner": {
|
|
"$ref": "#/definitions/codersdk.ServiceBannerConfig"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.AssignableRoles": {
|
|
"type": "object",
|
|
"properties": {
|
|
"assignable": {
|
|
"type": "boolean"
|
|
},
|
|
"display_name": {
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.AuditAction": {
|
|
"type": "string",
|
|
"enum": [
|
|
"create",
|
|
"write",
|
|
"delete",
|
|
"start",
|
|
"stop"
|
|
],
|
|
"x-enum-varnames": [
|
|
"AuditActionCreate",
|
|
"AuditActionWrite",
|
|
"AuditActionDelete",
|
|
"AuditActionStart",
|
|
"AuditActionStop"
|
|
]
|
|
},
|
|
"codersdk.AuditDiff": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"$ref": "#/definitions/codersdk.AuditDiffField"
|
|
}
|
|
},
|
|
"codersdk.AuditDiffField": {
|
|
"type": "object",
|
|
"properties": {
|
|
"new": {},
|
|
"old": {},
|
|
"secret": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.AuditLog": {
|
|
"type": "object",
|
|
"properties": {
|
|
"action": {
|
|
"$ref": "#/definitions/codersdk.AuditAction"
|
|
},
|
|
"additional_fields": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"diff": {
|
|
"$ref": "#/definitions/codersdk.AuditDiff"
|
|
},
|
|
"id": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
},
|
|
"ip": {
|
|
"type": "string"
|
|
},
|
|
"is_deleted": {
|
|
"type": "boolean"
|
|
},
|
|
"organization_id": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
},
|
|
"request_id": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
},
|
|
"resource_icon": {
|
|
"type": "string"
|
|
},
|
|
"resource_id": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
},
|
|
"resource_link": {
|
|
"type": "string"
|
|
},
|
|
"resource_target": {
|
|
"description": "ResourceTarget is the name of the resource.",
|
|
"type": "string"
|
|
},
|
|
"resource_type": {
|
|
"$ref": "#/definitions/codersdk.ResourceType"
|
|
},
|
|
"status_code": {
|
|
"type": "integer"
|
|
},
|
|
"time": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"user": {
|
|
"$ref": "#/definitions/codersdk.User"
|
|
},
|
|
"user_agent": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.AuditLogResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"audit_logs": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/codersdk.AuditLog"
|
|
}
|
|
},
|
|
"count": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.AuthMethods": {
|
|
"type": "object",
|
|
"properties": {
|
|
"github": {
|
|
"type": "boolean"
|
|
},
|
|
"oidc": {
|
|
"type": "boolean"
|
|
},
|
|
"password": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.AuthorizationCheck": {
|
|
"description": "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.",
|
|
"type": "object",
|
|
"properties": {
|
|
"action": {
|
|
"type": "string",
|
|
"enum": [
|
|
"create",
|
|
"read",
|
|
"update",
|
|
"delete"
|
|
]
|
|
},
|
|
"object": {
|
|
"description": "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.\nWhen defining an object, use the most specific language when possible to\nproduce the smallest set. Meaning to set as many fields on 'Object' as\nyou can. Example, if you want to check if you can update all workspaces\nowned by 'me', try to also add an 'OrganizationID' to the settings.\nOmitting the 'OrganizationID' could produce the incorrect value, as\nworkspaces have both ` + "`" + `user` + "`" + ` and ` + "`" + `organization` + "`" + ` owners.",
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/definitions/codersdk.AuthorizationObject"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"codersdk.AuthorizationObject": {
|
|
"description": "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.",
|
|
"type": "object",
|
|
"properties": {
|
|
"organization_id": {
|
|
"description": "OrganizationID (optional) adds the set constraint to all resources owned by a given organization.",
|
|
"type": "string"
|
|
},
|
|
"owner_id": {
|
|
"description": "OwnerID (optional) adds the set constraint to all resources owned by a given user.",
|
|
"type": "string"
|
|
},
|
|
"resource_id": {
|
|
"description": "ResourceID (optional) reduces the set to a singular resource. This assigns\na resource ID to the resource type, eg: a single workspace.\nThe rbac library will not fetch the resource from the database, so if you\nare using this option, you should also set the owner ID and organization ID\nif possible. Be as specific as possible using all the fields relevant.",
|
|
"type": "string"
|
|
},
|
|
"resource_type": {
|
|
"description": "ResourceType is the name of the resource.\n` + "`" + `./coderd/rbac/object.go` + "`" + ` has the list of valid resource types.",
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.AuthorizationRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"checks": {
|
|
"description": "Checks is a map keyed with an arbitrary string to a permission check.\nThe key can be any string that is helpful to the caller, and allows\nmultiple permission checks to be run in a single request.\nThe key ensures that each permission check has the same key in the\nresponse.",
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"$ref": "#/definitions/codersdk.AuthorizationCheck"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"codersdk.AuthorizationResponse": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "boolean"
|
|
}
|
|
},
|
|
"codersdk.AzureInstanceIdentityToken": {
|
|
"type": "object",
|
|
"required": [
|
|
"encoding",
|
|
"signature"
|
|
],
|
|
"properties": {
|
|
"encoding": {
|
|
"type": "string"
|
|
},
|
|
"signature": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.BuildInfoResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"external_url": {
|
|
"description": "ExternalURL references the current Coder version.\nFor production builds, this will link directly to a release. For development builds, this will link to a commit.",
|
|
"type": "string"
|
|
},
|
|
"version": {
|
|
"description": "Version returns the semantic version of the build.",
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.BuildReason": {
|
|
"type": "string",
|
|
"enum": [
|
|
"initiator",
|
|
"autostart",
|
|
"autostop"
|
|
],
|
|
"x-enum-varnames": [
|
|
"BuildReasonInitiator",
|
|
"BuildReasonAutostart",
|
|
"BuildReasonAutostop"
|
|
]
|
|
},
|
|
"codersdk.CreateFirstUserRequest": {
|
|
"type": "object",
|
|
"required": [
|
|
"email",
|
|
"password",
|
|
"username"
|
|
],
|
|
"properties": {
|
|
"email": {
|
|
"type": "string"
|
|
},
|
|
"password": {
|
|
"type": "string"
|
|
},
|
|
"trial": {
|
|
"type": "boolean"
|
|
},
|
|
"username": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.CreateFirstUserResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"organization_id": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
},
|
|
"user_id": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.CreateGroupRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"avatar_url": {
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"quota_allowance": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.CreateOrganizationRequest": {
|
|
"type": "object",
|
|
"required": [
|
|
"name"
|
|
],
|
|
"properties": {
|
|
"name": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.CreateParameterRequest": {
|
|
"description": "CreateParameterRequest is a structure used to create a new parameter value for a scope.",
|
|
"type": "object",
|
|
"required": [
|
|
"destination_scheme",
|
|
"name",
|
|
"source_scheme",
|
|
"source_value"
|
|
],
|
|
"properties": {
|
|
"copy_from_parameter": {
|
|
"description": "CloneID allows copying the value of another parameter.\nThe other param must be related to the same template_id for this to\nsucceed.\nNo other fields are required if using this, as all fields will be copied\nfrom the other parameter.",
|
|
"type": "string",
|
|
"format": "uuid"
|
|
},
|
|
"destination_scheme": {
|
|
"enum": [
|
|
"none",
|
|
"environment_variable",
|
|
"provisioner_variable"
|
|
],
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/definitions/codersdk.ParameterDestinationScheme"
|
|
}
|
|
]
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"source_scheme": {
|
|
"enum": [
|
|
"none",
|
|
"data"
|
|
],
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/definitions/codersdk.ParameterSourceScheme"
|
|
}
|
|
]
|
|
},
|
|
"source_value": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.CreateTemplateRequest": {
|
|
"type": "object",
|
|
"required": [
|
|
"name",
|
|
"template_version_id"
|
|
],
|
|
"properties": {
|
|
"allow_user_cancel_workspace_jobs": {
|
|
"description": "Allow users to cancel in-progress workspace jobs.\n*bool as the default value is \"true\".",
|
|
"type": "boolean"
|
|
},
|
|
"default_ttl_ms": {
|
|
"description": "DefaultTTLMillis allows optionally specifying the default TTL\nfor all workspaces created from this template.",
|
|
"type": "integer"
|
|
},
|
|
"description": {
|
|
"description": "Description is a description of what the template contains. It must be\nless than 128 bytes.",
|
|
"type": "string"
|
|
},
|
|
"display_name": {
|
|
"description": "DisplayName is the displayed name of the template.",
|
|
"type": "string"
|
|
},
|
|
"icon": {
|
|
"description": "Icon is a relative path or external URL that specifies\nan icon to be displayed in the dashboard.",
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"description": "Name is the name of the template.",
|
|
"type": "string"
|
|
},
|
|
"parameter_values": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/codersdk.CreateParameterRequest"
|
|
}
|
|
},
|
|
"template_version_id": {
|
|
"description": "VersionID is an in-progress or completed job to use as an initial version\nof the template.\n\nThis is required on creation to enable a user-flow of validating a\ntemplate works. There is no reason the data-model cannot support empty\ntemplates, but it doesn't make sense for users.",
|
|
"type": "string",
|
|
"format": "uuid"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.CreateTemplateVersionDryRunRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"parameter_values": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/codersdk.CreateParameterRequest"
|
|
}
|
|
},
|
|
"workspace_name": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.CreateTestAuditLogRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"action": {
|
|
"enum": [
|
|
"create",
|
|
"write",
|
|
"delete",
|
|
"start",
|
|
"stop"
|
|
],
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/definitions/codersdk.AuditAction"
|
|
}
|
|
]
|
|
},
|
|
"resource_id": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
},
|
|
"resource_type": {
|
|
"enum": [
|
|
"organization",
|
|
"template",
|
|
"template_version",
|
|
"user",
|
|
"workspace",
|
|
"workspace_build",
|
|
"git_ssh_key",
|
|
"api_key",
|
|
"group"
|
|
],
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/definitions/codersdk.ResourceType"
|
|
}
|
|
]
|
|
},
|
|
"time": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.CreateTokenRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"lifetime": {
|
|
"type": "integer"
|
|
},
|
|
"scope": {
|
|
"enum": [
|
|
"all",
|
|
"application_connect"
|
|
],
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/definitions/codersdk.APIKeyScope"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"codersdk.CreateUserRequest": {
|
|
"type": "object",
|
|
"required": [
|
|
"email",
|
|
"organization_id",
|
|
"password",
|
|
"username"
|
|
],
|
|
"properties": {
|
|
"email": {
|
|
"type": "string",
|
|
"format": "email"
|
|
},
|
|
"organization_id": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
},
|
|
"password": {
|
|
"type": "string"
|
|
},
|
|
"username": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.CreateWorkspaceBuildRequest": {
|
|
"type": "object",
|
|
"required": [
|
|
"transition"
|
|
],
|
|
"properties": {
|
|
"dry_run": {
|
|
"type": "boolean"
|
|
},
|
|
"orphan": {
|
|
"description": "Orphan may be set for the Destroy transition.",
|
|
"type": "boolean"
|
|
},
|
|
"parameter_values": {
|
|
"description": "ParameterValues are optional. It will write params to the 'workspace' scope.\nThis will overwrite any existing parameters with the same name.\nThis will not delete old params not included in this list.",
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/codersdk.CreateParameterRequest"
|
|
}
|
|
},
|
|
"rich_parameter_values": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/codersdk.WorkspaceBuildParameter"
|
|
}
|
|
},
|
|
"state": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"template_version_id": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
},
|
|
"transition": {
|
|
"enum": [
|
|
"create",
|
|
"start",
|
|
"stop",
|
|
"delete"
|
|
],
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/definitions/codersdk.WorkspaceTransition"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"codersdk.DAUEntry": {
|
|
"type": "object",
|
|
"properties": {
|
|
"amount": {
|
|
"type": "integer"
|
|
},
|
|
"date": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.DERP": {
|
|
"type": "object",
|
|
"properties": {
|
|
"config": {
|
|
"$ref": "#/definitions/codersdk.DERPConfig"
|
|
},
|
|
"server": {
|
|
"$ref": "#/definitions/codersdk.DERPServerConfig"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.DERPConfig": {
|
|
"type": "object",
|
|
"properties": {
|
|
"path": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-string"
|
|
},
|
|
"url": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.DERPRegion": {
|
|
"type": "object",
|
|
"properties": {
|
|
"latency_ms": {
|
|
"type": "number"
|
|
},
|
|
"preferred": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.DERPServerConfig": {
|
|
"type": "object",
|
|
"properties": {
|
|
"enable": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-bool"
|
|
},
|
|
"region_code": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-string"
|
|
},
|
|
"region_id": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-int"
|
|
},
|
|
"region_name": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-string"
|
|
},
|
|
"relay_url": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-string"
|
|
},
|
|
"stun_addresses": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-array_string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.DeploymentConfig": {
|
|
"type": "object",
|
|
"properties": {
|
|
"access_url": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-string"
|
|
},
|
|
"address": {
|
|
"description": "DEPRECATED: Use HTTPAddress or TLS.Address instead.",
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-string"
|
|
}
|
|
]
|
|
},
|
|
"agent_fallback_troubleshooting_url": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-string"
|
|
},
|
|
"agent_stat_refresh_interval": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-time_Duration"
|
|
},
|
|
"audit_logging": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-bool"
|
|
},
|
|
"autobuild_poll_interval": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-time_Duration"
|
|
},
|
|
"browser_only": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-bool"
|
|
},
|
|
"cache_directory": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-string"
|
|
},
|
|
"derp": {
|
|
"$ref": "#/definitions/codersdk.DERP"
|
|
},
|
|
"experimental": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-bool"
|
|
},
|
|
"gitauth": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-array_codersdk_GitAuthConfig"
|
|
},
|
|
"http_address": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-string"
|
|
},
|
|
"in_memory_database": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-bool"
|
|
},
|
|
"logging": {
|
|
"$ref": "#/definitions/codersdk.LoggingConfig"
|
|
},
|
|
"max_token_lifetime": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-time_Duration"
|
|
},
|
|
"metrics_cache_refresh_interval": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-time_Duration"
|
|
},
|
|
"oauth2": {
|
|
"$ref": "#/definitions/codersdk.OAuth2Config"
|
|
},
|
|
"oidc": {
|
|
"$ref": "#/definitions/codersdk.OIDCConfig"
|
|
},
|
|
"pg_connection_url": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-string"
|
|
},
|
|
"pprof": {
|
|
"$ref": "#/definitions/codersdk.PprofConfig"
|
|
},
|
|
"prometheus": {
|
|
"$ref": "#/definitions/codersdk.PrometheusConfig"
|
|
},
|
|
"provisioner": {
|
|
"$ref": "#/definitions/codersdk.ProvisionerConfig"
|
|
},
|
|
"proxy_trusted_headers": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-array_string"
|
|
},
|
|
"proxy_trusted_origins": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-array_string"
|
|
},
|
|
"rate_limit": {
|
|
"$ref": "#/definitions/codersdk.RateLimitConfig"
|
|
},
|
|
"scim_api_key": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-string"
|
|
},
|
|
"secure_auth_cookie": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-bool"
|
|
},
|
|
"ssh_keygen_algorithm": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-string"
|
|
},
|
|
"swagger": {
|
|
"$ref": "#/definitions/codersdk.SwaggerConfig"
|
|
},
|
|
"telemetry": {
|
|
"$ref": "#/definitions/codersdk.TelemetryConfig"
|
|
},
|
|
"tls": {
|
|
"$ref": "#/definitions/codersdk.TLSConfig"
|
|
},
|
|
"trace": {
|
|
"$ref": "#/definitions/codersdk.TraceConfig"
|
|
},
|
|
"update_check": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-bool"
|
|
},
|
|
"wildcard_access_url": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.DeploymentConfigField-array_codersdk_GitAuthConfig": {
|
|
"type": "object",
|
|
"properties": {
|
|
"default": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/codersdk.GitAuthConfig"
|
|
}
|
|
},
|
|
"enterprise": {
|
|
"type": "boolean"
|
|
},
|
|
"flag": {
|
|
"type": "string"
|
|
},
|
|
"hidden": {
|
|
"type": "boolean"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"secret": {
|
|
"type": "boolean"
|
|
},
|
|
"shorthand": {
|
|
"type": "string"
|
|
},
|
|
"usage": {
|
|
"type": "string"
|
|
},
|
|
"value": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/codersdk.GitAuthConfig"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"codersdk.DeploymentConfigField-array_string": {
|
|
"type": "object",
|
|
"properties": {
|
|
"default": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"enterprise": {
|
|
"type": "boolean"
|
|
},
|
|
"flag": {
|
|
"type": "string"
|
|
},
|
|
"hidden": {
|
|
"type": "boolean"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"secret": {
|
|
"type": "boolean"
|
|
},
|
|
"shorthand": {
|
|
"type": "string"
|
|
},
|
|
"usage": {
|
|
"type": "string"
|
|
},
|
|
"value": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"codersdk.DeploymentConfigField-bool": {
|
|
"type": "object",
|
|
"properties": {
|
|
"default": {
|
|
"type": "boolean"
|
|
},
|
|
"enterprise": {
|
|
"type": "boolean"
|
|
},
|
|
"flag": {
|
|
"type": "string"
|
|
},
|
|
"hidden": {
|
|
"type": "boolean"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"secret": {
|
|
"type": "boolean"
|
|
},
|
|
"shorthand": {
|
|
"type": "string"
|
|
},
|
|
"usage": {
|
|
"type": "string"
|
|
},
|
|
"value": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.DeploymentConfigField-int": {
|
|
"type": "object",
|
|
"properties": {
|
|
"default": {
|
|
"type": "integer"
|
|
},
|
|
"enterprise": {
|
|
"type": "boolean"
|
|
},
|
|
"flag": {
|
|
"type": "string"
|
|
},
|
|
"hidden": {
|
|
"type": "boolean"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"secret": {
|
|
"type": "boolean"
|
|
},
|
|
"shorthand": {
|
|
"type": "string"
|
|
},
|
|
"usage": {
|
|
"type": "string"
|
|
},
|
|
"value": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.DeploymentConfigField-string": {
|
|
"type": "object",
|
|
"properties": {
|
|
"default": {
|
|
"type": "string"
|
|
},
|
|
"enterprise": {
|
|
"type": "boolean"
|
|
},
|
|
"flag": {
|
|
"type": "string"
|
|
},
|
|
"hidden": {
|
|
"type": "boolean"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"secret": {
|
|
"type": "boolean"
|
|
},
|
|
"shorthand": {
|
|
"type": "string"
|
|
},
|
|
"usage": {
|
|
"type": "string"
|
|
},
|
|
"value": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.DeploymentConfigField-time_Duration": {
|
|
"type": "object",
|
|
"properties": {
|
|
"default": {
|
|
"type": "integer"
|
|
},
|
|
"enterprise": {
|
|
"type": "boolean"
|
|
},
|
|
"flag": {
|
|
"type": "string"
|
|
},
|
|
"hidden": {
|
|
"type": "boolean"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"secret": {
|
|
"type": "boolean"
|
|
},
|
|
"shorthand": {
|
|
"type": "string"
|
|
},
|
|
"usage": {
|
|
"type": "string"
|
|
},
|
|
"value": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.Entitlement": {
|
|
"type": "string",
|
|
"enum": [
|
|
"entitled",
|
|
"grace_period",
|
|
"not_entitled"
|
|
],
|
|
"x-enum-varnames": [
|
|
"EntitlementEntitled",
|
|
"EntitlementGracePeriod",
|
|
"EntitlementNotEntitled"
|
|
]
|
|
},
|
|
"codersdk.Entitlements": {
|
|
"type": "object",
|
|
"properties": {
|
|
"errors": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"experimental": {
|
|
"type": "boolean"
|
|
},
|
|
"features": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"$ref": "#/definitions/codersdk.Feature"
|
|
}
|
|
},
|
|
"has_license": {
|
|
"type": "boolean"
|
|
},
|
|
"trial": {
|
|
"type": "boolean"
|
|
},
|
|
"warnings": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"codersdk.Feature": {
|
|
"type": "object",
|
|
"properties": {
|
|
"actual": {
|
|
"type": "integer"
|
|
},
|
|
"enabled": {
|
|
"type": "boolean"
|
|
},
|
|
"entitlement": {
|
|
"$ref": "#/definitions/codersdk.Entitlement"
|
|
},
|
|
"limit": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.GenerateAPIKeyResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"key": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.GetAppHostResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"host": {
|
|
"description": "Host is the externally accessible URL for the Coder instance.",
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.GetUsersResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"count": {
|
|
"type": "integer"
|
|
},
|
|
"users": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/codersdk.User"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"codersdk.GitAuthConfig": {
|
|
"type": "object",
|
|
"properties": {
|
|
"auth_url": {
|
|
"type": "string"
|
|
},
|
|
"client_id": {
|
|
"type": "string"
|
|
},
|
|
"id": {
|
|
"type": "string"
|
|
},
|
|
"no_refresh": {
|
|
"type": "boolean"
|
|
},
|
|
"regex": {
|
|
"type": "string"
|
|
},
|
|
"scopes": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"token_url": {
|
|
"type": "string"
|
|
},
|
|
"type": {
|
|
"type": "string"
|
|
},
|
|
"validate_url": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.GitSSHKey": {
|
|
"type": "object",
|
|
"properties": {
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"public_key": {
|
|
"type": "string"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"user_id": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.GoogleInstanceIdentityToken": {
|
|
"type": "object",
|
|
"required": [
|
|
"json_web_token"
|
|
],
|
|
"properties": {
|
|
"json_web_token": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.Group": {
|
|
"type": "object",
|
|
"properties": {
|
|
"avatar_url": {
|
|
"type": "string"
|
|
},
|
|
"id": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
},
|
|
"members": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/codersdk.User"
|
|
}
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"organization_id": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
},
|
|
"quota_allowance": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.Healthcheck": {
|
|
"type": "object",
|
|
"properties": {
|
|
"interval": {
|
|
"description": "Interval specifies the seconds between each health check.",
|
|
"type": "integer"
|
|
},
|
|
"threshold": {
|
|
"description": "Threshold specifies the number of consecutive failed health checks before returning \"unhealthy\".",
|
|
"type": "integer"
|
|
},
|
|
"url": {
|
|
"description": "URL specifies the endpoint to check for the app health.",
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.License": {
|
|
"type": "object",
|
|
"properties": {
|
|
"claims": {
|
|
"description": "Claims are the JWT claims asserted by the license. Here we use\na generic string map to ensure that all data from the server is\nparsed verbatim, not just the fields this version of Coder\nunderstands.",
|
|
"type": "object",
|
|
"additionalProperties": true
|
|
},
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"uploaded_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"uuid": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.ListeningPort": {
|
|
"type": "object",
|
|
"properties": {
|
|
"network": {
|
|
"description": "only \"tcp\" at the moment",
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/definitions/codersdk.ListeningPortNetwork"
|
|
}
|
|
]
|
|
},
|
|
"port": {
|
|
"type": "integer"
|
|
},
|
|
"process_name": {
|
|
"description": "may be empty",
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.ListeningPortNetwork": {
|
|
"type": "string",
|
|
"enum": [
|
|
"tcp"
|
|
],
|
|
"x-enum-varnames": [
|
|
"ListeningPortNetworkTCP"
|
|
]
|
|
},
|
|
"codersdk.ListeningPortsResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"ports": {
|
|
"description": "If there are no ports in the list, nothing should be displayed in the UI.\nThere must not be a \"no ports available\" message or anything similar, as\nthere will always be no ports displayed on platforms where our port\ndetection logic is unsupported.",
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/codersdk.ListeningPort"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"codersdk.LogLevel": {
|
|
"type": "string",
|
|
"enum": [
|
|
"trace",
|
|
"debug",
|
|
"info",
|
|
"warn",
|
|
"error"
|
|
],
|
|
"x-enum-varnames": [
|
|
"LogLevelTrace",
|
|
"LogLevelDebug",
|
|
"LogLevelInfo",
|
|
"LogLevelWarn",
|
|
"LogLevelError"
|
|
]
|
|
},
|
|
"codersdk.LogSource": {
|
|
"type": "string",
|
|
"enum": [
|
|
"provisioner_daemon",
|
|
"provisioner"
|
|
],
|
|
"x-enum-varnames": [
|
|
"LogSourceProvisionerDaemon",
|
|
"LogSourceProvisioner"
|
|
]
|
|
},
|
|
"codersdk.LoggingConfig": {
|
|
"type": "object",
|
|
"properties": {
|
|
"human": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-string"
|
|
},
|
|
"json": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-string"
|
|
},
|
|
"stackdriver": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.LoginType": {
|
|
"type": "string",
|
|
"enum": [
|
|
"password",
|
|
"github",
|
|
"oidc",
|
|
"token"
|
|
],
|
|
"x-enum-varnames": [
|
|
"LoginTypePassword",
|
|
"LoginTypeGithub",
|
|
"LoginTypeOIDC",
|
|
"LoginTypeToken"
|
|
]
|
|
},
|
|
"codersdk.LoginWithPasswordRequest": {
|
|
"type": "object",
|
|
"required": [
|
|
"email",
|
|
"password"
|
|
],
|
|
"properties": {
|
|
"email": {
|
|
"type": "string",
|
|
"format": "email"
|
|
},
|
|
"password": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.LoginWithPasswordResponse": {
|
|
"type": "object",
|
|
"required": [
|
|
"session_token"
|
|
],
|
|
"properties": {
|
|
"session_token": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.OAuth2Config": {
|
|
"type": "object",
|
|
"properties": {
|
|
"github": {
|
|
"$ref": "#/definitions/codersdk.OAuth2GithubConfig"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.OAuth2GithubConfig": {
|
|
"type": "object",
|
|
"properties": {
|
|
"allow_everyone": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-bool"
|
|
},
|
|
"allow_signups": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-bool"
|
|
},
|
|
"allowed_orgs": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-array_string"
|
|
},
|
|
"allowed_teams": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-array_string"
|
|
},
|
|
"client_id": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-string"
|
|
},
|
|
"client_secret": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-string"
|
|
},
|
|
"enterprise_base_url": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.OIDCConfig": {
|
|
"type": "object",
|
|
"properties": {
|
|
"allow_signups": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-bool"
|
|
},
|
|
"client_id": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-string"
|
|
},
|
|
"client_secret": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-string"
|
|
},
|
|
"email_domain": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-array_string"
|
|
},
|
|
"ignore_email_verified": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-bool"
|
|
},
|
|
"issuer_url": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-string"
|
|
},
|
|
"scopes": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-array_string"
|
|
},
|
|
"username_field": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.Organization": {
|
|
"type": "object",
|
|
"required": [
|
|
"created_at",
|
|
"id",
|
|
"name",
|
|
"updated_at"
|
|
],
|
|
"properties": {
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"id": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.OrganizationMember": {
|
|
"type": "object",
|
|
"properties": {
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"organization_id": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
},
|
|
"roles": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/codersdk.Role"
|
|
}
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"user_id": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.Parameter": {
|
|
"description": "Parameter represents a set value for the scope.",
|
|
"type": "object",
|
|
"properties": {
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"destination_scheme": {
|
|
"enum": [
|
|
"none",
|
|
"environment_variable",
|
|
"provisioner_variable"
|
|
],
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/definitions/codersdk.ParameterDestinationScheme"
|
|
}
|
|
]
|
|
},
|
|
"id": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"scope": {
|
|
"enum": [
|
|
"template",
|
|
"workspace",
|
|
"import_job"
|
|
],
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/definitions/codersdk.ParameterScope"
|
|
}
|
|
]
|
|
},
|
|
"scope_id": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
},
|
|
"source_scheme": {
|
|
"enum": [
|
|
"none",
|
|
"data"
|
|
],
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/definitions/codersdk.ParameterSourceScheme"
|
|
}
|
|
]
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.ParameterDestinationScheme": {
|
|
"type": "string",
|
|
"enum": [
|
|
"none",
|
|
"environment_variable",
|
|
"provisioner_variable"
|
|
],
|
|
"x-enum-varnames": [
|
|
"ParameterDestinationSchemeNone",
|
|
"ParameterDestinationSchemeEnvironmentVariable",
|
|
"ParameterDestinationSchemeProvisionerVariable"
|
|
]
|
|
},
|
|
"codersdk.ParameterSchema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"allow_override_destination": {
|
|
"type": "boolean"
|
|
},
|
|
"allow_override_source": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"default_destination_scheme": {
|
|
"enum": [
|
|
"none",
|
|
"environment_variable",
|
|
"provisioner_variable"
|
|
],
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/definitions/codersdk.ParameterDestinationScheme"
|
|
}
|
|
]
|
|
},
|
|
"default_refresh": {
|
|
"type": "string"
|
|
},
|
|
"default_source_scheme": {
|
|
"enum": [
|
|
"none",
|
|
"data"
|
|
],
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/definitions/codersdk.ParameterSourceScheme"
|
|
}
|
|
]
|
|
},
|
|
"default_source_value": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"id": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
},
|
|
"job_id": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"redisplay_value": {
|
|
"type": "boolean"
|
|
},
|
|
"validation_condition": {
|
|
"type": "string"
|
|
},
|
|
"validation_contains": {
|
|
"description": "This is a special array of items provided if the validation condition\nexplicitly states the value must be one of a set.",
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"validation_error": {
|
|
"type": "string"
|
|
},
|
|
"validation_type_system": {
|
|
"type": "string"
|
|
},
|
|
"validation_value_type": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.ParameterScope": {
|
|
"type": "string",
|
|
"enum": [
|
|
"template",
|
|
"workspace",
|
|
"import_job"
|
|
],
|
|
"x-enum-varnames": [
|
|
"ParameterTemplate",
|
|
"ParameterWorkspace",
|
|
"ParameterImportJob"
|
|
]
|
|
},
|
|
"codersdk.ParameterSourceScheme": {
|
|
"type": "string",
|
|
"enum": [
|
|
"none",
|
|
"data"
|
|
],
|
|
"x-enum-varnames": [
|
|
"ParameterSourceSchemeNone",
|
|
"ParameterSourceSchemeData"
|
|
]
|
|
},
|
|
"codersdk.PostWorkspaceAgentVersionRequest": {
|
|
"description": "x-apidocgen:skip",
|
|
"type": "object",
|
|
"properties": {
|
|
"version": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.PostWorkspaceAppHealthsRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"healths": {
|
|
"description": "Healths is a map of the workspace app name and the health of the app.",
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"$ref": "#/definitions/codersdk.WorkspaceAppHealth"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"codersdk.PprofConfig": {
|
|
"type": "object",
|
|
"properties": {
|
|
"address": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-string"
|
|
},
|
|
"enable": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-bool"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.PrometheusConfig": {
|
|
"type": "object",
|
|
"properties": {
|
|
"address": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-string"
|
|
},
|
|
"enable": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-bool"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.ProvisionerConfig": {
|
|
"type": "object",
|
|
"properties": {
|
|
"daemon_poll_interval": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-time_Duration"
|
|
},
|
|
"daemon_poll_jitter": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-time_Duration"
|
|
},
|
|
"daemons": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-int"
|
|
},
|
|
"force_cancel_interval": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-time_Duration"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.ProvisionerDaemon": {
|
|
"type": "object",
|
|
"properties": {
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"id": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"provisioners": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"tags": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"updated_at": {
|
|
"format": "date-time",
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/definitions/sql.NullTime"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"codersdk.ProvisionerJob": {
|
|
"type": "object",
|
|
"properties": {
|
|
"canceled_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"completed_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"error": {
|
|
"type": "string"
|
|
},
|
|
"file_id": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
},
|
|
"id": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
},
|
|
"started_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"status": {
|
|
"enum": [
|
|
"pending",
|
|
"running",
|
|
"succeeded",
|
|
"canceling",
|
|
"canceled",
|
|
"failed"
|
|
],
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/definitions/codersdk.ProvisionerJobStatus"
|
|
}
|
|
]
|
|
},
|
|
"tags": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"worker_id": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.ProvisionerJobLog": {
|
|
"type": "object",
|
|
"properties": {
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"log_level": {
|
|
"enum": [
|
|
"trace",
|
|
"debug",
|
|
"info",
|
|
"warn",
|
|
"error"
|
|
],
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/definitions/codersdk.LogLevel"
|
|
}
|
|
]
|
|
},
|
|
"log_source": {
|
|
"$ref": "#/definitions/codersdk.LogSource"
|
|
},
|
|
"output": {
|
|
"type": "string"
|
|
},
|
|
"stage": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.ProvisionerJobStatus": {
|
|
"type": "string",
|
|
"enum": [
|
|
"pending",
|
|
"running",
|
|
"succeeded",
|
|
"canceling",
|
|
"canceled",
|
|
"failed"
|
|
],
|
|
"x-enum-varnames": [
|
|
"ProvisionerJobPending",
|
|
"ProvisionerJobRunning",
|
|
"ProvisionerJobSucceeded",
|
|
"ProvisionerJobCanceling",
|
|
"ProvisionerJobCanceled",
|
|
"ProvisionerJobFailed"
|
|
]
|
|
},
|
|
"codersdk.PutExtendWorkspaceRequest": {
|
|
"type": "object",
|
|
"required": [
|
|
"deadline"
|
|
],
|
|
"properties": {
|
|
"deadline": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.RateLimitConfig": {
|
|
"type": "object",
|
|
"properties": {
|
|
"api": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-int"
|
|
},
|
|
"disable_all": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-bool"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.Replica": {
|
|
"type": "object",
|
|
"properties": {
|
|
"created_at": {
|
|
"description": "CreatedAt is the timestamp when the replica was first seen.",
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"database_latency": {
|
|
"description": "DatabaseLatency is the latency in microseconds to the database.",
|
|
"type": "integer"
|
|
},
|
|
"error": {
|
|
"description": "Error is the replica error.",
|
|
"type": "string"
|
|
},
|
|
"hostname": {
|
|
"description": "Hostname is the hostname of the replica.",
|
|
"type": "string"
|
|
},
|
|
"id": {
|
|
"description": "ID is the unique identifier for the replica.",
|
|
"type": "string",
|
|
"format": "uuid"
|
|
},
|
|
"region_id": {
|
|
"description": "RegionID is the region of the replica.",
|
|
"type": "integer"
|
|
},
|
|
"relay_address": {
|
|
"description": "RelayAddress is the accessible address to relay DERP connections.",
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.ResourceType": {
|
|
"type": "string",
|
|
"enum": [
|
|
"organization",
|
|
"template",
|
|
"template_version",
|
|
"user",
|
|
"workspace",
|
|
"workspace_build",
|
|
"git_ssh_key",
|
|
"api_key",
|
|
"group"
|
|
],
|
|
"x-enum-varnames": [
|
|
"ResourceTypeOrganization",
|
|
"ResourceTypeTemplate",
|
|
"ResourceTypeTemplateVersion",
|
|
"ResourceTypeUser",
|
|
"ResourceTypeWorkspace",
|
|
"ResourceTypeWorkspaceBuild",
|
|
"ResourceTypeGitSSHKey",
|
|
"ResourceTypeAPIKey",
|
|
"ResourceTypeGroup"
|
|
]
|
|
},
|
|
"codersdk.Response": {
|
|
"type": "object",
|
|
"properties": {
|
|
"detail": {
|
|
"description": "Detail is a debug message that provides further insight into why the\naction failed. This information can be technical and a regular golang\nerr.Error() text.\n- \"database: too many open connections\"\n- \"stat: too many open files\"",
|
|
"type": "string"
|
|
},
|
|
"message": {
|
|
"description": "Message is an actionable message that depicts actions the request took.\nThese messages should be fully formed sentences with proper punctuation.\nExamples:\n- \"A user has been created.\"\n- \"Failed to create a user.\"",
|
|
"type": "string"
|
|
},
|
|
"validations": {
|
|
"description": "Validations are form field-specific friendly error messages. They will be\nshown on a form field in the UI. These can also be used to add additional\ncontext if there is a set of errors in the primary 'Message'.",
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/codersdk.ValidationError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"codersdk.Role": {
|
|
"type": "object",
|
|
"properties": {
|
|
"display_name": {
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.ServiceBannerConfig": {
|
|
"type": "object",
|
|
"properties": {
|
|
"background_color": {
|
|
"type": "string"
|
|
},
|
|
"enabled": {
|
|
"type": "boolean"
|
|
},
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.SwaggerConfig": {
|
|
"type": "object",
|
|
"properties": {
|
|
"enable": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-bool"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.TLSConfig": {
|
|
"type": "object",
|
|
"properties": {
|
|
"address": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-string"
|
|
},
|
|
"cert_file": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-array_string"
|
|
},
|
|
"client_auth": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-string"
|
|
},
|
|
"client_ca_file": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-string"
|
|
},
|
|
"client_cert_file": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-string"
|
|
},
|
|
"client_key_file": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-string"
|
|
},
|
|
"enable": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-bool"
|
|
},
|
|
"key_file": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-array_string"
|
|
},
|
|
"min_version": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-string"
|
|
},
|
|
"redirect_http": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-bool"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.TelemetryConfig": {
|
|
"type": "object",
|
|
"properties": {
|
|
"enable": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-bool"
|
|
},
|
|
"trace": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-bool"
|
|
},
|
|
"url": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.Template": {
|
|
"type": "object",
|
|
"properties": {
|
|
"active_user_count": {
|
|
"description": "ActiveUserCount is set to -1 when loading.",
|
|
"type": "integer"
|
|
},
|
|
"active_version_id": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
},
|
|
"allow_user_cancel_workspace_jobs": {
|
|
"type": "boolean"
|
|
},
|
|
"build_time_stats": {
|
|
"$ref": "#/definitions/codersdk.TemplateBuildTimeStats"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"created_by_id": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
},
|
|
"created_by_name": {
|
|
"type": "string"
|
|
},
|
|
"default_ttl_ms": {
|
|
"type": "integer"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"display_name": {
|
|
"type": "string"
|
|
},
|
|
"icon": {
|
|
"type": "string"
|
|
},
|
|
"id": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"organization_id": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
},
|
|
"provisioner": {
|
|
"type": "string",
|
|
"enum": [
|
|
"terraform"
|
|
]
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"workspace_owner_count": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.TemplateBuildTimeStats": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"$ref": "#/definitions/codersdk.TransitionStats"
|
|
}
|
|
},
|
|
"codersdk.TemplateDAUsResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"entries": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/codersdk.DAUEntry"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"codersdk.TemplateExample": {
|
|
"type": "object",
|
|
"properties": {
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"icon": {
|
|
"type": "string"
|
|
},
|
|
"id": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
},
|
|
"markdown": {
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"tags": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"url": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.TemplateRole": {
|
|
"type": "string",
|
|
"enum": [
|
|
"admin",
|
|
"use",
|
|
""
|
|
],
|
|
"x-enum-varnames": [
|
|
"TemplateRoleAdmin",
|
|
"TemplateRoleUse",
|
|
"TemplateRoleDeleted"
|
|
]
|
|
},
|
|
"codersdk.TemplateUser": {
|
|
"type": "object",
|
|
"required": [
|
|
"created_at",
|
|
"email",
|
|
"id",
|
|
"username"
|
|
],
|
|
"properties": {
|
|
"avatar_url": {
|
|
"type": "string",
|
|
"format": "uri"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"email": {
|
|
"type": "string",
|
|
"format": "email"
|
|
},
|
|
"id": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
},
|
|
"last_seen_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"organization_ids": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
}
|
|
},
|
|
"role": {
|
|
"enum": [
|
|
"admin",
|
|
"use"
|
|
],
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/definitions/codersdk.TemplateRole"
|
|
}
|
|
]
|
|
},
|
|
"roles": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/codersdk.Role"
|
|
}
|
|
},
|
|
"status": {
|
|
"enum": [
|
|
"active",
|
|
"suspended"
|
|
],
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/definitions/codersdk.UserStatus"
|
|
}
|
|
]
|
|
},
|
|
"username": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.TemplateVersion": {
|
|
"type": "object",
|
|
"properties": {
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"created_by": {
|
|
"$ref": "#/definitions/codersdk.User"
|
|
},
|
|
"id": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
},
|
|
"job": {
|
|
"$ref": "#/definitions/codersdk.ProvisionerJob"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"organization_id": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
},
|
|
"readme": {
|
|
"type": "string"
|
|
},
|
|
"template_id": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.TraceConfig": {
|
|
"type": "object",
|
|
"properties": {
|
|
"capture_logs": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-bool"
|
|
},
|
|
"enable": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-bool"
|
|
},
|
|
"honeycomb_api_key": {
|
|
"$ref": "#/definitions/codersdk.DeploymentConfigField-string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.TransitionStats": {
|
|
"type": "object",
|
|
"properties": {
|
|
"p50": {
|
|
"type": "integer",
|
|
"example": 123
|
|
},
|
|
"p95": {
|
|
"type": "integer",
|
|
"example": 146
|
|
}
|
|
}
|
|
},
|
|
"codersdk.UpdateActiveTemplateVersion": {
|
|
"type": "object",
|
|
"required": [
|
|
"id"
|
|
],
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.UpdateCheckResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current": {
|
|
"description": "Current indicates whether the server version is the same as the latest.",
|
|
"type": "boolean"
|
|
},
|
|
"url": {
|
|
"description": "URL to download the latest release of Coder.",
|
|
"type": "string"
|
|
},
|
|
"version": {
|
|
"description": "Version is the semantic version for the latest release of Coder.",
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.UpdateRoles": {
|
|
"type": "object",
|
|
"properties": {
|
|
"roles": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"codersdk.UpdateTemplateACL": {
|
|
"type": "object",
|
|
"properties": {
|
|
"group_perms": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"$ref": "#/definitions/codersdk.TemplateRole"
|
|
}
|
|
},
|
|
"user_perms": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"$ref": "#/definitions/codersdk.TemplateRole"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"codersdk.UpdateUserPasswordRequest": {
|
|
"type": "object",
|
|
"required": [
|
|
"password"
|
|
],
|
|
"properties": {
|
|
"old_password": {
|
|
"type": "string"
|
|
},
|
|
"password": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.UpdateUserProfileRequest": {
|
|
"type": "object",
|
|
"required": [
|
|
"username"
|
|
],
|
|
"properties": {
|
|
"username": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.UpdateWorkspaceAutostartRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"schedule": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.UpdateWorkspaceRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.UpdateWorkspaceTTLRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"ttl_ms": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.UploadResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"hash": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.User": {
|
|
"type": "object",
|
|
"required": [
|
|
"created_at",
|
|
"email",
|
|
"id",
|
|
"username"
|
|
],
|
|
"properties": {
|
|
"avatar_url": {
|
|
"type": "string",
|
|
"format": "uri"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"email": {
|
|
"type": "string",
|
|
"format": "email"
|
|
},
|
|
"id": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
},
|
|
"last_seen_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"organization_ids": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
}
|
|
},
|
|
"roles": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/codersdk.Role"
|
|
}
|
|
},
|
|
"status": {
|
|
"enum": [
|
|
"active",
|
|
"suspended"
|
|
],
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/definitions/codersdk.UserStatus"
|
|
}
|
|
]
|
|
},
|
|
"username": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.UserStatus": {
|
|
"type": "string",
|
|
"enum": [
|
|
"active",
|
|
"suspended"
|
|
],
|
|
"x-enum-varnames": [
|
|
"UserStatusActive",
|
|
"UserStatusSuspended"
|
|
]
|
|
},
|
|
"codersdk.ValidationError": {
|
|
"type": "object",
|
|
"required": [
|
|
"detail",
|
|
"field"
|
|
],
|
|
"properties": {
|
|
"detail": {
|
|
"type": "string"
|
|
},
|
|
"field": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.Workspace": {
|
|
"type": "object",
|
|
"properties": {
|
|
"autostart_schedule": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"id": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
},
|
|
"last_used_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"latest_build": {
|
|
"$ref": "#/definitions/codersdk.WorkspaceBuild"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"outdated": {
|
|
"type": "boolean"
|
|
},
|
|
"owner_id": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
},
|
|
"owner_name": {
|
|
"type": "string"
|
|
},
|
|
"template_allow_user_cancel_workspace_jobs": {
|
|
"type": "boolean"
|
|
},
|
|
"template_display_name": {
|
|
"type": "string"
|
|
},
|
|
"template_icon": {
|
|
"type": "string"
|
|
},
|
|
"template_id": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
},
|
|
"template_name": {
|
|
"type": "string"
|
|
},
|
|
"ttl_ms": {
|
|
"type": "integer"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.WorkspaceAgent": {
|
|
"type": "object",
|
|
"properties": {
|
|
"apps": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/codersdk.WorkspaceApp"
|
|
}
|
|
},
|
|
"architecture": {
|
|
"type": "string"
|
|
},
|
|
"connection_timeout_seconds": {
|
|
"type": "integer"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"directory": {
|
|
"type": "string"
|
|
},
|
|
"disconnected_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"environment_variables": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"first_connected_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"id": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
},
|
|
"instance_id": {
|
|
"type": "string"
|
|
},
|
|
"last_connected_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"latency": {
|
|
"description": "DERPLatency is mapped by region name (e.g. \"New York City\", \"Seattle\").",
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"$ref": "#/definitions/codersdk.DERPRegion"
|
|
}
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"operating_system": {
|
|
"type": "string"
|
|
},
|
|
"resource_id": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
},
|
|
"startup_script": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"enum": [
|
|
"connecting",
|
|
"connected",
|
|
"disconnected",
|
|
"timeout"
|
|
],
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/definitions/codersdk.WorkspaceAgentStatus"
|
|
}
|
|
]
|
|
},
|
|
"troubleshooting_url": {
|
|
"type": "string"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"version": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.WorkspaceAgentAuthenticateResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"session_token": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.WorkspaceAgentConnectionInfo": {
|
|
"type": "object",
|
|
"properties": {
|
|
"derp_map": {
|
|
"$ref": "#/definitions/tailcfg.DERPMap"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.WorkspaceAgentGitAuthResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"password": {
|
|
"type": "string"
|
|
},
|
|
"url": {
|
|
"type": "string"
|
|
},
|
|
"username": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.WorkspaceAgentMetadata": {
|
|
"type": "object",
|
|
"properties": {
|
|
"apps": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/codersdk.WorkspaceApp"
|
|
}
|
|
},
|
|
"derpmap": {
|
|
"$ref": "#/definitions/tailcfg.DERPMap"
|
|
},
|
|
"directory": {
|
|
"type": "string"
|
|
},
|
|
"environment_variables": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"git_auth_configs": {
|
|
"description": "GitAuthConfigs stores the number of Git configurations\nthe Coder deployment has. If this number is \u003e0, we\nset up special configuration in the workspace.",
|
|
"type": "integer"
|
|
},
|
|
"motd_file": {
|
|
"type": "string"
|
|
},
|
|
"startup_script": {
|
|
"type": "string"
|
|
},
|
|
"vscode_port_proxy_uri": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.WorkspaceAgentStatus": {
|
|
"type": "string",
|
|
"enum": [
|
|
"connecting",
|
|
"connected",
|
|
"disconnected",
|
|
"timeout"
|
|
],
|
|
"x-enum-varnames": [
|
|
"WorkspaceAgentConnecting",
|
|
"WorkspaceAgentConnected",
|
|
"WorkspaceAgentDisconnected",
|
|
"WorkspaceAgentTimeout"
|
|
]
|
|
},
|
|
"codersdk.WorkspaceApp": {
|
|
"type": "object",
|
|
"properties": {
|
|
"command": {
|
|
"type": "string"
|
|
},
|
|
"display_name": {
|
|
"description": "DisplayName is a friendly name for the app.",
|
|
"type": "string"
|
|
},
|
|
"external": {
|
|
"description": "External specifies whether the URL should be opened externally on\nthe client or not.",
|
|
"type": "boolean"
|
|
},
|
|
"health": {
|
|
"$ref": "#/definitions/codersdk.WorkspaceAppHealth"
|
|
},
|
|
"healthcheck": {
|
|
"description": "Healthcheck specifies the configuration for checking app health.",
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/definitions/codersdk.Healthcheck"
|
|
}
|
|
]
|
|
},
|
|
"icon": {
|
|
"description": "Icon is a relative path or external URL that specifies\nan icon to be displayed in the dashboard.",
|
|
"type": "string"
|
|
},
|
|
"id": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
},
|
|
"sharing_level": {
|
|
"enum": [
|
|
"owner",
|
|
"authenticated",
|
|
"public"
|
|
],
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/definitions/codersdk.WorkspaceAppSharingLevel"
|
|
}
|
|
]
|
|
},
|
|
"slug": {
|
|
"description": "Slug is a unique identifier within the agent.",
|
|
"type": "string"
|
|
},
|
|
"subdomain": {
|
|
"description": "Subdomain denotes whether the app should be accessed via a path on the\n` + "`" + `coder server` + "`" + ` or via a hostname-based dev URL. If this is set to true\nand there is no app wildcard configured on the server, the app will not\nbe accessible in the UI.",
|
|
"type": "boolean"
|
|
},
|
|
"url": {
|
|
"description": "URL is the address being proxied to inside the workspace.\nIf external is specified, this will be opened on the client.",
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.WorkspaceAppHealth": {
|
|
"type": "string",
|
|
"enum": [
|
|
"disabled",
|
|
"initializing",
|
|
"healthy",
|
|
"unhealthy"
|
|
],
|
|
"x-enum-varnames": [
|
|
"WorkspaceAppHealthDisabled",
|
|
"WorkspaceAppHealthInitializing",
|
|
"WorkspaceAppHealthHealthy",
|
|
"WorkspaceAppHealthUnhealthy"
|
|
]
|
|
},
|
|
"codersdk.WorkspaceAppSharingLevel": {
|
|
"type": "string",
|
|
"enum": [
|
|
"owner",
|
|
"authenticated",
|
|
"public"
|
|
],
|
|
"x-enum-varnames": [
|
|
"WorkspaceAppSharingLevelOwner",
|
|
"WorkspaceAppSharingLevelAuthenticated",
|
|
"WorkspaceAppSharingLevelPublic"
|
|
]
|
|
},
|
|
"codersdk.WorkspaceBuild": {
|
|
"type": "object",
|
|
"properties": {
|
|
"build_number": {
|
|
"type": "integer"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"daily_cost": {
|
|
"type": "integer"
|
|
},
|
|
"deadline": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"id": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
},
|
|
"initiator_id": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
},
|
|
"initiator_name": {
|
|
"type": "string"
|
|
},
|
|
"job": {
|
|
"$ref": "#/definitions/codersdk.ProvisionerJob"
|
|
},
|
|
"reason": {
|
|
"enum": [
|
|
"initiator",
|
|
"autostart",
|
|
"autostop"
|
|
],
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/definitions/codersdk.BuildReason"
|
|
}
|
|
]
|
|
},
|
|
"resources": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/codersdk.WorkspaceResource"
|
|
}
|
|
},
|
|
"status": {
|
|
"enum": [
|
|
"pending",
|
|
"starting",
|
|
"running",
|
|
"stopping",
|
|
"stopped",
|
|
"failed",
|
|
"canceling",
|
|
"canceled",
|
|
"deleting",
|
|
"deleted"
|
|
],
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/definitions/codersdk.WorkspaceStatus"
|
|
}
|
|
]
|
|
},
|
|
"template_version_id": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
},
|
|
"template_version_name": {
|
|
"type": "string"
|
|
},
|
|
"transition": {
|
|
"enum": [
|
|
"start",
|
|
"stop",
|
|
"delete"
|
|
],
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/definitions/codersdk.WorkspaceTransition"
|
|
}
|
|
]
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"workspace_id": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
},
|
|
"workspace_name": {
|
|
"type": "string"
|
|
},
|
|
"workspace_owner_id": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
},
|
|
"workspace_owner_name": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.WorkspaceBuildParameter": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"value": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.WorkspaceQuota": {
|
|
"type": "object",
|
|
"properties": {
|
|
"budget": {
|
|
"type": "integer"
|
|
},
|
|
"credits_consumed": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.WorkspaceResource": {
|
|
"type": "object",
|
|
"properties": {
|
|
"agents": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/codersdk.WorkspaceAgent"
|
|
}
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"daily_cost": {
|
|
"type": "integer"
|
|
},
|
|
"hide": {
|
|
"type": "boolean"
|
|
},
|
|
"icon": {
|
|
"type": "string"
|
|
},
|
|
"id": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
},
|
|
"job_id": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
},
|
|
"metadata": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/codersdk.WorkspaceResourceMetadata"
|
|
}
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"type": {
|
|
"type": "string"
|
|
},
|
|
"workspace_transition": {
|
|
"enum": [
|
|
"start",
|
|
"stop",
|
|
"delete"
|
|
],
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/definitions/codersdk.WorkspaceTransition"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"codersdk.WorkspaceResourceMetadata": {
|
|
"type": "object",
|
|
"properties": {
|
|
"key": {
|
|
"type": "string"
|
|
},
|
|
"sensitive": {
|
|
"type": "boolean"
|
|
},
|
|
"value": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"codersdk.WorkspaceStatus": {
|
|
"type": "string",
|
|
"enum": [
|
|
"pending",
|
|
"starting",
|
|
"running",
|
|
"stopping",
|
|
"stopped",
|
|
"failed",
|
|
"canceling",
|
|
"canceled",
|
|
"deleting",
|
|
"deleted"
|
|
],
|
|
"x-enum-varnames": [
|
|
"WorkspaceStatusPending",
|
|
"WorkspaceStatusStarting",
|
|
"WorkspaceStatusRunning",
|
|
"WorkspaceStatusStopping",
|
|
"WorkspaceStatusStopped",
|
|
"WorkspaceStatusFailed",
|
|
"WorkspaceStatusCanceling",
|
|
"WorkspaceStatusCanceled",
|
|
"WorkspaceStatusDeleting",
|
|
"WorkspaceStatusDeleted"
|
|
]
|
|
},
|
|
"codersdk.WorkspaceTransition": {
|
|
"type": "string",
|
|
"enum": [
|
|
"start",
|
|
"stop",
|
|
"delete"
|
|
],
|
|
"x-enum-varnames": [
|
|
"WorkspaceTransitionStart",
|
|
"WorkspaceTransitionStop",
|
|
"WorkspaceTransitionDelete"
|
|
]
|
|
},
|
|
"codersdk.WorkspacesResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"count": {
|
|
"type": "integer"
|
|
},
|
|
"workspaces": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/codersdk.Workspace"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"database.ParameterDestinationScheme": {
|
|
"type": "string",
|
|
"enum": [
|
|
"none",
|
|
"environment_variable",
|
|
"provisioner_variable"
|
|
],
|
|
"x-enum-varnames": [
|
|
"ParameterDestinationSchemeNone",
|
|
"ParameterDestinationSchemeEnvironmentVariable",
|
|
"ParameterDestinationSchemeProvisionerVariable"
|
|
]
|
|
},
|
|
"database.ParameterScope": {
|
|
"type": "string",
|
|
"enum": [
|
|
"template",
|
|
"import_job",
|
|
"workspace"
|
|
],
|
|
"x-enum-varnames": [
|
|
"ParameterScopeTemplate",
|
|
"ParameterScopeImportJob",
|
|
"ParameterScopeWorkspace"
|
|
]
|
|
},
|
|
"database.ParameterSourceScheme": {
|
|
"type": "string",
|
|
"enum": [
|
|
"none",
|
|
"data"
|
|
],
|
|
"x-enum-varnames": [
|
|
"ParameterSourceSchemeNone",
|
|
"ParameterSourceSchemeData"
|
|
]
|
|
},
|
|
"parameter.ComputedValue": {
|
|
"type": "object",
|
|
"properties": {
|
|
"created_at": {
|
|
"type": "string"
|
|
},
|
|
"default_source_value": {
|
|
"type": "boolean"
|
|
},
|
|
"destination_scheme": {
|
|
"$ref": "#/definitions/database.ParameterDestinationScheme"
|
|
},
|
|
"id": {
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"schema_id": {
|
|
"type": "string"
|
|
},
|
|
"scope": {
|
|
"$ref": "#/definitions/database.ParameterScope"
|
|
},
|
|
"scope_id": {
|
|
"type": "string"
|
|
},
|
|
"source_scheme": {
|
|
"$ref": "#/definitions/database.ParameterSourceScheme"
|
|
},
|
|
"source_value": {
|
|
"type": "string"
|
|
},
|
|
"updated_at": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"sql.NullTime": {
|
|
"type": "object",
|
|
"properties": {
|
|
"time": {
|
|
"type": "string"
|
|
},
|
|
"valid": {
|
|
"description": "Valid is true if Time is not NULL",
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"tailcfg.DERPMap": {
|
|
"type": "object",
|
|
"properties": {
|
|
"omitDefaultRegions": {
|
|
"description": "OmitDefaultRegions specifies to not use Tailscale's DERP servers, and only use those\nspecified in this DERPMap. If there are none set outside of the defaults, this is a noop.",
|
|
"type": "boolean"
|
|
},
|
|
"regions": {
|
|
"description": "Regions is the set of geographic regions running DERP node(s).\n\nIt's keyed by the DERPRegion.RegionID.\n\nThe numbers are not necessarily contiguous.",
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"$ref": "#/definitions/tailcfg.DERPRegion"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"tailcfg.DERPNode": {
|
|
"type": "object",
|
|
"properties": {
|
|
"certName": {
|
|
"description": "CertName optionally specifies the expected TLS cert common\nname. If empty, HostName is used. If CertName is non-empty,\nHostName is only used for the TCP dial (if IPv4/IPv6 are\nnot present) + TLS ClientHello.",
|
|
"type": "string"
|
|
},
|
|
"derpport": {
|
|
"description": "DERPPort optionally provides an alternate TLS port number\nfor the DERP HTTPS server.\n\nIf zero, 443 is used.",
|
|
"type": "integer"
|
|
},
|
|
"forceHTTP": {
|
|
"description": "ForceHTTP is used by unit tests to force HTTP.\nIt should not be set by users.",
|
|
"type": "boolean"
|
|
},
|
|
"hostName": {
|
|
"description": "HostName is the DERP node's hostname.\n\nIt is required but need not be unique; multiple nodes may\nhave the same HostName but vary in configuration otherwise.",
|
|
"type": "string"
|
|
},
|
|
"insecureForTests": {
|
|
"description": "InsecureForTests is used by unit tests to disable TLS verification.\nIt should not be set by users.",
|
|
"type": "boolean"
|
|
},
|
|
"ipv4": {
|
|
"description": "IPv4 optionally forces an IPv4 address to use, instead of using DNS.\nIf empty, A record(s) from DNS lookups of HostName are used.\nIf the string is not an IPv4 address, IPv4 is not used; the\nconventional string to disable IPv4 (and not use DNS) is\n\"none\".",
|
|
"type": "string"
|
|
},
|
|
"ipv6": {
|
|
"description": "IPv6 optionally forces an IPv6 address to use, instead of using DNS.\nIf empty, AAAA record(s) from DNS lookups of HostName are used.\nIf the string is not an IPv6 address, IPv6 is not used; the\nconventional string to disable IPv6 (and not use DNS) is\n\"none\".",
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"description": "Name is a unique node name (across all regions).\nIt is not a host name.\nIt's typically of the form \"1b\", \"2a\", \"3b\", etc. (region\nID + suffix within that region)",
|
|
"type": "string"
|
|
},
|
|
"regionID": {
|
|
"description": "RegionID is the RegionID of the DERPRegion that this node\nis running in.",
|
|
"type": "integer"
|
|
},
|
|
"stunonly": {
|
|
"description": "STUNOnly marks a node as only a STUN server and not a DERP\nserver.",
|
|
"type": "boolean"
|
|
},
|
|
"stunport": {
|
|
"description": "Port optionally specifies a STUN port to use.\nZero means 3478.\nTo disable STUN on this node, use -1.",
|
|
"type": "integer"
|
|
},
|
|
"stuntestIP": {
|
|
"description": "STUNTestIP is used in tests to override the STUN server's IP.\nIf empty, it's assumed to be the same as the DERP server.",
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"tailcfg.DERPRegion": {
|
|
"type": "object",
|
|
"properties": {
|
|
"avoid": {
|
|
"description": "Avoid is whether the client should avoid picking this as its home\nregion. The region should only be used if a peer is there.\nClients already using this region as their home should migrate\naway to a new region without Avoid set.",
|
|
"type": "boolean"
|
|
},
|
|
"embeddedRelay": {
|
|
"description": "EmbeddedRelay is true when the region is bundled with the Coder\ncontrol plane.",
|
|
"type": "boolean"
|
|
},
|
|
"nodes": {
|
|
"description": "Nodes are the DERP nodes running in this region, in\npriority order for the current client. Client TLS\nconnections should ideally only go to the first entry\n(falling back to the second if necessary). STUN packets\nshould go to the first 1 or 2.\n\nIf nodes within a region route packets amongst themselves,\nbut not to other regions. That said, each user/domain\nshould get a the same preferred node order, so if all nodes\nfor a user/network pick the first one (as they should, when\nthings are healthy), the inter-cluster routing is minimal\nto zero.",
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/tailcfg.DERPNode"
|
|
}
|
|
},
|
|
"regionCode": {
|
|
"description": "RegionCode is a short name for the region. It's usually a popular\ncity or airport code in the region: \"nyc\", \"sf\", \"sin\",\n\"fra\", etc.",
|
|
"type": "string"
|
|
},
|
|
"regionID": {
|
|
"description": "RegionID is a unique integer for a geographic region.\n\nIt corresponds to the legacy derpN.tailscale.com hostnames\nused by older clients. (Older clients will continue to resolve\nderpN.tailscale.com when contacting peers, rather than use\nthe server-provided DERPMap)\n\nRegionIDs must be non-zero, positive, and guaranteed to fit\nin a JavaScript number.\n\nRegionIDs in range 900-999 are reserved for end users to run their\nown DERP nodes.",
|
|
"type": "integer"
|
|
},
|
|
"regionName": {
|
|
"description": "RegionName is a long English name for the region: \"New York City\",\n\"San Francisco\", \"Singapore\", \"Frankfurt\", etc.",
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"securityDefinitions": {
|
|
"CoderSessionToken": {
|
|
"type": "apiKey",
|
|
"name": "Coder-Session-Token",
|
|
"in": "header"
|
|
}
|
|
}
|
|
}`
|
|
|
|
// SwaggerInfo holds exported Swagger Info so clients can modify it
|
|
var SwaggerInfo = &swag.Spec{
|
|
Version: "2.0",
|
|
Host: "",
|
|
BasePath: "/api/v2",
|
|
Schemes: []string{},
|
|
Title: "Coder API",
|
|
Description: "Coderd is the service created by running coder server. It is a thin API that connects workspaces, provisioners and users. coderd stores its state in Postgres and is the only service that communicates with Postgres.",
|
|
InfoInstanceName: "swagger",
|
|
SwaggerTemplate: docTemplate,
|
|
}
|
|
|
|
func init() {
|
|
swag.Register(SwaggerInfo.InstanceName(), SwaggerInfo)
|
|
}
|