Skip to content
Get started

Create and invite a new user

viewer.users.invite(UserInviteParams**kwargs) -> UserInviteResponse
post/v1/viewer/users

Creates a new user in the Viewer system and sends them an invitation email. The user will have the specified permissions and access level. Dashboard access can be enabled to allow login.

ParametersExpand Collapse
can_manage_studies: bool
clinic_role: Literal["Radiologist", "Cardiologist", "Neurologist", 18 more]

User's clinical or organizational role

Accepts one of the following:
"Radiologist"
"Cardiologist"
"Neurologist"
"Urologist"
"Gynecologist"
"Endocrinologist"
"Doctor"
"Surgeon"
"Physician"
"Physician Assistant"
"Nurse Practitioner"
"Registered Nurse"
"Patient Care Coordinator"
"Front Desk Operator"
"Imaging Technologist"
"PACS Administrator"
"Software Engineer"
"Revenue Cycle Manager"
"Administrative Director"
"Administrative Assistant"
"Other"
email: str

User's email address for login and notifications

first_name: str

User's first name

minLength1
has_dashboard_access: bool
last_name: str

User's last name

minLength1
level: Literal["admin", "member"]
Accepts one of the following:
"admin"
"member"
middle_name: Optional[str]

User's middle name (optional)

minLength1
phone_number: Optional[str]

User's phone number (10-15 digits, optional)

suffix1: Optional[str]

Name suffix (e.g., 'Jr.', 'Sr.', 'III') - optional

minLength1
suffix2: Optional[str]

Additional name suffix (optional)

minLength1
ReturnsExpand Collapse
class UserInviteResponse:

Response for inviting a user to Viewer. Level is restricted to admin/member since owners cannot be invited via API.

can_manage_studies: bool

Whether the user has permission to create, update, and manage studies

clinic_role: Literal["Radiologist", "Cardiologist", "Neurologist", 18 more]

User's clinical or organizational role

Accepts one of the following:
"Radiologist"
"Cardiologist"
"Neurologist"
"Urologist"
"Gynecologist"
"Endocrinologist"
"Doctor"
"Surgeon"
"Physician"
"Physician Assistant"
"Nurse Practitioner"
"Registered Nurse"
"Patient Care Coordinator"
"Front Desk Operator"
"Imaging Technologist"
"PACS Administrator"
"Software Engineer"
"Revenue Cycle Manager"
"Administrative Director"
"Administrative Assistant"
"Other"
created_at: Optional[datetime]

Timestamp when the user was created

formatdate-time
email: str

User's email address for login and notifications

first_name: str

User's first name

minLength1
has_dashboard_access: bool

Whether the user can access the dashboard interface. Required for admin users

invited_source: Literal["dashboard", "api"]

How the user was invited - via dashboard UI or API

Accepts one of the following:
"dashboard"
"api"
last_login_at: Optional[datetime]

Timestamp of user's last login, null if never logged in

formatdate-time
last_name: str

User's last name

minLength1
level: Literal["admin", "member"]

User access level. 'admin' can manage users/settings, 'member' has standard access

Accepts one of the following:
"admin"
"member"
user_id: str

Unique user identifier. Format: usr_{32-hex-chars}

middle_name: Optional[str]

User's middle name (optional)

minLength1
phone_number: Optional[str]

User's phone number (10-15 digits, optional)

suffix1: Optional[str]

Name suffix (e.g., 'Jr.', 'Sr.', 'III') - optional

minLength1
suffix2: Optional[str]

Additional name suffix (optional)

minLength1
Create and invite a new user
import os
from avara import Avara

client = Avara(
    api_key=os.environ.get("AVARA_API_KEY"),  # This is the default and can be omitted
)
response = client.viewer.users.invite(
    can_manage_studies=True,
    clinic_role="Radiologist",
    email="dr.johnson@hospital.org",
    first_name="Sarah",
    has_dashboard_access=True,
    last_name="Johnson",
    level="member",
)
print(response.middle_name)
{
  "canManageStudies": true,
  "clinicRole": "Radiologist",
  "createdAt": "2024-01-15T10:00:00Z",
  "email": "dr.johnson@hospital.org",
  "firstName": "Sarah",
  "hasDashboardAccess": true,
  "invitedSource": "api",
  "lastLoginAt": "2024-03-15T09:00:00Z",
  "lastName": "Johnson",
  "level": "member",
  "userId": "usr_1234567890abcdef1234567890abcdef",
  "middleName": "Marie",
  "phoneNumber": "5551234567",
  "suffix1": "MD",
  "suffix2": "FACR"
}
Returns Examples
{
  "canManageStudies": true,
  "clinicRole": "Radiologist",
  "createdAt": "2024-01-15T10:00:00Z",
  "email": "dr.johnson@hospital.org",
  "firstName": "Sarah",
  "hasDashboardAccess": true,
  "invitedSource": "api",
  "lastLoginAt": "2024-03-15T09:00:00Z",
  "lastName": "Johnson",
  "level": "member",
  "userId": "usr_1234567890abcdef1234567890abcdef",
  "middleName": "Marie",
  "phoneNumber": "5551234567",
  "suffix1": "MD",
  "suffix2": "FACR"
}