Skip to content

Developer Documentation

API Reference

OpenVie API Reference — rendered directly from api-docs.json (OpenAPI 3.1.0) in the repository. All responses in the mock playground are generated statically from schemas with no live backend required.

OpenAPI 3.1.0108 endpoints77 schemasBearer JWT
# 1) Log in — receive access token
curl --request POST \
  --url "$OPENVIE/api/v1/auth/login" \
  --header "Content-Type: application/json" \
  --data '{"email":"owner@example.com","password":"OpenVie#2026!"}'

# 2) Call API with Bearer token
curl --request GET \
  --url "$OPENVIE/api/v1/documents" \
  --header "Authorization: Bearer $ACCESS_TOKEN"

Set $OPENVIE to your server base URL (defaults to http://localhost:8080 in dev). Full responses for each endpoint are documented in the API Reference.

Getting started

Start Integrating

  1. Log in via POST /api/v1/auth/login(or SSO/refresh) to receive your access_token.
  2. Call endpoints with the Authorization: Bearer … header. Current workspace, user identity, and RBAC roles are derived from the token — no tenant header needed.
  3. Explore mocks for each endpoint in the API Reference below: select response codes, fill parameters, and receive static mock payloads instantly.

Authentication

Request Authentication

All endpoints marked with a lock require a Bearer JWT. Expired tokens can be renewed via /api/v1/auth/refresh; SSO login passes through /api/v1/auth/sso/exchange. Authentication errors return standard JSON: { timestamp, status, path, error, message }.

API Reference

108 endpoint · 77 schema · nguồn api-docs.json trong repo

Hiển thị 108 / 108 endpoint

Approval workflow9

Api keys3

Tenants1

Chat6

Webhooks5

Workflow engine8

Authentication11

Documents7

Lakehouse Analytics8

Workspace members12

Organization admins4

Notification channels10

Setup2

Workspaces22

Schemas

Cấu trúc dữ liệu được định nghĩa trong OpenAPI — mỗi schema có JSON mẫu sinh tự động.

ErrorResponse
Response body ErrorResponsesinh từ schema — mock tĩnh
{
  "timestamp": "2026-10-30T21:41:26.577Z",
  "status": 500,
  "path": "/api/v1/documents/d7c4a2e0",
  "error": "Unauthorized",
  "message": "Permission denied"
}
  • timestamp
    string

    —

  • status
    integer

    —

  • path
    string

    —

  • error
    string

    —

  • message
    any

    —

UpdateSlConfigRequest
Response body UpdateSlConfigRequestsinh từ schema — mock tĩnh
{
  "reminderMinutes": 1440,
  "escalationMinutes": 4320
}
  • reminderMinutes
    integerrequired

    Reminder threshold in minutes (1–20160). Escalation must come later.

  • escalationMinutes
    integerrequired

    Escalation threshold in minutes (1–20160); must be later than the reminder.

SlConfigResponse
Response body SlConfigResponsesinh từ schema — mock tĩnh
{
  "reminderMinutes": 1440,
  "escalationMinutes": 4320,
  "defaultReminderMinutes": 120,
  "defaultEscalationMinutes": 120,
  "updatedAt": "2026-10-29T19:21:56.550Z"
}
  • reminderMinutes
    integer

    Minutes before an open approval task triggers a reminder.

  • escalationMinutes
    integer

    Minutes before an unanswered task escalates to level 2.

  • defaultReminderMinutes
    integer

    —

  • defaultEscalationMinutes
    integer

    —

  • updatedAt
    string

    —

PasswordResetRequest
Response body PasswordResetRequestsinh từ schema — mock tĩnh
{
  "password": "OpenVie#2026!"
}
  • password
    stringrequired

    Initial password (12–128 characters).

ChannelRequest
Response body ChannelRequestsinh từ schema — mock tĩnh
{
  "type": "smtp",
  "enabled": true,
  "fromEmail": "no-reply@openvie.vn",
  "fromName": "OpenVie Mail",
  "host": "smtp.example.com",
  "port": 465,
  "username": "openvie-mailer",
  "password": "OpenVie#2026!",
  "auth": true,
  "starttls": true
}
  • type
    string

    Plugin type, for example `smtp`.

  • enabled
    boolean

    —

  • fromEmail
    string

    —

  • fromName
    string

    —

  • host
    string

    —

  • port
    integer

    —

  • username
    string

    —

  • password
    string

    Write-only credential; never returned by reads.

  • auth
    boolean

    —

  • starttls
    boolean

    —

ChannelView
Response body ChannelViewsinh từ schema — mock tĩnh
{
  "id": "bf7895cf-7184-447f-a6f5-ca2ffd963a4c",
  "type": "smtp",
  "enabled": true,
  "credentialsStored": true,
  "lastDeliveryError": "Authentication required",
  "lastDeliveryAt": "2026-10-28T17:40:16.205Z"
}
  • id
    string

    —

  • type
    string

    —

  • enabled
    boolean

    —

  • credentialsStored
    boolean

    True when credentials are stored (never the values themselves).

  • lastDeliveryError
    string

    Delivery error of the last attempted send, when it failed.

  • lastDeliveryAt
    string

    —

CompleteTaskRequest
Response body CompleteTaskRequestsinh từ schema — mock tĩnh
{
  "decision": "APPROVE",
  "reason": "Giá trị reason"
}
  • decision
    stringrequired

    APPROVE settles the level, REJECT ends the process as REJECTED, ESCALATE hands a level 1 task to level 2.

  • reason
    string

    Required for REJECT; ignored otherwise, up to 500 characters.

CompleteTaskResponse
Response body CompleteTaskResponsesinh từ schema — mock tĩnh
{
  "taskId": "073ce19e-9054-4f86-a879-420779d476e2",
  "decision": "Giá trị decision",
  "processInstanceId": "0d0d35de-b101-4e9b-acd4-7c29bdde89ce",
  "documentId": "6fe8c5f2-aa6c-4f8e-a371-05defafbbbac",
  "processEnded": true,
  "documentStatus": "Giá trị documentStatus",
  "nextTaskId": "b45d66dd-1e04-4e06-ab47-4613ec48396a"
}
  • taskId
    string

    —

  • decision
    string

    —

  • processInstanceId
    string

    —

  • documentId
    string

    —

  • processEnded
    boolean

    True when the decision settled the process (approved, rejected, or last level done).

  • documentStatus
    string

    Document status after the decision: APPROVED, REJECTED, or null while still in review.

  • nextTaskId
    string

    Next approval task when the process moved to a further level.

WorkspaceTaskView
Response body WorkspaceTaskViewsinh từ schema — mock tĩnh
{
  "taskId": "fae3877a-de60-4938-a53b-59d9c9986eab",
  "taskName": "Giá trị taskName",
  "taskDefinitionKey": "Giá trị taskDefinitionKey",
  "approvalLevel": 57,
  "candidateGroup": "Giá trị candidateGroup",
  "assignee": "Lê Thu Hà",
  "processInstanceId": "e3d13ed2-770d-41b3-aea1-46e5f0c25a20",
  "documentId": "85058b62-193c-4dbf-ae7d-276ac60997ec",
  "documentFileName": "chinh-sach-nhan-su.docx",
  "createdAt": "2026-10-30T08:26:16.293Z"
}
  • taskId
    string

    —

  • taskName
    string

    —

  • taskDefinitionKey
    string

    —

  • approvalLevel
    integer

    —

  • candidateGroup
    string

    —

  • assignee
    string

    —

  • processInstanceId
    string

    —

  • documentId
    string

    —

  • documentFileName
    string

    —

  • createdAt
    string

    —

StartProcessRequest
Response body StartProcessRequestsinh từ schema — mock tĩnh
{
  "documentId": "d654d99e-aaf6-4231-a877-e9e154709a77",
  "publishTarget": "workspace"
}
  • documentId
    stringrequired

    Document to approve; must be COMPLETED and without an open process.

  • publishTarget
    stringrequired

    Where the document is published once approved: `workspace`, `shared`, or `public`.

StartProcessResponse
Response body StartProcessResponsesinh từ schema — mock tĩnh
{
  "processInstanceId": "344655e8-bf74-466b-a96c-58e01666f1a7",
  "documentId": "a594b40e-b368-403f-aec5-0981173d461a",
  "documentFileName": "bao-cao-tai-chinh-q3.xlsx",
  "publishTarget": "Giá trị publishTarget",
  "sensitive": true,
  "approvalLevel": 38,
  "policyVersion": "policy-2026-v1",
  "slaReminder": "Giá trị slaReminder",
  "slaEscalation": "Giá trị slaEscalation",
  "taskId": "94106986-894c-4647-a520-36150fec3250",
  "autoApproved": true,
  "documentStatus": "Giá trị documentStatus"
}
  • processInstanceId
    string

    —

  • documentId
    string

    —

  • documentFileName
    string

    —

  • publishTarget
    string

    —

  • sensitive
    boolean

    Whether sensitivity scoring classified the document as sensitive (drives the approval level).

  • approvalLevel
    integer

    —

  • policyVersion
    string

    —

  • slaReminder
    string

    —

  • slaEscalation
    string

    —

  • taskId
    string

    First approval task; auto-approved starts leave this null.

  • autoApproved
    boolean

    True when the submitter's own authority covered the required review and the first task was auto-approved at start.

  • documentStatus
    string

    APPROVED when autoApproved; null while the document is still in review.

EngineCompleteRequest
Response body EngineCompleteRequestsinh từ schema — mock tĩnh
{
  "variables": {
    "alpha": "Giá trị variables",
    "beta": "Giá trị variables"
  }
}
  • variables
    object

    —

EngineClaimRequest
Response body EngineClaimRequestsinh từ schema — mock tĩnh
{
  "assignee": "Đỗ Gia Khánh"
}
  • assignee
    string

    Optional explicit assignee user id; defaults to the caller.

StartEngineProcessRequest
Response body StartEngineProcessRequestsinh từ schema — mock tĩnh
{
  "definitionKey": "Giá trị definitionKey",
  "businessKey": "Giá trị businessKey",
  "variables": {
    "alpha": "Giá trị variables",
    "beta": "Giá trị variables"
  }
}
  • definitionKey
    stringrequired

    Definition key (the BPMN process id), or the definition id.

  • businessKey
    string

    Optional caller-side business key (for example an external record id).

  • variables
    object

    Variables the definition's script/delegation logic consumes.

EngineProcessView
Response body EngineProcessViewsinh từ schema — mock tĩnh
{
  "id": "Giá trị id",
  "definitionKey": "Giá trị definitionKey",
  "definitionName": "Giá trị definitionName",
  "businessKey": "Giá trị businessKey",
  "startedAt": "2026-10-28T14:26:06.051Z",
  "variables": {
    "alpha": "Giá trị variables",
    "beta": "Giá trị variables"
  }
}
  • id
    string

    —

  • definitionKey
    string

    Definition key the instance runs.

  • definitionName
    string

    —

  • businessKey
    string

    —

  • startedAt
    string

    —

  • variables
    object

    —

DeployDefinitionRequest
Response body DeployDefinitionRequestsinh từ schema — mock tĩnh
{
  "name": "DMS Bridge",
  "bpmnXml": "Giá trị bpmnXml"
}
  • name
    stringrequired

    Display name; also becomes the deployment resource name.

  • bpmnXml
    stringrequired

    BPMN 2.0 XML. The process `id` inside the XML is the definition key used to start processes.

EngineDefinitionView
Response body EngineDefinitionViewsinh từ schema — mock tĩnh
{
  "id": "Giá trị id",
  "key": "Giá trị key",
  "name": "DMS Bridge",
  "version": 97,
  "deployedAt": "2026-10-30T22:54:39.836Z",
  "managed": true
}
  • id
    string

    —

  • key
    string

    —

  • name
    string

    —

  • version
    integer

    —

  • deployedAt
    string

    —

  • managed
    boolean

    True when this definition was deployed through the generic engine API.

CreateUserRequest
Response body CreateUserRequestsinh từ schema — mock tĩnh
{
  "email": "haidang@example.com",
  "fullName": "Trần Quốc Bảo",
  "password": "OpenVie#2026!"
}
  • email
    stringrequired

    —

  • fullName
    stringrequired

    —

  • password
    stringrequired

    Initial password (12–128 characters), forced to change on first login.

OrganizationMemberResponse
Response body OrganizationMemberResponsesinh từ schema — mock tĩnh
{
  "id": "3200581c-023d-4f2e-abd0-8eca3ccc83b3",
  "email": "no-reply@openvie.vn",
  "fullName": "Lê Thu Hà",
  "orgRole": "ORG_OWNER",
  "status": "INACTIVE",
  "createdAt": "2026-10-29T19:39:12.171Z",
  "lastLoginAt": "2026-10-28T20:24:32.428Z",
  "currentUser": true
}
  • id
    string

    —

  • email
    string

    —

  • fullName
    string

    —

  • orgRole
    string

    —

  • status
    string

    —

  • createdAt
    string

    —

  • lastLoginAt
    string

    —

  • currentUser
    boolean

    —

AddMemberToWorkspaceRequest
Response body AddMemberToWorkspaceRequestsinh từ schema — mock tĩnh
{
  "email": "qa-team@example.com",
  "role": "WORKSPACE_ADMIN"
}
  • email
    stringrequired

    Email of an organization account that is not a member of the workspace yet.

  • role
    stringrequired

    Workspace role to grant: ADMIN or MEMBER.

MemberResponse
Response body MemberResponsesinh từ schema — mock tĩnh
{
  "id": "b465fb31-6f93-4b0e-a1e0-365fde954d01",
  "email": "no-reply@openvie.vn",
  "fullName": "Trần Quốc Bảo",
  "workspaceRole": "MEMBER",
  "status": "INACTIVE",
  "joinedAt": "2026-10-30T02:50:43.049Z",
  "lastLoginAt": "2026-10-30T10:36:13.519Z",
  "currentUser": true
}
  • id
    string

    —

  • email
    string

    —

  • fullName
    string

    —

  • workspaceRole
    string

    Workspace role: ADMIN or MEMBER.

  • status
    string

    —

  • joinedAt
    string

    —

  • lastLoginAt
    string

    —

  • currentUser
    boolean

    True when this row is the caller.

InviteRequest
Response body InviteRequestsinh từ schema — mock tĩnh
{
  "email": "trnhb@example.com",
  "role": "MEMBER"
}
  • email
    stringrequired

    Personal or account email; unique inside the workspace.

  • role
    stringrequired

    Workspace role granted on acceptance: ADMIN or MEMBER.

InvitationResponse
Response body InvitationResponsesinh từ schema — mock tĩnh
{
  "id": "109efbe4-9668-4ee9-aa76-38f3b3f150fc",
  "email": "owner@example.com",
  "role": "MEMBER",
  "status": "ACCEPTED",
  "invitedAt": "2026-10-28T14:19:31.043Z",
  "expiresAt": "2026-10-29T22:39:36.562Z",
  "lastSentAt": "2026-10-29T02:59:26.694Z"
}
  • id
    string

    —

  • email
    string

    —

  • role
    string

    —

  • status
    string

    PENDING, EXPIRED, ACCEPTED, or CANCELLED.

  • invitedAt
    string

    —

  • expiresAt
    string

    —

  • lastSentAt
    string

    —

SetupRequest
Response body SetupRequestsinh từ schema — mock tĩnh
{
  "organizationName": "OpenVie",
  "fullName": "Nguyễn Hải Đăng",
  "email": "owner@example.com",
  "password": "OpenVie#2026!",
  "allowSelfRegistration": true
}
  • organizationName
    stringrequired

    Organization display name.

  • fullName
    stringrequired

    Owner's display name.

  • email
    stringrequired

    Owner account email; used as the login name.

  • password
    stringrequired

    Initial owner password (12–128 characters).

  • allowSelfRegistration
    boolean

    When true, `/api/v1/auth/register` accepts self-registrations from the start.

SetupResponse
Response body SetupResponsesinh từ schema — mock tĩnh
{
  "organizationId": "e69eb850-5d91-4871-ad91-b878b6627df9",
  "workspaceId": "47e184cd-b910-4f0b-a97b-02886090cd59",
  "ownerId": "95a34882-7597-4436-a64a-cd133856298d"
}
  • organizationId
    string

    —

  • workspaceId
    string

    —

  • ownerId
    string

    —

DocumentUploadResponse
Response body DocumentUploadResponsesinh từ schema — mock tĩnh
{
  "id": "75939071-f54d-4389-a7d8-bb1788d62985",
  "jobId": "5e2bef58-5aa8-483c-aa58-c0f2a53e9c88",
  "fileName": "bao-cao-tai-chinh-q3.xlsx",
  "status": "PENDING"
}
  • id
    string

    —

  • jobId
    string

    —

  • fileName
    string

    —

  • status
    string

    —

CreateSessionRequest
Response body CreateSessionRequestsinh từ schema — mock tĩnh
{
  "chatbot_id": "a45aeec9-6709-4fed-ab06-62af21b75265",
  "knowledge_base_id": "c43360ea-f11f-4fde-adb6-96ad5975fc1f",
  "locale": "vi",
  "metadata": {
    "alpha": "Giá trị metadata",
    "beta": "Giá trị metadata"
  }
}
  • chatbot_id
    string

    Chatbot profile the session runs with. Optional when the workspace has exactly one chatbot.

  • knowledge_base_id
    string

    Knowledge base whose documents ground the answers.

  • locale
    string

    Answer language hint (BCP-47).

  • metadata
    object

    Free-form client context attached to the session.

SessionResponse
Response body SessionResponsesinh từ schema — mock tĩnh
{
  "id": "Giá trị id",
  "chatbot_id": "Giá trị chatbot_id",
  "knowledge_base_id": "Giá trị knowledge_base_id",
  "tenant_id": "Giá trị tenant_id",
  "locale": "vi"
}
  • id
    string

    —

  • chatbot_id
    string

    —

  • knowledge_base_id
    string

    —

  • tenant_id
    string

    —

  • locale
    string

    —

SubmitMessageRequest
Response body SubmitMessageRequestsinh từ schema — mock tĩnh
{
  "content": "Summarize the onboarding policy.",
  "metadata": {
    "alpha": "Giá trị metadata",
    "beta": "Giá trị metadata"
  },
  "document_ids": [
    "31c3f1e2-80d6-452c-a542-febca5a038dd"
  ]
}
  • content
    stringrequired

    User question, up to 32 000 characters.

  • metadata
    object

    Free-form client context for this turn.

  • document_ids
    array<string>

    Optional retrieval scope: at most 20 document ids, each a COMPLETED document of the session's knowledge base. Empty or absent means the whole knowledge base. A replayed turn (Idempotency-Key) keeps the scope stored with the original request.

AuthResponse
Response body AuthResponsesinh từ schema — mock tĩnh
{
  "accessToken": "Giá trị accessToken",
  "tokenType": "Bearer",
  "expiresIn": 68,
  "user": {
    "userId": "Giá trị userId",
    "orgId": "Giá trị orgId",
    "activeWorkspaceId": "Giá trị activeWorkspaceId",
    "fullName": "Nguyễn Hải Đăng",
    "email": "no-reply@openvie.vn",
    "orgRole": "Giá trị orgRole",
    "workspaceRole": "Giá trị workspaceRole",
    "mustChangePassword": true
  }
}
  • accessToken
    string

    —

  • tokenType
    string

    —

  • expiresIn
    integer

    —

  • user
    UserInfo

    —

UserInfo
Response body UserInfosinh từ schema — mock tĩnh
{
  "userId": "Giá trị userId",
  "orgId": "Giá trị orgId",
  "activeWorkspaceId": "Giá trị activeWorkspaceId",
  "fullName": "Phạm Minh Anh",
  "email": "no-reply@openvie.vn",
  "orgRole": "Giá trị orgRole",
  "workspaceRole": "Giá trị workspaceRole",
  "mustChangePassword": true
}
  • userId
    string

    —

  • orgId
    string

    —

  • activeWorkspaceId
    string

    —

  • fullName
    string

    —

  • email
    string

    —

  • orgRole
    string

    —

  • workspaceRole
    string

    —

  • mustChangePassword
    boolean

    —

SsoExchangeRequest
Response body SsoExchangeRequestsinh từ schema — mock tĩnh
{
  "code": "Giá trị code",
  "codeVerifier": "Giá trị codeVerifier",
  "redirectUri": "Giá trị redirectUri"
}
  • code
    stringrequired

    —

  • codeVerifier
    stringrequired

    —

  • redirectUri
    stringrequired

    —

RegisterRequest
Response body RegisterRequestsinh từ schema — mock tĩnh
{
  "email": "qa-team@example.com",
  "fullName": "Trần Quốc Bảo",
  "password": "OpenVie#2026!"
}
  • email
    stringrequired

    —

  • fullName
    stringrequired

    —

  • password
    stringrequired

    —

RefreshRequest
Response body RefreshRequestsinh từ schema — mock tĩnh
{
  "refreshToken": "Giá trị refreshToken"
}
  • refreshToken
    string

    —

LoginRequest
Response body LoginRequestsinh từ schema — mock tĩnh
{
  "email": "haidang@example.com",
  "password": "OpenVie#2026!",
  "rememberMe": true
}
  • email
    stringrequired

    —

  • password
    stringrequired

    —

  • rememberMe
    boolean

    When true the refresh cookie lasts `jwt.expiry-days`; otherwise it is a session cookie.

AcceptInvitationRequest
Response body AcceptInvitationRequestsinh từ schema — mock tĩnh
{
  "token": "Giá trị token",
  "fullName": "Phạm Minh Anh",
  "password": "OpenVie#2026!"
}
  • token
    stringrequired

    Invitation token from the invite email link.

  • fullName
    stringrequired

    —

  • password
    stringrequired

    Initial password (8–128 characters); not forced to change later.

ChangePasswordRequest
Response body ChangePasswordRequestsinh từ schema — mock tĩnh
{
  "currentPassword": "OpenVie#2026!",
  "newPassword": "OpenVie#2027!"
}
  • currentPassword
    string

    The caller's current password; for a first forced change, the administrator-set initial password.

  • newPassword
    stringrequired

    The new password (12–128 characters).

AddMemberRequest
Response body AddMemberRequestsinh từ schema — mock tĩnh
{
  "email": "owner@example.com",
  "role": "MEMBER"
}
  • email
    stringrequired

    —

  • role
    stringrequired

    —

MemberView
Response body MemberViewsinh từ schema — mock tĩnh
{
  "userId": "d92fe3f6-b779-4207-a4d9-a21191a6b76b",
  "email": "no-reply@openvie.vn",
  "fullName": "Nguyễn Hải Đăng",
  "status": "OK",
  "workspaceRole": "Giá trị workspaceRole",
  "joinedAt": "2026-10-29T12:02:01.530Z"
}
  • userId
    string

    —

  • email
    string

    —

  • fullName
    string

    —

  • status
    string

    —

  • workspaceRole
    string

    —

  • joinedAt
    string

    —

CreateWorkspaceRequest
Response body CreateWorkspaceRequestsinh từ schema — mock tĩnh
{
  "name": "DMS Bridge",
  "visibility": "Giá trị visibility"
}
  • name
    stringrequired

    —

  • visibility
    string

    —

WorkspaceView
Response body WorkspaceViewsinh từ schema — mock tĩnh
{
  "id": "19a7693e-67ff-43db-ab49-be314d458c57",
  "name": "DMS Bridge",
  "slug": "chinh-sach-ngay-nghi-2026",
  "status": "OK",
  "visibility": "Giá trị visibility",
  "memberCount": 20,
  "createdAt": "2026-10-29T22:53:21.730Z",
  "default": true,
  "isDefault": true
}
  • id
    string

    —

  • name
    string

    —

  • slug
    string

    —

  • status
    string

    —

  • visibility
    string

    —

  • memberCount
    integer

    —

  • createdAt
    string

    —

  • default
    boolean

    —

  • isDefault
    boolean

    —

CreateWebhookRequest
Response body CreateWebhookRequestsinh từ schema — mock tĩnh
{
  "name": "DMS bridge",
  "url": "https://dms.example.com/openvie/hooks",
  "events": [
    "Giá trị events_item"
  ]
}
  • name
    stringrequired

    Display name for listings.

  • url
    stringrequired

    POST target; must be http(s).

  • events
    array<string>

    Optional event whitelist; empty or absent receives every event. Known types: document.status.changed, workflow.started, workflow.approved, workflow.rejected, workflow.escalated, webhook.test.

CreatedWebhook
Response body CreatedWebhooksinh từ schema — mock tĩnh
{
  "id": "9688f570-9b87-4600-a088-5f5e45a0f225",
  "secret": "whsec_7Yq3pRv9xLd2KmBaWf8hTc0nZj5GaQeU",
  "endpoint": {
    "id": "acbb618b-95e4-4102-ae0e-0f010c01f3a2",
    "name": "DMS Bridge",
    "url": "https://dms.example.com/openvie/hooks",
    "status": "OK",
    "createdAt": "2026-10-28T06:50:56.847Z",
    "createdBy": "20526d58-6114-4946-a1ad-40be15910b52"
  }
}
  • id
    string

    —

  • secret
    string

    Signing secret in the form `whsec_<secret>`.

  • endpoint
    WebhookEndpointView

    —

WebhookEndpointView
Response body WebhookEndpointViewsinh từ schema — mock tĩnh
{
  "id": "110d0ce0-d96f-4a09-adac-311d92e28f5a",
  "name": "DMS Bridge",
  "url": "https://dms.example.com/openvie/hooks",
  "status": "OK",
  "events": [
    "Giá trị events_item"
  ],
  "createdAt": "2026-10-30T21:14:57.795Z",
  "createdBy": "aa799d32-4c55-472f-a256-ff4eaaa3a627"
}
  • id
    string

    —

  • name
    string

    —

  • url
    string

    —

  • status
    string

    —

  • events
    array<string>

    —

  • createdAt
    string

    —

  • createdBy
    string

    —

TestRequest
Response body TestRequestsinh từ schema — mock tĩnh
{
  "email": "qa-team@example.com"
}
  • email
    stringrequired

    —

CreateApiKeyRequest
Response body CreateApiKeyRequestsinh từ schema — mock tĩnh
{
  "name": "Marketing site search",
  "workspaceId": "4e44d190-7889-42aa-acd9-9da8a5a3c42f",
  "role": "MEMBER",
  "expiresAt": "2026-10-28T18:49:39.490Z"
}
  • name
    stringrequired

    Display name, shown in listings and in the service-member profile.

  • workspaceId
    stringrequired

    Workspace the key operates in.

  • role
    string

    Workspace authority of the key: WORKSPACE_ADMIN or MEMBER.

  • expiresAt
    string

    Optional expiry; after this instant the key answers 401.

ApiKeyView
Response body ApiKeyViewsinh từ schema — mock tĩnh
{
  "id": "2c2523cd-ba41-45ef-ab24-ba91ff209205",
  "workspaceId": "d699ecb2-3bd3-40a1-a393-f86417fc8c9f",
  "serviceUserId": "0dded368-72b9-4e6a-ae6c-6f84d303bdf4",
  "name": "DMS Bridge",
  "keyPrefix": "Giá trị keyPrefix",
  "role": "Giá trị role",
  "status": "OK",
  "createdAt": "2026-10-29T17:39:09.001Z",
  "lastUsedAt": "2026-10-30T13:13:24.258Z",
  "expiresAt": "2026-10-30T18:49:31.551Z",
  "createdBy": "9fec0d32-cd64-458f-a219-a38cded5094f",
  "expired": true
}
  • id
    string

    —

  • workspaceId
    string

    —

  • serviceUserId
    string

    —

  • name
    string

    —

  • keyPrefix
    string

    `ovk_` + first secret characters, for identification only.

  • role
    string

    —

  • status
    string

    —

  • createdAt
    string

    —

  • lastUsedAt
    string

    —

  • expiresAt
    string

    —

  • createdBy
    string

    —

  • expired
    boolean

    True when the key can no longer authenticate (revoked or expired).

CreatedApiKey
Response body CreatedApiKeysinh từ schema — mock tĩnh
{
  "id": "4a1d7c4a-b651-4881-a872-ba3b24ac764d",
  "key": "ovk_7Yq3pRv9xLd2KmBaWf8hTc0nZj5GaQeU",
  "keyView": {
    "id": "a9f2f67f-5a9e-4712-adb5-dba501f9d9cc",
    "workspaceId": "49e1c69e-f19a-40f2-a884-2d39175bd4ee",
    "serviceUserId": "12545e2f-a171-443e-ad13-40d885c8a019",
    "name": "DMS Bridge",
    "keyPrefix": "Giá trị keyPrefix",
    "role": "Giá trị role",
    "status": "OK",
    "createdAt": "2026-10-30T19:01:27.710Z",
    "lastUsedAt": "2026-10-29T03:39:50.679Z",
    "expiresAt": "2026-10-28T09:35:51.317Z",
    "createdBy": "8c15c059-6e2b-453b-a688-56c82f315fa9",
    "expired": true
  }
}
  • id
    string

    —

  • key
    string

    Bearer secret in the form `ovk_<secret>`.

  • keyView
    ApiKeyView

    —

StatusUpdateRequest
Response body StatusUpdateRequestsinh từ schema — mock tĩnh
{
  "status": "INVITED"
}
  • status
    stringrequired

    —

RoleUpdateRequest
Response body RoleUpdateRequestsinh từ schema — mock tĩnh
{
  "role": "MEMBER"
}
  • role
    stringrequired

    New workspace role: ADMIN or MEMBER.

VisibilityRequest
Response body VisibilityRequestsinh từ schema — mock tĩnh
{
  "visibility": "Giá trị visibility"
}
  • visibility
    stringrequired

    —

RoleRequest
Response body RoleRequestsinh từ schema — mock tĩnh
{
  "role": "MEMBER"
}
  • role
    stringrequired

    —

RenameWorkspaceRequest
Response body RenameWorkspaceRequestsinh từ schema — mock tĩnh
{
  "name": "DMS Bridge"
}
  • name
    stringrequired

    —

ToggleRequest
Response body ToggleRequestsinh từ schema — mock tĩnh
{
  "allowed": true
}
  • allowed
    boolean

    —

WorkspaceTasks
Response body WorkspaceTaskssinh từ schema — mock tĩnh
{
  "assignedToMe": [
    {
      "taskId": "f97332da-f59e-4845-a0cf-c2ed3d7a42eb",
      "taskName": "Giá trị taskName",
      "taskDefinitionKey": "Giá trị taskDefinitionKey",
      "approvalLevel": 30,
      "candidateGroup": "Giá trị candidateGroup",
      "assignee": "Phạm Minh Anh",
      "processInstanceId": "9d795a9e-3c32-4b7d-aab2-627b84325e5f",
      "documentId": "6da4b427-4a2d-497e-aacb-920a88e280c9",
      "documentFileName": "quy-trinh-phong-van.pdf",
      "createdAt": "2026-10-30T08:31:16.331Z"
    }
  ],
  "groupTasks": [
    {
      "taskId": "c403a2fa-689b-4c4d-a56c-5ef143cbf7c8",
      "taskName": "Giá trị taskName",
      "taskDefinitionKey": "Giá trị taskDefinitionKey",
      "approvalLevel": 80,
      "candidateGroup": "Giá trị candidateGroup",
      "assignee": "Trần Quốc Bảo",
      "processInstanceId": "ea14c2bf-1b4a-43e1-a7f5-65127490f7db",
      "documentId": "fd6cfeb8-504d-43fe-ad66-d5bd3de7342b",
      "documentFileName": "quy-trinh-phong-van.pdf",
      "createdAt": "2026-10-29T22:16:04.281Z"
    }
  ]
}
  • assignedToMe
    array<WorkspaceTaskView>

    —

  • groupTasks
    array<WorkspaceTaskView>

    —

WorkflowProcessView
Response body WorkflowProcessViewsinh từ schema — mock tĩnh
{
  "processInstanceId": "1a0abce7-faa6-4198-af74-70dcc3ee274d",
  "documentId": "19df97a2-79bd-4049-a208-b8bdf82c35b5",
  "documentFileName": "chinh-sach-nhan-su.docx",
  "sensitive": true,
  "approvalLevel": 25,
  "policyVersion": "policy-2026-v1",
  "publishTarget": "Giá trị publishTarget",
  "documentStatus": "Giá trị documentStatus",
  "escalated": true,
  "startedAt": "2026-10-29T00:07:40.730Z",
  "endedAt": "2026-10-28T09:52:02.403Z"
}
  • processInstanceId
    string

    —

  • documentId
    string

    —

  • documentFileName
    string

    —

  • sensitive
    boolean

    —

  • approvalLevel
    integer

    —

  • policyVersion
    string

    —

  • publishTarget
    string

    —

  • documentStatus
    string

    —

  • escalated
    boolean

    —

  • startedAt
    string

    —

  • endedAt
    string

    —

ProcessDetail
Response body ProcessDetailsinh từ schema — mock tĩnh
{
  "process": {
    "processInstanceId": "e78dbf6f-3805-4fcd-a4de-d89596240e99",
    "documentId": "1fa51ad5-c9b8-40e6-a0ea-9e422d47fd34",
    "documentFileName": "quy-trinh-phong-van.pdf",
    "sensitive": true,
    "approvalLevel": 90,
    "policyVersion": "policy-2026-v1",
    "publishTarget": "Giá trị publishTarget",
    "documentStatus": "Giá trị documentStatus",
    "escalated": true,
    "startedAt": "2026-10-28T04:00:23.699Z",
    "endedAt": "2026-10-30T22:56:08.357Z"
  },
  "activeTasks": [
    {
      "taskId": "a0e83ba9-fa23-4372-a63e-618c8746566a",
      "taskName": "Giá trị taskName",
      "taskDefinitionKey": "Giá trị taskDefinitionKey",
      "approvalLevel": 20,
      "candidateGroup": "Giá trị candidateGroup",
      "assignee": "Lê Thu Hà",
      "processInstanceId": "1467d909-746d-4d00-a300-c5bfce495998",
      "documentId": "59f3fadf-a4bb-48b0-a409-4cbccf239ef3",
      "documentFileName": "quy-trinh-phong-van.pdf",
      "createdAt": "2026-10-30T22:14:58.949Z"
    }
  ]
}
  • process
    WorkflowProcessView

    —

  • activeTasks
    array<WorkspaceTaskView>

    —

ProcessLog
Response body ProcessLogsinh từ schema — mock tĩnh
{
  "process": {
    "processInstanceId": "3e2c8f41-8aba-4d94-af06-e3567479e73e",
    "documentId": "a7603899-af6a-4db9-a008-9865158ee761",
    "documentFileName": "bao-cao-tai-chinh-q3.xlsx",
    "sensitive": true,
    "approvalLevel": 35,
    "policyVersion": "policy-2026-v1",
    "publishTarget": "Giá trị publishTarget",
    "documentStatus": "Giá trị documentStatus",
    "escalated": true,
    "startedAt": "2026-10-30T05:59:40.102Z",
    "endedAt": "2026-10-28T08:23:20.237Z"
  },
  "entries": [
    {
      "occurredAt": "2026-10-30T17:11:44.264Z",
      "actorId": "ce77e54d-8ff1-4a44-ad3f-d0a9a1cadd56",
      "actorName": "Phạm Minh Anh",
      "action": "Giá trị action"
    }
  ]
}
  • process
    WorkflowProcessView

    —

  • entries
    array<ProcessLogEntry>

    —

ProcessLogEntry
Response body ProcessLogEntrysinh từ schema — mock tĩnh
{
  "occurredAt": "2026-10-28T21:37:59.384Z",
  "actorId": "a000157e-ff0d-4413-aa56-4a4675cc2d1e",
  "actorName": "Trần Quốc Bảo",
  "action": "Giá trị action",
  "metadata": {
    "alpha": "Giá trị metadata",
    "beta": "Giá trị metadata"
  }
}
  • occurredAt
    string

    —

  • actorId
    string

    —

  • actorName
    string

    —

  • action
    string

    —

  • metadata
    object

    —

EngineTaskView
Response body EngineTaskViewsinh từ schema — mock tĩnh
{
  "id": "Giá trị id",
  "name": "DMS Bridge",
  "assignee": "Đỗ Gia Khánh",
  "processInstanceId": "Giá trị processInstanceId",
  "definitionKey": "Giá trị definitionKey",
  "approvalDomain": true,
  "createdAt": "2026-10-30T11:09:26.499Z",
  "dueDate": "2026-10-30T22:49:10.805Z"
}
  • id
    string

    —

  • name
    string

    —

  • assignee
    string

    User id the task is claimed for, or null when unassigned.

  • processInstanceId
    string

    —

  • definitionKey
    string

    —

  • approvalDomain
    boolean

    Approval-flow tasks are journaled by the approval endpoints and refused here.

  • createdAt
    string

    —

  • dueDate
    string

    —

EngineTasks
Response body EngineTaskssinh từ schema — mock tĩnh
{
  "tasks": [
    {
      "id": "Giá trị id",
      "name": "DMS Bridge",
      "assignee": "Phạm Minh Anh",
      "processInstanceId": "Giá trị processInstanceId",
      "definitionKey": "Giá trị definitionKey",
      "approvalDomain": true,
      "createdAt": "2026-10-28T06:00:12.680Z",
      "dueDate": "2026-10-30T03:49:35.396Z"
    }
  ],
  "total": 4
}
  • tasks
    array<EngineTaskView>

    —

  • total
    integer

    —

EngineProcessHistoryView
Response body EngineProcessHistoryViewsinh từ schema — mock tĩnh
{
  "id": "Giá trị id",
  "definitionKey": "Giá trị definitionKey",
  "businessKey": "Giá trị businessKey",
  "startedAt": "2026-10-30T05:51:37.134Z",
  "endedAt": "2026-10-28T03:41:31.230Z",
  "ended": true,
  "durationMs": 38,
  "variables": {
    "alpha": "Giá trị variables",
    "beta": "Giá trị variables"
  }
}
  • id
    string

    —

  • definitionKey
    string

    —

  • businessKey
    string

    —

  • startedAt
    string

    —

  • endedAt
    string

    —

  • ended
    boolean

    True when the instance reached its end (for Approval this is the decision).

  • durationMs
    integer

    Duration between start and end in ms; null while running.

  • variables
    object

    —

DirectoryResponse
Response body DirectoryResponsesinh từ schema — mock tĩnh
{
  "members": [
    {
      "id": "7c3ecf2c-5bf0-4258-af8d-6000bc4b9b33",
      "email": "owner@example.com",
      "fullName": "Trần Quốc Bảo",
      "workspaceRole": "WORKSPACE_ADMIN",
      "status": "ACTIVE",
      "joinedAt": "2026-10-29T03:10:36.199Z",
      "lastLoginAt": "2026-10-30T12:50:19.138Z",
      "currentUser": true
    }
  ],
  "invitations": [
    {
      "id": "85abac3a-48d9-4cd2-ad51-dee8b2a37c5f",
      "email": "no-reply@openvie.vn",
      "role": "WORKSPACE_ADMIN",
      "status": "ACCEPTED",
      "invitedAt": "2026-10-29T20:27:38.245Z",
      "expiresAt": "2026-10-28T19:30:56.291Z",
      "lastSentAt": "2026-10-30T08:55:39.008Z"
    }
  ],
  "visibility": "PRIVATE",
  "defaultWorkspace": true
}
  • members
    array<MemberResponse>

    —

  • invitations
    array<InvitationResponse>

    —

  • visibility
    string

    —

  • defaultWorkspace
    boolean

    —

ChatbotWorkspace
Response body ChatbotWorkspacesinh từ schema — mock tĩnh
{
  "id": "7ff3c16e-b54c-45cc-a4b3-163f1b697e1c",
  "displayName": "Đỗ Gia Khánh",
  "defaultLocale": "Giá trị defaultLocale",
  "welcomeMessage": "Giá trị welcomeMessage"
}
  • id
    string

    —

  • displayName
    string

    —

  • defaultLocale
    string

    —

  • welcomeMessage
    string

    —

KnowledgeBaseWorkspace
Response body KnowledgeBaseWorkspacesinh từ schema — mock tĩnh
{
  "id": "882b2c8a-6068-46a5-a2d4-c98a5b4d825d",
  "name": "DMS Bridge",
  "slug": "chinh-sach-ngay-nghi-2026",
  "defaultLocale": "Giá trị defaultLocale"
}
  • id
    string

    —

  • name
    string

    —

  • slug
    string

    —

  • defaultLocale
    string

    —

TenantWorkspaceResponse
Response body TenantWorkspaceResponsesinh từ schema — mock tĩnh
{
  "tenantId": "b2e13dca-e931-4cbf-acee-81f52a9502b4",
  "knowledgeBase": {
    "id": "c9d778d7-454c-418e-a052-0d5445e800d1",
    "name": "DMS Bridge",
    "slug": "chinh-sach-ngay-nghi-2026",
    "defaultLocale": "Giá trị defaultLocale"
  },
  "chatbot": {
    "id": "dfdb4fb1-267d-4fa3-abe7-441ade28aa85",
    "displayName": "Đỗ Gia Khánh",
    "defaultLocale": "Giá trị defaultLocale",
    "welcomeMessage": "Giá trị welcomeMessage"
  }
}
  • tenantId
    string

    —

  • knowledgeBase
    KnowledgeBaseWorkspace

    —

  • chatbot
    ChatbotWorkspace

    —

DocumentListItemResponse
Response body DocumentListItemResponsesinh từ schema — mock tĩnh
{
  "id": "7493323b-fac0-4e3b-af82-6d92a26430e4",
  "jobId": "79c9e454-9f4d-4a97-a060-482769ea2c30",
  "fileName": "onboarding-policy.pdf",
  "fileType": "VIDEO",
  "fileSizeBytes": 22,
  "knowledgeBaseId": "8b4ac432-8afa-4be8-ab20-1af8c5955e01",
  "status": "PROCESSING",
  "chunkCount": 42,
  "textSource": "ocr",
  "pageCount": 61,
  "errorMessage": "Resource not found",
  "uploadedAt": "2026-10-28T14:04:34.916Z",
  "uploadedBy": "549b5762-5120-4533-a4e6-62955f0f5cba"
}
  • id
    string

    —

  • jobId
    string

    —

  • fileName
    string

    —

  • fileType
    string

    —

  • fileSizeBytes
    integer

    —

  • knowledgeBaseId
    string

    —

  • status
    string

    Ingestion state: PENDING, PROCESSING, COMPLETED, or FAILED.

  • chunkCount
    integer

    —

  • textSource
    string

    How the text was obtained: text (native layer), ocr (recognized page images), or mixed. Absent for legacy documents.

  • pageCount
    integer

    Number of source pages when known (PDF and images).

  • errorMessage
    string

    Set when ingestion FAILED; explains the worker-side reason.

  • uploadedAt
    string

    —

  • uploadedBy
    string

    —

DocumentStatusResponse
Response body DocumentStatusResponsesinh từ schema — mock tĩnh
{
  "id": "205e360c-868f-4620-a566-0d5b3275dc61",
  "jobId": "9feb9ee1-3e20-4cbf-a0e9-e10bd1a8acc5",
  "fileName": "onboarding-policy.pdf",
  "fileType": "IMAGE",
  "fileSizeBytes": 6,
  "uploadedAt": "2026-10-29T00:17:24.954Z",
  "knowledgeBaseId": "a8054152-3009-4312-a7c8-93f53b383dea",
  "status": "FAILED",
  "approvalStatus": "APPROVED",
  "approvalTarget": "Giá trị approvalTarget",
  "chunkCount": 61,
  "textSource": "ocr",
  "pageCount": 60,
  "errorMessage": "Validation failed",
  "uploadedBy": "04745dfa-fab3-48fa-af0b-680da738f228"
}
  • id
    string

    —

  • jobId
    string

    —

  • fileName
    string

    —

  • fileType
    string

    —

  • fileSizeBytes
    integer

    —

  • uploadedAt
    string

    —

  • knowledgeBaseId
    string

    —

  • status
    string

    Ingestion state: PENDING, PROCESSING, COMPLETED, or FAILED.

  • approvalStatus
    string

    Approval state written back by the workflow engine: absent when the document was never submitted, PENDING while a process is open, then APPROVED or REJECTED.

  • approvalTarget
    string

    Publish target chosen at submission: workspace, shared, or public. Absent until the document is submitted for approval.

  • chunkCount
    integer

    —

  • textSource
    string

    How the text was obtained: text (native layer), ocr (recognized page images), or mixed. Absent for legacy documents.

  • pageCount
    integer

    Number of source pages when known (PDF and images).

  • errorMessage
    string

    Set when ingestion FAILED; explains the worker-side reason.

  • uploadedBy
    string

    —

DocumentUnit
Response body DocumentUnitsinh từ schema — mock tĩnh
{
  "unit_id": "Giá trị unit_id",
  "chunk_index": 86,
  "text": "Giá trị text",
  "sourceName": "Giá trị sourceName",
  "modality": "Giá trị modality",
  "block_type": "Giá trị block_type",
  "section_path": [
    "Giá trị section_path_item"
  ],
  "heading_context": "Giá trị heading_context",
  "page_number": 63,
  "sheet_name": "Giá trị sheet_name",
  "cell_range": "Giá trị cell_range",
  "table_id": "Giá trị table_id",
  "source_start": 53,
  "source_end": 90
}
  • unit_id
    string

    —

  • chunk_index
    integer

    —

  • text
    string

    —

  • sourceName
    string

    —

  • modality
    string

    —

  • block_type
    string

    —

  • section_path
    array<string>

    —

  • heading_context
    string

    —

  • page_number
    integer

    —

  • sheet_name
    string

    —

  • cell_range
    string

    —

  • table_id
    string

    —

  • source_start
    integer

    —

  • source_end
    integer

    —

CitationImageDto
Response body CitationImageDtosinh từ schema — mock tĩnh
{
  "media_id": "Giá trị media_id",
  "media_type": "Giá trị media_type",
  "width": 27,
  "height": 85
}
  • media_id
    string

    Key suffix under the document's media/ storage namespace.

  • media_type
    string

    —

  • width
    integer

    —

  • height
    integer

    —

CitationResponse
Response body CitationResponsesinh từ schema — mock tĩnh
{
  "id": "Giá trị id",
  "document_id": "Giá trị document_id",
  "source_name": "Giá trị source_name",
  "page_number": 82,
  "chunk_index": 55,
  "score": 46.28,
  "snippet": "Giá trị snippet",
  "unit_id": "Giá trị unit_id",
  "modality": "Giá trị modality",
  "section_path": [
    "Giá trị section_path_item"
  ],
  "block_type": "Giá trị block_type",
  "sheet_name": "Giá trị sheet_name",
  "cell_range": "Giá trị cell_range",
  "table_id": "Giá trị table_id",
  "parser_version": "Giá trị parser_version",
  "public_url": "Giá trị public_url",
  "image": {
    "media_id": "Giá trị media_id",
    "media_type": "Giá trị media_type",
    "width": 24,
    "height": 76
  }
}
  • id
    string

    —

  • document_id
    string

    —

  • source_name
    string

    File name of the cited document.

  • page_number
    integer

    —

  • chunk_index
    integer

    0-based position of the chunk inside the document.

  • score
    number

    Retrieval similarity score.

  • snippet
    string

    Short text excerpt of the cited passage.

  • unit_id
    string

    —

  • modality
    string

    Unit modality: TEXT, IMAGE, TABLE, or similar.

  • section_path
    array<string>

    —

  • block_type
    string

    —

  • sheet_name
    string

    —

  • cell_range
    string

    —

  • table_id
    string

    —

  • parser_version
    string

    Ingestion parser that produced the cited unit (ocr-v1 marks OCR-derived text).

  • public_url
    string

    —

  • image
    CitationImageDto

    The cited image when the unit was derived from a persisted picture; media_id inserts into /api/v1/documents/{id}/media/{media_id}.

MessageResponse
Response body MessageResponsesinh từ schema — mock tĩnh
{
  "role": "Giá trị role",
  "content": "Tóm tắt giúp tôi chính sách ngày nghỉ phép năm nay.",
  "citations": [
    {
      "id": "Giá trị id",
      "document_id": "Giá trị document_id",
      "source_name": "Giá trị source_name",
      "page_number": 96,
      "chunk_index": 43,
      "score": 41.89,
      "snippet": "Giá trị snippet",
      "unit_id": "Giá trị unit_id",
      "modality": "Giá trị modality",
      "block_type": "Giá trị block_type",
      "sheet_name": "Giá trị sheet_name",
      "cell_range": "Giá trị cell_range",
      "table_id": "Giá trị table_id",
      "parser_version": "Giá trị parser_version",
      "public_url": "Giá trị public_url"
    }
  ],
  "sequence_number": 51,
  "action": {
    "alpha": "Giá trị action",
    "beta": "Giá trị action"
  }
}
  • role
    string

    —

  • content
    string

    —

  • citations
    array<CitationResponse>

    —

  • sequence_number
    integer

    1-based position within the session; pass it as `after` when paging history.

  • action
    object

    —

PlaygroundSessionResponse
Response body PlaygroundSessionResponsesinh từ schema — mock tĩnh
{
  "id": "8b21f674-ae0b-4f6b-a30e-5acf101f1702",
  "title": "Giá trị title",
  "message_count": 67,
  "status": "OPEN",
  "created_at": "2026-10-29T18:22:43.882Z",
  "last_activity_at": "2026-10-28T10:45:05.021Z"
}
  • id
    string

    —

  • title
    string

    —

  • message_count
    integer

    —

  • status
    string

    OPEN or CLOSED.

  • created_at
    string

    —

  • last_activity_at
    string

    —

WorkspaceSummaryResponse
Response body WorkspaceSummaryResponsesinh từ schema — mock tĩnh
{
  "id": "0510d99a-ff3c-4e69-aaa1-14bf96d0e395",
  "name": "DMS Bridge",
  "slug": "chinh-sach-ngay-nghi-2026",
  "role": "Giá trị role",
  "default": true,
  "isDefault": true
}
  • id
    string

    —

  • name
    string

    —

  • slug
    string

    —

  • role
    string

    —

  • default
    boolean

    —

  • isDefault
    boolean

    —

InvitationValidationResponse
Response body InvitationValidationResponsesinh từ schema — mock tĩnh
{
  "email": "owner@example.com",
  "organizationName": "Giá trị organizationName",
  "workspaceName": "Giá trị workspaceName",
  "role": "Giá trị role",
  "expiresAt": "2026-10-28T05:55:34.973Z"
}
  • email
    string

    —

  • organizationName
    string

    —

  • workspaceName
    string

    —

  • role
    string

    —

  • expiresAt
    string

    —

OrganizationSnapshot
Response body OrganizationSnapshotsinh từ schema — mock tĩnh
{
  "id": "d661e03e-b107-46f8-a9cd-87f55df34bdd",
  "name": "DMS Bridge",
  "slug": "chinh-sach-ngay-nghi-2026",
  "allowSelfRegistration": true
}
  • id
    string

    —

  • name
    string

    —

  • slug
    string

    —

  • allowSelfRegistration
    boolean

    —

WebhookDeliveryView
Response body WebhookDeliveryViewsinh từ schema — mock tĩnh
{
  "id": "8b509898-efd5-4f36-ade3-630a684e3b16",
  "eventId": "2fcd44c6-1cf3-47b2-aa8f-fc53fa5436ce",
  "event_type": "Giá trị event_type",
  "status": "OK",
  "attemptCount": 73,
  "last_http_status": 409,
  "lastError": "Authentication required",
  "createdAt": "2026-10-28T22:52:45.210Z",
  "deliveredAt": "2026-10-29T10:40:33.968Z",
  "next_attempt_at": "2026-10-29T00:31:48.327Z"
}
  • id
    string

    —

  • eventId
    string

    —

  • event_type
    string

    —

  • status
    string

    —

  • attemptCount
    integer

    —

  • last_http_status
    integer

    —

  • lastError
    string

    —

  • createdAt
    string

    —

  • deliveredAt
    string

    —

  • next_attempt_at
    string

    —