The API reference is in English.

Current source preview reference

POST /v1/auth/ide/enrollments

Create ide enrollment. Permissions, parameters, responses and examples.

0.1.0 · source bccff29 · Immutable snapshot · Download OpenAPI specification

Create ide enrollment

Create one browser-reviewed pending authority without a pasted secret.

Source preview; no stable third-party integration promise. This page makes no request to a local installation.

Authority

Pending IDE enrollment entry. Exact loopback control Host and authentication rate limits apply.

Inspect the authority source · Authentication guide

Parameters and headers

No explicit path, query or header parameters are declared here. The authority boundary still applies.

Request body

JSON body · required · IdeEnrollmentRequest

FieldTypePresence
client_namestringRequired
client_slotstringRequired
expected_active_generationintegerRequired
Complete declared request schema
{
  "additionalProperties": false,
  "properties": {
    "client_name": {
      "maxLength": 120,
      "minLength": 1,
      "title": "Client Name",
      "type": "string"
    },
    "client_slot": {
      "pattern": "^ks1_[A-Za-z0-9_-]{43}$",
      "title": "Client Slot",
      "type": "string"
    },
    "expected_active_generation": {
      "maximum": 2147483647,
      "minimum": 0,
      "title": "Expected Active Generation",
      "type": "integer"
    }
  },
  "required": [
    "client_name",
    "client_slot",
    "expected_active_generation"
  ],
  "title": "IdeEnrollmentRequest",
  "type": "object"
}

Responses

StatusMeaning and declared shape
201

Successful Response

application/json · IdeEnrollmentResponse
{
  "additionalProperties": false,
  "properties": {
    "activation_expires_at": {
      "format": "date-time",
      "title": "Activation Expires At",
      "type": "string"
    },
    "capability": {
      "title": "Capability",
      "type": "string"
    },
    "client_slot": {
      "title": "Client Slot",
      "type": "string"
    },
    "generation": {
      "title": "Generation",
      "type": "integer"
    },
    "request_id": {
      "pattern": "^ker1_[A-Za-z0-9_-]{24}$",
      "title": "Request Id",
      "type": "string"
    },
    "requested_at": {
      "format": "date-time",
      "title": "Requested At",
      "type": "string"
    },
    "revision": {
      "const": 1,
      "default": 1,
      "title": "Revision",
      "type": "integer"
    },
    "scopes": {
      "items": {
        "type": "string"
      },
      "title": "Scopes",
      "type": "array"
    },
    "state": {
      "const": "awaiting_approval",
      "default": "awaiting_approval",
      "title": "State",
      "type": "string"
    },
    "verification_code": {
      "pattern": "^[A-HJ-NP-Z2-9]{4}-[A-HJ-NP-Z2-9]{4}$",
      "title": "Verification Code",
      "type": "string"
    }
  },
  "required": [
    "request_id",
    "verification_code",
    "capability",
    "scopes",
    "client_slot",
    "generation",
    "requested_at",
    "activation_expires_at"
  ],
  "title": "IdeEnrollmentResponse",
  "type": "object"
}
400

Exact host, malformed request or URL credential refusal

application/json · object
{
  "properties": {
    "detail": {
      "type": "string"
    }
  },
  "required": [
    "detail"
  ],
  "type": "object"
}
401

Missing or invalid membership

application/json · object
{
  "properties": {
    "detail": {
      "type": "string"
    }
  },
  "required": [
    "detail"
  ],
  "type": "object"
}
403

Exact origin, CSRF or route authority refusal

application/json · object
{
  "properties": {
    "detail": {
      "type": "string"
    }
  },
  "required": [
    "detail"
  ],
  "type": "object"
}
422

Validation Error

application/json · HTTPValidationError
{
  "properties": {
    "detail": {
      "items": {
        "$ref": "#/components/schemas/ValidationError"
      },
      "title": "Detail",
      "type": "array"
    }
  },
  "title": "HTTPValidationError",
  "type": "object"
}
429

Authentication rate or connection limit

application/json · object
{
  "properties": {
    "detail": {
      "type": "string"
    }
  },
  "required": [
    "detail"
  ],
  "type": "object"
}

An empty or broad schema preserves the source contract. It is not a promise of an empty response.

Source-linked errors

Literal HTTP errors in this handler and same-file helper call graph, plus control middleware. Dynamic and cross-module failures may add other errors; source links are authoritative.

No literal handler errors were found by the bounded source extractor. Middleware and dependent operations can still fail.

Read the recovery guide

Synthetic examples

These examples validate declared JSON shapes and formats. They contain no real installation data and do not prove runtime admission, cross-field validation, authority or successful work.

Request JSON
{
  "client_name": "synthetic",
  "client_slot": "ks1_AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
  "expected_active_generation": 1
}
Response 201 JSON
{
  "activation_expires_at": "2026-01-01T00:00:00Z",
  "capability": "synthetic",
  "client_slot": "synthetic",
  "generation": 1,
  "request_id": "ker1_AAAAAAAAAAAAAAAAAAAAAAAA",
  "requested_at": "2026-01-01T00:00:00Z",
  "scopes": [],
  "verification_code": "AAAA-AAAA"
}
Download this service's complete OpenAPI

All referenced models remain in its components section. Browse control model definitions.