{ "components": { "responses": { "BadRequestResponse": { "content": { "application/json": { "example": { "error": { "code": "bad-request", "message": "Bad request.", "status": 400 } }, "schema": { "$ref": "#/components/schemas/ApiError" } } }, "description": "Bad request." }, "ForbiddenResponse": { "content": { "application/json": { "example": { "error": { "code": "forbidden", "message": "Forbidden.", "status": 403 } }, "schema": { "$ref": "#/components/schemas/ApiError" } } }, "description": "Forbidden." }, "NotFoundResponse": { "content": { "application/json": { "example": { "error": { "code": "not-found", "message": "Not found.", "status": 404 } }, "schema": { "$ref": "#/components/schemas/ApiError" } } }, "description": "Not found." }, "PayloadTooLargeResponse": { "content": { "application/json": { "example": { "error": { "code": "payload-too-large", "message": "Payload too large.", "status": 413 } }, "schema": { "$ref": "#/components/schemas/ApiError" } } }, "description": "Payload too large." }, "ServerErrorResponse": { "content": { "application/json": { "example": { "error": { "code": "server-error", "message": "Server error.", "status": 500 } }, "schema": { "$ref": "#/components/schemas/ApiError" } } }, "description": "Server error." }, "ServiceUnavailableResponse": { "content": { "application/json": { "example": { "error": { "code": "service-unavailable", "message": "Service unavailable.", "status": 503 } }, "schema": { "$ref": "#/components/schemas/ApiError" } } }, "description": "Service unavailable." }, "UnauthorizedResponse": { "content": { "application/json": { "example": { "error": { "code": "unauthorized", "message": "Unauthorized.", "status": 401 } }, "schema": { "$ref": "#/components/schemas/ApiError" } } }, "description": "Unauthorized." } }, "schemas": { "ApiError": { "additionalProperties": false, "description": "Standard Umami API error response.", "properties": { "error": { "additionalProperties": {}, "properties": { "code": { "type": "string" }, "message": { "type": "string" }, "status": { "maximum": 9007199254740991, "minimum": -9007199254740991, "type": "integer" } }, "required": [ "message", "code", "status" ], "type": "object" } }, "required": [ "error" ], "type": "object" }, "CreateWebsiteRequest": { "properties": { "domain": { "maxLength": 500, "pattern": "^(localhost(:[1-9]\\d{0,4})?|((?=[a-z0-9-_]{1,63}\\.)(xn--)?[a-z0-9-_]+(-[a-z0-9-_]+)*\\.)+(xn--)?[a-z0-9-_]{2,63})$", "type": "string" }, "id": { "anyOf": [ { "format": "uuid", "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$", "type": "string" }, { "type": "null" } ] }, "name": { "maxLength": 100, "minLength": 1, "type": "string" }, "shareId": { "anyOf": [ { "maxLength": 50, "type": "string" }, { "type": "null" } ] }, "teamId": { "anyOf": [ { "format": "uuid", "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$", "type": "string" }, { "type": "null" } ] } }, "required": [ "name", "domain" ], "type": "object" }, "LoginRequest": { "properties": { "password": { "description": "Umami password.", "type": "string" }, "username": { "description": "Umami username.", "type": "string" } }, "required": [ "username", "password" ], "type": "object" }, "LoginResponse": { "anyOf": [ { "additionalProperties": false, "properties": { "partialToken": { "type": "string" }, "requiresTwoFactor": { "const": true, "type": "boolean" } }, "required": [ "requiresTwoFactor", "partialToken" ], "type": "object" }, { "additionalProperties": false, "properties": { "token": { "type": "string" }, "user": { "$ref": "#/components/schemas/LoginUser" } }, "required": [ "token", "user" ], "type": "object" } ] }, "LoginTeam": { "additionalProperties": false, "properties": { "id": { "format": "uuid", "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$", "type": "string" }, "logoUrl": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "name": { "type": "string" } }, "required": [ "id", "name", "logoUrl" ], "type": "object" }, "LoginUser": { "additionalProperties": false, "properties": { "createdAt": { "anyOf": [ { "format": "date-time", "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$", "type": "string" }, { "type": "null" } ] }, "id": { "format": "uuid", "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$", "type": "string" }, "isAdmin": { "type": "boolean" }, "role": { "type": "string" }, "teams": { "items": { "$ref": "#/components/schemas/LoginTeam" }, "type": "array" }, "username": { "type": "string" } }, "required": [ "id", "username", "role", "createdAt", "isAdmin", "teams" ], "type": "object" }, "Ok": { "additionalProperties": false, "description": "Successful operation response.", "properties": { "ok": { "const": true, "type": "boolean" } }, "required": [ "ok" ], "type": "object" }, "ReplayConfig": { "additionalProperties": {}, "properties": { "blockSelector": { "type": "string" }, "heatmapEnabled": { "type": "boolean" }, "heatmapSampleRate": { "maximum": 1, "minimum": 0, "type": "number" }, "maskLevel": { "enum": [ "strict", "moderate" ], "type": "string" }, "maxDuration": { "exclusiveMinimum": 0, "maximum": 9007199254740991, "type": "integer" }, "replayEnabled": { "type": "boolean" }, "sampleRate": { "maximum": 1, "minimum": 0, "type": "number" } }, "type": "object" }, "ReplayConfigInput": { "properties": { "blockSelector": { "type": "string" }, "heatmapEnabled": { "type": "boolean" }, "heatmapSampleRate": { "maximum": 1, "minimum": 0, "type": "number" }, "maskLevel": { "enum": [ "strict", "moderate" ], "type": "string" }, "maxDuration": { "exclusiveMinimum": 0, "maximum": 9007199254740991, "type": "integer" }, "replayEnabled": { "type": "boolean" }, "sampleRate": { "maximum": 1, "minimum": 0, "type": "number" } }, "type": "object" }, "UpdateWebsiteRequest": { "properties": { "domain": { "maxLength": 500, "pattern": "^(localhost(:[1-9]\\d{0,4})?|((?=[a-z0-9-_]{1,63}\\.)(xn--)?[a-z0-9-_]+(-[a-z0-9-_]+)*\\.)+(xn--)?[a-z0-9-_]{2,63})$", "type": "string" }, "name": { "maxLength": 100, "minLength": 1, "type": "string" }, "replayConfig": { "anyOf": [ { "$ref": "#/components/schemas/ReplayConfigInput" }, { "type": "null" } ] }, "shareId": { "anyOf": [ { "maxLength": 50, "type": "string" }, { "type": "null" } ] } }, "type": "object" }, "Website": { "additionalProperties": false, "properties": { "createdAt": { "anyOf": [ { "format": "date-time", "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$", "type": "string" }, { "type": "null" } ] }, "createdBy": { "anyOf": [ { "format": "uuid", "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$", "type": "string" }, { "type": "null" } ] }, "deletedAt": { "anyOf": [ { "format": "date-time", "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$", "type": "string" }, { "type": "null" } ] }, "domain": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "id": { "format": "uuid", "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$", "type": "string" }, "name": { "type": "string" }, "recorderEnabled": { "type": "boolean" }, "replayConfig": { "anyOf": [ { "$ref": "#/components/schemas/ReplayConfig" }, { "type": "null" } ] }, "resetAt": { "anyOf": [ { "format": "date-time", "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$", "type": "string" }, { "type": "null" } ] }, "shareId": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "teamId": { "anyOf": [ { "format": "uuid", "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$", "type": "string" }, { "type": "null" } ] }, "updatedAt": { "anyOf": [ { "format": "date-time", "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$", "type": "string" }, { "type": "null" } ] }, "user": { "$ref": "#/components/schemas/WebsiteUser" }, "userId": { "anyOf": [ { "format": "uuid", "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$", "type": "string" }, { "type": "null" } ] } }, "required": [ "id", "name", "domain", "resetAt", "userId", "teamId", "createdBy", "createdAt", "updatedAt", "deletedAt", "recorderEnabled", "replayConfig", "shareId" ], "type": "object" }, "WebsitePage": { "additionalProperties": false, "properties": { "count": { "maximum": 9007199254740991, "minimum": 0, "type": "integer" }, "data": { "items": { "$ref": "#/components/schemas/Website" }, "type": "array" }, "orderBy": { "type": "string" }, "page": { "exclusiveMinimum": 0, "maximum": 9007199254740991, "type": "integer" }, "pageSize": { "maximum": 9007199254740991, "minimum": 0, "type": "integer" }, "search": { "type": "string" } }, "required": [ "data", "count", "page", "pageSize" ], "type": "object" }, "WebsiteUser": { "additionalProperties": false, "properties": { "id": { "format": "uuid", "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$", "type": "string" }, "username": { "type": "string" } }, "required": [ "id", "username" ], "type": "object" } }, "securitySchemes": { "bearerAuth": { "bearerFormat": "JWT", "description": "Token returned by POST /api/auth/login.", "scheme": "bearer", "type": "http" }, "shareContext": { "description": "Required context header when authenticating with a share token.", "in": "header", "name": "x-umami-share-context", "type": "apiKey" }, "shareToken": { "description": "Signed token returned by a share endpoint.", "in": "header", "name": "x-umami-share-token", "type": "apiKey" } } }, "externalDocs": { "description": "Umami API documentation", "url": "https://docs.umami.is/docs/api" }, "info": { "description": "REST API for Umami analytics. Every App Router API operation is included. Operations marked with x-umami-contract: inferred are generated from handler source; colocated explicit contracts provide curated descriptions and exact response models. Self-hosted deployments serve these paths beneath their configured BASE_PATH.", "license": { "identifier": "MIT", "name": "MIT" }, "title": "Umami API", "version": "3.3.0" }, "openapi": "3.1.0", "paths": { "/api/2fa/disable": { "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPost2faDisable", "requestBody": { "content": { "application/json": { "schema": { "properties": { "password": { "type": "string" }, "token": { "maxLength": 6, "minLength": 6, "type": "string" } }, "required": [ "password", "token" ], "type": "object" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" }, "403": { "$ref": "#/components/responses/ForbiddenResponse" }, "404": { "$ref": "#/components/responses/NotFoundResponse" }, "429": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "503": { "$ref": "#/components/responses/ServiceUnavailableResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Create or update 2fa disable", "tags": [ "Two-factor authentication" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/2fa/disable/route.ts" } }, "/api/2fa/setup/cancel": { "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPost2faSetupCancel", "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" }, "404": { "$ref": "#/components/responses/NotFoundResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Create or update 2fa setup cancel", "tags": [ "Two-factor authentication" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/2fa/setup/cancel/route.ts" } }, "/api/2fa/setup/confirm": { "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPost2faSetupConfirm", "requestBody": { "content": { "application/json": { "schema": { "properties": { "token": { "maxLength": 6, "minLength": 6, "type": "string" } }, "required": [ "token" ], "type": "object" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" }, "404": { "$ref": "#/components/responses/NotFoundResponse" }, "429": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "503": { "$ref": "#/components/responses/ServiceUnavailableResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Create or update 2fa setup confirm", "tags": [ "Two-factor authentication" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/2fa/setup/confirm/route.ts" } }, "/api/2fa/setup/initiate": { "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPost2faSetupInitiate", "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" }, "404": { "$ref": "#/components/responses/NotFoundResponse" }, "503": { "$ref": "#/components/responses/ServiceUnavailableResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Create or update 2fa setup initiate", "tags": [ "Two-factor authentication" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/2fa/setup/initiate/route.ts" } }, "/api/2fa/status": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGet2faStatus", "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Get 2fa status", "tags": [ "Two-factor authentication" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/2fa/status/route.ts" } }, "/api/2fa/verify": { "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPost2faVerify", "requestBody": { "content": { "application/json": { "schema": { "anyOf": [ { "properties": { "token": { "maxLength": 6, "minLength": 6, "type": "string" } }, "required": [ "token" ], "type": "object" }, { "properties": { "backupCode": { "minLength": 1, "type": "string" } }, "required": [ "backupCode" ], "type": "object" } ] } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" }, "404": { "$ref": "#/components/responses/NotFoundResponse" }, "429": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "503": { "$ref": "#/components/responses/ServiceUnavailableResponse" } }, "security": [], "summary": "Create or update 2fa verify", "tags": [ "Two-factor authentication" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/2fa/verify/route.ts" } }, "/api/admin/2fa/global": { "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPostAdmin2faGlobal", "requestBody": { "content": { "application/json": { "schema": { "properties": { "required": { "type": "boolean" } }, "required": [ "required" ], "type": "object" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" }, "404": { "$ref": "#/components/responses/NotFoundResponse" }, "503": { "$ref": "#/components/responses/ServiceUnavailableResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Create or update admin 2fa global", "tags": [ "Administration" ], "x-umami-audience": "internal", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/admin/2fa/global/route.ts" } }, "/api/admin/teams": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetAdminTeams", "parameters": [ { "in": "query", "name": "page", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "pageSize", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "maxResults", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "search", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "orderBy", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "sortDescending", "required": false, "schema": { "enum": [ "true", "false" ], "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get admin teams", "tags": [ "Administration" ], "x-umami-audience": "internal", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/admin/teams/route.ts" } }, "/api/admin/teams/{teamId}/2fa": { "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPostAdminTeamsTeamId2fa", "parameters": [ { "in": "path", "name": "teamId", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "properties": { "required": { "type": "boolean" } }, "required": [ "required" ], "type": "object" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" }, "404": { "$ref": "#/components/responses/NotFoundResponse" }, "503": { "$ref": "#/components/responses/ServiceUnavailableResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Create or update admin teams team id 2fa", "tags": [ "Administration" ], "x-umami-audience": "internal", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/admin/teams/[teamId]/2fa/route.ts" } }, "/api/admin/users": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetAdminUsers", "parameters": [ { "in": "query", "name": "page", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "pageSize", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "maxResults", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "search", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "orderBy", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "sortDescending", "required": false, "schema": { "enum": [ "true", "false" ], "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get admin users", "tags": [ "Administration" ], "x-umami-audience": "internal", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/admin/users/route.ts" } }, "/api/admin/users/{userId}/2fa": { "delete": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredDeleteAdminUsersUserId2fa", "parameters": [ { "in": "path", "name": "userId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" }, "404": { "$ref": "#/components/responses/NotFoundResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Delete admin users user id 2fa", "tags": [ "Administration" ], "x-umami-audience": "internal", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/admin/users/[userId]/2fa/route.ts" }, "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetAdminUsersUserId2fa", "parameters": [ { "in": "path", "name": "userId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" }, "404": { "$ref": "#/components/responses/NotFoundResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Get admin users user id 2fa", "tags": [ "Administration" ], "x-umami-audience": "internal", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/admin/users/[userId]/2fa/route.ts" }, "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPostAdminUsersUserId2fa", "parameters": [ { "in": "path", "name": "userId", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "properties": { "required": { "type": "boolean" } }, "required": [ "required" ], "type": "object" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" }, "404": { "$ref": "#/components/responses/NotFoundResponse" }, "503": { "$ref": "#/components/responses/ServiceUnavailableResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Create or update admin users user id 2fa", "tags": [ "Administration" ], "x-umami-audience": "internal", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/admin/users/[userId]/2fa/route.ts" } }, "/api/admin/websites": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetAdminWebsites", "parameters": [ { "in": "query", "name": "page", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "pageSize", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "maxResults", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "search", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "orderBy", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "sortDescending", "required": false, "schema": { "enum": [ "true", "false" ], "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get admin websites", "tags": [ "Administration" ], "x-umami-audience": "internal", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/admin/websites/route.ts" } }, "/api/auth/login": { "post": { "description": "Authenticates a self-hosted Umami user. Users with two-factor authentication receive a short-lived partial token instead of a full bearer token.", "operationId": "login", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LoginRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LoginResponse" } } }, "description": "Authenticated successfully." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" }, "503": { "$ref": "#/components/responses/ServiceUnavailableResponse" } }, "security": [], "summary": "Log in", "tags": [ "Authentication" ], "x-umami-audience": "public", "x-umami-contract": "explicit", "x-umami-source": "src/app/api/auth/login/contract.ts" } }, "/api/auth/logout": { "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPostAuthLogout", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Ok" } } }, "description": "The operation completed successfully." }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Create or update auth logout", "tags": [ "Authentication" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/auth/logout/route.ts" } }, "/api/auth/sso": { "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPostAuthSso", "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" }, "500": { "$ref": "#/components/responses/ServerErrorResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Create or update auth sso", "tags": [ "Authentication" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/auth/sso/route.ts" } }, "/api/auth/subscription": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetAuthSubscription", "parameters": [ { "in": "query", "name": "teamId", "required": false, "schema": { "format": "uuid", "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get auth subscription", "tags": [ "Authentication" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/auth/subscription/route.ts" } }, "/api/auth/verify": { "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPostAuthVerify", "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Create or update auth verify", "tags": [ "Authentication" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/auth/verify/route.ts" } }, "/api/batch": { "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPostBatch", "requestBody": { "content": { "application/json": { "schema": { "items": { "additionalProperties": true, "type": "object" }, "maxItems": 500, "type": "array" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "500": { "$ref": "#/components/responses/ServerErrorResponse" } }, "security": [], "summary": "Create or update batch", "tags": [ "Collection" ], "x-umami-audience": "collect", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/batch/route.ts" } }, "/api/boards": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetBoards", "parameters": [ { "in": "query", "name": "page", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "pageSize", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "maxResults", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "search", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "orderBy", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "sortDescending", "required": false, "schema": { "enum": [ "true", "false" ], "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Get boards", "tags": [ "Boards" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/boards/route.ts" }, "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPostBoards", "requestBody": { "content": { "application/json": { "schema": { "properties": { "description": { "maxLength": 500, "type": "string" }, "name": { "maxLength": 100, "type": "string" }, "parameters": { "properties": { "linkId": { "format": "uuid", "type": "string" }, "pixelId": { "format": "uuid", "type": "string" }, "websiteId": { "format": "uuid", "type": "string" } }, "type": "object" }, "teamId": { "anyOf": [ { "format": "uuid", "type": "string" }, { "type": "null" } ] }, "type": { "anyOf": [ { "enum": [], "type": "string" }, { "const": "open" } ] }, "userId": { "anyOf": [ { "format": "uuid", "type": "string" }, { "type": "null" } ] } }, "required": [ "type", "name" ], "type": "object" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Create or update boards", "tags": [ "Boards" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/boards/route.ts" } }, "/api/boards/{boardId}": { "delete": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredDeleteBoardsBoardId", "parameters": [ { "in": "path", "name": "boardId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Ok" } } }, "description": "The operation completed successfully." }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Delete boards board id", "tags": [ "Boards" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/boards/[boardId]/route.ts" }, "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetBoardsBoardId", "parameters": [ { "in": "path", "name": "boardId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get boards board id", "tags": [ "Boards" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/boards/[boardId]/route.ts" }, "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPostBoardsBoardId", "parameters": [ { "in": "path", "name": "boardId", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "properties": { "description": { "maxLength": 500, "type": "string" }, "name": { "maxLength": 200, "type": "string" }, "parameters": { "properties": {}, "type": "object" }, "type": { "anyOf": [ { "enum": [], "type": "string" }, { "const": "open" } ] } }, "type": "object" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" }, "500": { "$ref": "#/components/responses/ServerErrorResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Create or update boards board id", "tags": [ "Boards" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/boards/[boardId]/route.ts" } }, "/api/boards/{boardId}/clone": { "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPostBoardsBoardIdClone", "parameters": [ { "in": "path", "name": "boardId", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "properties": { "description": { "maxLength": 500, "type": "string" }, "name": { "maxLength": 200, "type": "string" }, "parameters": { "properties": {}, "type": "object" } }, "type": "object" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Create or update boards board id clone", "tags": [ "Boards" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/boards/[boardId]/clone/route.ts" } }, "/api/boards/{boardId}/shares": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetBoardsBoardIdShares", "parameters": [ { "in": "path", "name": "boardId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "path", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "referrer", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "title", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "query", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "os", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "browser", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "device", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "country", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "region", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "city", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "tag", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "hostname", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "distinctId", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "language", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "event", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmSource", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmMedium", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmCampaign", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmContent", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmTerm", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "excludeBounce", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "segment", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "cohort", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "eventType", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "match", "required": false, "schema": { "enum": [ "all", "any" ], "type": "string" } }, { "in": "query", "name": "page", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "pageSize", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "maxResults", "required": false, "schema": { "minimum": 1, "type": "integer" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get boards board id shares", "tags": [ "Boards" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/boards/[boardId]/shares/route.ts" }, "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPostBoardsBoardIdShares", "parameters": [ { "in": "path", "name": "boardId", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "properties": { "name": { "maxLength": 200, "type": "string" }, "parameters": { "additionalProperties": true, "type": "object" } }, "required": [ "name" ], "type": "object" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Create or update boards board id shares", "tags": [ "Boards" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/boards/[boardId]/shares/route.ts" } }, "/api/config": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetConfig", "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." } }, "security": [], "summary": "Get config", "tags": [ "Configuration" ], "x-umami-audience": "internal", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/config/route.ts" } }, "/api/dashboard": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetDashboard", "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Get dashboard", "tags": [ "Dashboard" ], "x-umami-audience": "internal", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/dashboard/route.ts" }, "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPostDashboard", "requestBody": { "content": { "application/json": { "schema": { "properties": { "description": { "maxLength": 500, "type": "string" }, "name": { "maxLength": 200, "type": "string" }, "parameters": { "properties": {}, "type": "object" } }, "type": "object" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Create or update dashboard", "tags": [ "Dashboard" ], "x-umami-audience": "internal", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/dashboard/route.ts" } }, "/api/heartbeat": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetHeartbeat", "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." } }, "security": [], "summary": "Get heartbeat", "tags": [ "System" ], "x-umami-audience": "internal", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/heartbeat/route.ts" } }, "/api/links": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetLinks", "parameters": [ { "in": "query", "name": "page", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "pageSize", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "maxResults", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "search", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "orderBy", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "sortDescending", "required": false, "schema": { "enum": [ "true", "false" ], "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Get links", "tags": [ "Links" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/links/route.ts" }, "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPostLinks", "requestBody": { "content": { "application/json": { "schema": { "properties": { "id": { "anyOf": [ { "format": "uuid", "type": "string" }, { "type": "null" } ] }, "name": { "maxLength": 100, "type": "string" }, "slug": { "maxLength": 100, "minLength": 8, "type": "string" }, "teamId": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "url": { "maxLength": 500, "type": "string" } }, "required": [ "name", "url", "slug" ], "type": "object" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Create or update links", "tags": [ "Links" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/links/route.ts" } }, "/api/links/{linkId}": { "delete": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredDeleteLinksLinkId", "parameters": [ { "in": "path", "name": "linkId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Ok" } } }, "description": "The operation completed successfully." }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Delete links link id", "tags": [ "Links" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/links/[linkId]/route.ts" }, "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetLinksLinkId", "parameters": [ { "in": "path", "name": "linkId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get links link id", "tags": [ "Links" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/links/[linkId]/route.ts" }, "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPostLinksLinkId", "parameters": [ { "in": "path", "name": "linkId", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "properties": { "name": { "maxLength": 100, "type": "string" }, "slug": { "maxLength": 100, "minLength": 8, "type": "string" }, "url": { "maxLength": 500, "type": "string" } }, "type": "object" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" }, "500": { "$ref": "#/components/responses/ServerErrorResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Create or update links link id", "tags": [ "Links" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/links/[linkId]/route.ts" } }, "/api/links/{linkId}/shares": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetLinksLinkIdShares", "parameters": [ { "in": "path", "name": "linkId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "path", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "referrer", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "title", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "query", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "os", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "browser", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "device", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "country", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "region", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "city", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "tag", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "hostname", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "distinctId", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "language", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "event", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmSource", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmMedium", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmCampaign", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmContent", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmTerm", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "excludeBounce", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "segment", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "cohort", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "eventType", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "match", "required": false, "schema": { "enum": [ "all", "any" ], "type": "string" } }, { "in": "query", "name": "page", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "pageSize", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "maxResults", "required": false, "schema": { "minimum": 1, "type": "integer" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get links link id shares", "tags": [ "Links" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/links/[linkId]/shares/route.ts" }, "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPostLinksLinkIdShares", "parameters": [ { "in": "path", "name": "linkId", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "properties": { "name": { "maxLength": 200, "type": "string" }, "parameters": { "additionalProperties": true, "type": "object" } }, "required": [ "name" ], "type": "object" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Create or update links link id shares", "tags": [ "Links" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/links/[linkId]/shares/route.ts" } }, "/api/links/charts": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetLinksCharts", "parameters": [ { "in": "query", "name": "ids", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "startAt", "required": false, "schema": { "type": "integer" } }, { "in": "query", "name": "endAt", "required": false, "schema": { "type": "integer" } }, { "in": "query", "name": "timezone", "required": false, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get links charts", "tags": [ "Links" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/links/charts/route.ts" } }, "/api/me": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetMe", "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Get me", "tags": [ "Account" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/me/route.ts" } }, "/api/me/password": { "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPostMePassword", "requestBody": { "content": { "application/json": { "schema": { "properties": { "currentPassword": { "type": "string" }, "newPassword": { "minLength": 8, "type": "string" } }, "required": [ "currentPassword", "newPassword" ], "type": "object" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Create or update me password", "tags": [ "Account" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/me/password/route.ts" } }, "/api/me/teams": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetMeTeams", "parameters": [ { "in": "query", "name": "page", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "pageSize", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "maxResults", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "orderBy", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "sortDescending", "required": false, "schema": { "enum": [ "true", "false" ], "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Get me teams", "tags": [ "Account" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/me/teams/route.ts" } }, "/api/me/websites": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetMeWebsites", "parameters": [ { "in": "query", "name": "page", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "pageSize", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "maxResults", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "orderBy", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "sortDescending", "required": false, "schema": { "enum": [ "true", "false" ], "type": "string" } }, { "in": "query", "name": "includeTeams", "required": false, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Get me websites", "tags": [ "Account" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/me/websites/route.ts" } }, "/api/pixels": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetPixels", "parameters": [ { "in": "query", "name": "page", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "pageSize", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "maxResults", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "search", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "orderBy", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "sortDescending", "required": false, "schema": { "enum": [ "true", "false" ], "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Get pixels", "tags": [ "Pixels" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/pixels/route.ts" }, "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPostPixels", "requestBody": { "content": { "application/json": { "schema": { "properties": { "id": { "anyOf": [ { "format": "uuid", "type": "string" }, { "type": "null" } ] }, "name": { "maxLength": 100, "type": "string" }, "slug": { "maxLength": 100, "minLength": 8, "type": "string" }, "teamId": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "required": [ "name", "slug" ], "type": "object" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Create or update pixels", "tags": [ "Pixels" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/pixels/route.ts" } }, "/api/pixels/{pixelId}": { "delete": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredDeletePixelsPixelId", "parameters": [ { "in": "path", "name": "pixelId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Ok" } } }, "description": "The operation completed successfully." }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Delete pixels pixel id", "tags": [ "Pixels" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/pixels/[pixelId]/route.ts" }, "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetPixelsPixelId", "parameters": [ { "in": "path", "name": "pixelId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get pixels pixel id", "tags": [ "Pixels" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/pixels/[pixelId]/route.ts" }, "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPostPixelsPixelId", "parameters": [ { "in": "path", "name": "pixelId", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "properties": { "name": { "maxLength": 100, "type": "string" }, "slug": { "maxLength": 100, "minLength": 8, "type": "string" } }, "type": "object" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" }, "500": { "$ref": "#/components/responses/ServerErrorResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Create or update pixels pixel id", "tags": [ "Pixels" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/pixels/[pixelId]/route.ts" } }, "/api/pixels/{pixelId}/shares": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetPixelsPixelIdShares", "parameters": [ { "in": "path", "name": "pixelId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "path", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "referrer", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "title", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "query", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "os", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "browser", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "device", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "country", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "region", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "city", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "tag", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "hostname", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "distinctId", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "language", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "event", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmSource", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmMedium", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmCampaign", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmContent", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmTerm", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "excludeBounce", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "segment", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "cohort", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "eventType", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "match", "required": false, "schema": { "enum": [ "all", "any" ], "type": "string" } }, { "in": "query", "name": "page", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "pageSize", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "maxResults", "required": false, "schema": { "minimum": 1, "type": "integer" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get pixels pixel id shares", "tags": [ "Pixels" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/pixels/[pixelId]/shares/route.ts" }, "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPostPixelsPixelIdShares", "parameters": [ { "in": "path", "name": "pixelId", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "properties": { "name": { "maxLength": 200, "type": "string" }, "parameters": { "additionalProperties": true, "type": "object" } }, "required": [ "name" ], "type": "object" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Create or update pixels pixel id shares", "tags": [ "Pixels" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/pixels/[pixelId]/shares/route.ts" } }, "/api/pixels/charts": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetPixelsCharts", "parameters": [ { "in": "query", "name": "ids", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "startAt", "required": false, "schema": { "type": "integer" } }, { "in": "query", "name": "endAt", "required": false, "schema": { "type": "integer" } }, { "in": "query", "name": "timezone", "required": false, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get pixels charts", "tags": [ "Pixels" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/pixels/charts/route.ts" } }, "/api/realtime/{websiteId}": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetRealtimeWebsiteId", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "timezone", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "unit", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "path", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "referrer", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "title", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "query", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "os", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "browser", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "device", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "country", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "region", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "city", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "tag", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "hostname", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "distinctId", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "language", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "event", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmSource", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmMedium", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmCampaign", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmContent", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmTerm", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "excludeBounce", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "segment", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "cohort", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "eventType", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "match", "required": false, "schema": { "enum": [ "all", "any" ], "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get realtime website id", "tags": [ "Realtime" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/realtime/[websiteId]/route.ts" } }, "/api/record": { "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPostRecord", "requestBody": { "content": { "application/json": { "schema": { "anyOf": [ { "properties": { "payload": { "properties": { "events": { "items": {}, "maxItems": 200, "type": "array" }, "timestamp": { "type": "integer" }, "website": { "format": "uuid", "type": "string" } }, "required": [ "website", "events" ], "type": "object" }, "type": { "const": "record" } }, "required": [ "type", "payload" ], "type": "object" }, { "properties": { "payload": { "properties": { "events": { "items": { "anyOf": [ { "properties": { "pageH": { "type": "number" }, "pageW": { "type": "number" }, "pageX": { "type": "number" }, "pageY": { "type": "number" }, "timestamp": { "type": "integer" }, "type": { "const": "click" }, "url": { "type": "string" }, "viewportH": { "type": "number" }, "viewportW": { "type": "number" }, "x": { "type": "number" }, "y": { "type": "number" } }, "required": [ "type", "url" ], "type": "object" }, { "properties": { "pageH": { "type": "number" }, "pageW": { "type": "number" }, "scrollPct": { "type": "number" }, "timestamp": { "type": "integer" }, "type": { "const": "scroll" }, "url": { "type": "string" }, "viewportH": { "type": "number" }, "viewportW": { "type": "number" } }, "required": [ "type", "url" ], "type": "object" } ] }, "maxItems": 200, "type": "array" }, "timestamp": { "type": "integer" }, "website": { "format": "uuid", "type": "string" } }, "required": [ "website", "events" ], "type": "object" }, "type": { "const": "heatmap" } }, "required": [ "type", "payload" ], "type": "object" } ] } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "403": { "$ref": "#/components/responses/ForbiddenResponse" }, "413": { "$ref": "#/components/responses/PayloadTooLargeResponse" }, "500": { "$ref": "#/components/responses/ServerErrorResponse" } }, "security": [], "summary": "Create or update record", "tags": [ "Collection" ], "x-umami-audience": "collect", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/record/route.ts" } }, "/api/reports": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetReports", "parameters": [ { "in": "query", "name": "websiteId", "required": true, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "type", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "page", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "pageSize", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "maxResults", "required": false, "schema": { "minimum": 1, "type": "integer" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get reports", "tags": [ "Reports" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/reports/route.ts" }, "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPostReports", "requestBody": { "content": { "application/json": { "schema": { "properties": { "description": { "maxLength": 500, "type": "string" }, "name": { "maxLength": 200, "type": "string" }, "parameters": { "additionalProperties": true, "type": "object" }, "type": { "type": "string" }, "websiteId": { "format": "uuid", "type": "string" } }, "required": [ "websiteId", "type", "name", "parameters" ], "type": "object" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Create or update reports", "tags": [ "Reports" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/reports/route.ts" } }, "/api/reports/{reportId}": { "delete": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredDeleteReportsReportId", "parameters": [ { "in": "path", "name": "reportId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Ok" } } }, "description": "The operation completed successfully." }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" }, "404": { "$ref": "#/components/responses/NotFoundResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Delete reports report id", "tags": [ "Reports" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/reports/[reportId]/route.ts" }, "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetReportsReportId", "parameters": [ { "in": "path", "name": "reportId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" }, "404": { "$ref": "#/components/responses/NotFoundResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get reports report id", "tags": [ "Reports" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/reports/[reportId]/route.ts" }, "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPostReportsReportId", "parameters": [ { "in": "path", "name": "reportId", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "properties": { "description": { "maxLength": 500, "type": "string" }, "name": { "maxLength": 200, "type": "string" }, "parameters": { "additionalProperties": true, "type": "object" }, "type": { "type": "string" }, "websiteId": { "format": "uuid", "type": "string" } }, "required": [ "websiteId", "type", "name", "parameters" ], "type": "object" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" }, "404": { "$ref": "#/components/responses/NotFoundResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Create or update reports report id", "tags": [ "Reports" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/reports/[reportId]/route.ts" } }, "/api/reports/attribution": { "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPostReportsAttribution", "requestBody": { "content": { "application/json": { "schema": { "properties": { "filters": { "additionalProperties": true, "type": "object" }, "parameters": { "additionalProperties": true, "type": "object" }, "type": { "type": "string" }, "websiteId": { "format": "uuid", "type": "string" } }, "required": [ "websiteId", "filters", "type", "parameters" ], "type": "object" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Create or update reports attribution", "tags": [ "Reports" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/reports/attribution/route.ts" } }, "/api/reports/breakdown": { "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPostReportsBreakdown", "requestBody": { "content": { "application/json": { "schema": { "properties": { "filters": { "additionalProperties": true, "type": "object" }, "parameters": { "additionalProperties": true, "type": "object" }, "type": { "type": "string" }, "websiteId": { "format": "uuid", "type": "string" } }, "required": [ "websiteId", "filters", "type", "parameters" ], "type": "object" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Create or update reports breakdown", "tags": [ "Reports" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/reports/breakdown/route.ts" } }, "/api/reports/funnel": { "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPostReportsFunnel", "requestBody": { "content": { "application/json": { "schema": { "properties": { "filters": { "additionalProperties": true, "type": "object" }, "parameters": { "additionalProperties": true, "type": "object" }, "type": { "type": "string" }, "websiteId": { "format": "uuid", "type": "string" } }, "required": [ "websiteId", "filters", "type", "parameters" ], "type": "object" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Create or update reports funnel", "tags": [ "Reports" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/reports/funnel/route.ts" } }, "/api/reports/goal": { "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPostReportsGoal", "requestBody": { "content": { "application/json": { "schema": { "properties": { "filters": { "additionalProperties": true, "type": "object" }, "parameters": { "additionalProperties": true, "type": "object" }, "type": { "type": "string" }, "websiteId": { "format": "uuid", "type": "string" } }, "required": [ "websiteId", "filters", "type", "parameters" ], "type": "object" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Create or update reports goal", "tags": [ "Reports" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/reports/goal/route.ts" } }, "/api/reports/heatmap": { "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPostReportsHeatmap", "requestBody": { "content": { "application/json": { "schema": { "properties": { "filters": { "additionalProperties": true, "type": "object" }, "parameters": { "additionalProperties": true, "type": "object" }, "type": { "type": "string" }, "websiteId": { "format": "uuid", "type": "string" } }, "required": [ "websiteId", "filters", "type", "parameters" ], "type": "object" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Create or update reports heatmap", "tags": [ "Reports" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/reports/heatmap/route.ts" } }, "/api/reports/journey": { "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPostReportsJourney", "requestBody": { "content": { "application/json": { "schema": { "properties": { "filters": { "additionalProperties": true, "type": "object" }, "parameters": { "additionalProperties": true, "type": "object" }, "type": { "type": "string" }, "websiteId": { "format": "uuid", "type": "string" } }, "required": [ "websiteId", "filters", "type", "parameters" ], "type": "object" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Create or update reports journey", "tags": [ "Reports" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/reports/journey/route.ts" } }, "/api/reports/performance": { "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPostReportsPerformance", "requestBody": { "content": { "application/json": { "schema": { "properties": { "filters": { "additionalProperties": true, "type": "object" }, "parameters": { "additionalProperties": true, "type": "object" }, "type": { "type": "string" }, "websiteId": { "format": "uuid", "type": "string" } }, "required": [ "websiteId", "filters", "type", "parameters" ], "type": "object" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Create or update reports performance", "tags": [ "Reports" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/reports/performance/route.ts" } }, "/api/reports/retention": { "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPostReportsRetention", "requestBody": { "content": { "application/json": { "schema": { "properties": { "filters": { "additionalProperties": true, "type": "object" }, "parameters": { "additionalProperties": true, "type": "object" }, "type": { "type": "string" }, "websiteId": { "format": "uuid", "type": "string" } }, "required": [ "websiteId", "filters", "type", "parameters" ], "type": "object" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Create or update reports retention", "tags": [ "Reports" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/reports/retention/route.ts" } }, "/api/reports/revenue": { "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPostReportsRevenue", "requestBody": { "content": { "application/json": { "schema": { "properties": { "filters": { "additionalProperties": true, "type": "object" }, "parameters": { "additionalProperties": true, "type": "object" }, "type": { "type": "string" }, "websiteId": { "format": "uuid", "type": "string" } }, "required": [ "websiteId", "filters", "type", "parameters" ], "type": "object" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Create or update reports revenue", "tags": [ "Reports" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/reports/revenue/route.ts" } }, "/api/reports/utm": { "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPostReportsUtm", "requestBody": { "content": { "application/json": { "schema": { "properties": { "filters": { "additionalProperties": true, "type": "object" }, "parameters": { "additionalProperties": true, "type": "object" }, "type": { "type": "string" }, "websiteId": { "format": "uuid", "type": "string" } }, "required": [ "websiteId", "filters", "type", "parameters" ], "type": "object" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Create or update reports utm", "tags": [ "Reports" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/reports/utm/route.ts" } }, "/api/scripts/telemetry": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetScriptsTelemetry", "responses": { "200": { "content": { "text/javascript": { "schema": { "type": "string" } } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." } }, "security": [], "summary": "Get scripts telemetry", "tags": [ "Scripts" ], "x-umami-audience": "internal", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/scripts/telemetry/route.ts" } }, "/api/send": { "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPostSend", "requestBody": { "content": { "application/json": { "schema": { "properties": { "payload": { "properties": { "browser": { "type": "string" }, "cls": { "maximum": 100, "minimum": 0, "type": "number" }, "data": { "additionalProperties": true, "type": "object" }, "device": { "type": "string" }, "fcp": { "maximum": 60000, "minimum": 0, "type": "number" }, "hostname": { "type": "string" }, "id": { "type": "string" }, "inp": { "maximum": 60000, "minimum": 0, "type": "number" }, "ip": { "type": "string" }, "language": { "type": "string" }, "lcp": { "maximum": 60000, "minimum": 0, "type": "number" }, "link": { "format": "uuid", "type": "string" }, "name": {}, "os": { "type": "string" }, "pixel": { "format": "uuid", "type": "string" }, "referrer": { "type": "string" }, "screen": { "type": "string" }, "tag": {}, "timestamp": { "type": "integer" }, "title": { "type": "string" }, "ttfb": { "maximum": 60000, "minimum": 0, "type": "number" }, "url": { "type": "string" }, "userAgent": { "type": "string" }, "website": { "format": "uuid", "type": "string" } }, "type": "object" }, "type": { "enum": [ "event", "identify", "performance" ], "type": "string" } }, "required": [ "type", "payload" ], "type": "object" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "403": { "$ref": "#/components/responses/ForbiddenResponse" }, "500": { "$ref": "#/components/responses/ServerErrorResponse" } }, "security": [], "summary": "Create or update send", "tags": [ "Collection" ], "x-umami-audience": "collect", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/send/route.ts" } }, "/api/share": { "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPostShare", "requestBody": { "content": { "application/json": { "schema": { "properties": { "entityId": { "format": "uuid", "type": "string" }, "name": { "maxLength": 200, "type": "string" }, "parameters": { "additionalProperties": true, "type": "object" }, "shareType": { "type": "integer" }, "slug": { "maxLength": 100, "type": "string" } }, "required": [ "entityId", "shareType", "name", "parameters" ], "type": "object" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Create or update share", "tags": [ "Shares" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/share/route.ts" } }, "/api/share/{slug}": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetShareSlug", "parameters": [ { "in": "path", "name": "slug", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "404": { "$ref": "#/components/responses/NotFoundResponse" } }, "security": [], "summary": "Get share slug", "tags": [ "Shares" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/share/[slug]/route.ts" } }, "/api/share/id/{shareId}": { "delete": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredDeleteShareIdShareId", "parameters": [ { "in": "path", "name": "shareId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Ok" } } }, "description": "The operation completed successfully." }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Delete share id share id", "tags": [ "Shares" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/share/id/[shareId]/route.ts" }, "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetShareIdShareId", "parameters": [ { "in": "path", "name": "shareId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get share id share id", "tags": [ "Shares" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/share/id/[shareId]/route.ts" }, "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPostShareIdShareId", "parameters": [ { "in": "path", "name": "shareId", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "properties": { "name": { "maxLength": 200, "type": "string" }, "parameters": { "additionalProperties": true, "type": "object" }, "slug": { "maxLength": 100, "type": "string" } }, "required": [ "name", "slug", "parameters" ], "type": "object" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" }, "404": { "$ref": "#/components/responses/NotFoundResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Create or update share id share id", "tags": [ "Shares" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/share/id/[shareId]/route.ts" } }, "/api/teams": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetTeams", "parameters": [ { "in": "query", "name": "page", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "pageSize", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "maxResults", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "orderBy", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "sortDescending", "required": false, "schema": { "enum": [ "true", "false" ], "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Get teams", "tags": [ "Teams" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/teams/route.ts" }, "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPostTeams", "requestBody": { "content": { "application/json": { "schema": { "properties": { "name": { "maxLength": 50, "type": "string" }, "ownerId": { "format": "uuid", "type": "string" } }, "required": [ "name" ], "type": "object" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Create or update teams", "tags": [ "Teams" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/teams/route.ts" } }, "/api/teams/{teamId}": { "delete": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredDeleteTeamsTeamId", "parameters": [ { "in": "path", "name": "teamId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Ok" } } }, "description": "The operation completed successfully." }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Delete teams team id", "tags": [ "Teams" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/teams/[teamId]/route.ts" }, "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetTeamsTeamId", "parameters": [ { "in": "path", "name": "teamId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" }, "404": { "$ref": "#/components/responses/NotFoundResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get teams team id", "tags": [ "Teams" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/teams/[teamId]/route.ts" }, "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPostTeamsTeamId", "parameters": [ { "in": "path", "name": "teamId", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "properties": { "accessCode": { "maxLength": 50, "type": "string" }, "name": { "maxLength": 50, "type": "string" } }, "type": "object" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Create or update teams team id", "tags": [ "Teams" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/teams/[teamId]/route.ts" } }, "/api/teams/{teamId}/boards": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetTeamsTeamIdBoards", "parameters": [ { "in": "path", "name": "teamId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "page", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "pageSize", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "maxResults", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "search", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "orderBy", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "sortDescending", "required": false, "schema": { "enum": [ "true", "false" ], "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get teams team id boards", "tags": [ "Teams" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/teams/[teamId]/boards/route.ts" } }, "/api/teams/{teamId}/links": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetTeamsTeamIdLinks", "parameters": [ { "in": "path", "name": "teamId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "page", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "pageSize", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "maxResults", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "search", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "orderBy", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "sortDescending", "required": false, "schema": { "enum": [ "true", "false" ], "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get teams team id links", "tags": [ "Teams" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/teams/[teamId]/links/route.ts" } }, "/api/teams/{teamId}/pixels": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetTeamsTeamIdPixels", "parameters": [ { "in": "path", "name": "teamId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "page", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "pageSize", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "maxResults", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "search", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "orderBy", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "sortDescending", "required": false, "schema": { "enum": [ "true", "false" ], "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get teams team id pixels", "tags": [ "Teams" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/teams/[teamId]/pixels/route.ts" } }, "/api/teams/{teamId}/users": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetTeamsTeamIdUsers", "parameters": [ { "in": "path", "name": "teamId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "page", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "pageSize", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "maxResults", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "search", "required": false, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get teams team id users", "tags": [ "Teams" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/teams/[teamId]/users/route.ts" }, "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPostTeamsTeamIdUsers", "parameters": [ { "in": "path", "name": "teamId", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "properties": { "role": { "enum": [ "team-member", "team-view-only", "team-manager" ], "type": "string" }, "userId": { "format": "uuid", "type": "string" } }, "required": [ "userId", "role" ], "type": "object" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Create or update teams team id users", "tags": [ "Teams" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/teams/[teamId]/users/route.ts" } }, "/api/teams/{teamId}/users/{userId}": { "delete": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredDeleteTeamsTeamIdUsersUserId", "parameters": [ { "in": "path", "name": "teamId", "required": true, "schema": { "type": "string" } }, { "in": "path", "name": "userId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Ok" } } }, "description": "The operation completed successfully." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Delete teams team id users user id", "tags": [ "Teams" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/teams/[teamId]/users/[userId]/route.ts" }, "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetTeamsTeamIdUsersUserId", "parameters": [ { "in": "path", "name": "teamId", "required": true, "schema": { "type": "string" } }, { "in": "path", "name": "userId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Get teams team id users user id", "tags": [ "Teams" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/teams/[teamId]/users/[userId]/route.ts" }, "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPostTeamsTeamIdUsersUserId", "parameters": [ { "in": "path", "name": "teamId", "required": true, "schema": { "type": "string" } }, { "in": "path", "name": "userId", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "properties": { "role": { "enum": [ "team-member", "team-view-only", "team-manager" ], "type": "string" } }, "required": [ "role" ], "type": "object" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Create or update teams team id users user id", "tags": [ "Teams" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/teams/[teamId]/users/[userId]/route.ts" } }, "/api/teams/{teamId}/websites": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetTeamsTeamIdWebsites", "parameters": [ { "in": "path", "name": "teamId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "page", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "pageSize", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "maxResults", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "search", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "orderBy", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "sortDescending", "required": false, "schema": { "enum": [ "true", "false" ], "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get teams team id websites", "tags": [ "Teams" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/teams/[teamId]/websites/route.ts" } }, "/api/teams/join": { "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPostTeamsJoin", "requestBody": { "content": { "application/json": { "schema": { "properties": { "accessCode": { "maxLength": 50, "type": "string" } }, "required": [ "accessCode" ], "type": "object" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" }, "404": { "$ref": "#/components/responses/NotFoundResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Create or update teams join", "tags": [ "Teams" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/teams/join/route.ts" } }, "/api/users": { "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPostUsers", "requestBody": { "content": { "application/json": { "schema": { "properties": { "id": { "format": "uuid", "type": "string" }, "password": { "maxLength": 255, "minLength": 8, "type": "string" }, "role": { "enum": [ "admin", "user", "view-only" ], "type": "string" }, "username": { "maxLength": 255, "type": "string" } }, "required": [ "username", "password", "role" ], "type": "object" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Create or update users", "tags": [ "Users" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/users/route.ts" } }, "/api/users/{userId}": { "delete": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredDeleteUsersUserId", "parameters": [ { "in": "path", "name": "userId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Ok" } } }, "description": "The operation completed successfully." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Delete users user id", "tags": [ "Users" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/users/[userId]/route.ts" }, "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetUsersUserId", "parameters": [ { "in": "path", "name": "userId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get users user id", "tags": [ "Users" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/users/[userId]/route.ts" }, "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPostUsersUserId", "parameters": [ { "in": "path", "name": "userId", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "properties": { "password": { "maxLength": 255, "minLength": 8, "type": "string" }, "role": { "enum": [ "admin", "user", "view-only" ], "type": "string" }, "username": { "maxLength": 255, "type": "string" } }, "type": "object" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" }, "404": { "$ref": "#/components/responses/NotFoundResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Create or update users user id", "tags": [ "Users" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/users/[userId]/route.ts" } }, "/api/users/{userId}/teams": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetUsersUserIdTeams", "parameters": [ { "in": "path", "name": "userId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "page", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "pageSize", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "maxResults", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "orderBy", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "sortDescending", "required": false, "schema": { "enum": [ "true", "false" ], "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Get users user id teams", "tags": [ "Users" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/users/[userId]/teams/route.ts" } }, "/api/users/{userId}/websites": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetUsersUserIdWebsites", "parameters": [ { "in": "path", "name": "userId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "page", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "pageSize", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "maxResults", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "search", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "orderBy", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "sortDescending", "required": false, "schema": { "enum": [ "true", "false" ], "type": "string" } }, { "in": "query", "name": "includeTeams", "required": false, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Get users user id websites", "tags": [ "Users" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/users/[userId]/websites/route.ts" } }, "/api/websites": { "get": { "description": "Returns websites owned by the authenticated user.", "operationId": "listWebsites", "parameters": [ { "in": "query", "name": "page", "schema": { "exclusiveMinimum": 0, "maximum": 9007199254740991, "type": "integer" } }, { "in": "query", "name": "pageSize", "schema": { "exclusiveMinimum": 0, "maximum": 9007199254740991, "type": "integer" } }, { "in": "query", "name": "maxResults", "schema": { "exclusiveMinimum": 0, "maximum": 9007199254740991, "type": "integer" } }, { "in": "query", "name": "search", "schema": { "type": "string" } }, { "in": "query", "name": "orderBy", "schema": { "type": "string" } }, { "in": "query", "name": "sortDescending", "schema": { "enum": [ "true", "false" ], "type": "string" } }, { "description": "When present, include websites accessible through owned or managed teams.", "in": "query", "name": "includeTeams", "schema": { "description": "When present, include websites accessible through owned or managed teams.", "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/WebsitePage" } } }, "description": "A page of websites." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "List websites", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "explicit", "x-umami-source": "src/app/api/websites/contract.ts" }, "post": { "operationId": "createWebsite", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateWebsiteRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Website" } } }, "description": "Website created." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Create a website", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "explicit", "x-umami-source": "src/app/api/websites/contract.ts" } }, "/api/websites/{websiteId}": { "delete": { "operationId": "deleteWebsite", "parameters": [ { "description": "Website ID.", "in": "path", "name": "websiteId", "required": true, "schema": { "description": "Website ID.", "format": "uuid", "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$", "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Ok" } } }, "description": "Website deleted." }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Delete a website", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "explicit", "x-umami-source": "src/app/api/websites/[websiteId]/contract.ts" }, "get": { "operationId": "getWebsite", "parameters": [ { "description": "Website ID.", "in": "path", "name": "websiteId", "required": true, "schema": { "description": "Website ID.", "format": "uuid", "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$", "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/Website" }, { "type": "null" } ] } } }, "description": "Website details, or null if it does not exist." }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get a website", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "explicit", "x-umami-source": "src/app/api/websites/[websiteId]/contract.ts" }, "post": { "operationId": "updateWebsite", "parameters": [ { "description": "Website ID.", "in": "path", "name": "websiteId", "required": true, "schema": { "description": "Website ID.", "format": "uuid", "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$", "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateWebsiteRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Website" } } }, "description": "Website updated." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" }, "500": { "$ref": "#/components/responses/ServerErrorResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Update a website", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "explicit", "x-umami-source": "src/app/api/websites/[websiteId]/contract.ts" } }, "/api/websites/{websiteId}/active": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdActive", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id active", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/active/route.ts" } }, "/api/websites/{websiteId}/annotations": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdAnnotations", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "startAt", "required": false, "schema": { "type": "number" } }, { "in": "query", "name": "endAt", "required": false, "schema": { "type": "number" } }, { "in": "query", "name": "search", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "page", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "pageSize", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "maxResults", "required": false, "schema": { "minimum": 1, "type": "integer" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id annotations", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/annotations/route.ts" }, "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPostWebsitesWebsiteIdAnnotations", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "properties": { "allDay": { "type": "boolean" }, "date": { "format": "date-time", "type": "string" }, "note": { "maxLength": 500, "minLength": 1, "type": "string" } }, "required": [ "date", "note" ], "type": "object" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Create or update websites website id annotations", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/annotations/route.ts" } }, "/api/websites/{websiteId}/annotations/{annotationId}": { "delete": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredDeleteWebsitesWebsiteIdAnnotationsAnnotationId", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "path", "name": "annotationId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Ok" } } }, "description": "The operation completed successfully." }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" }, "404": { "$ref": "#/components/responses/NotFoundResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Delete websites website id annotations annotation id", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/annotations/[annotationId]/route.ts" }, "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdAnnotationsAnnotationId", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "path", "name": "annotationId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" }, "404": { "$ref": "#/components/responses/NotFoundResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id annotations annotation id", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/annotations/[annotationId]/route.ts" }, "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPostWebsitesWebsiteIdAnnotationsAnnotationId", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "path", "name": "annotationId", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "properties": { "allDay": { "type": "boolean" }, "date": { "format": "date-time", "type": "string" }, "note": { "maxLength": 500, "minLength": 1, "type": "string" } }, "required": [ "date", "note" ], "type": "object" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" }, "404": { "$ref": "#/components/responses/NotFoundResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Create or update websites website id annotations annotation id", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/annotations/[annotationId]/route.ts" } }, "/api/websites/{websiteId}/daterange": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdDaterange", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id daterange", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/daterange/route.ts" } }, "/api/websites/{websiteId}/event-data": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdEventData", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "startAt", "required": true, "schema": { "type": "integer" } }, { "in": "query", "name": "endAt", "required": true, "schema": { "type": "integer" } }, { "in": "query", "name": "path", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "referrer", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "title", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "query", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "os", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "browser", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "device", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "country", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "region", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "city", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "tag", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "hostname", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "distinctId", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "language", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "event", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmSource", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmMedium", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmCampaign", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmContent", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmTerm", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "excludeBounce", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "segment", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "cohort", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "eventType", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "match", "required": false, "schema": { "enum": [ "all", "any" ], "type": "string" } }, { "in": "query", "name": "page", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "pageSize", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "maxResults", "required": false, "schema": { "minimum": 1, "type": "integer" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id event data", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/event-data/route.ts" } }, "/api/websites/{websiteId}/event-data-pivot": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdEventDataPivot", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "startAt", "required": true, "schema": { "type": "integer" } }, { "in": "query", "name": "endAt", "required": true, "schema": { "type": "integer" } }, { "in": "query", "name": "eventName", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "timezone", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "unit", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "path", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "referrer", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "title", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "query", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "os", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "browser", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "device", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "country", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "region", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "city", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "tag", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "hostname", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "distinctId", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "language", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "event", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmSource", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmMedium", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmCampaign", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmContent", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmTerm", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "excludeBounce", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "segment", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "cohort", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "eventType", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "match", "required": false, "schema": { "enum": [ "all", "any" ], "type": "string" } }, { "in": "query", "name": "page", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "pageSize", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "maxResults", "required": false, "schema": { "minimum": 1, "type": "integer" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id event data pivot", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/event-data-pivot/route.ts" } }, "/api/websites/{websiteId}/event-data-pivot/array-series": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdEventDataPivotArraySeries", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "startAt", "required": true, "schema": { "type": "integer" } }, { "in": "query", "name": "endAt", "required": true, "schema": { "type": "integer" } }, { "in": "query", "name": "eventName", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "propertyName", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "timezone", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "unit", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "path", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "referrer", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "title", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "query", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "os", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "browser", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "device", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "country", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "region", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "city", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "tag", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "hostname", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "distinctId", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "language", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "event", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmSource", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmMedium", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmCampaign", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmContent", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmTerm", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "excludeBounce", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "segment", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "cohort", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "eventType", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "match", "required": false, "schema": { "enum": [ "all", "any" ], "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id event data pivot array series", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/event-data-pivot/array-series/route.ts" } }, "/api/websites/{websiteId}/event-data-pivot/date-series": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdEventDataPivotDateSeries", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "startAt", "required": true, "schema": { "type": "integer" } }, { "in": "query", "name": "endAt", "required": true, "schema": { "type": "integer" } }, { "in": "query", "name": "eventName", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "propertyName", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "timezone", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "path", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "referrer", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "title", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "query", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "os", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "browser", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "device", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "country", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "region", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "city", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "tag", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "hostname", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "distinctId", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "language", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "event", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmSource", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmMedium", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmCampaign", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmContent", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmTerm", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "excludeBounce", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "segment", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "cohort", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "eventType", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "match", "required": false, "schema": { "enum": [ "all", "any" ], "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id event data pivot date series", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/event-data-pivot/date-series/route.ts" } }, "/api/websites/{websiteId}/event-data-pivot/numeric-series": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdEventDataPivotNumericSeries", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "startAt", "required": true, "schema": { "type": "integer" } }, { "in": "query", "name": "endAt", "required": true, "schema": { "type": "integer" } }, { "in": "query", "name": "eventName", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "propertyName", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "metric", "required": false, "schema": { "enum": [ "sum", "avg", "count" ], "type": "string" } }, { "in": "query", "name": "timezone", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "unit", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "path", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "referrer", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "title", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "query", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "os", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "browser", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "device", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "country", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "region", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "city", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "tag", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "hostname", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "distinctId", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "language", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "event", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmSource", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmMedium", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmCampaign", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmContent", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmTerm", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "excludeBounce", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "segment", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "cohort", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "eventType", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "match", "required": false, "schema": { "enum": [ "all", "any" ], "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id event data pivot numeric series", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/event-data-pivot/numeric-series/route.ts" } }, "/api/websites/{websiteId}/event-data-pivot/numeric-stats": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdEventDataPivotNumericStats", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "startAt", "required": true, "schema": { "type": "integer" } }, { "in": "query", "name": "endAt", "required": true, "schema": { "type": "integer" } }, { "in": "query", "name": "eventName", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "propertyName", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "path", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "referrer", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "title", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "query", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "os", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "browser", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "device", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "country", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "region", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "city", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "tag", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "hostname", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "distinctId", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "language", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "event", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmSource", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmMedium", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmCampaign", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmContent", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmTerm", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "excludeBounce", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "segment", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "cohort", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "eventType", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "match", "required": false, "schema": { "enum": [ "all", "any" ], "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id event data pivot numeric stats", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/event-data-pivot/numeric-stats/route.ts" } }, "/api/websites/{websiteId}/event-data-pivot/property-series": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdEventDataPivotPropertySeries", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "startAt", "required": true, "schema": { "type": "integer" } }, { "in": "query", "name": "endAt", "required": true, "schema": { "type": "integer" } }, { "in": "query", "name": "eventName", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "propertyName", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "timezone", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "unit", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "path", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "referrer", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "title", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "query", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "os", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "browser", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "device", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "country", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "region", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "city", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "tag", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "hostname", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "distinctId", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "language", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "event", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmSource", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmMedium", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmCampaign", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmContent", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmTerm", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "excludeBounce", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "segment", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "cohort", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "eventType", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "match", "required": false, "schema": { "enum": [ "all", "any" ], "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id event data pivot property series", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/event-data-pivot/property-series/route.ts" } }, "/api/websites/{websiteId}/event-data/{eventId}": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdEventDataEventId", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "path", "name": "eventId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id event data event id", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/event-data/[eventId]/route.ts" } }, "/api/websites/{websiteId}/event-data/events": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdEventDataEvents", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "startAt", "required": true, "schema": { "type": "integer" } }, { "in": "query", "name": "endAt", "required": true, "schema": { "type": "integer" } }, { "in": "query", "name": "event", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "path", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "referrer", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "title", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "query", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "os", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "browser", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "device", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "country", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "region", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "city", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "tag", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "hostname", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "distinctId", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "language", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmSource", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmMedium", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmCampaign", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmContent", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmTerm", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "excludeBounce", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "segment", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "cohort", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "eventType", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "match", "required": false, "schema": { "enum": [ "all", "any" ], "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id event data events", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/event-data/events/route.ts" } }, "/api/websites/{websiteId}/event-data/fields": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdEventDataFields", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "startAt", "required": true, "schema": { "type": "integer" } }, { "in": "query", "name": "endAt", "required": true, "schema": { "type": "integer" } }, { "in": "query", "name": "eventName", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "path", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "referrer", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "title", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "query", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "os", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "browser", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "device", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "country", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "region", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "city", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "tag", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "hostname", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "distinctId", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "language", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "event", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmSource", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmMedium", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmCampaign", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmContent", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmTerm", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "excludeBounce", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "segment", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "cohort", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "eventType", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "match", "required": false, "schema": { "enum": [ "all", "any" ], "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id event data fields", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/event-data/fields/route.ts" } }, "/api/websites/{websiteId}/event-data/properties": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdEventDataProperties", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "startAt", "required": true, "schema": { "type": "integer" } }, { "in": "query", "name": "endAt", "required": true, "schema": { "type": "integer" } }, { "in": "query", "name": "path", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "referrer", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "title", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "query", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "os", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "browser", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "device", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "country", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "region", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "city", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "tag", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "hostname", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "distinctId", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "language", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "event", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmSource", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmMedium", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmCampaign", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmContent", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmTerm", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "excludeBounce", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "segment", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "cohort", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "eventType", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "match", "required": false, "schema": { "enum": [ "all", "any" ], "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id event data properties", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/event-data/properties/route.ts" } }, "/api/websites/{websiteId}/event-data/stats": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdEventDataStats", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "startAt", "required": true, "schema": { "type": "integer" } }, { "in": "query", "name": "endAt", "required": true, "schema": { "type": "integer" } }, { "in": "query", "name": "path", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "referrer", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "title", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "query", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "os", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "browser", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "device", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "country", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "region", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "city", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "tag", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "hostname", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "distinctId", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "language", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "event", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmSource", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmMedium", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmCampaign", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmContent", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmTerm", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "excludeBounce", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "segment", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "cohort", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "eventType", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "match", "required": false, "schema": { "enum": [ "all", "any" ], "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id event data stats", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/event-data/stats/route.ts" } }, "/api/websites/{websiteId}/event-data/values": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdEventDataValues", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "startAt", "required": true, "schema": { "type": "integer" } }, { "in": "query", "name": "endAt", "required": true, "schema": { "type": "integer" } }, { "in": "query", "name": "eventName", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "propertyName", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "dataType", "required": false, "schema": { "type": "integer" } }, { "in": "query", "name": "path", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "referrer", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "title", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "query", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "os", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "browser", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "device", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "country", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "region", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "city", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "tag", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "hostname", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "distinctId", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "language", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "event", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmSource", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmMedium", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmCampaign", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmContent", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmTerm", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "excludeBounce", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "segment", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "cohort", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "eventType", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "match", "required": false, "schema": { "enum": [ "all", "any" ], "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id event data values", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/event-data/values/route.ts" } }, "/api/websites/{websiteId}/events": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdEvents", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "startAt", "required": false, "schema": { "type": "number" } }, { "in": "query", "name": "endAt", "required": false, "schema": { "type": "number" } }, { "in": "query", "name": "startDate", "required": false, "schema": { "format": "date-time", "type": "string" } }, { "in": "query", "name": "endDate", "required": false, "schema": { "format": "date-time", "type": "string" } }, { "in": "query", "name": "timezone", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "unit", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "compare", "required": false, "schema": { "enum": [ "prev", "yoy" ], "type": "string" } }, { "in": "query", "name": "path", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "referrer", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "title", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "query", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "os", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "browser", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "device", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "country", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "region", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "city", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "tag", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "hostname", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "distinctId", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "language", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "event", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmSource", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmMedium", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmCampaign", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmContent", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmTerm", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "excludeBounce", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "segment", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "cohort", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "eventType", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "match", "required": false, "schema": { "enum": [ "all", "any" ], "type": "string" } }, { "in": "query", "name": "page", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "pageSize", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "maxResults", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "search", "required": false, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id events", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/events/route.ts" } }, "/api/websites/{websiteId}/events/series": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdEventsSeries", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "startAt", "required": true, "schema": { "type": "integer" } }, { "in": "query", "name": "endAt", "required": true, "schema": { "type": "integer" } }, { "in": "query", "name": "unit", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "timezone", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "limit", "required": false, "schema": { "type": "number" } }, { "in": "query", "name": "path", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "referrer", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "title", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "query", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "os", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "browser", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "device", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "country", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "region", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "city", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "tag", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "hostname", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "distinctId", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "language", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "event", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmSource", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmMedium", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmCampaign", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmContent", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmTerm", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "excludeBounce", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "segment", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "cohort", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "eventType", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "match", "required": false, "schema": { "enum": [ "all", "any" ], "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id events series", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/events/series/route.ts" } }, "/api/websites/{websiteId}/events/stats": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdEventsStats", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "startAt", "required": false, "schema": { "type": "number" } }, { "in": "query", "name": "endAt", "required": false, "schema": { "type": "number" } }, { "in": "query", "name": "startDate", "required": false, "schema": { "format": "date-time", "type": "string" } }, { "in": "query", "name": "endDate", "required": false, "schema": { "format": "date-time", "type": "string" } }, { "in": "query", "name": "timezone", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "unit", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "compare", "required": false, "schema": { "enum": [ "prev", "yoy" ], "type": "string" } }, { "in": "query", "name": "path", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "referrer", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "title", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "query", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "os", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "browser", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "device", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "country", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "region", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "city", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "tag", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "hostname", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "distinctId", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "language", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "event", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmSource", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmMedium", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmCampaign", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmContent", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmTerm", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "excludeBounce", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "segment", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "cohort", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "eventType", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "match", "required": false, "schema": { "enum": [ "all", "any" ], "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id events stats", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/events/stats/route.ts" } }, "/api/websites/{websiteId}/export": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdExport", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "startAt", "required": false, "schema": { "type": "number" } }, { "in": "query", "name": "endAt", "required": false, "schema": { "type": "number" } }, { "in": "query", "name": "startDate", "required": false, "schema": { "format": "date-time", "type": "string" } }, { "in": "query", "name": "endDate", "required": false, "schema": { "format": "date-time", "type": "string" } }, { "in": "query", "name": "timezone", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "unit", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "compare", "required": false, "schema": { "enum": [ "prev", "yoy" ], "type": "string" } }, { "in": "query", "name": "page", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "pageSize", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "maxResults", "required": false, "schema": { "minimum": 1, "type": "integer" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" }, "function toString() { [native code] }": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id export", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/export/route.ts" } }, "/api/websites/{websiteId}/metrics": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdMetrics", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "startAt", "required": false, "schema": { "type": "number" } }, { "in": "query", "name": "endAt", "required": false, "schema": { "type": "number" } }, { "in": "query", "name": "startDate", "required": false, "schema": { "format": "date-time", "type": "string" } }, { "in": "query", "name": "endDate", "required": false, "schema": { "format": "date-time", "type": "string" } }, { "in": "query", "name": "timezone", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "unit", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "compare", "required": false, "schema": { "enum": [ "prev", "yoy" ], "type": "string" } }, { "in": "query", "name": "type", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "limit", "required": false, "schema": { "type": "number" } }, { "in": "query", "name": "offset", "required": false, "schema": { "type": "number" } }, { "in": "query", "name": "search", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "path", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "referrer", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "title", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "query", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "os", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "browser", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "device", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "country", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "region", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "city", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "tag", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "hostname", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "distinctId", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "language", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "event", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmSource", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmMedium", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmCampaign", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmContent", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmTerm", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "excludeBounce", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "segment", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "cohort", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "eventType", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "match", "required": false, "schema": { "enum": [ "all", "any" ], "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id metrics", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/metrics/route.ts" } }, "/api/websites/{websiteId}/metrics/expanded": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdMetricsExpanded", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "startAt", "required": false, "schema": { "type": "number" } }, { "in": "query", "name": "endAt", "required": false, "schema": { "type": "number" } }, { "in": "query", "name": "startDate", "required": false, "schema": { "format": "date-time", "type": "string" } }, { "in": "query", "name": "endDate", "required": false, "schema": { "format": "date-time", "type": "string" } }, { "in": "query", "name": "timezone", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "unit", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "compare", "required": false, "schema": { "enum": [ "prev", "yoy" ], "type": "string" } }, { "in": "query", "name": "type", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "limit", "required": false, "schema": { "type": "number" } }, { "in": "query", "name": "offset", "required": false, "schema": { "type": "number" } }, { "in": "query", "name": "search", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "path", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "referrer", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "title", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "query", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "os", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "browser", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "device", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "country", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "region", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "city", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "tag", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "hostname", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "distinctId", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "language", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "event", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmSource", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmMedium", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmCampaign", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmContent", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmTerm", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "excludeBounce", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "segment", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "cohort", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "eventType", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "match", "required": false, "schema": { "enum": [ "all", "any" ], "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id metrics expanded", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/metrics/expanded/route.ts" } }, "/api/websites/{websiteId}/pageviews": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdPageviews", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "startAt", "required": false, "schema": { "type": "number" } }, { "in": "query", "name": "endAt", "required": false, "schema": { "type": "number" } }, { "in": "query", "name": "startDate", "required": false, "schema": { "format": "date-time", "type": "string" } }, { "in": "query", "name": "endDate", "required": false, "schema": { "format": "date-time", "type": "string" } }, { "in": "query", "name": "timezone", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "unit", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "compare", "required": false, "schema": { "enum": [ "prev", "yoy" ], "type": "string" } }, { "in": "query", "name": "path", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "referrer", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "title", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "query", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "os", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "browser", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "device", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "country", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "region", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "city", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "tag", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "hostname", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "distinctId", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "language", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "event", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmSource", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmMedium", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmCampaign", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmContent", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmTerm", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "excludeBounce", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "segment", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "cohort", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "eventType", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "match", "required": false, "schema": { "enum": [ "all", "any" ], "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id pageviews", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/pageviews/route.ts" } }, "/api/websites/{websiteId}/recorder": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdRecorder", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." } }, "security": [], "summary": "Get websites website id recorder", "tags": [ "Websites" ], "x-umami-audience": "collect", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/recorder/route.ts" } }, "/api/websites/{websiteId}/replays": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdReplays", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "startAt", "required": false, "schema": { "type": "number" } }, { "in": "query", "name": "endAt", "required": false, "schema": { "type": "number" } }, { "in": "query", "name": "startDate", "required": false, "schema": { "format": "date-time", "type": "string" } }, { "in": "query", "name": "endDate", "required": false, "schema": { "format": "date-time", "type": "string" } }, { "in": "query", "name": "timezone", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "unit", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "compare", "required": false, "schema": { "enum": [ "prev", "yoy" ], "type": "string" } }, { "in": "query", "name": "path", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "referrer", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "title", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "query", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "os", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "browser", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "device", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "country", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "region", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "city", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "tag", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "hostname", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "distinctId", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "language", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "event", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmSource", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmMedium", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmCampaign", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmContent", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmTerm", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "excludeBounce", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "segment", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "cohort", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "eventType", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "match", "required": false, "schema": { "enum": [ "all", "any" ], "type": "string" } }, { "in": "query", "name": "minDuration", "required": false, "schema": { "minimum": 0, "type": "integer" } }, { "in": "query", "name": "page", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "pageSize", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "maxResults", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "search", "required": false, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id replays", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/replays/route.ts" } }, "/api/websites/{websiteId}/replays/{replayId}": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdReplaysReplayId", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "path", "name": "replayId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id replays replay id", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/replays/[replayId]/route.ts" } }, "/api/websites/{websiteId}/replays/saved": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdReplaysSaved", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "page", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "pageSize", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "maxResults", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "search", "required": false, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id replays saved", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/replays/saved/route.ts" } }, "/api/websites/{websiteId}/replays/saved/{replayId}": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdReplaysSavedReplayId", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "path", "name": "replayId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id replays saved replay id", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/replays/saved/[replayId]/route.ts" }, "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPostWebsitesWebsiteIdReplaysSavedReplayId", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "path", "name": "replayId", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "properties": { "isSaved": { "type": "boolean" }, "name": { "maxLength": 100, "type": "string" } }, "required": [ "isSaved" ], "type": "object" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Create or update websites website id replays saved replay id", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/replays/saved/[replayId]/route.ts" } }, "/api/websites/{websiteId}/reports": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdReports", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "type", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "page", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "pageSize", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "maxResults", "required": false, "schema": { "minimum": 1, "type": "integer" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id reports", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/reports/route.ts" } }, "/api/websites/{websiteId}/reset": { "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPostWebsitesWebsiteIdReset", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Ok" } } }, "description": "The operation completed successfully." }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Create or update websites website id reset", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/reset/route.ts" } }, "/api/websites/{websiteId}/revenue/chart": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdRevenueChart", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "startAt", "required": false, "schema": { "type": "number" } }, { "in": "query", "name": "endAt", "required": false, "schema": { "type": "number" } }, { "in": "query", "name": "startDate", "required": false, "schema": { "format": "date-time", "type": "string" } }, { "in": "query", "name": "endDate", "required": false, "schema": { "format": "date-time", "type": "string" } }, { "in": "query", "name": "timezone", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "unit", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "compare", "required": false, "schema": { "enum": [ "prev", "yoy" ], "type": "string" } }, { "in": "query", "name": "currency", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "path", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "referrer", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "title", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "query", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "os", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "browser", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "device", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "country", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "region", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "city", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "tag", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "hostname", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "distinctId", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "language", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "event", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmSource", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmMedium", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmCampaign", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmContent", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmTerm", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "excludeBounce", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "segment", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "cohort", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "eventType", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "match", "required": false, "schema": { "enum": [ "all", "any" ], "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id revenue chart", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/revenue/chart/route.ts" } }, "/api/websites/{websiteId}/revenue/metrics": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdRevenueMetrics", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "startAt", "required": false, "schema": { "type": "number" } }, { "in": "query", "name": "endAt", "required": false, "schema": { "type": "number" } }, { "in": "query", "name": "startDate", "required": false, "schema": { "format": "date-time", "type": "string" } }, { "in": "query", "name": "endDate", "required": false, "schema": { "format": "date-time", "type": "string" } }, { "in": "query", "name": "timezone", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "unit", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "compare", "required": false, "schema": { "enum": [ "prev", "yoy" ], "type": "string" } }, { "in": "query", "name": "type", "required": true, "schema": { "enum": [ "country", "region", "referrer", "channel" ], "type": "string" } }, { "in": "query", "name": "currency", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "path", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "referrer", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "title", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "query", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "os", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "browser", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "device", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "country", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "region", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "city", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "tag", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "hostname", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "distinctId", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "language", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "event", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmSource", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmMedium", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmCampaign", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmContent", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmTerm", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "excludeBounce", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "segment", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "cohort", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "eventType", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "match", "required": false, "schema": { "enum": [ "all", "any" ], "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id revenue metrics", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/revenue/metrics/route.ts" } }, "/api/websites/{websiteId}/revenue/sessions": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdRevenueSessions", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "startAt", "required": false, "schema": { "type": "number" } }, { "in": "query", "name": "endAt", "required": false, "schema": { "type": "number" } }, { "in": "query", "name": "startDate", "required": false, "schema": { "format": "date-time", "type": "string" } }, { "in": "query", "name": "endDate", "required": false, "schema": { "format": "date-time", "type": "string" } }, { "in": "query", "name": "timezone", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "unit", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "compare", "required": false, "schema": { "enum": [ "prev", "yoy" ], "type": "string" } }, { "in": "query", "name": "currency", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "path", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "referrer", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "title", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "query", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "os", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "browser", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "device", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "country", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "region", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "city", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "tag", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "hostname", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "distinctId", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "language", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "event", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmSource", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmMedium", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmCampaign", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmContent", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmTerm", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "excludeBounce", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "segment", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "cohort", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "eventType", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "match", "required": false, "schema": { "enum": [ "all", "any" ], "type": "string" } }, { "in": "query", "name": "page", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "pageSize", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "maxResults", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "search", "required": false, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id revenue sessions", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/revenue/sessions/route.ts" } }, "/api/websites/{websiteId}/revenue/stats": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdRevenueStats", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "startAt", "required": false, "schema": { "type": "number" } }, { "in": "query", "name": "endAt", "required": false, "schema": { "type": "number" } }, { "in": "query", "name": "startDate", "required": false, "schema": { "format": "date-time", "type": "string" } }, { "in": "query", "name": "endDate", "required": false, "schema": { "format": "date-time", "type": "string" } }, { "in": "query", "name": "timezone", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "unit", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "compare", "required": false, "schema": { "enum": [ "prev", "yoy" ], "type": "string" } }, { "in": "query", "name": "currency", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "path", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "referrer", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "title", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "query", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "os", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "browser", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "device", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "country", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "region", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "city", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "tag", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "hostname", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "distinctId", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "language", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "event", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmSource", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmMedium", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmCampaign", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmContent", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmTerm", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "excludeBounce", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "segment", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "cohort", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "eventType", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "match", "required": false, "schema": { "enum": [ "all", "any" ], "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id revenue stats", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/revenue/stats/route.ts" } }, "/api/websites/{websiteId}/segments": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdSegments", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "type", "required": true, "schema": { "enum": [ "segment", "cohort" ], "type": "string" } }, { "in": "query", "name": "search", "required": false, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id segments", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/segments/route.ts" }, "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPostWebsitesWebsiteIdSegments", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "properties": { "name": { "maxLength": 200, "type": "string" }, "parameters": { "properties": { "action": { "properties": { "type": { "type": "string" }, "value": { "type": "string" } }, "required": [ "type", "value" ], "type": "object" }, "dateRange": { "type": "string" }, "filters": { "items": { "additionalProperties": true, "type": "object" }, "type": "array" }, "match": { "enum": [ "all", "any" ], "type": "string" } }, "type": "object" }, "type": { "enum": [ "segment", "cohort" ], "type": "string" } }, "required": [ "type", "name", "parameters" ], "type": "object" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Create or update websites website id segments", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/segments/route.ts" } }, "/api/websites/{websiteId}/segments/{segmentId}": { "delete": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredDeleteWebsitesWebsiteIdSegmentsSegmentId", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "path", "name": "segmentId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Ok" } } }, "description": "The operation completed successfully." }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" }, "404": { "$ref": "#/components/responses/NotFoundResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Delete websites website id segments segment id", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/segments/[segmentId]/route.ts" }, "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdSegmentsSegmentId", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "path", "name": "segmentId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" }, "404": { "$ref": "#/components/responses/NotFoundResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id segments segment id", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/segments/[segmentId]/route.ts" }, "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPostWebsitesWebsiteIdSegmentsSegmentId", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "path", "name": "segmentId", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "properties": { "name": { "maxLength": 200, "type": "string" }, "parameters": { "additionalProperties": true, "type": "object" }, "type": { "enum": [ "segment", "cohort" ], "type": "string" } }, "required": [ "type", "name", "parameters" ], "type": "object" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" }, "404": { "$ref": "#/components/responses/NotFoundResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Create or update websites website id segments segment id", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/segments/[segmentId]/route.ts" } }, "/api/websites/{websiteId}/session-data-pivot": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdSessionDataPivot", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "startAt", "required": true, "schema": { "type": "integer" } }, { "in": "query", "name": "endAt", "required": true, "schema": { "type": "integer" } }, { "in": "query", "name": "propertyName", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "timezone", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "unit", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "path", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "referrer", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "title", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "query", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "os", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "browser", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "device", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "country", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "region", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "city", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "tag", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "hostname", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "distinctId", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "language", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "event", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmSource", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmMedium", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmCampaign", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmContent", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmTerm", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "excludeBounce", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "segment", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "cohort", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "eventType", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "match", "required": false, "schema": { "enum": [ "all", "any" ], "type": "string" } }, { "in": "query", "name": "page", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "pageSize", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "maxResults", "required": false, "schema": { "minimum": 1, "type": "integer" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id session data pivot", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/session-data-pivot/route.ts" } }, "/api/websites/{websiteId}/session-data/array-series": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdSessionDataArraySeries", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "startAt", "required": true, "schema": { "type": "integer" } }, { "in": "query", "name": "endAt", "required": true, "schema": { "type": "integer" } }, { "in": "query", "name": "propertyName", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "timezone", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "unit", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "path", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "referrer", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "title", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "query", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "os", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "browser", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "device", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "country", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "region", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "city", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "tag", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "hostname", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "distinctId", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "language", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "event", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmSource", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmMedium", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmCampaign", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmContent", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmTerm", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "excludeBounce", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "segment", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "cohort", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "eventType", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "match", "required": false, "schema": { "enum": [ "all", "any" ], "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id session data array series", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/session-data/array-series/route.ts" } }, "/api/websites/{websiteId}/session-data/date-series": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdSessionDataDateSeries", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "startAt", "required": true, "schema": { "type": "integer" } }, { "in": "query", "name": "endAt", "required": true, "schema": { "type": "integer" } }, { "in": "query", "name": "propertyName", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "timezone", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "path", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "referrer", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "title", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "query", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "os", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "browser", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "device", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "country", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "region", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "city", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "tag", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "hostname", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "distinctId", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "language", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "event", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmSource", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmMedium", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmCampaign", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmContent", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmTerm", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "excludeBounce", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "segment", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "cohort", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "eventType", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "match", "required": false, "schema": { "enum": [ "all", "any" ], "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id session data date series", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/session-data/date-series/route.ts" } }, "/api/websites/{websiteId}/session-data/numeric-series": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdSessionDataNumericSeries", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "startAt", "required": true, "schema": { "type": "integer" } }, { "in": "query", "name": "endAt", "required": true, "schema": { "type": "integer" } }, { "in": "query", "name": "propertyName", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "metric", "required": false, "schema": { "enum": [ "sum", "avg", "count" ], "type": "string" } }, { "in": "query", "name": "timezone", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "unit", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "path", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "referrer", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "title", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "query", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "os", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "browser", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "device", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "country", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "region", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "city", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "tag", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "hostname", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "distinctId", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "language", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "event", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmSource", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmMedium", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmCampaign", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmContent", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmTerm", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "excludeBounce", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "segment", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "cohort", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "eventType", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "match", "required": false, "schema": { "enum": [ "all", "any" ], "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id session data numeric series", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/session-data/numeric-series/route.ts" } }, "/api/websites/{websiteId}/session-data/numeric-stats": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdSessionDataNumericStats", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "startAt", "required": true, "schema": { "type": "integer" } }, { "in": "query", "name": "endAt", "required": true, "schema": { "type": "integer" } }, { "in": "query", "name": "propertyName", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "timezone", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "path", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "referrer", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "title", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "query", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "os", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "browser", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "device", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "country", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "region", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "city", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "tag", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "hostname", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "distinctId", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "language", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "event", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmSource", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmMedium", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmCampaign", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmContent", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmTerm", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "excludeBounce", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "segment", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "cohort", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "eventType", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "match", "required": false, "schema": { "enum": [ "all", "any" ], "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id session data numeric stats", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/session-data/numeric-stats/route.ts" } }, "/api/websites/{websiteId}/session-data/properties": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdSessionDataProperties", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "startAt", "required": true, "schema": { "type": "integer" } }, { "in": "query", "name": "endAt", "required": true, "schema": { "type": "integer" } }, { "in": "query", "name": "propertyName", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "path", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "referrer", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "title", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "query", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "os", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "browser", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "device", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "country", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "region", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "city", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "tag", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "hostname", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "distinctId", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "language", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "event", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmSource", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmMedium", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmCampaign", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmContent", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmTerm", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "excludeBounce", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "segment", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "cohort", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "eventType", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "match", "required": false, "schema": { "enum": [ "all", "any" ], "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id session data properties", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/session-data/properties/route.ts" } }, "/api/websites/{websiteId}/session-data/property-series": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdSessionDataPropertySeries", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "startAt", "required": true, "schema": { "type": "integer" } }, { "in": "query", "name": "endAt", "required": true, "schema": { "type": "integer" } }, { "in": "query", "name": "propertyName", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "timezone", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "unit", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "path", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "referrer", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "title", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "query", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "os", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "browser", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "device", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "country", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "region", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "city", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "tag", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "hostname", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "distinctId", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "language", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "event", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmSource", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmMedium", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmCampaign", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmContent", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmTerm", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "excludeBounce", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "segment", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "cohort", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "eventType", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "match", "required": false, "schema": { "enum": [ "all", "any" ], "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id session data property series", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/session-data/property-series/route.ts" } }, "/api/websites/{websiteId}/session-data/stats": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdSessionDataStats", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "startAt", "required": true, "schema": { "type": "integer" } }, { "in": "query", "name": "endAt", "required": true, "schema": { "type": "integer" } }, { "in": "query", "name": "propertyName", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "timezone", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "unit", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "path", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "referrer", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "title", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "query", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "os", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "browser", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "device", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "country", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "region", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "city", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "tag", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "hostname", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "distinctId", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "language", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "event", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmSource", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmMedium", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmCampaign", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmContent", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmTerm", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "excludeBounce", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "segment", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "cohort", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "eventType", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "match", "required": false, "schema": { "enum": [ "all", "any" ], "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id session data stats", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/session-data/stats/route.ts" } }, "/api/websites/{websiteId}/session-data/values": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdSessionDataValues", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "startAt", "required": true, "schema": { "type": "integer" } }, { "in": "query", "name": "endAt", "required": true, "schema": { "type": "integer" } }, { "in": "query", "name": "propertyName", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "dataType", "required": false, "schema": { "type": "integer" } }, { "in": "query", "name": "path", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "referrer", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "title", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "query", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "os", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "browser", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "device", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "country", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "region", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "city", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "tag", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "hostname", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "distinctId", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "language", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "event", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmSource", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmMedium", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmCampaign", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmContent", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmTerm", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "excludeBounce", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "segment", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "cohort", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "eventType", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "match", "required": false, "schema": { "enum": [ "all", "any" ], "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id session data values", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/session-data/values/route.ts" } }, "/api/websites/{websiteId}/sessions": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdSessions", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "startAt", "required": false, "schema": { "type": "number" } }, { "in": "query", "name": "endAt", "required": false, "schema": { "type": "number" } }, { "in": "query", "name": "startDate", "required": false, "schema": { "format": "date-time", "type": "string" } }, { "in": "query", "name": "endDate", "required": false, "schema": { "format": "date-time", "type": "string" } }, { "in": "query", "name": "timezone", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "unit", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "compare", "required": false, "schema": { "enum": [ "prev", "yoy" ], "type": "string" } }, { "in": "query", "name": "path", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "referrer", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "title", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "query", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "os", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "browser", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "device", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "country", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "region", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "city", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "tag", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "hostname", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "distinctId", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "language", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "event", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmSource", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmMedium", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmCampaign", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmContent", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmTerm", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "excludeBounce", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "segment", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "cohort", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "eventType", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "match", "required": false, "schema": { "enum": [ "all", "any" ], "type": "string" } }, { "in": "query", "name": "page", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "pageSize", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "maxResults", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "search", "required": false, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id sessions", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/sessions/route.ts" } }, "/api/websites/{websiteId}/sessions/{sessionId}": { "delete": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredDeleteWebsitesWebsiteIdSessionsSessionId", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "path", "name": "sessionId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Ok" } } }, "description": "The operation completed successfully." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" }, "404": { "$ref": "#/components/responses/NotFoundResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Delete websites website id sessions session id", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/sessions/[sessionId]/route.ts" }, "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdSessionsSessionId", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "path", "name": "sessionId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" }, "404": { "$ref": "#/components/responses/NotFoundResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id sessions session id", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/sessions/[sessionId]/route.ts" } }, "/api/websites/{websiteId}/sessions/{sessionId}/activity": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdSessionsSessionIdActivity", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "path", "name": "sessionId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "startAt", "required": true, "schema": { "type": "integer" } }, { "in": "query", "name": "endAt", "required": true, "schema": { "type": "integer" } }, { "in": "query", "name": "distinctId", "required": false, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id sessions session id activity", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/sessions/[sessionId]/activity/route.ts" } }, "/api/websites/{websiteId}/sessions/{sessionId}/properties": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdSessionsSessionIdProperties", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "path", "name": "sessionId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id sessions session id properties", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/sessions/[sessionId]/properties/route.ts" } }, "/api/websites/{websiteId}/sessions/{sessionId}/replays": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdSessionsSessionIdReplays", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "path", "name": "sessionId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "startAt", "required": false, "schema": { "type": "number" } }, { "in": "query", "name": "endAt", "required": false, "schema": { "type": "number" } }, { "in": "query", "name": "startDate", "required": false, "schema": { "format": "date-time", "type": "string" } }, { "in": "query", "name": "endDate", "required": false, "schema": { "format": "date-time", "type": "string" } }, { "in": "query", "name": "timezone", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "unit", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "compare", "required": false, "schema": { "enum": [ "prev", "yoy" ], "type": "string" } }, { "in": "query", "name": "page", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "pageSize", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "maxResults", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "search", "required": false, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id sessions session id replays", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/sessions/[sessionId]/replays/route.ts" } }, "/api/websites/{websiteId}/sessions/stats": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdSessionsStats", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "startAt", "required": true, "schema": { "type": "integer" } }, { "in": "query", "name": "endAt", "required": true, "schema": { "type": "integer" } }, { "in": "query", "name": "path", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "referrer", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "title", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "query", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "os", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "browser", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "device", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "country", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "region", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "city", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "tag", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "hostname", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "distinctId", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "language", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "event", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmSource", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmMedium", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmCampaign", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmContent", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmTerm", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "excludeBounce", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "segment", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "cohort", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "eventType", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "match", "required": false, "schema": { "enum": [ "all", "any" ], "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id sessions stats", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/sessions/stats/route.ts" } }, "/api/websites/{websiteId}/sessions/weekly": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdSessionsWeekly", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "startAt", "required": true, "schema": { "type": "integer" } }, { "in": "query", "name": "endAt", "required": true, "schema": { "type": "integer" } }, { "in": "query", "name": "timezone", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "path", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "referrer", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "title", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "query", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "os", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "browser", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "device", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "country", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "region", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "city", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "tag", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "hostname", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "distinctId", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "language", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "event", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmSource", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmMedium", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmCampaign", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmContent", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmTerm", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "excludeBounce", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "segment", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "cohort", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "eventType", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "match", "required": false, "schema": { "enum": [ "all", "any" ], "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id sessions weekly", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/sessions/weekly/route.ts" } }, "/api/websites/{websiteId}/shares": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdShares", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "path", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "referrer", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "title", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "query", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "os", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "browser", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "device", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "country", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "region", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "city", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "tag", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "hostname", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "distinctId", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "language", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "event", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmSource", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmMedium", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmCampaign", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmContent", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmTerm", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "excludeBounce", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "segment", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "cohort", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "eventType", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "match", "required": false, "schema": { "enum": [ "all", "any" ], "type": "string" } }, { "in": "query", "name": "page", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "pageSize", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "maxResults", "required": false, "schema": { "minimum": 1, "type": "integer" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id shares", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/shares/route.ts" }, "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPostWebsitesWebsiteIdShares", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "properties": { "name": { "maxLength": 200, "type": "string" }, "parameters": { "additionalProperties": true, "type": "object" } }, "required": [ "name" ], "type": "object" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Create or update websites website id shares", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/shares/route.ts" } }, "/api/websites/{websiteId}/stats": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdStats", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "startAt", "required": false, "schema": { "type": "number" } }, { "in": "query", "name": "endAt", "required": false, "schema": { "type": "number" } }, { "in": "query", "name": "startDate", "required": false, "schema": { "format": "date-time", "type": "string" } }, { "in": "query", "name": "endDate", "required": false, "schema": { "format": "date-time", "type": "string" } }, { "in": "query", "name": "timezone", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "unit", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "compare", "required": false, "schema": { "enum": [ "prev", "yoy" ], "type": "string" } }, { "in": "query", "name": "path", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "referrer", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "title", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "query", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "os", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "browser", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "device", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "country", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "region", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "city", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "tag", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "hostname", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "distinctId", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "language", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "event", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmSource", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmMedium", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmCampaign", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmContent", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "utmTerm", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "excludeBounce", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "segment", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "cohort", "required": false, "schema": { "format": "uuid", "type": "string" } }, { "in": "query", "name": "eventType", "required": false, "schema": { "minimum": 1, "type": "integer" } }, { "in": "query", "name": "match", "required": false, "schema": { "enum": [ "all", "any" ], "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id stats", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/stats/route.ts" } }, "/api/websites/{websiteId}/transfer": { "post": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredPostWebsitesWebsiteIdTransfer", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "properties": { "teamId": { "format": "uuid", "type": "string" }, "userId": { "format": "uuid", "type": "string" } }, "type": "object" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] } ], "summary": "Create or update websites website id transfer", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/transfer/route.ts" } }, "/api/websites/{websiteId}/values": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesWebsiteIdValues", "parameters": [ { "in": "path", "name": "websiteId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "startAt", "required": false, "schema": { "type": "number" } }, { "in": "query", "name": "endAt", "required": false, "schema": { "type": "number" } }, { "in": "query", "name": "startDate", "required": false, "schema": { "format": "date-time", "type": "string" } }, { "in": "query", "name": "endDate", "required": false, "schema": { "format": "date-time", "type": "string" } }, { "in": "query", "name": "timezone", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "unit", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "compare", "required": false, "schema": { "enum": [ "prev", "yoy" ], "type": "string" } }, { "in": "query", "name": "type", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "search", "required": false, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites website id values", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/[websiteId]/values/route.ts" } }, "/api/websites/charts": { "get": { "description": "Generated from the App Router handler and its request-validation source. Add a colocated contract.ts to supply exact response models and curated documentation.", "operationId": "inferredGetWebsitesCharts", "parameters": [ { "in": "query", "name": "ids", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "startAt", "required": false, "schema": { "type": "integer" } }, { "in": "query", "name": "endAt", "required": false, "schema": { "type": "integer" } }, { "in": "query", "name": "timezone", "required": false, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful response. The response shape is inferred as free-form because the handler does not expose a reusable response schema." }, "400": { "$ref": "#/components/responses/BadRequestResponse" }, "401": { "$ref": "#/components/responses/UnauthorizedResponse" } }, "security": [ { "bearerAuth": [] }, { "shareContext": [], "shareToken": [] } ], "summary": "Get websites charts", "tags": [ "Websites" ], "x-umami-audience": "public", "x-umami-contract": "inferred", "x-umami-source": "src/app/api/websites/charts/route.ts" } } }, "tags": [ { "name": "Account" }, { "name": "Administration" }, { "name": "Authentication" }, { "name": "Boards" }, { "name": "Collection" }, { "name": "Configuration" }, { "name": "Dashboard" }, { "name": "Links" }, { "name": "Pixels" }, { "name": "Realtime" }, { "name": "Reports" }, { "name": "Scripts" }, { "name": "Shares" }, { "name": "System" }, { "name": "Teams" }, { "name": "Two-factor authentication" }, { "name": "Users" }, { "name": "Websites" } ] }