Current browser session
/auth/session
Returns the bound user. A suspended user is refused.
Authentication does not grant every action. Company scope, roles and current record access still apply. Protected writes require CSRF verification; company writes also require recent sign-in. Read the authentication guide.
// Run only in your authorised same-origin test application.
const response = await fetch('/auth/session', {
method: 'GET',
credentials: 'same-origin',
});
if (!response.ok) throw new Error(`Request failed: ${response.status}`);
// Inspect Content-Type before reading JSON, text or a download.
// A 204 response has no body. Handle errors using the feature guide.Request parameters
| Name | Location | Requirement | Schema |
|---|---|---|---|
__Host-session | cookie | Required | {"type":"string"} |
Responses
200 OK
application/json
Schema: SessionOutputBody
$schemastring · optional- A URL to the JSON Schema for this object.
organisation_idstring · required- Organisation bound to this session
user_idstring · required- Local user bound to this session
Complete schema definition
{
"additionalProperties": false,
"properties": {
"$schema": {
"description": "A URL to the JSON Schema for this object.",
"examples": [
"https://example.com/schemas/SessionOutputBody.json"
],
"format": "uri",
"readOnly": true,
"type": "string"
},
"organisation_id": {
"description": "Organisation bound to this session",
"type": "string"
},
"user_id": {
"description": "Local user bound to this session",
"type": "string"
}
},
"required": [
"organisation_id",
"user_id"
],
"type": "object"
}default Error
application/problem+json
Schema: ErrorModel
$schemastring · optional- A URL to the JSON Schema for this object.
detailstring · optional- A human-readable explanation specific to this occurrence of the problem.
errorsarray | null · optional- Optional list of individual error details
instancestring · optional- A URI reference that identifies the specific occurrence of the problem.
statusinteger · optional- HTTP status code
titlestring · optional- A short, human-readable summary of the problem type. This value should not change between occurrences of the error.
typestring · optional- A URI reference to human-readable documentation for the error.
Complete schema definition
{
"additionalProperties": false,
"properties": {
"$schema": {
"description": "A URL to the JSON Schema for this object.",
"examples": [
"https://example.com/schemas/ErrorModel.json"
],
"format": "uri",
"readOnly": true,
"type": "string"
},
"detail": {
"description": "A human-readable explanation specific to this occurrence of the problem.",
"examples": [
"Property foo is required but is missing."
],
"type": "string"
},
"errors": {
"description": "Optional list of individual error details",
"items": {
"$ref": "#/components/schemas/ErrorDetail"
},
"type": [
"array",
"null"
]
},
"instance": {
"description": "A URI reference that identifies the specific occurrence of the problem.",
"examples": [
"https://example.com/error-log/abc123"
],
"format": "uri",
"type": "string"
},
"status": {
"description": "HTTP status code",
"examples": [
400
],
"format": "int64",
"type": "integer"
},
"title": {
"description": "A short, human-readable summary of the problem type. This value should not change between occurrences of the error.",
"examples": [
"Bad Request"
],
"type": "string"
},
"type": {
"default": "about:blank",
"description": "A URI reference to human-readable documentation for the error.",
"examples": [
"https://example.com/errors/example"
],
"format": "uri",
"type": "string"
}
},
"type": "object"
}The default error response can cover several status codes. Read error handling and retry guidance.
Referenced schemas
Expand a named definition to inspect nested fields and references. The download contains the complete OpenAPI document.
ErrorDetail
{
"additionalProperties": false,
"properties": {
"location": {
"description": "Where the error occurred, e.g. 'body.items[3].tags' or 'path.thing-id'",
"type": "string"
},
"message": {
"description": "Error message text",
"type": "string"
},
"value": {
"description": "The value at the given location"
}
},
"type": "object"
}ErrorModel
{
"additionalProperties": false,
"properties": {
"$schema": {
"description": "A URL to the JSON Schema for this object.",
"examples": [
"https://example.com/schemas/ErrorModel.json"
],
"format": "uri",
"readOnly": true,
"type": "string"
},
"detail": {
"description": "A human-readable explanation specific to this occurrence of the problem.",
"examples": [
"Property foo is required but is missing."
],
"type": "string"
},
"errors": {
"description": "Optional list of individual error details",
"items": {
"$ref": "#/components/schemas/ErrorDetail"
},
"type": [
"array",
"null"
]
},
"instance": {
"description": "A URI reference that identifies the specific occurrence of the problem.",
"examples": [
"https://example.com/error-log/abc123"
],
"format": "uri",
"type": "string"
},
"status": {
"description": "HTTP status code",
"examples": [
400
],
"format": "int64",
"type": "integer"
},
"title": {
"description": "A short, human-readable summary of the problem type. This value should not change between occurrences of the error.",
"examples": [
"Bad Request"
],
"type": "string"
},
"type": {
"default": "about:blank",
"description": "A URI reference to human-readable documentation for the error.",
"examples": [
"https://example.com/errors/example"
],
"format": "uri",
"type": "string"
}
},
"type": "object"
}SessionOutputBody
{
"additionalProperties": false,
"properties": {
"$schema": {
"description": "A URL to the JSON Schema for this object.",
"examples": [
"https://example.com/schemas/SessionOutputBody.json"
],
"format": "uri",
"readOnly": true,
"type": "string"
},
"organisation_id": {
"description": "Organisation bound to this session",
"type": "string"
},
"user_id": {
"description": "Local user bound to this session",
"type": "string"
}
},
"required": [
"organisation_id",
"user_id"
],
"type": "object"
}Operation ID: browser-session · Contract 0.0.0-dev