Catalyst Authentication features enable you to add end-users to your Catalyst serverless applications, configure their user accounts and roles, and manage user sign-in and authentication of your application.

Add a New User


This API enables you to add a new end-user to the Catalyst application for a specific platform. When the user has signed up, unique identification values such as ZUID, userID, ZAAID are created for them.

Note: You will be able to add only 25 users in your application in the development environment. After you deploy your application to production, you can include any number of end-users in it.

Request URL{project_id}/project-user/signup

project_id - The unique ID of the project

Request Headers

Authorization: Zoho-oauthtoken 1000.910***************************16.2f****************************57
Content-Type: application/json
PROJECT_ID: {project_id}

Request Method




Note: Passing the role_id of the role that the user must be assigned to, is optional. If you pass the role_id in the API, authentication becomes mandatory. If you skip passing the role_id, Catalyst does not authenticate the request and you need not specify the scope.

Request JSON Properties

AttributesData TypeMandatoryMax SizeDescription
ZAIDStringYes100Unique identifier that maps an application to a project
user_detailsShow propertiesJSONYes The JSON that contains the details of the user

user_details Properties

AttributeData TypeMandatoryMax SizeDescription
first_nameStringNo100First name of the user
last_nameStringYes100Last name of the user
email_idStringYesN/AEmail address of the user
role_idStringNoN/AUnique identification of the role the user must be assigned to
platform_typeStringYesN/AAccepted values: web, android, ios
redirect_urlStringNo200The URL to be redirected to, after the user signs up for the application

SDK Documentation

Add New User- Java SDK

Add New User- Node.js SDK

Add New User- Web SDK

Sample Request

				curl -X POST \ \
  -H "Authorization: Zoho-oauthtoken 1000.910***************************16.2f****************************57"
  -H "Content-Type: application/json" \
  -H "PROJECT_ID: 1010309726" \
  -d '{

Sample Response

    "status": "success",
    "data": {
        "zaid": 1010309726,
        "user_details": {
            "user_id": 671930455,
            "zuid": 3000000006001,
            "zaaid": 1011520995,
            "status": "ACTIVE",
            "is_confirmed": true,
            "email_id": "",
            "first_name": "Rowena",
            "last_name": "Simmons",
            "created_time": "May 13, 2019 09:16 PM",
            "modified_time": "May 13, 2019 09:16 PM",
            "invited_time": "May 13, 2019 09:16 PM",
            "role_details": {
                "role_id": 1256000000288012,
                "role_name": "App Administrator"
           "user_id": 671930455
        "redirect_url": "",
        "platform_type": "web",
        "org_id": 1011520995

Sample SDK Code

				let user = User(firstName: "Amelia", lastName: "Burrows", email: "")
        AuthHandler.signUp(user: user) { (result) in
            switch result{
            case .success(let user):
                print("\(user) successfully created")
            case .error(let error):
                print("Error in creating user \(error)")