Create a Vitals Scan Embed Session
const url = 'https://api.upvio.com/v1/businesses/example/vitals/scans/example/embed-sessions';const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://api.upvio.com/v1/businesses/example/vitals/scans/example/embed-sessions \ --header 'Authorization: Bearer <token>'Create a URL that opens a pending or started vitals scan inside an iframe on one of the business’s embedAllowedOrigins, without the patient signing in. The URL is valid for one hour and can be loaded more than once until it expires. Create a new session each time the page that embeds the scan is rendered. Requires the VitalsScanEmbedSession:write:all scope, the vitals.embed feature and at least one embed allowed origin.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”The ID of the Business.
The ID of the Vitals Scan.
Responses
Section titled “Responses”The embed session was created.
object
object
The URL to load in an iframe on one of the business’s embedAllowedOrigins. It opens the scan without the patient signing in.
When the URL stops working.
Example generated
{ "data": { "url": "https://example.com", "expiresAt": "2026-04-15T12:00:00Z" }}The business has no embed allowed origins, or the Business ID does not match the API key.
object
object
The specific error that occurred.
Human-readable description of the error.
Example
{ "error": { "code": 400, "type": "BadRequestError", "title": "Add an embed allowed origin before embedding scans" }}The API key is missing or invalid, the Business cannot be accessed with it, the VitalsScanEmbedSession:write:all scope is missing, or the vitals.embed feature is not enabled.
object
object
The specific error that occurred.
Human-readable description of the error.
Example
{ "error": { "code": 403, "type": "UnauthorizedError", "title": "Embedding the Scan Interface is not enabled" }}The Business or the vitals scan does not exist.
object
object
The specific error that occurred.
Human-readable description of the error.
Example
{ "error": { "code": 404, "type": "NotFoundError", "title": "Vitals Scan not found" }}The vitals scan has already succeeded, failed or been aborted.
object
object
The specific error that occurred.
Human-readable description of the error.
Example
{ "error": { "code": 409, "type": "ConflictError", "title": "Vitals Scan has already finished" }}