{"templateId":"markdown","versions":[{"version":"2.1-test","label":"2.1 (TEST)","link":"/products/liveidplus/2.1-test/enterprise/get-started/authentication","default":false,"active":false,"folderId":"ed500da1"},{"version":"2.1","label":"2.1 (latest)","link":"/products/liveidplus/enterprise/get-started/authentication","default":true,"active":true,"folderId":"ed500da1"},{"version":"2.0","label":"2.0","link":"/products/liveidplus/2.0/enterprise/get-started/authentication","default":false,"active":false,"folderId":"ed500da1"}],"sharedDataIds":{"sidebar":"sidebar-products/liveidplus/@2.0/sidebars.yaml"},"props":{"metadata":{"markdoc":{"tagList":[]},"type":"markdown"},"seo":{"title":"Authentication","description":"Integration and usage documentation.","llmstxt":{"hide":false,"sections":[{"title":"Table of contents","includeFiles":["**/*"],"excludeFiles":[]}],"excludeFiles":[]}},"dynamicMarkdocComponents":[],"compilationErrors":[],"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"Heading","attributes":{"level":1,"id":"authentication","__idx":0},"children":["Authentication"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["LiveID+ uses multiple authentication mechanisms depending on the type of integration and the role of the caller. It is recommended to always pass authentication credentials as ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["HTTP headers"]}," rather than query parameters or request body fields."]},{"$$mdtype":"Tag","name":"br","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"api-key-authentication","__idx":1},"children":["API Key Authentication"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["For server-to-server API calls, LiveID+ uses API key authentication. The API key is provided by Namirial during platform setup."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The API key should be passed as an HTTP header:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"header":{"controls":{"copy":{}}},"source":"apikey: your-api-key-here\n"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Example:"]}]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"header":{"controls":{"copy":{}}},"source":"GET /api/authenticate/genAPIToken?idConference=abc123\napikey: your-api-key-here\n"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["API key authentication is required for the following endpoints:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["GET /api/authenticate/genAPIToken"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["PATCH /api/v2/rejectCall"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["GET /api/v2/getAsyncRequestInfo"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST /api/v2/registerAlertEmail"]}]}]},{"$$mdtype":"Tag","name":"br","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"jwt-bearer-token","__idx":2},"children":["JWT Bearer Token"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["For call-specific operations (e.g., retrieving conference data or audit data), a JWT bearer token is used. This token is scoped to a specific call and has a limited validity."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"obtaining-a-token","__idx":3},"children":["Obtaining a Token"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Tokens can be obtained in two ways:"]},{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["From the call closing event"]},": The ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["message.token"]}," parameter in the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["close"]}," event payload contains a valid JWT."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Via API"]},": Call ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["GET /api/authenticate/genAPIToken"]}," with the conference ID (requires API key authentication)."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"using-the-token","__idx":4},"children":["Using the Token"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Pass the token in the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Authorization"]}," header:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"header":{"controls":{"copy":{}}},"source":"Authorization: Bearer <jwt_token>\n"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["JWT bearer tokens are required for:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["GET /api/v2/conferenceData"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["DELETE /api/v2/deleteAuditData"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["GET /api/v2/getAuditData"]}]}]},{"$$mdtype":"Tag","name":"br","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"callback-alert-email-registration","__idx":5},"children":["Callback Alert Email Registration"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Register an email address to receive notifications when server-side callbacks fail."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Endpoint:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST /api/v2/registerAlertEmail"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Authentication:"]}," API Key (header ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["apikey"]},")"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Request Body:"]}]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"{\n  \"processId\": \"process-uuid\",\n  \"email\": \"alerts@your-system.com\"\n}\n","lang":"json"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Multiple email addresses can be registered by separating them with commas. Each registration overrides the previous email address for the given process. Sending an empty ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["email"]}," value removes the current registration."]}]},"headings":[{"value":"Authentication","id":"authentication","depth":1},{"value":"API Key Authentication","id":"api-key-authentication","depth":2},{"value":"JWT Bearer Token","id":"jwt-bearer-token","depth":2},{"value":"Obtaining a Token","id":"obtaining-a-token","depth":3},{"value":"Using the Token","id":"using-the-token","depth":3},{"value":"Callback Alert Email Registration","id":"callback-alert-email-registration","depth":2}],"frontmatter":{"outline":"deep","title":"Authentication","scope":"vertical-solutions","product":"LiveID+","category":"get-started","version":"2.0","description":"LiveID+ authentication guide: API key for server-to-server calls and JWT Bearer token for call-specific operations and data retrieval.","keywords":["authentication","API key","JWT","Bearer token","apikey header","LiveID+"],"seo":{"title":"Authentication"}},"lastModified":"2026-07-16T07:59:15.000Z","pagePropGetterError":{"message":"","name":""}},"slug":"/products/liveidplus/enterprise/get-started/authentication","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}