Skip to main content

Run Ivana Laser Import (v1)

Trigger the Ivana laser sessions import job for a workspace.

Method & Path

POST /api/v1/admin/imports/ivana-laser-sessions

Note: backend route is served at /v1/admin/imports/ivana-laser-sessions.

Description

Imports Ivana laser sessions, creates or finds clients, and writes sessions with notes and field values. Uses cached JSON data when available to avoid re-fetching from the Ivana API.

Persona access: Admin only (Workspace Owner access is not applicable for admin endpoints).

Authentication

Required: Admin authentication with businesses.manage permission.

Include the admin JWT token in the Authorization header:

Authorization: Bearer <admin_token>

Headers

Authorization: Bearer <admin_token>
Content-Type: application/json

Query Parameters

ParameterTypeRequiredDescription
dryRunbooleanNoWhen true, does not write to the database (default: false)
useCachebooleanNoWhen true, uses cached JSON if available (default: true)
pageLimitnumberNoLimit number of pages fetched from Ivana API

Request Body

None.

Response 200 OK

{
"message": "Ivana laser sessions import completed.",
"result": {
"processed": 120,
"clientsCreated": 15,
"sessionsCreated": 80,
"sessionsSkipped": 25,
"errors": 0,
"dryRun": false,
"usedCache": true,
"cachedRecords": 120
}
}

Common Errors

  • 400 Bad Request: Invalid query parameters
  • 401 Unauthorized: Missing or invalid admin authentication token
  • 403 Forbidden: Insufficient permissions (missing businesses.manage permission)
  • 500 Internal Server Error: Server error