Immiblox

Developer Reference

immiblox Public APIs

The immiblox API is a RESTful API surface across multiple microservices, providing programmatic access to account management, vaults, documents, AI-assisted workflows, and immigration-related features.

Public APIs only. This reference documents only public-facing endpoints for app builders and integrators. Internal routes (/api/v1/internal/*) and admin-only endpoints are excluded.

Quick Start: Building Your First App

Follow these steps to build an app that uses immiblox for document management and AI assistance.

Step 1: Get an access token

Sign in with email/password or use OAuth. Save the access_token and account.id for subsequent requests.

curl -X POST https://account.api.dev.immiblox.com/api/v1/auth/signin \
  -H "Content-Type: application/json" \
  -d '{"email":"you@example.com","password":"your_password"}'

Step 2: Create a vault

Create a vault to store documents. Include Authorization: Bearer <token> on every request.

curl -X POST https://vault.api.dev.immiblox.com/api/v1/vaults \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"description":"My documents"}'

Step 3: Upload a document

Upload a document to your vault using multipart/form-data. Documents are processed (OCR, classification) automatically.

curl -X POST https://document.api.dev.immiblox.com/api/v1/vaults/VAULT_ID/documents/upload \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -F "file=@/path/to/passport.pdf"

Step 4: Ask the AI assistant

Query your documents with natural language. The assistant returns answers with citations from your vault.

curl -X POST https://assistant.api.dev.immiblox.com/api/v1/vaults/VAULT_ID/ask \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"question":"What is my passport expiration date?"}'

Building B2B / machine integrations?

Org admins can create API keys via the Organization Service (/api/v1/organizations/{id}/machine-auth/api-keys). Use X-API-Key and X-App-Key headers instead of JWT.

See Authentication for details.

APIs at immiblox

At immiblox, the public API is organized around a few core concepts. Understanding these will help you build integrations efficiently.

Vaults

A vault is a container for organizing documents. Each vault belongs to a user and can be shared with others. Documents live inside vaults. Use Vault Service to create vaults, manage shares, and access shared vaults via public tokens.

Documents

Documents are stored in vaults. Supported types include passports, I-20s, visas, and other immigration-related files. Documents are processed (OCR, classification) and can be searched semantically. Use Document Service for upload, download, and search.

Assistant (RAG)

The Assistant uses your vault documents to answer questions with citations. Use POST /vaults/{vault_id}/ask to ask questions and get AI-generated answers backed by your documents. See Assistant in API Groups for related endpoints.

Workflows

Workflows are multi-step processes (e.g., I-9 verification, document translation). You start a workflow, receive steps, and continue until completion. Use Workflow Service to list workflows and execute them against a vault.

Public access

Some endpoints allow access without authentication using a share token. When you share a vault, recipients get a link with a token. They can view, download, or upload documents (depending on permissions) without signing in. See Public access under Authentication.

Key Workflows

Follow these step-by-step flows when integrating with immiblox.

Authentication flow

  1. POST /api/v1/auth/signin with email and password → receive access_token
  2. Include Authorization: Bearer <access_token> on all subsequent requests
  3. For Google sign-in, use GET /api/v1/auth/cognito/google-url then POST /api/v1/auth/cognito/exchange

Document flow (authenticated)

  1. Create a vault: POST /api/v1/vaults
  2. Upload documents: POST /api/v1/vaults/{vault_id}/documents/upload
  3. List or search: GET /api/v1/vaults/{vault_id}/documents or semantic search
  4. Ask the Assistant: POST /api/v1/vaults/{vault_id}/ask

Public share flow

  1. Share vault: POST /api/v1/vaults/{vault_id}/shares → receive share_token
  2. Recipient opens link with token; optionally call POST /api/v1/public/session/create for session-based access
  3. Recipient uses GET /api/v1/public/shared/{token} and related public endpoints (no auth required)

Prerequisites

To use the immiblox API, you will need:

  • An immiblox account — create one via the app or Sign Up endpoint
  • A valid access token — obtained via Sign In, Google OAuth, or Cognito hosted UI
  • (Optional) A share token — for public vault access without authentication
Tip: Use the Postman collection (see Next Steps) with the dev environment. Start with POST /api/v1/auth/signin to obtain an access token, then call other endpoints.

Base URLs

immiblox uses separate base URLs per service. Each service exposes routes under /api/v1/....

ServiceBase URL
Accounthttps://account.api.dev.immiblox.com
Vaulthttps://vault.api.dev.immiblox.com
Documenthttps://document.api.dev.immiblox.com
Assistanthttps://assistant.api.dev.immiblox.com
Workflowhttps://workflow.api.dev.immiblox.com
Immigrationhttps://immigration.api.dev.immiblox.com
Organizationhttps://organization.api.dev.immiblox.com
Webhookhttps://webhook.api.dev.immiblox.com
MCPhttps://mcp.api.dev.immiblox.com

API Reference Overview

Use Build API Reference below as the single source of truth. It groups endpoints by implementation flow and includes request body, parameters, auth requirements, response examples, and cURL snippets for each endpoint.

What you get per endpoint

  • Authentication type and required headers
  • Path and query parameters
  • Request body examples (for write operations)
  • Response examples and ready-to-run cURL

Complete API Index

Full list of public endpoints across all services. Prepend the appropriate base URL from the table above.

ServiceMethodPathAuth
AccountPOST/api/v1/auth/signupNone
AccountPOST/api/v1/auth/signinNone
AccountPOST/api/v1/auth/signoutNone
AccountPOST/api/v1/auth/forgot-passwordNone
AccountPOST/api/v1/auth/reset-passwordNone
AccountPOST/api/v1/auth/googleNone
AccountPOST/api/v1/auth/discoverNone
AccountGET/api/v1/auth/cognito/google-urlNone
AccountPOST/api/v1/auth/cognito/exchangeNone
AccountGET/api/v1/auth/cognito/logout-urlNone
AccountGET/api/v1/account/meJWT
AccountPOST/api/v1/account/change-passwordJWT
AccountPOST/api/v1/account/change-emailJWT
AccountPOST/api/v1/account/change-usernameJWT
AccountPOST/api/v1/family-membersJWT
AccountGET/api/v1/family-membersJWT
AccountGET/api/v1/family-members/{id}JWT
AccountPUT/api/v1/family-members/{id}JWT
AccountDELETE/api/v1/family-members/{id}JWT
VaultPOST/api/v1/vaultsJWT
VaultGET/api/v1/vaultsJWT
VaultGET/api/v1/vaults/{vault_id}JWT
VaultPUT/api/v1/vaults/{vault_id}JWT
VaultDELETE/api/v1/vaults/{vault_id}JWT
VaultGET/api/v1/vaults/{vault_id}/activityJWT
VaultGET/api/v1/vaults/shared-with-meJWT
VaultPOST/api/v1/vaults/{vault_id}/sharesJWT
VaultGET/api/v1/vaults/{vault_id}/sharesJWT
VaultPUT/api/v1/vaults/{vault_id}/shares/{share_id}JWT
VaultDELETE/api/v1/vaults/{vault_id}/shares/{share_id}JWT
VaultGET/api/v1/public/shared/{token}Share Token
VaultGET/api/v1/public/shared/{token}/documentsShare Token
VaultGET/api/v1/public/shared/{token}/documents/{document_id}/download-urlShare Token
VaultPOST/api/v1/public/shared/{token}/documents/uploadShare Token
VaultGET/api/v1/public/validate-token/{token}Share Token
VaultPOST/api/v1/public/session/createJWT
VaultGET/api/v1/public/session/validateJWT
DocumentPOST/api/v1/vaults/{vault_id}/documents/uploadJWT
DocumentPOST/api/v1/vaults/{vault_id}/documents/upload-batchJWT
DocumentGET/api/v1/vaults/{vault_id}/documentsJWT
DocumentPOST/api/v1/vaults/{vault_id}/documents/prefilterJWT
DocumentGET/api/v1/documents/{document_id}JWT
DocumentPATCH/api/v1/documents/{document_id}/classifyJWT
DocumentPOST/api/v1/documents/{document_id}/reprocessJWT
DocumentPOST/api/v1/documents/forwardJWT
DocumentGET/api/v1/documents/{document_id}/downloadJWT
DocumentGET/api/v1/documents/{document_id}/viewJWT
DocumentDELETE/api/v1/documents/{document_id}JWT
DocumentPOST/api/v1/documents/{document_id}/moveJWT
DocumentGET/api/v1/vaults/{vault_id}/documents/metadataJWT
DocumentGET/api/v1/document-typesJWT
DocumentGET/api/v1/document-types/{id}JWT
DocumentGET/api/v1/document-indexNone
DocumentGET/api/v1/document-index/{code}None
DocumentPOST/api/v1/public/vaults/{vault_id}/documents/uploadShare Token
DocumentGET/api/v1/public/documents/{document_id}/downloadShare Token
DocumentPOST/api/v1/vaults/{vault_id}/semantic-searchJWT
AssistantGET/api/v1/modelsJWT
AssistantGET/api/v1/promptsJWT
AssistantGET/api/v1/prompts/{prompt_id}JWT
AssistantPOST/api/v1/prompts/{prompt_id}/useJWT
AssistantGET/api/v1/sourcesJWT
AssistantPOST/api/v1/improve-queryJWT
AssistantPOST/api/v1/vaults/{vault_id}/askJWT
AssistantPOST/api/v1/vaults/{vault_id}/ask-streamJWT
AssistantPOST/api/v1/vaults/{vault_id}/auto-fillJWT
AssistantPOST/api/v1/vaults/{vault_id}/follow-upsJWT
AssistantPOST/api/v1/conversationsJWT
AssistantGET/api/v1/conversationsJWT
AssistantGET/api/v1/conversations/{id}JWT
AssistantPATCH/api/v1/conversations/{id}JWT
AssistantDELETE/api/v1/conversations/{id}JWT
AssistantGET/api/v1/newsJWT
AssistantGET/api/v1/news/categoriesJWT
AssistantGET/api/v1/news/regionsJWT
AssistantGET/api/v1/news/{article_id}JWT
WorkflowGET/api/v1/workflowsJWT
WorkflowGET/api/v1/workflows/{workflow_name}JWT
WorkflowPOST/api/v1/workflows/{workflow_name}/executeJWT
WorkflowGET/api/v1/workflow-executions/{execution_id}JWT
WorkflowPOST/api/v1/workflow-executions/{execution_id}/steps/{step_execution_id}/completeJWT
WorkflowPOST/api/v1/workflow-executions/{execution_id}/steps/{step_execution_id}/executeJWT
WorkflowGET/api/v1/engine/workflowsJWT
WorkflowGET/api/v1/engine/workflows/{workflow_id}JWT
WorkflowGET/api/v1/engine/stepsJWT
WorkflowGET/api/v1/engine/policiesJWT
WorkflowGET/api/v1/engine/policies/{policy_id}JWT
WorkflowPOST/api/v1/engine/executionsJWT
WorkflowGET/api/v1/engine/executionsJWT
WorkflowGET/api/v1/engine/executions/{execution_id}JWT
WorkflowPOST/api/v1/engine/executions/{execution_id}/steps/{step_execution_id}/completeJWT
WorkflowPOST/api/v1/engine/executions/{execution_id}/steps/{step_execution_id}/executeJWT
WorkflowPOST/api/v1/engine/executions/{execution_id}/pauseJWT
WorkflowPOST/api/v1/engine/executions/{execution_id}/resumeJWT
WorkflowPOST/api/v1/engine/executions/{execution_id}/cancelJWT
WorkflowPOST/api/v1/engine/executions/{execution_id}/eventsJWT
WorkflowPOST/api/v1/engine/policies/evaluateJWT
WorkflowPOST/api/v1/engine/policies/evaluate-expressionJWT
ImmigrationPOST/api/v1/personsJWT
ImmigrationGET/api/v1/personsJWT
ImmigrationGET/api/v1/persons/{person_id}JWT
ImmigrationPATCH/api/v1/persons/{person_id}JWT
ImmigrationDELETE/api/v1/persons/{person_id}JWT
ImmigrationPOST/api/v1/persons/{person_id}/statusesJWT
ImmigrationGET/api/v1/persons/{person_id}/statusesJWT
ImmigrationGET/api/v1/statuses/{status_id}JWT
ImmigrationPATCH/api/v1/statuses/{status_id}JWT
ImmigrationDELETE/api/v1/statuses/{status_id}JWT
ImmigrationGET/api/v1/persons/{person_id}/compliance-summaryJWT
ImmigrationGET/api/v1/persons/{person_id}/compliance-eventsJWT
ImmigrationPOST/api/v1/persons/{person_id}/compliance-eventsJWT
ImmigrationPOST/api/v1/import/personsJWT
ImmigrationPOST/api/v1/import/statusesJWT
ImmigrationPOST/api/v1/persons/{person_id}/documentsJWT
ImmigrationGET/api/v1/persons/{person_id}/documentsJWT
OrganizationPOST/api/v1/organizationsJWT
OrganizationGET/api/v1/organizationsJWT
OrganizationGET/api/v1/organizations/{organization_id}JWT
OrganizationPATCH/api/v1/organizations/{organization_id}JWT
OrganizationPOST/api/v1/organizations/{organization_id}/membersJWT
OrganizationGET/api/v1/organizations/{organization_id}/membersJWT
OrganizationDELETE/api/v1/organizations/{organization_id}/members/{member_id}JWT
OrganizationPOST/api/v1/organizations/{organization_id}/machine-auth/service-accountsJWT
OrganizationGET/api/v1/organizations/{organization_id}/machine-auth/service-accountsJWT
OrganizationPOST/api/v1/organizations/{organization_id}/machine-auth/service-accounts/{id}/deactivateJWT
OrganizationPOST/api/v1/organizations/{organization_id}/machine-auth/api-keysJWT
OrganizationGET/api/v1/organizations/{organization_id}/machine-auth/api-keysJWT
OrganizationPOST/api/v1/organizations/{organization_id}/machine-auth/api-keys/{id}/revokeJWT
OrganizationPOST/api/v1/organizations/{organization_id}/machine-auth/api-keys/{id}/rotateJWT
OrganizationPOST/api/v1/organizations/{organization_id}/machine-auth/app-keysJWT
OrganizationGET/api/v1/organizations/{organization_id}/machine-auth/app-keysJWT
OrganizationPOST/api/v1/organizations/{organization_id}/machine-auth/app-keys/{id}/revokeJWT
OrganizationPOST/api/v1/organizations/{organization_id}/machine-auth/app-keys/{id}/rotateJWT
WebhookPOST/api/v1/webhooksJWT
WebhookGET/api/v1/webhooksJWT
WebhookDELETE/api/v1/webhooks/{webhook_id}JWT
WebhookGET/api/v1/eventsJWT
WebhookPOST/api/v1/eventsJWT
MCPGET/api/v1/mcp/toolsJWT
MCPGET/api/v1/mcp/tools/{tool_name}JWT
MCPPOST/api/v1/mcp/tools/{tool_name}/executeJWT
MCPPOST/api/v1/chat/messageJWT
MCPPOST/api/v1/chat/message/streamJWT

Build API Reference

This is the implementation-ready API hub for building apps on immiblox. Use the sections below in order.

Auth & Identity

Start here to authenticate users, fetch account profile, and manage credentials.

Account

POSTNone/api/v1/auth/signup(account service)

Create account

Create a new user account. Returns JWT access token and account information. If the user already exists, use the Sign In endpoint instead.

Required headers
  • No auth headers required
Request body
{
  "email": "user@example.com",
  "password": "SecurePassword123!"
}
Response example
{
  "access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
  "account": {
    "id": "550e8400-e29b-41d4-a716-446655440000",
    "email": "user@example.com",
    "username": null,
    "auth_provider": "cognito",
    "created_at": "2025-01-15T10:00:00Z",
    "updated_at": "2025-01-15T10:00:00Z"
  },
  "message": "Account created successfully"
}
cURL example
curl -X POST https://account.api.dev.immiblox.com/api/v1/auth/signup \
  -H "Content-Type: application/json" \
  -d '{"email":"user@example.com","password":"SecurePassword123!"}'
POSTNone/api/v1/auth/signin(account service)

Sign in

Authenticate with email and password. Returns JWT access token and account information. Use the token in subsequent requests via Authorization: Bearer <token>.

Required headers
  • No auth headers required
Request body
{
  "email": "user@example.com",
  "password": "SecurePassword123!"
}
Response example
{
  "access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
  "account": {
    "id": "550e8400-e29b-41d4-a716-446655440000",
    "email": "user@example.com",
    "username": null
  }
}
cURL example
curl -X POST https://account.api.dev.immiblox.com/api/v1/auth/signin \
  -H "Content-Type: application/json" \
  -d '{"email":"user@example.com","password":"SecurePassword123!"}'
POSTNone/api/v1/auth/signout(account service)

Create/Run signout

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • No auth headers required
Request body
{
  "example": "See endpoint-specific docs for required fields"
}
Response example
{
  "success": true,
  "path": "/api/v1/auth/signout",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X POST https://account.api.dev.immiblox.com/api/v1/auth/signout \
  -H "Content-Type: application/json" \
  -d '{"example":"value"}'
POSTNone/api/v1/auth/forgot-password(account service)

Forgot password

Request a password reset. Sends an email with a reset token. Always returns success to prevent email enumeration.

Required headers
  • No auth headers required
Request body
{
  "email": "user@example.com"
}
Response example
{
  "message": "If an account with that email exists, a password reset link has been sent."
}
cURL example
curl -X POST https://account.api.dev.immiblox.com/api/v1/auth/forgot-password \
  -H "Content-Type: application/json" \
  -d '{"email":"user@example.com"}'
POSTNone/api/v1/auth/reset-password(account service)

Create/Run reset password

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • No auth headers required
Request body
{
  "example": "See endpoint-specific docs for required fields"
}
Response example
{
  "success": true,
  "path": "/api/v1/auth/reset-password",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X POST https://account.api.dev.immiblox.com/api/v1/auth/reset-password \
  -H "Content-Type: application/json" \
  -d '{"example":"value"}'
POSTNone/api/v1/auth/google(account service)

Create/Run google

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • No auth headers required
Request body
{
  "example": "See endpoint-specific docs for required fields"
}
Response example
{
  "success": true,
  "path": "/api/v1/auth/google",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X POST https://account.api.dev.immiblox.com/api/v1/auth/google \
  -H "Content-Type: application/json" \
  -d '{"example":"value"}'
POSTNone/api/v1/auth/discover(account service)

Create/Run discover

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • No auth headers required
Request body
{
  "example": "See endpoint-specific docs for required fields"
}
Response example
{
  "success": true,
  "path": "/api/v1/auth/discover",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X POST https://account.api.dev.immiblox.com/api/v1/auth/discover \
  -H "Content-Type: application/json" \
  -d '{"example":"value"}'
GETNone/api/v1/auth/cognito/google-url(account service)

Get google url

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • No auth headers required
Response example
{
  "success": true,
  "path": "/api/v1/auth/cognito/google-url",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X GET https://account.api.dev.immiblox.com/api/v1/auth/cognito/google-url \
POSTNone/api/v1/auth/cognito/exchange(account service)

Create/Run exchange

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • No auth headers required
Request body
{
  "example": "See endpoint-specific docs for required fields"
}
Response example
{
  "success": true,
  "path": "/api/v1/auth/cognito/exchange",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X POST https://account.api.dev.immiblox.com/api/v1/auth/cognito/exchange \
  -H "Content-Type: application/json" \
  -d '{"example":"value"}'
GETNone/api/v1/auth/cognito/logout-url(account service)

Get logout url

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • No auth headers required
Response example
{
  "success": true,
  "path": "/api/v1/auth/cognito/logout-url",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X GET https://account.api.dev.immiblox.com/api/v1/auth/cognito/logout-url \
GETJWT/api/v1/account/me(account service)

Get current account

Retrieve the authenticated user's account information.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Response example
{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "email": "user@example.com",
  "username": "johndoe",
  "auth_provider": "cognito",
  "created_at": "2025-01-15T10:00:00Z",
  "updated_at": "2025-01-15T10:00:00Z"
}
cURL example
curl -X GET https://account.api.dev.immiblox.com/api/v1/account/me \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "X-User-ID: YOUR_USER_ID"
POSTJWT/api/v1/account/change-password(account service)

Create/Run change password

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Request body
{
  "example": "See endpoint-specific docs for required fields"
}
Response example
{
  "success": true,
  "path": "/api/v1/account/change-password",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X POST https://account.api.dev.immiblox.com/api/v1/account/change-password \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"example":"value"}'
POSTJWT/api/v1/account/change-email(account service)

Create/Run change email

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Request body
{
  "example": "See endpoint-specific docs for required fields"
}
Response example
{
  "success": true,
  "path": "/api/v1/account/change-email",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X POST https://account.api.dev.immiblox.com/api/v1/account/change-email \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"example":"value"}'
POSTJWT/api/v1/account/change-username(account service)

Create/Run change username

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Request body
{
  "example": "See endpoint-specific docs for required fields"
}
Response example
{
  "success": true,
  "path": "/api/v1/account/change-username",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X POST https://account.api.dev.immiblox.com/api/v1/account/change-username \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"example":"value"}'
POSTJWT/api/v1/family-members(account service)

Create/Run family members

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Request body
{
  "example": "See endpoint-specific docs for required fields"
}
Response example
{
  "success": true,
  "path": "/api/v1/family-members",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X POST https://account.api.dev.immiblox.com/api/v1/family-members \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"example":"value"}'
GETJWT/api/v1/family-members(account service)

Get family members

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Response example
{
  "success": true,
  "path": "/api/v1/family-members",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X GET https://account.api.dev.immiblox.com/api/v1/family-members \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
GETJWT/api/v1/family-members/{id}(account service)

Get id

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • idid path parameter
Response example
{
  "success": true,
  "path": "/api/v1/family-members/{id}",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X GET https://account.api.dev.immiblox.com/api/v1/family-members/{id} \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
PUTJWT/api/v1/family-members/{id}(account service)

Replace id

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • idid path parameter
Request body
{
  "example": "See endpoint-specific docs for required fields"
}
Response example
{
  "success": true,
  "path": "/api/v1/family-members/{id}",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X PUT https://account.api.dev.immiblox.com/api/v1/family-members/{id} \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"example":"value"}'
DELETEJWT/api/v1/family-members/{id}(account service)

Delete id

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • idid path parameter
Response example
{
  "success": true,
  "path": "/api/v1/family-members/{id}",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X DELETE https://account.api.dev.immiblox.com/api/v1/family-members/{id} \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"

Vaults & Documents

Core data APIs for creating vaults, uploading files, searching content, and public share flows.

Vault

POSTJWT/api/v1/vaults(vault service)

Create vault

Create a new vault for organizing documents. Optionally associate with a family member. Returns the created vault with ID.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Request body
{
  "family_member_id": null,
  "family_member_name": null,
  "description": "Personal immigration documents"
}
Response example
{
  "id": "vault-uuid",
  "name": "My Vault",
  "description": "Personal immigration documents",
  "created_at": "2025-01-15T10:00:00Z"
}
cURL example
curl -X POST https://vault.api.dev.immiblox.com/api/v1/vaults \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "X-User-ID: YOUR_USER_ID" \
  -d '{"description":"Personal immigration documents"}'
GETJWT/api/v1/vaults(vault service)

List vaults

List all vaults owned by or shared with the authenticated user.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Response example
{
  "vaults": [
    {
      "id": "vault-uuid",
      "name": "My Vault",
      "description": "Personal documents"
    }
  ]
}
cURL example
curl -X GET https://vault.api.dev.immiblox.com/api/v1/vaults \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "X-User-ID: YOUR_USER_ID"
GETJWT/api/v1/vaults/{vault_id}(vault service)

Get vault

Get vault details by ID.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • vault_idUUID of the vault
Response example
{
  "id": "vault-uuid",
  "name": "My Vault",
  "description": "Personal immigration documents",
  "created_at": "2025-01-15T10:00:00Z"
}
cURL example
curl -X GET https://vault.api.dev.immiblox.com/api/v1/vaults/VAULT_ID \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "X-User-ID: YOUR_USER_ID"
PUTJWT/api/v1/vaults/{vault_id}(vault service)

Replace vault id

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • vault_idvault_id path parameter
Request body
{
  "example": "See endpoint-specific docs for required fields"
}
Response example
{
  "success": true,
  "path": "/api/v1/vaults/{vault_id}",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X PUT https://vault.api.dev.immiblox.com/api/v1/vaults/{vault_id} \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"example":"value"}'
DELETEJWT/api/v1/vaults/{vault_id}(vault service)

Delete vault id

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • vault_idvault_id path parameter
Response example
{
  "success": true,
  "path": "/api/v1/vaults/{vault_id}",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X DELETE https://vault.api.dev.immiblox.com/api/v1/vaults/{vault_id} \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
GETJWT/api/v1/vaults/{vault_id}/activity(vault service)

Get activity

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • vault_idvault_id path parameter
Response example
{
  "success": true,
  "path": "/api/v1/vaults/{vault_id}/activity",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X GET https://vault.api.dev.immiblox.com/api/v1/vaults/{vault_id}/activity \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
GETJWT/api/v1/vaults/shared-with-me(vault service)

Get shared with me

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Response example
{
  "success": true,
  "path": "/api/v1/vaults/shared-with-me",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X GET https://vault.api.dev.immiblox.com/api/v1/vaults/shared-with-me \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
POSTJWT/api/v1/vaults/{vault_id}/shares(vault service)

Create/Run shares

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • vault_idvault_id path parameter
Request body
{
  "emails": ["recipient@example.com"],
  "permission": "view"
}
Response example
{
  "success": true,
  "path": "/api/v1/vaults/{vault_id}/shares",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X POST https://vault.api.dev.immiblox.com/api/v1/vaults/{vault_id}/shares \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"example":"value"}'
GETJWT/api/v1/vaults/{vault_id}/shares(vault service)

Get shares

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • vault_idvault_id path parameter
Response example
{
  "success": true,
  "path": "/api/v1/vaults/{vault_id}/shares",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X GET https://vault.api.dev.immiblox.com/api/v1/vaults/{vault_id}/shares \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
PUTJWT/api/v1/vaults/{vault_id}/shares/{share_id}(vault service)

Replace share id

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • vault_idvault_id path parameter
  • share_idshare_id path parameter
Request body
{
  "emails": ["recipient@example.com"],
  "permission": "view"
}
Response example
{
  "success": true,
  "path": "/api/v1/vaults/{vault_id}/shares/{share_id}",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X PUT https://vault.api.dev.immiblox.com/api/v1/vaults/{vault_id}/shares/{share_id} \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"example":"value"}'
DELETEJWT/api/v1/vaults/{vault_id}/shares/{share_id}(vault service)

Delete share id

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • vault_idvault_id path parameter
  • share_idshare_id path parameter
Response example
{
  "success": true,
  "path": "/api/v1/vaults/{vault_id}/shares/{share_id}",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X DELETE https://vault.api.dev.immiblox.com/api/v1/vaults/{vault_id}/shares/{share_id} \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
GETShare Token/api/v1/public/shared/{token}(vault service)

Access shared vault

Access vault via public share link. No authentication required when using a valid share token.

Required headers
  • share_token=<token> query param or X-Share-Token header
Path parameters
  • tokenShare token from the vault share link
Response example
{
  "vault": { "id": "...", "name": "Shared Vault" },
  "permissions": ["view", "download"]
}
cURL example
curl -X GET https://vault.api.dev.immiblox.com/api/v1/public/shared/SHARE_TOKEN
GETShare Token/api/v1/public/shared/{token}/documents(vault service)

Get documents

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • share_token=<token> query param or X-Share-Token header
Path parameters
  • tokentoken path parameter
Response example
{
  "success": true,
  "path": "/api/v1/public/shared/{token}/documents",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X GET https://vault.api.dev.immiblox.com/api/v1/public/shared/{token}/documents \
GETShare Token/api/v1/public/shared/{token}/documents/{document_id}/download-url(vault service)

Get download url

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • share_token=<token> query param or X-Share-Token header
Path parameters
  • tokentoken path parameter
  • document_iddocument_id path parameter
Response example
{
  "success": true,
  "path": "/api/v1/public/shared/{token}/documents/{document_id}/download-url",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X GET https://vault.api.dev.immiblox.com/api/v1/public/shared/{token}/documents/{document_id}/download-url \
POSTShare Token/api/v1/public/shared/{token}/documents/upload(vault service)

Create/Run upload

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • share_token=<token> query param or X-Share-Token header
Path parameters
  • tokentoken path parameter
Request body
multipart/form-data:
  file: <binary>
  (optional) document_type_id: <uuid>
Response example
{
  "success": true,
  "path": "/api/v1/public/shared/{token}/documents/upload",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X POST https://vault.api.dev.immiblox.com/api/v1/public/shared/{token}/documents/upload \
GETShare Token/api/v1/public/validate-token/{token}(vault service)

Get token

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • share_token=<token> query param or X-Share-Token header
Path parameters
  • tokentoken path parameter
Response example
{
  "success": true,
  "path": "/api/v1/public/validate-token/{token}",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X GET https://vault.api.dev.immiblox.com/api/v1/public/validate-token/{token} \
POSTJWT/api/v1/public/session/create(vault service)

Create/Run create

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Request body
{
  "example": "See endpoint-specific docs for required fields"
}
Response example
{
  "success": true,
  "path": "/api/v1/public/session/create",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X POST https://vault.api.dev.immiblox.com/api/v1/public/session/create \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"example":"value"}'
GETJWT/api/v1/public/session/validate(vault service)

Get validate

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Response example
{
  "success": true,
  "path": "/api/v1/public/session/validate",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X GET https://vault.api.dev.immiblox.com/api/v1/public/session/validate \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"

Document

POSTJWT/api/v1/vaults/{vault_id}/documents/upload(document service)

Upload document

Upload a document to a vault. Use multipart/form-data with 'file' field. Supports PDF, images, and common document formats.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • vault_idUUID of the target vault
Request body
multipart/form-data:
  file: <binary>
  (optional) document_type_id: <uuid>
Response example
{
  "document": {
    "id": "doc-uuid",
    "filename": "passport.pdf",
    "document_type_name": "Passport",
    "status": "processing"
  }
}
cURL example
curl -X POST https://document.api.dev.immiblox.com/api/v1/vaults/VAULT_ID/documents/upload \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "X-User-ID: YOUR_USER_ID" \
  -F "file=@/path/to/document.pdf"
POSTJWT/api/v1/vaults/{vault_id}/documents/upload-batch(document service)

Create/Run upload batch

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • vault_idvault_id path parameter
Request body
multipart/form-data:
  file: <binary>
  (optional) document_type_id: <uuid>
Response example
{
  "success": true,
  "path": "/api/v1/vaults/{vault_id}/documents/upload-batch",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X POST https://document.api.dev.immiblox.com/api/v1/vaults/{vault_id}/documents/upload-batch \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
GETJWT/api/v1/vaults/{vault_id}/documents(document service)

List documents

List all documents in a vault. Optionally search by OCR text content using the search query parameter.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • vault_idUUID of the vault
Query parameters
  • search (string) Search documents by OCR text (case-insensitive)
Response example
{
  "documents": [
    {
      "id": "doc-uuid",
      "filename": "passport.pdf",
      "document_type_name": "Passport",
      "status": "processed"
    }
  ]
}
cURL example
curl -X GET "https://document.api.dev.immiblox.com/api/v1/vaults/VAULT_ID/documents?search=passport" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "X-User-ID: YOUR_USER_ID"
POSTJWT/api/v1/vaults/{vault_id}/documents/prefilter(document service)

Create/Run prefilter

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • vault_idvault_id path parameter
Request body
{
  "example": "See endpoint-specific docs for required fields"
}
Response example
{
  "success": true,
  "path": "/api/v1/vaults/{vault_id}/documents/prefilter",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X POST https://document.api.dev.immiblox.com/api/v1/vaults/{vault_id}/documents/prefilter \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"example":"value"}'
GETJWT/api/v1/documents/{document_id}(document service)

Get document

Get document metadata by ID.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • document_idUUID of the document
Response example
{
  "document": {
    "id": "doc-uuid",
    "filename": "passport.pdf",
    "document_type_name": "Passport",
    "status": "processed",
    "metadata": { "expiration_date": "2030-01-15" }
  }
}
cURL example
curl -X GET https://document.api.dev.immiblox.com/api/v1/documents/DOCUMENT_ID \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "X-User-ID: YOUR_USER_ID"
PATCHJWT/api/v1/documents/{document_id}/classify(document service)

Update classify

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • document_iddocument_id path parameter
Request body
{
  "example": "See endpoint-specific docs for required fields"
}
Response example
{
  "success": true,
  "path": "/api/v1/documents/{document_id}/classify",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X PATCH https://document.api.dev.immiblox.com/api/v1/documents/{document_id}/classify \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"example":"value"}'
POSTJWT/api/v1/documents/{document_id}/reprocess(document service)

Create/Run reprocess

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • document_iddocument_id path parameter
Request body
{
  "example": "See endpoint-specific docs for required fields"
}
Response example
{
  "success": true,
  "path": "/api/v1/documents/{document_id}/reprocess",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X POST https://document.api.dev.immiblox.com/api/v1/documents/{document_id}/reprocess \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"example":"value"}'
POSTJWT/api/v1/documents/forward(document service)

Create/Run forward

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Request body
{
  "example": "See endpoint-specific docs for required fields"
}
Response example
{
  "success": true,
  "path": "/api/v1/documents/forward",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X POST https://document.api.dev.immiblox.com/api/v1/documents/forward \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"example":"value"}'
GETJWT/api/v1/documents/{document_id}/download(document service)

Get download

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • document_iddocument_id path parameter
Response example
{
  "success": true,
  "path": "/api/v1/documents/{document_id}/download",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X GET https://document.api.dev.immiblox.com/api/v1/documents/{document_id}/download \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
GETJWT/api/v1/documents/{document_id}/view(document service)

Get view

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • document_iddocument_id path parameter
Response example
{
  "success": true,
  "path": "/api/v1/documents/{document_id}/view",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X GET https://document.api.dev.immiblox.com/api/v1/documents/{document_id}/view \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
DELETEJWT/api/v1/documents/{document_id}(document service)

Delete document id

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • document_iddocument_id path parameter
Response example
{
  "success": true,
  "path": "/api/v1/documents/{document_id}",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X DELETE https://document.api.dev.immiblox.com/api/v1/documents/{document_id} \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
POSTJWT/api/v1/documents/{document_id}/move(document service)

Create/Run move

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • document_iddocument_id path parameter
Request body
{
  "example": "See endpoint-specific docs for required fields"
}
Response example
{
  "success": true,
  "path": "/api/v1/documents/{document_id}/move",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X POST https://document.api.dev.immiblox.com/api/v1/documents/{document_id}/move \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"example":"value"}'
GETJWT/api/v1/vaults/{vault_id}/documents/metadata(document service)

Get metadata

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • vault_idvault_id path parameter
Response example
{
  "success": true,
  "path": "/api/v1/vaults/{vault_id}/documents/metadata",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X GET https://document.api.dev.immiblox.com/api/v1/vaults/{vault_id}/documents/metadata \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
GETNone/api/v1/document-types(document service)

List document types

List all document types (reference catalog). Public endpoint—no authentication required.

Required headers
  • No auth headers required
Response example
{
  "document_types": [
    { "id": "uuid", "code": "PASSPORT", "name": "Passport" },
    { "id": "uuid", "code": "I20", "name": "Form I-20" }
  ]
}
cURL example
curl -X GET https://document.api.dev.immiblox.com/api/v1/document-types
GETNone/api/v1/document-types/{id}(document service)

Get id

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • No auth headers required
Path parameters
  • idid path parameter
Response example
{
  "success": true,
  "path": "/api/v1/document-types/{id}",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X GET https://document.api.dev.immiblox.com/api/v1/document-types/{id} \
GETNone/api/v1/document-index(document service)

List document index

List document classification index (reference data). Public endpoint—no authentication required.

Required headers
  • No auth headers required
Response example
{
  "document_index": [
    { "code": "PASSPORT", "name": "Passport", "category": "identity" }
  ]
}
cURL example
curl -X GET https://document.api.dev.immiblox.com/api/v1/document-index
GETNone/api/v1/document-index/{code}(document service)

Get code

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • No auth headers required
Path parameters
  • codecode path parameter
Response example
{
  "success": true,
  "path": "/api/v1/document-index/{code}",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X GET https://document.api.dev.immiblox.com/api/v1/document-index/{code} \
POSTShare Token/api/v1/public/vaults/{vault_id}/documents/upload(document service)

Create/Run upload

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • share_token=<token> query param or X-Share-Token header
Path parameters
  • vault_idvault_id path parameter
Request body
multipart/form-data:
  file: <binary>
  (optional) document_type_id: <uuid>
Response example
{
  "success": true,
  "path": "/api/v1/public/vaults/{vault_id}/documents/upload",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X POST https://document.api.dev.immiblox.com/api/v1/public/vaults/{vault_id}/documents/upload \
GETShare Token/api/v1/public/documents/{document_id}/download(document service)

Get download

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • share_token=<token> query param or X-Share-Token header
Path parameters
  • document_iddocument_id path parameter
Response example
{
  "success": true,
  "path": "/api/v1/public/documents/{document_id}/download",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X GET https://document.api.dev.immiblox.com/api/v1/public/documents/{document_id}/download \
POSTJWT/api/v1/vaults/{vault_id}/semantic-search(document service)

Semantic search

Search documents in a vault using natural language. Uses vector embeddings for semantic similarity.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • vault_idUUID of the vault
Request body
{
  "query": "What is my passport expiration date?",
  "top_k": 5
}
Response example
{
  "results": [
    {
      "document_id": "doc-uuid",
      "score": 0.92,
      "snippet": "...expiration date: 01/15/2030..."
    }
  ]
}
cURL example
curl -X POST https://document.api.dev.immiblox.com/api/v1/vaults/VAULT_ID/semantic-search \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "X-User-ID: YOUR_USER_ID" \
  -d '{"query":"passport expiration date","top_k":5}'

AI & Workflows

Build AI-powered experiences with Ask Immi and orchestrate multi-step automations.

Assistant

GETJWT/api/v1/models(assistant service)

List models

List available AI models for the assistant.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Response example
{
  "models": [
    { "id": "gpt-4", "name": "GPT-4" }
  ]
}
cURL example
curl -X GET https://assistant.api.dev.immiblox.com/api/v1/models \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "X-User-ID: YOUR_USER_ID"
GETJWT/api/v1/prompts(assistant service)

Get prompts

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Response example
{
  "success": true,
  "path": "/api/v1/prompts",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X GET https://assistant.api.dev.immiblox.com/api/v1/prompts \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
GETJWT/api/v1/prompts/{prompt_id}(assistant service)

Get prompt id

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • prompt_idprompt_id path parameter
Response example
{
  "success": true,
  "path": "/api/v1/prompts/{prompt_id}",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X GET https://assistant.api.dev.immiblox.com/api/v1/prompts/{prompt_id} \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
POSTJWT/api/v1/prompts/{prompt_id}/use(assistant service)

Create/Run use

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • prompt_idprompt_id path parameter
Request body
{
  "example": "See endpoint-specific docs for required fields"
}
Response example
{
  "success": true,
  "path": "/api/v1/prompts/{prompt_id}/use",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X POST https://assistant.api.dev.immiblox.com/api/v1/prompts/{prompt_id}/use \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"example":"value"}'
GETJWT/api/v1/sources(assistant service)

Get sources

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Response example
{
  "success": true,
  "path": "/api/v1/sources",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X GET https://assistant.api.dev.immiblox.com/api/v1/sources \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
POSTJWT/api/v1/improve-query(assistant service)

Create/Run improve query

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Request body
{
  "example": "See endpoint-specific docs for required fields"
}
Response example
{
  "success": true,
  "path": "/api/v1/improve-query",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X POST https://assistant.api.dev.immiblox.com/api/v1/improve-query \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"example":"value"}'
POSTJWT/api/v1/vaults/{vault_id}/ask(assistant service)

Ask (RAG)

Ask a question about documents in a vault. Returns an AI-generated answer with citations from relevant documents. Supports JWT or machine auth (X-API-Key + X-App-Key for organization integrations; vault must be shared with the organization).

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • vault_idUUID of the vault
Request body
{
  "question": "What documents do I need for Form I-765?",
  "conversation_id": "optional-conversation-uuid"
}
Response example
{
  "answer": "Based on your vault, you'll need...",
  "sources": [
    { "document_id": "...", "filename": "i765-instructions.pdf" }
  ]
}
cURL example
curl -X POST https://assistant.api.dev.immiblox.com/api/v1/vaults/VAULT_ID/ask \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "X-User-ID: YOUR_USER_ID" \
  -d '{"question":"What documents do I need for I-765?"}'

# With organization API keys (machine auth):
curl -X POST https://assistant.api.dev.immiblox.com/api/v1/vaults/VAULT_ID/ask \
  -H "Content-Type: application/json" \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "X-App-Key: YOUR_APP_KEY" \
  -d '{"question":"What documents do I need for I-765?"}'
POSTJWT/api/v1/vaults/{vault_id}/ask-stream(assistant service)

Create/Run ask stream

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • vault_idvault_id path parameter
Request body
{
  "example": "See endpoint-specific docs for required fields"
}
Response example
{
  "success": true,
  "path": "/api/v1/vaults/{vault_id}/ask-stream",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X POST https://assistant.api.dev.immiblox.com/api/v1/vaults/{vault_id}/ask-stream \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"example":"value"}'
POSTJWT/api/v1/vaults/{vault_id}/auto-fill(assistant service)

Create/Run auto fill

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • vault_idvault_id path parameter
Request body
{
  "example": "See endpoint-specific docs for required fields"
}
Response example
{
  "success": true,
  "path": "/api/v1/vaults/{vault_id}/auto-fill",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X POST https://assistant.api.dev.immiblox.com/api/v1/vaults/{vault_id}/auto-fill \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"example":"value"}'
POSTJWT/api/v1/vaults/{vault_id}/follow-ups(assistant service)

Create/Run follow ups

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • vault_idvault_id path parameter
Request body
{
  "example": "See endpoint-specific docs for required fields"
}
Response example
{
  "success": true,
  "path": "/api/v1/vaults/{vault_id}/follow-ups",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X POST https://assistant.api.dev.immiblox.com/api/v1/vaults/{vault_id}/follow-ups \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"example":"value"}'
POSTJWT/api/v1/conversations(assistant service)

Create/Run conversations

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Request body
{
  "example": "See endpoint-specific docs for required fields"
}
Response example
{
  "success": true,
  "path": "/api/v1/conversations",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X POST https://assistant.api.dev.immiblox.com/api/v1/conversations \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"example":"value"}'
GETJWT/api/v1/conversations(assistant service)

Get conversations

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Response example
{
  "success": true,
  "path": "/api/v1/conversations",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X GET https://assistant.api.dev.immiblox.com/api/v1/conversations \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
GETJWT/api/v1/conversations/{id}(assistant service)

Get id

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • idid path parameter
Response example
{
  "success": true,
  "path": "/api/v1/conversations/{id}",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X GET https://assistant.api.dev.immiblox.com/api/v1/conversations/{id} \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
PATCHJWT/api/v1/conversations/{id}(assistant service)

Update id

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • idid path parameter
Request body
{
  "example": "See endpoint-specific docs for required fields"
}
Response example
{
  "success": true,
  "path": "/api/v1/conversations/{id}",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X PATCH https://assistant.api.dev.immiblox.com/api/v1/conversations/{id} \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"example":"value"}'
DELETEJWT/api/v1/conversations/{id}(assistant service)

Delete id

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • idid path parameter
Response example
{
  "success": true,
  "path": "/api/v1/conversations/{id}",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X DELETE https://assistant.api.dev.immiblox.com/api/v1/conversations/{id} \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
GETJWT/api/v1/news(assistant service)

Get news

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Response example
{
  "success": true,
  "path": "/api/v1/news",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X GET https://assistant.api.dev.immiblox.com/api/v1/news \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
GETJWT/api/v1/news/categories(assistant service)

Get categories

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Response example
{
  "success": true,
  "path": "/api/v1/news/categories",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X GET https://assistant.api.dev.immiblox.com/api/v1/news/categories \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
GETJWT/api/v1/news/regions(assistant service)

Get regions

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Response example
{
  "success": true,
  "path": "/api/v1/news/regions",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X GET https://assistant.api.dev.immiblox.com/api/v1/news/regions \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
GETJWT/api/v1/news/{article_id}(assistant service)

Get article id

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • article_idarticle_id path parameter
Response example
{
  "success": true,
  "path": "/api/v1/news/{article_id}",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X GET https://assistant.api.dev.immiblox.com/api/v1/news/{article_id} \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"

Workflow

GETJWT/api/v1/workflows(workflow service)

List workflows

List available workflow templates. Use category query to filter (e.g., student, translation).

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Query parameters
  • category (string) Filter by workflow category
  • include_inactive (boolean) Include inactive workflows
Response example
{
  "workflows": [
    { "name": "i9-verification", "description": "I-9 document verification", "category": "compliance" }
  ]
}
cURL example
curl -X GET https://workflow.api.dev.immiblox.com/api/v1/workflows \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "X-User-ID: YOUR_USER_ID"
GETJWT/api/v1/workflows/{workflow_name}(workflow service)

Get workflow

Get a workflow template with its steps by name.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • workflow_nameName of the workflow template
Response example
{
  "name": "i9-verification",
  "steps": [...],
  "category": "compliance"
}
cURL example
curl -X GET https://workflow.api.dev.immiblox.com/api/v1/workflows/i9-verification \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "X-User-ID: YOUR_USER_ID"
POSTJWT/api/v1/workflows/{workflow_name}/execute(workflow service)

Execute workflow

Start a workflow execution against a vault.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • workflow_nameName of the workflow template
Request body
{
  "vault_id": "vault-uuid",
  "initial_context": {}
}
Response example
{
  "execution_id": "exec-uuid",
  "status": "running"
}
cURL example
curl -X POST https://workflow.api.dev.immiblox.com/api/v1/workflows/i9-verification/execute \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "X-User-ID: YOUR_USER_ID" \
  -d '{"vault_id":"VAULT_ID","initial_context":{}}'
GETJWT/api/v1/workflow-executions/{execution_id}(workflow service)

Get execution

Get workflow execution status and current step.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • execution_idUUID of the workflow execution
Response example
{
  "id": "exec-uuid",
  "status": "running",
  "current_step": {...}
}
cURL example
curl -X GET https://workflow.api.dev.immiblox.com/api/v1/workflow-executions/EXECUTION_ID \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "X-User-ID: YOUR_USER_ID"
POSTJWT/api/v1/workflow-executions/{execution_id}/steps/{step_execution_id}/complete(workflow service)

Complete step

Complete a user-driven step (upload, select option, input text) with the provided data.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • execution_idUUID of the workflow execution
  • step_execution_idUUID of the step to complete
Request body
{
  "document_ids": ["doc-uuid"],
  "selected_option": "option-id",
  "text_input": "value"
}
Response example
{
  "success": true,
  "next_step": {...}
}
cURL example
curl -X POST https://workflow.api.dev.immiblox.com/api/v1/workflow-executions/EXEC_ID/steps/STEP_ID/complete \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "X-User-ID: YOUR_USER_ID" \
  -d '{"document_ids":["doc-uuid"]}'
POSTJWT/api/v1/workflow-executions/{execution_id}/steps/{step_execution_id}/execute(workflow service)

Execute AI step

Execute an AI-driven step (e.g., AI_PROCESS, AI_TRANSLATE). No request body required.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • execution_idUUID of the workflow execution
  • step_execution_idUUID of the AI step to execute
Response example
{
  "success": true,
  "output": {...}
}
cURL example
curl -X POST https://workflow.api.dev.immiblox.com/api/v1/workflow-executions/EXEC_ID/steps/STEP_ID/execute \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "X-User-ID: YOUR_USER_ID"
GETJWT/api/v1/engine/workflows(workflow service)

List engine workflows

List workflow templates from the extensible engine (database-backed).

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Response example
{
  "workflows": [...]
}
cURL example
curl -X GET https://workflow.api.dev.immiblox.com/api/v1/engine/workflows \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "X-User-ID: YOUR_USER_ID"
GETJWT/api/v1/engine/workflows/{workflow_id}(workflow service)

Get workflow id

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • workflow_idworkflow_id path parameter
Response example
{
  "success": true,
  "path": "/api/v1/engine/workflows/{workflow_id}",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X GET https://workflow.api.dev.immiblox.com/api/v1/engine/workflows/{workflow_id} \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
GETJWT/api/v1/engine/steps(workflow service)

List step templates

List step templates used by the workflow engine.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Response example
{
  "steps": [...]
}
cURL example
curl -X GET https://workflow.api.dev.immiblox.com/api/v1/engine/steps \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "X-User-ID: YOUR_USER_ID"
GETJWT/api/v1/engine/policies(workflow service)

Get policies

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Response example
{
  "success": true,
  "path": "/api/v1/engine/policies",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X GET https://workflow.api.dev.immiblox.com/api/v1/engine/policies \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
GETJWT/api/v1/engine/policies/{policy_id}(workflow service)

Get policy id

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • policy_idpolicy_id path parameter
Response example
{
  "success": true,
  "path": "/api/v1/engine/policies/{policy_id}",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X GET https://workflow.api.dev.immiblox.com/api/v1/engine/policies/{policy_id} \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
POSTJWT/api/v1/engine/executions(workflow service)

Start engine execution

Start a workflow execution via the engine API. Requires workflow_id and vault_id.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Request body
{
  "workflow_id": "workflow-uuid",
  "vault_id": "vault-uuid",
  "initial_context": "{}"
}
Response example
{
  "success": true,
  "execution_id": "exec-uuid"
}
cURL example
curl -X POST https://workflow.api.dev.immiblox.com/api/v1/engine/executions \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "X-User-ID: YOUR_USER_ID" \
  -d '{"workflow_id":"WORKFLOW_ID","vault_id":"VAULT_ID"}'
GETJWT/api/v1/engine/executions(workflow service)

Get executions

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Response example
{
  "success": true,
  "path": "/api/v1/engine/executions",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X GET https://workflow.api.dev.immiblox.com/api/v1/engine/executions \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
GETJWT/api/v1/engine/executions/{execution_id}(workflow service)

Get engine execution

Get execution status from the engine.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • execution_idUUID of the execution
Response example
{
  "id": "exec-uuid",
  "status": "running",
  "workflow_id": "workflow-uuid"
}
cURL example
curl -X GET https://workflow.api.dev.immiblox.com/api/v1/engine/executions/EXECUTION_ID \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "X-User-ID: YOUR_USER_ID"
POSTJWT/api/v1/engine/executions/{execution_id}/steps/{step_execution_id}/complete(workflow service)

Create/Run complete

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • execution_idexecution_id path parameter
  • step_execution_idstep_execution_id path parameter
Request body
{
  "example": "See endpoint-specific docs for required fields"
}
Response example
{
  "success": true,
  "path": "/api/v1/engine/executions/{execution_id}/steps/{step_execution_id}/complete",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X POST https://workflow.api.dev.immiblox.com/api/v1/engine/executions/{execution_id}/steps/{step_execution_id}/complete \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"example":"value"}'
POSTJWT/api/v1/engine/executions/{execution_id}/steps/{step_execution_id}/execute(workflow service)

Create/Run execute

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • execution_idexecution_id path parameter
  • step_execution_idstep_execution_id path parameter
Request body
{
  "example": "See endpoint-specific docs for required fields"
}
Response example
{
  "success": true,
  "path": "/api/v1/engine/executions/{execution_id}/steps/{step_execution_id}/execute",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X POST https://workflow.api.dev.immiblox.com/api/v1/engine/executions/{execution_id}/steps/{step_execution_id}/execute \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"example":"value"}'
POSTJWT/api/v1/engine/executions/{execution_id}/pause(workflow service)

Create/Run pause

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • execution_idexecution_id path parameter
Request body
{
  "example": "See endpoint-specific docs for required fields"
}
Response example
{
  "success": true,
  "path": "/api/v1/engine/executions/{execution_id}/pause",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X POST https://workflow.api.dev.immiblox.com/api/v1/engine/executions/{execution_id}/pause \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"example":"value"}'
POSTJWT/api/v1/engine/executions/{execution_id}/resume(workflow service)

Create/Run resume

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • execution_idexecution_id path parameter
Request body
{
  "example": "See endpoint-specific docs for required fields"
}
Response example
{
  "success": true,
  "path": "/api/v1/engine/executions/{execution_id}/resume",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X POST https://workflow.api.dev.immiblox.com/api/v1/engine/executions/{execution_id}/resume \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"example":"value"}'
POSTJWT/api/v1/engine/executions/{execution_id}/cancel(workflow service)

Create/Run cancel

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • execution_idexecution_id path parameter
Request body
{
  "example": "See endpoint-specific docs for required fields"
}
Response example
{
  "success": true,
  "path": "/api/v1/engine/executions/{execution_id}/cancel",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X POST https://workflow.api.dev.immiblox.com/api/v1/engine/executions/{execution_id}/cancel \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"example":"value"}'
POSTJWT/api/v1/engine/executions/{execution_id}/events(workflow service)

Create/Run events

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • execution_idexecution_id path parameter
Request body
{
  "organization_id": "ORG_ID",
  "event_type": "document.uploaded",
  "payload": "{"document_id":"..."}"
}
Response example
{
  "success": true,
  "path": "/api/v1/engine/executions/{execution_id}/events",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X POST https://workflow.api.dev.immiblox.com/api/v1/engine/executions/{execution_id}/events \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"example":"value"}'
POSTJWT/api/v1/engine/policies/evaluate(workflow service)

Create/Run evaluate

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Request body
{
  "example": "See endpoint-specific docs for required fields"
}
Response example
{
  "success": true,
  "path": "/api/v1/engine/policies/evaluate",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X POST https://workflow.api.dev.immiblox.com/api/v1/engine/policies/evaluate \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"example":"value"}'
POSTJWT/api/v1/engine/policies/evaluate-expression(workflow service)

Create/Run evaluate expression

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Request body
{
  "example": "See endpoint-specific docs for required fields"
}
Response example
{
  "success": true,
  "path": "/api/v1/engine/policies/evaluate-expression",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X POST https://workflow.api.dev.immiblox.com/api/v1/engine/policies/evaluate-expression \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"example":"value"}'

Immigration

POSTJWT/api/v1/persons(immigration service)

Create person

Create a new person record for immigration status tracking.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Request body
{
  "first_name": "Jane",
  "last_name": "Doe",
  "email": "jane@example.com"
}
Response example
{
  "id": "person-uuid",
  "first_name": "Jane",
  "last_name": "Doe",
  "email": "jane@example.com",
  "created_at": "2025-01-15T10:00:00Z"
}
cURL example
curl -X POST https://immigration.api.dev.immiblox.com/api/v1/persons \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"first_name":"Jane","last_name":"Doe","email":"jane@example.com"}'
GETJWT/api/v1/persons(immigration service)

Get persons

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Response example
{
  "success": true,
  "path": "/api/v1/persons",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X GET https://immigration.api.dev.immiblox.com/api/v1/persons \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
GETJWT/api/v1/persons/{person_id}(immigration service)

Get person id

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • person_idperson_id path parameter
Response example
{
  "success": true,
  "path": "/api/v1/persons/{person_id}",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X GET https://immigration.api.dev.immiblox.com/api/v1/persons/{person_id} \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
PATCHJWT/api/v1/persons/{person_id}(immigration service)

Update person id

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • person_idperson_id path parameter
Request body
{
  "example": "See endpoint-specific docs for required fields"
}
Response example
{
  "success": true,
  "path": "/api/v1/persons/{person_id}",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X PATCH https://immigration.api.dev.immiblox.com/api/v1/persons/{person_id} \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"example":"value"}'
DELETEJWT/api/v1/persons/{person_id}(immigration service)

Delete person id

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • person_idperson_id path parameter
Response example
{
  "success": true,
  "path": "/api/v1/persons/{person_id}",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X DELETE https://immigration.api.dev.immiblox.com/api/v1/persons/{person_id} \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
POSTJWT/api/v1/persons/{person_id}/statuses(immigration service)

Create/Run statuses

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • person_idperson_id path parameter
Request body
{
  "example": "See endpoint-specific docs for required fields"
}
Response example
{
  "success": true,
  "path": "/api/v1/persons/{person_id}/statuses",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X POST https://immigration.api.dev.immiblox.com/api/v1/persons/{person_id}/statuses \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"example":"value"}'
GETJWT/api/v1/persons/{person_id}/statuses(immigration service)

List person statuses

Retrieve immigration statuses for a person.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • person_idUUID of the person
Response example
{
  "statuses": [
    {
      "id": "status-uuid",
      "status_type": "visa",
      "valid_from": "2024-01-01",
      "valid_until": "2026-01-01"
    }
  ]
}
cURL example
curl -X GET https://immigration.api.dev.immiblox.com/api/v1/persons/PERSON_ID/statuses \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
GETJWT/api/v1/statuses/{status_id}(immigration service)

Get status id

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • status_idstatus_id path parameter
Response example
{
  "success": true,
  "path": "/api/v1/statuses/{status_id}",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X GET https://immigration.api.dev.immiblox.com/api/v1/statuses/{status_id} \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
PATCHJWT/api/v1/statuses/{status_id}(immigration service)

Update status id

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • status_idstatus_id path parameter
Request body
{
  "example": "See endpoint-specific docs for required fields"
}
Response example
{
  "success": true,
  "path": "/api/v1/statuses/{status_id}",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X PATCH https://immigration.api.dev.immiblox.com/api/v1/statuses/{status_id} \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"example":"value"}'
DELETEJWT/api/v1/statuses/{status_id}(immigration service)

Delete status id

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • status_idstatus_id path parameter
Response example
{
  "success": true,
  "path": "/api/v1/statuses/{status_id}",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X DELETE https://immigration.api.dev.immiblox.com/api/v1/statuses/{status_id} \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
GETJWT/api/v1/persons/{person_id}/compliance-summary(immigration service)

Get compliance summary

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • person_idperson_id path parameter
Response example
{
  "success": true,
  "path": "/api/v1/persons/{person_id}/compliance-summary",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X GET https://immigration.api.dev.immiblox.com/api/v1/persons/{person_id}/compliance-summary \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
GETJWT/api/v1/persons/{person_id}/compliance-events(immigration service)

Get compliance events

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • person_idperson_id path parameter
Response example
{
  "success": true,
  "path": "/api/v1/persons/{person_id}/compliance-events",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X GET https://immigration.api.dev.immiblox.com/api/v1/persons/{person_id}/compliance-events \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
POSTJWT/api/v1/persons/{person_id}/compliance-events(immigration service)

Create/Run compliance events

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • person_idperson_id path parameter
Request body
{
  "example": "See endpoint-specific docs for required fields"
}
Response example
{
  "success": true,
  "path": "/api/v1/persons/{person_id}/compliance-events",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X POST https://immigration.api.dev.immiblox.com/api/v1/persons/{person_id}/compliance-events \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"example":"value"}'
POSTJWT/api/v1/import/persons(immigration service)

Create/Run persons

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Request body
{
  "example": "See endpoint-specific docs for required fields"
}
Response example
{
  "success": true,
  "path": "/api/v1/import/persons",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X POST https://immigration.api.dev.immiblox.com/api/v1/import/persons \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"example":"value"}'
POSTJWT/api/v1/import/statuses(immigration service)

Create/Run statuses

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Request body
{
  "example": "See endpoint-specific docs for required fields"
}
Response example
{
  "success": true,
  "path": "/api/v1/import/statuses",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X POST https://immigration.api.dev.immiblox.com/api/v1/import/statuses \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"example":"value"}'
POSTJWT/api/v1/persons/{person_id}/documents(immigration service)

Create/Run documents

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • person_idperson_id path parameter
Request body
{
  "example": "See endpoint-specific docs for required fields"
}
Response example
{
  "success": true,
  "path": "/api/v1/persons/{person_id}/documents",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X POST https://immigration.api.dev.immiblox.com/api/v1/persons/{person_id}/documents \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"example":"value"}'
GETJWT/api/v1/persons/{person_id}/documents(immigration service)

Get documents

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • person_idperson_id path parameter
Response example
{
  "success": true,
  "path": "/api/v1/persons/{person_id}/documents",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X GET https://immigration.api.dev.immiblox.com/api/v1/persons/{person_id}/documents \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"

Platform Integrations

Organization APIs for teams, keys, webhooks, and MCP-powered integration tooling.

Organization

POSTJWT/api/v1/organizations(organization service)

Create/Run organizations

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Request body
{
  "example": "See endpoint-specific docs for required fields"
}
Response example
{
  "success": true,
  "path": "/api/v1/organizations",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X POST https://organization.api.dev.immiblox.com/api/v1/organizations \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"example":"value"}'
GETJWT/api/v1/organizations(organization service)

List organizations

List organizations the authenticated user belongs to.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Response example
{
  "organizations": [
    {
      "id": "org-uuid",
      "name": "Acme Corp",
      "created_at": "2025-01-15T10:00:00Z"
    }
  ]
}
cURL example
curl -X GET https://organization.api.dev.immiblox.com/api/v1/organizations \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
GETJWT/api/v1/organizations/{organization_id}(organization service)

Get organization id

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • organization_idorganization_id path parameter
Response example
{
  "success": true,
  "path": "/api/v1/organizations/{organization_id}",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X GET https://organization.api.dev.immiblox.com/api/v1/organizations/{organization_id} \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
PATCHJWT/api/v1/organizations/{organization_id}(organization service)

Update organization id

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • organization_idorganization_id path parameter
Request body
{
  "example": "See endpoint-specific docs for required fields"
}
Response example
{
  "success": true,
  "path": "/api/v1/organizations/{organization_id}",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X PATCH https://organization.api.dev.immiblox.com/api/v1/organizations/{organization_id} \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"example":"value"}'
POSTJWT/api/v1/organizations/{organization_id}/members(organization service)

Create/Run members

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • organization_idorganization_id path parameter
Request body
{
  "example": "See endpoint-specific docs for required fields"
}
Response example
{
  "success": true,
  "path": "/api/v1/organizations/{organization_id}/members",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X POST https://organization.api.dev.immiblox.com/api/v1/organizations/{organization_id}/members \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"example":"value"}'
GETJWT/api/v1/organizations/{organization_id}/members(organization service)

Get members

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • organization_idorganization_id path parameter
Response example
{
  "success": true,
  "path": "/api/v1/organizations/{organization_id}/members",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X GET https://organization.api.dev.immiblox.com/api/v1/organizations/{organization_id}/members \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
DELETEJWT/api/v1/organizations/{organization_id}/members/{member_id}(organization service)

Delete member id

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • organization_idorganization_id path parameter
  • member_idmember_id path parameter
Response example
{
  "success": true,
  "path": "/api/v1/organizations/{organization_id}/members/{member_id}",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X DELETE https://organization.api.dev.immiblox.com/api/v1/organizations/{organization_id}/members/{member_id} \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
POSTJWT/api/v1/organizations/{organization_id}/machine-auth/service-accounts(organization service)

Create/Run service accounts

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • organization_idorganization_id path parameter
Request body
{
  "example": "See endpoint-specific docs for required fields"
}
Response example
{
  "success": true,
  "path": "/api/v1/organizations/{organization_id}/machine-auth/service-accounts",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X POST https://organization.api.dev.immiblox.com/api/v1/organizations/{organization_id}/machine-auth/service-accounts \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"example":"value"}'
GETJWT/api/v1/organizations/{organization_id}/machine-auth/service-accounts(organization service)

Get service accounts

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • organization_idorganization_id path parameter
Response example
{
  "success": true,
  "path": "/api/v1/organizations/{organization_id}/machine-auth/service-accounts",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X GET https://organization.api.dev.immiblox.com/api/v1/organizations/{organization_id}/machine-auth/service-accounts \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
POSTJWT/api/v1/organizations/{organization_id}/machine-auth/service-accounts/{id}/deactivate(organization service)

Create/Run deactivate

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • organization_idorganization_id path parameter
  • idid path parameter
Request body
{
  "example": "See endpoint-specific docs for required fields"
}
Response example
{
  "success": true,
  "path": "/api/v1/organizations/{organization_id}/machine-auth/service-accounts/{id}/deactivate",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X POST https://organization.api.dev.immiblox.com/api/v1/organizations/{organization_id}/machine-auth/service-accounts/{id}/deactivate \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"example":"value"}'
POSTJWT/api/v1/organizations/{organization_id}/machine-auth/api-keys(organization service)

Create API key

Create an API key for machine-to-machine integrations. Requires org admin. Use X-API-Key + X-App-Key headers for authenticated requests.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • organization_idUUID of the organization
Request body
{
  "name": "Production API Key",
  "app_key_id": "app-key-uuid"
}
Response example
{
  "id": "api-key-uuid",
  "name": "Production API Key",
  "key_prefix": "imm_...",
  "created_at": "2025-01-15T10:00:00Z"
}
cURL example
curl -X POST https://organization.api.dev.immiblox.com/api/v1/organizations/ORG_ID/machine-auth/api-keys \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"name":"Production API Key","app_key_id":"APP_KEY_ID"}'
GETJWT/api/v1/organizations/{organization_id}/machine-auth/api-keys(organization service)

Get api keys

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • organization_idorganization_id path parameter
Response example
{
  "success": true,
  "path": "/api/v1/organizations/{organization_id}/machine-auth/api-keys",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X GET https://organization.api.dev.immiblox.com/api/v1/organizations/{organization_id}/machine-auth/api-keys \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
POSTJWT/api/v1/organizations/{organization_id}/machine-auth/api-keys/{id}/revoke(organization service)

Create/Run revoke

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • organization_idorganization_id path parameter
  • idid path parameter
Request body
{
  "name": "integration-key",
  "scopes": ["integration:access"]
}
Response example
{
  "success": true,
  "path": "/api/v1/organizations/{organization_id}/machine-auth/api-keys/{id}/revoke",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X POST https://organization.api.dev.immiblox.com/api/v1/organizations/{organization_id}/machine-auth/api-keys/{id}/revoke \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"example":"value"}'
POSTJWT/api/v1/organizations/{organization_id}/machine-auth/api-keys/{id}/rotate(organization service)

Create/Run rotate

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • organization_idorganization_id path parameter
  • idid path parameter
Request body
{
  "name": "integration-key",
  "scopes": ["integration:access"]
}
Response example
{
  "success": true,
  "path": "/api/v1/organizations/{organization_id}/machine-auth/api-keys/{id}/rotate",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X POST https://organization.api.dev.immiblox.com/api/v1/organizations/{organization_id}/machine-auth/api-keys/{id}/rotate \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"example":"value"}'
POSTJWT/api/v1/organizations/{organization_id}/machine-auth/app-keys(organization service)

Create/Run app keys

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • organization_idorganization_id path parameter
Request body
{
  "name": "app-key",
  "scopes": ["integration:access"]
}
Response example
{
  "success": true,
  "path": "/api/v1/organizations/{organization_id}/machine-auth/app-keys",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X POST https://organization.api.dev.immiblox.com/api/v1/organizations/{organization_id}/machine-auth/app-keys \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"example":"value"}'
GETJWT/api/v1/organizations/{organization_id}/machine-auth/app-keys(organization service)

Get app keys

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • organization_idorganization_id path parameter
Response example
{
  "success": true,
  "path": "/api/v1/organizations/{organization_id}/machine-auth/app-keys",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X GET https://organization.api.dev.immiblox.com/api/v1/organizations/{organization_id}/machine-auth/app-keys \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
POSTJWT/api/v1/organizations/{organization_id}/machine-auth/app-keys/{id}/revoke(organization service)

Create/Run revoke

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • organization_idorganization_id path parameter
  • idid path parameter
Request body
{
  "name": "app-key",
  "scopes": ["integration:access"]
}
Response example
{
  "success": true,
  "path": "/api/v1/organizations/{organization_id}/machine-auth/app-keys/{id}/revoke",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X POST https://organization.api.dev.immiblox.com/api/v1/organizations/{organization_id}/machine-auth/app-keys/{id}/revoke \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"example":"value"}'
POSTJWT/api/v1/organizations/{organization_id}/machine-auth/app-keys/{id}/rotate(organization service)

Create/Run rotate

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • organization_idorganization_id path parameter
  • idid path parameter
Request body
{
  "name": "app-key",
  "scopes": ["integration:access"]
}
Response example
{
  "success": true,
  "path": "/api/v1/organizations/{organization_id}/machine-auth/app-keys/{id}/rotate",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X POST https://organization.api.dev.immiblox.com/api/v1/organizations/{organization_id}/machine-auth/app-keys/{id}/rotate \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"example":"value"}'

Webhook

POSTJWT/api/v1/webhooks(webhook service)

Create webhook

Register a webhook URL to receive event notifications.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Request body
{
  "url": "https://your-app.com/webhooks/immiblox",
  "events": ["document.uploaded", "vault.shared"]
}
Response example
{
  "id": "webhook-uuid",
  "url": "https://your-app.com/webhooks/immiblox",
  "events": ["document.uploaded", "vault.shared"],
  "created_at": "2025-01-15T10:00:00Z"
}
cURL example
curl -X POST https://webhook.api.dev.immiblox.com/api/v1/webhooks \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"url":"https://your-app.com/webhooks/immiblox","events":["document.uploaded","vault.shared"]}'
GETJWT/api/v1/webhooks(webhook service)

Get webhooks

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Query parameters
  • organization_id (string) required Organization UUID
Response example
{
  "success": true,
  "path": "/api/v1/webhooks",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X GET https://webhook.api.dev.immiblox.com/api/v1/webhooks \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
DELETEJWT/api/v1/webhooks/{webhook_id}(webhook service)

Delete webhook id

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • webhook_idwebhook_id path parameter
Response example
{
  "success": true,
  "path": "/api/v1/webhooks/{webhook_id}",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X DELETE https://webhook.api.dev.immiblox.com/api/v1/webhooks/{webhook_id} \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
GETJWT/api/v1/events(webhook service)

Get events

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Query parameters
  • organization_id (string) required Organization UUID
  • webhook_id (string) Filter events by webhook ID
Response example
{
  "success": true,
  "path": "/api/v1/events",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X GET https://webhook.api.dev.immiblox.com/api/v1/events \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
POSTJWT/api/v1/events(webhook service)

Create/Run events

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Query parameters
  • organization_id (string) required Organization UUID
  • webhook_id (string) Filter events by webhook ID
Request body
{
  "organization_id": "ORG_ID",
  "event_type": "document.uploaded",
  "payload": "{"document_id":"..."}"
}
Response example
{
  "success": true,
  "path": "/api/v1/events",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X POST https://webhook.api.dev.immiblox.com/api/v1/events \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"example":"value"}'

MCP

GETJWT/api/v1/mcp/tools(mcp service)

List MCP tools

List available Model Context Protocol tools for AI integrations.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Response example
{
  "tools": [
    {
      "name": "search_documents",
      "description": "Search documents in a vault"
    }
  ]
}
cURL example
curl -X GET https://mcp.api.dev.immiblox.com/api/v1/mcp/tools \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
GETJWT/api/v1/mcp/tools/{tool_name}(mcp service)

Get tool name

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • tool_nametool_name path parameter
Response example
{
  "success": true,
  "path": "/api/v1/mcp/tools/{tool_name}",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X GET https://mcp.api.dev.immiblox.com/api/v1/mcp/tools/{tool_name} \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
POSTJWT/api/v1/mcp/tools/{tool_name}/execute(mcp service)

Create/Run execute

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Path parameters
  • tool_nametool_name path parameter
Request body
{
  "example": "See endpoint-specific docs for required fields"
}
Response example
{
  "success": true,
  "path": "/api/v1/mcp/tools/{tool_name}/execute",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X POST https://mcp.api.dev.immiblox.com/api/v1/mcp/tools/{tool_name}/execute \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"example":"value"}'
POSTJWT/api/v1/chat/message(mcp service)

Create/Run message

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Request body
{
  "example": "See endpoint-specific docs for required fields"
}
Response example
{
  "success": true,
  "path": "/api/v1/chat/message",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X POST https://mcp.api.dev.immiblox.com/api/v1/chat/message \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"example":"value"}'
POSTJWT/api/v1/chat/message/stream(mcp service)

Create/Run stream

Auto-generated reference entry for endpoint completeness. Use the cURL example and Postman collection for exact payload details.

Required headers
  • Authorization: Bearer <access_token>
  • Content-Type: application/json (for JSON body)
Request body
{
  "example": "See endpoint-specific docs for required fields"
}
Response example
{
  "success": true,
  "path": "/api/v1/chat/message/stream",
  "note": "Example response. Shape varies by endpoint."
}
cURL example
curl -X POST https://mcp.api.dev.immiblox.com/api/v1/chat/message/stream \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"example":"value"}'

Authentication

All authenticated requests must include the appropriate headers. immiblox supports multiple authentication methods:

Human clients (JWT / OAuth)

HeaderValueRequired
AuthorizationBearer &lt;access_token&gt;Yes
Content-Typeapplication/jsonYes (for JSON bodies)

Obtain an access token via POST /api/v1/auth/signin, Google OAuth, or Cognito hosted UI.

Organization machine integrations

HeaderValueRequired
X-API-KeyYour organization API keyYes
X-App-KeyYour app keyYes
Content-Typeapplication/jsonYes (for JSON bodies)

Public access

Some endpoints (e.g. shared vaults, public documents) accept a share token. Pass it as a query parameter or header depending on the endpoint:

  • share_token=<token> as query parameter
  • X-Share-Token: <token> header

Request and Response Format

All API requests and responses use JSON unless otherwise specified. Error responses follow a consistent format.

Error response structure

{
  "detail": "Error message string or validation object"
}

Common status codes

CodeMeaning
200Success
201Created
400Bad Request — invalid input
401Unauthorized — missing or invalid token
403Forbidden — insufficient permissions
404Not Found
422Unprocessable Entity — validation error
500Internal Server Error

Basic Example

Here is a minimal request to sign in and obtain an access token:

curl -X POST https://account.api.dev.immiblox.com/api/v1/auth/signin \
  -H "Content-Type: application/json" \
  -d '{
    "email": "your@email.com",
    "password": "your_password"
  }'

Response:

{
  "access_token": "eyJ...",
  "account": {
    "id": "usr_...",
    "email": "your@email.com"
  }
}

Use the access_token in subsequent requests via Authorization: Bearer <token>.

Recommendation: For production integrations, prefer OAuth or Cognito hosted UI for sign-in. See Authentication for organization API keys if building machine-to-machine integrations.

Next Steps