Skip to main content
POST

Overview

Adds a new user to your account by sending them an invitation email. The user will receive an email invitation to join your account with the specified role and permissions.

Purpose

User Invitation

  • Invite Team Members: Add colleagues to your account
  • Role Assignment: Assign appropriate access levels
  • Email Invitations: Send automated invitation emails
  • Access Control: Control what users can do

Account Management

  • Team Collaboration: Enable team access to QR codes
  • Permission Management: Assign specific roles and permissions
  • User Onboarding: Streamline user addition process
  • Access Auditing: Track who has access to what

Request Body (Form Data)

Access Level Options

Default Roles

  • Manager (ID: 1): Can create, edit, and manage QR codes
  • Admin (ID: 2): Full access including user management
  • Viewer (ID: 3): Read-only access to QR codes and analytics

Custom Roles

  • Custom IDs: Use custom role IDs created in your account
  • Specific Permissions: Custom roles with tailored permissions
  • Flexible Access: Create roles for specific use cases

Examples

Add User with Manager Role

Add User with Admin Role

Add User with Viewer Role

Add User with Custom Role

Response

Success Response (201 Created)

Invitation Process

Email Invitation

  1. Invitation Sent: User receives email invitation
  2. Account Creation: User creates account or logs in
  3. Invitation Acceptance: User accepts invitation
  4. Access Granted: User gains access to your account

Invitation Status

  • is_invitation_sent: true: Invitation email has been sent
  • is_invitation_accepted: false: User hasn’t accepted yet
  • invitation_sent_on: Timestamp when invitation was sent
  • invitation_accepted_on: null: Will be set when user accepts

Integration Examples

JavaScript - Add User Form

Python - Bulk User Addition

PHP - User Invitation Form

Error Handling

Common Errors

Invalid Email Format

Missing Required Fields

Invalid Access Level

User Already Exists

Best Practices

User Management

  • Validate Email: Ensure email addresses are valid
  • Choose Appropriate Roles: Assign roles based on user needs
  • Monitor Invitations: Track invitation acceptance
  • Regular Audits: Review user access regularly

Security

  • Principle of Least Privilege: Give users minimum required access
  • Regular Reviews: Periodically review user permissions
  • Remove Inactive Users: Remove users who no longer need access
  • Monitor Activity: Track user activity and access patterns

Communication

  • Clear Instructions: Provide clear instructions to invited users
  • Follow Up: Follow up on pending invitations
  • Documentation: Document user roles and permissions
  • Training: Provide training on account features
When you add a user, they will receive an email invitation to join your account. The user must accept the invitation before they can access your account.
Make sure to assign appropriate roles to users. Admin users have full access to your account including the ability to add and remove other users.
You can add users with custom roles by using the custom role ID instead of the default role IDs (1, 2, 3). Use the Get User Roles endpoint to see available custom roles.

Authorizations

Authorization
string
header
required

API key authentication. Enter your API key directly in the Authorization header.

Body

multipart/form-data
name
string
required

Name of the shared user

Example:

"Jon Doe"

email
string<email>
required

Email address of the shared user

Example:

"jon.doe@scanova.io"

access_level
string
required

Shared user access level id. Pre-defined access levels: Manager (1), Admin (2), Viewer (3)

Example:

"1"

Response

User created successfully

id
integer

Shared user relationship ID

Example:

479

shared_user
object
access_level
object
invitation_sent_on
string<date-time> | null

When the invitation was sent

Example:

"2023-09-11T16:28:22.227002+05:30"

invitation_accepted_on
string<date-time> | null

When the invitation was accepted

Example:

null

is_invitation_sent
boolean

Whether invitation has been sent

Example:

true

is_invitation_accepted
boolean

Whether invitation has been accepted

Example:

false

created
string<date-time>

When the user was added

Example:

"2023-09-11T16:28:22.223671+05:30"

modified
string<date-time>

When the user was last modified

Example:

"2023-09-11T16:28:22.227109+05:30"

tags
object[]

Tags assigned to the user