Kaizen #72 - Portal #APIs [Part I]

Kaizen #72 - Portal #APIs [Part I]

Welcome back to another week of Kaizen everyone! 
This week, we will be discussing the Portals API in Zoho CRM.

What are Portals in Zoho CRM?

Portals in Zoho CRM allow businesses to extend access to their CRM to external stakeholders, such as customers, partners, vendors or franchisees. Portals allow users to view, edit and create records within the CRM, depending on their level of access and permissions. This helps businesses to manage customer and partner interactions, share information and improve communication. 

Sample Business Cases:

In Health care Industry - If you run a health care facility, you can provide your patients the access to their medical records using portals. Through the portal, the patients can have controlled access to their medical records like their appointments, tests done and medication prescribed. Patients can request appointments, provide updates to their information, and request copies of their medical records through the portal. 

In a consulting firm - If you run a consulting firm, you would want to keep your clients updated about the status of their projects in real time. To do this, you can create a portal and share it with your clients. The clients can view the status of their projects, including the progress, the budget, and the schedule. Clients can view the updates and provide feedback on the project through the portal. 

In the automobile industry - If you have an automobile shop, and you want to track the customer details, your sold vehicle details and service schedules, you can create a portal and share it with your customers. They can view and update their details and book for services using through the portal.

Creating a Portal via API

Let us consider the context of the automobile industry. To create a portal for your customers, you can use the Create Portal API.

Request URL : {api-domain}/crm/v4/settings/portals
Request Method : POST
Scope : ZohoCRM.settings.clientportal.ALL/CREATE

Sample Input

 {
    "portals": [
        {
            "name": "ZylkerAutomobiles"
        }
    ]
 }

Input Keys

 Key Description
 name Unique name of the portal. 

Sample Response

 {
    "portals": [
        {
            "code": "SUCCESS",
            "details": {
                "name": "ZylkerAutomobiles"
            },
            "message": "Portal created successfully with given name.",
            "status": "success"
        }
    ]
 }

Update Portal via API

You can update the portal name via Update Portal API. 
Request URL : {api-domain}/crm/v4/settings/portals/{portal-name}
Request Method : PUT
Scope : ZohoCRM.settings.clientportal.ALL/UPDATE

For instance, the following request renames the already created portal ZylkerAutomobiles to ZylkerAutos.

Sample Input 

 {
    "portals": [
        {
            "name": "ZylkerAutos"
        }
    ]
 }

Input Keys

 Key Description
 name Unique name of the portal. 

However, changing the portal name will also alter the portal URL. As a result, it is crucial to communicate this change to all existing portal users.

Get Portals via API

At any point, if you want to get the details of all the portals configured in your CRM account, use the Get Portal API.

Request URL : {api-domain}/crm/v4/settings/portals
Request Method : GET
Scope: ZohoCRM.settings.clientportal.ALL/READ

Sample Response:

 {
    "portals": [
        {
            "created_time": "2023-02-07T20:13:20+05:30",
            "modified_time": "2023-02-07T20:13:20+05:30",
            "modified_by": {
                "name": "Patricia Boyle",
                "id": "4876876000000327001"
            },
            "name": "ZylkerAutos",
            "active": true,
            "zaid": "10052946888",
            "created_by": {
                "name": "Patricia Boyle",
                "id": "4875876000000327001"
            }
        }
    ]
 }

Response Keys

 Key Description
 name The name of the portal
 active Represents whether the portal is active or not.
 zaid The unique id of the portal.

Now let us consider the case where you may want to extend the portal access to beyond your customers. There would be multiple user groups you may want to extend the access to, including the employees and partners. For instance, you may want to share the portal with your employees to give them access to customer information, sales data and service schedules. If you have partners, you may want to share the portal with them to keep them informed about the customer behaviors, sales data etc. Each of these groups may require to access to different types of data within the CRM.

To accommodate the different needs and access levels of the different types of users, you may need to create multiple user groups in the portal. For example, you could create a user group for customers and another user group for employees. The business can then configure different permissions for each user group, allowing or restricting access to the relevant data in the CRM account. This way, each type of user will be able to access the information that is most relevant to them, without compromising the security and privacy of the rest of the data in the CRM account.

Get Portal User Types API

The Get Portal User Types API allows you to retrieve the user types available in the portal of your org. It is important to note that when you create a portal, the default user type Client Portal is added by default.

Request URL : {api-domain}/crm/v4/settings/portals/{portal_name}/user_type
Request Method : GET
Scope: ZohoCRM.settings.clientportal.ALL/READ

Sample Request : https://www.zohoapis.com/crm/v4/settings/portals/ZylkerAutos/user_type

Sample Response

 {
    "user_type": [
        {
            "created_time": "2023-02-08T11:56:16+05:30",
            "default": true,
            "modified_time": "2023-02-08T11:56:16+05:30",
            "personality_module": {
                "plural_label": "Contacts",
                "api_name": "Contacts",
                "id": "1306462000000000129"
            },
            "name": "Client Portal",
            "modified_by": {
                "name": "Patricia Boyle",
                "id": "1306462000083528405"
            },
            "active": true,
            "id": "1306462000001813022",
            "created_by": {
                "name": "Patricia Boyle",
                "id": "1306462000083528405"
            },
            "no_of_users": 1
        }
    ]
 }

Response Keys

 Key Description
 default Represents whether the user type is the default one for the portal.
 personality_module Details of the module for which the user type was configured.
 name The name of the user type.
 active Represents whether the user type is active or not.
 id The unique id of the user type.
 no_of_users The number of users in the portal assigned with this user type.

Invite users to Portal via API

Once the portal is created, you can invite the customers to join the portal using the Invite Users to Portal API. This provides the customers with access to the information regarding their automobile including the servicing details, and their information.

Request URL : {api-domain}/crm/v4/{personality_module}/{record_id}/actions/portal_invite
where, personality_module is the API name of the module for which the portal was created and record_id is the ID of the record that you want to invite to the portal
Request Method : POST
Scope: ZohoCRM.settings.clientportal.ALL/CREATE

Parameters

 Parameters Parameter Description
 user_type_id : integer, mandatory
 The id of the user type you want to assign the user with. 
 type : string, mandatory
 Represents whether the user is invited (invite) the first time or is re-invited(reinvite).
 language : string, optional
 The language code of the user you want to invite to the portal

Please note that for the client portal user type, you can invite only clients/customers and not users with the same email domain like your employees or partners. 

In this sample request, 1306462000000659009 is the record id of the customer in Contacts module, and 1306462000001813022 is the user type id.

Sample Response

 {
    "portal_invite": [
        {
            "code": "SUCCESS",
            "details": {
                "record_id": "1306462000000659009"
            },
            "message": "An Invite has been sent to the personality.",
            "status": "success"
        }
    ]
 }

Get Users of a User Type API

The Get Users of a User Type API enables you to retrieve the list of users available in a specific user type of a portal.

Request URL : {api-domain}/crm/v4/settings/portals/{portal_name}/user_type/{user_type_id}/users
Request Method : GET
Scope : ZohoCRM.settings.clientportal.ALL/READ

Parameters

 ParametersParameter Description
 type : string, optional
The type of user. Possible values are AllUsers, AllActiveUsers, ActiveUsers,  DeactiveUsers, NotConfirmedUsers, ConfirmedUsers, and ActiveConfirmedUsers.
 filter : JSON object, optional
To filter based on the value disabled on updation of email of the status_reason__s field in the Users module. The allowed comparators are equal and not_equal. Note that you must encode this JSON object.

The following request retrieves the details of users in your ZylkerAutos portal, with Client Portal user type.

Sample Response

 {
    "users": [
        {
            "personality_id": "1306462000000659009",
            "confirm": true,
            "status_reason__s": null,
            "invited_time": "2023-02-08T18:03:10+05:30",
            "module": "Contacts",
            "name": "Jennifer Spears",
            "active": true,
            "email": "jennifer.spears@abc.com"
        }
    ],
    "info": {
        "per_page": 200,
        "total_count": 1,
        "count": 1,
        "page": 1,
        "more_records": false
    }
 }

Response Keys

 Key Description
 personality_id The id of the module for which the portal was created.
 confirm Represents whether the user is a confirmed user or not.
 status_reason__s The reason the user is disabled.
 module The API name of the module for which the user type was created.
 name The full name of the contact.
 active Represents whether the user type is active or not.
 email The email ID of the contact of that user type.

We will discuss more on user types and users in next week's post. We hope you found this post useful. 
Write to us at support@zohocrm.com if you have any questions.

    Access your files securely from anywhere









                          Zoho Developer Community




                                                • Desk Community Learning Series


                                                • Digest


                                                • Functions


                                                • Meetups


                                                • Kbase


                                                • Resources


                                                • Glossary


                                                • Desk Marketplace


                                                • MVP Corner


                                                • Word of the Day


                                                • Ask the Experts





                                                          Manage your brands on social media



                                                                Zoho TeamInbox Resources



                                                                    Zoho CRM Plus Resources

                                                                      Zoho Books Resources


                                                                        Zoho Subscriptions Resources

                                                                          Zoho Projects Resources


                                                                            Zoho Sprints Resources


                                                                              Qntrl Resources


                                                                                Zoho Creator Resources



                                                                                    Zoho CRM Resources

                                                                                    • CRM Community Learning Series

                                                                                      CRM Community Learning Series


                                                                                    • Kaizen

                                                                                      Kaizen

                                                                                    • Functions

                                                                                      Functions

                                                                                    • Meetups

                                                                                      Meetups

                                                                                    • Kbase

                                                                                      Kbase

                                                                                    • Resources

                                                                                      Resources

                                                                                    • Digest

                                                                                      Digest

                                                                                    • CRM Marketplace

                                                                                      CRM Marketplace

                                                                                    • MVP Corner

                                                                                      MVP Corner







                                                                                        Design. Discuss. Deliver.

                                                                                        Create visually engaging stories with Zoho Show.

                                                                                        Get Started Now


                                                                                          Zoho Show Resources


                                                                                            Zoho Writer Writer

                                                                                            Get Started. Write Away!

                                                                                            Writer is a powerful online word processor, designed for collaborative work.

                                                                                              Zoho CRM コンテンツ



                                                                                                Nederlandse Hulpbronnen


                                                                                                    ご検討中の方




                                                                                                          • Recent Topics

                                                                                                          • Zoho Sheet - Desktop App or Offline

                                                                                                            Since Zoho Docs is now available as a desktop app and offline, when is a realistic ETA for Sheet to have the same functionality?I am surprised this was not laucned at the same time as Docs.
                                                                                                          • Collective-booking event not added to all staff calendars

                                                                                                            We assign two staff to certain events. When the client books this event, it adds it to one staff calendar (the 'organiser') but not the other. How can I ensure all staff assigned to a collective booking get the event in their calendar? (A side note: it
                                                                                                          • Project Management Bulletin: October, 2025

                                                                                                            Every need leads to innovation. Project Management tools were developed out of sheer necessity to drive large projects. With wide usage, the specifications grew precise, and so did the refinement. Over years we’ve crafted one of the best project management
                                                                                                          • Email Recall Feature In Zoho Mail Which Should Also Work For Outside Organisation Members

                                                                                                            Add a feature to recall or undo sending an email within a configurable short time window (e.g., 30 seconds to 2 minutes) after hitting send, similar to Gmail’s undo send. Currently the sent email can not be recall If the recipient is not from within your
                                                                                                          • Zoho Sheets saying locked when not locked

                                                                                                            Zoho Sheets won't let me add more rows to sheet because it's saying the sheet is locked, but the sheet is not locked. I tried using a different browser but I still have the same issue.
                                                                                                          • Identifying and Merging Accounts with Similar (Non-Exact) Names

                                                                                                            Hello everyone, I’m aware of the built-in deduplication feature in Zoho CRM that allows merging records with exactly matching values for selected fields. However, I’m running into a situation where our migrated data contains multiple variations of the
                                                                                                          • Option for super admin to recover the deleted chats in Zoho Cliq

                                                                                                            Currently, in Zoho Cliq, if a user accidentally deletes their chats, there is no option for the Super Admin to recover or view those deleted messages. I believe it would be helpful if Super Admins had a recovery option, perhaps within a certain time frame,
                                                                                                          • Zoho CRM iOS app updates: the Homepage, Zoho Survey integration, and support for multiple file uploads in subform

                                                                                                            Hello everyone! The Zoho CRM mobile app continues to evolve to bring you a smoother and more powerful CRM-on-the-go experience. We're excited to share some important updates now available in the iOS app. Here's what's new: Homepage support Zoho Survey
                                                                                                          • I am trying to integrate my module in sandbox environment to add data via API

                                                                                                            I went through the documents and tried to setup the API for adding the module via the api but the problem is the token setup is done on "https://accounts.zoho.in/oauth/v2/token" domain and the bulk write is done on "https://content.zohoapis.com/crm/v8/upload"
                                                                                                          • Is anyone else having trouble saving a custom image in their email signature, or is it just me?

                                                                                                            When I try to save the image I get an error that says "Operation Failed" I opened a support ticket two weeks ago and received a response that it would be debugged, but it still isn’t working
                                                                                                          • Setting up primary mobile number.

                                                                                                            Hi Sir Earlier I joined IIFL team and got an organizational email of zoho services. Later i quit and now my account is deactivated with IIFL but i am unable to link my mobile number to my own email id with zoho.
                                                                                                          • Add Custom Reports To Dashboard or Home Tab

                                                                                                            Hi there, I think it would be great to be able to add our custom reports to the Home Tab or Dashboards. Thanks! Chad
                                                                                                          • Account in Quick View Filter

                                                                                                            I have a report that I often run against a specific Account. Every time, I have to go into the edit menu and change the Advanced Filter. I would prefer to use the Quick View Filter, but it does not allow me to use the one and only field that makes any
                                                                                                          • In arattai received message can't be deleted

                                                                                                            The issue has been noticed in following: arattai app (Android) arattai app (Window) arattai web While the message posted by me may be deleted, the ones received from others can't be. The item <Delete> change to <Report> when the message is a received
                                                                                                          • Zoho sheet for desktop

                                                                                                            Hi is zoho sheets available for desktop version for windows
                                                                                                          • Tables for Europe Datacenter customers?

                                                                                                            It's been over a year now for the launch of Zoho Tables - and still not available für EU DC customers. When will it be available?
                                                                                                          • Guided Conversations - Ticket Creation

                                                                                                            Hi there, Using Guided Conversations to Take Customer Data and apply it into a Support Ticket for internal use, Is there a way to take multiple Textual Variables Inputs (A series of questions), and have the answers all appear in the Description of the
                                                                                                          • How to send certain invoices for Approval based on condition?

                                                                                                            To streamline operations, I need the invoices to go for approval when certain conditions are met. For example, if my staff gives a discount of x amount, it must go for approval. If there is no discount, then the invoice will be approved automatically.
                                                                                                          • Unable to continue payment

                                                                                                            Hi, I want to make a payment for my email subscription, but I cannot proceed with the payment because my NITKU is invalid. In Indonesia, the NITKU consists of 22 digits, but Zoho only provides 20 digits, causing my NITKU to be invalid. Please help me
                                                                                                          • Is there a way to show contact emails in the Account?

                                                                                                            I know I can see the emails I have sent and received on a Contact detail view, but I want to be able to see all the emails that have been sent and received between all an Accounts Contacts on the Account Detail view. That way when I see the Account detail
                                                                                                          • Massive spam pretending to come from our address – is this a Zoho security issue?

                                                                                                            Hi, We’ve been receiving more and more suspicious emails lately — many of them clearly look like scams. But yesterday, we got an email that appeared to be sent from our own address, which was very concerning. We're starting to wonder if this might be
                                                                                                          • LINE Auto Message Connect to Zoho

                                                                                                            When I integrated LINE into the CRM, I was prompted to disable “Chat,” “Auto Response,” and “Greeting Messages,” and to enable the webhook. However, since I have already set up some auto-reply features in LINE, including Rich Messages and greeting automation,
                                                                                                          • System flaws and lack of response from Zoho

                                                                                                            I have had to go on here as no-one is replying to my emails regarding my problem (been 10 days and no email reply) and your chat facility online through your Zoho Books software opens and closes immediately, so not functioning properly. I actually called
                                                                                                          • Cant recieve mails

                                                                                                            I’m having an issue with my external IMAP account not fetching any emails into Zoho Mail, even though the connection test says “Success”. I can send, if someone sends an email to me. my original directory (home.pl host) recieves it in their portal but
                                                                                                          • Zoho Sheet Autofit Data

                                                                                                            While using Autofit Data function in Zoho Sheets with Devnagri Maratji or Hindi Fonts, a word or a number, it keeps couple of characters outside the right side border.
                                                                                                          • Enhancements to finance suite integrations

                                                                                                            Update: Based on your feedback, we’ve updated the capabilities for integration users. In addition to the Estimates module, they can now create, view, and edit records in all the finance modules including Sales Order, Invoices, Purchase Order. We're also
                                                                                                          • Edit 'my' Notes only

                                                                                                            The permissions around Notes should be more granular, and allow to user to be able to edit the notes he created only. The edit Notes permission is useful as it allows the user to correct any mistakes or add information as needed. However, with this same
                                                                                                          • How do I filter contacts by account parameters?

                                                                                                            Need to filter a contact view according to account parameter, eg account type. Without this filter users are overwhelmed with irrelevant contacts. Workaround is to create a custom 'Contact Type' field but this unbearable duplicity as the information already
                                                                                                          • Job Alerts for Candidates

                                                                                                            hi All, I have 2 questions relating to sharing job details with candidates. 1. is there a way to notify candidates that meet certain criteria of current jobs available? eg. I run a candidate search, and identify 50 candidates that might be suitable. Can
                                                                                                          • Add multiple users to a task

                                                                                                            When I´m assigning a task it is almost always related to more than one person. Practical situation: When a client request some improvement the related department opens the task with the situation and people related to it as the client itself, the salesman
                                                                                                          • Enhancing Task Accuracy: Automatically notify the owners upon Task duplication.

                                                                                                            Hello Everyone, A Custom function is a user-written set of code to achieve a specific requirement. Set the required conditions needed as when to trigger using the Workflow rules (be it Tasks / Project) and associate the custom function to it. The requirement
                                                                                                          • How to export all line-item descriptions for a specific item in Zoho Books?

                                                                                                            I am trying to audit a specific item (“Item X”) that has been invoiced multiple times with different line-level descriptions. Here’s the situation: I am using Zoho Books (Professional). Each invoice may contain the same item but with different descriptions
                                                                                                          • Show/ hide specific field based on user

                                                                                                            Can someone please help me with a client script to achieve the following? I've already tried a couple of different scripts I've found on here (updating to match my details etc...) but none of them seem to work. No errors flagged in the codes, it just
                                                                                                          • Where are Kanban swimlanes

                                                                                                            So i've been playing with Zoho Projects Kanban view a bit more. It appears that task lists are being used as the Kanban columns, which makes sense from the implementation point of view but not the logical one.  Kanban columns are statuses that a task can flow through, while a task list has been a logical way to organize related tasks and relate them to a mislestone. In other words a task in a particular task can go through several stages while remaining in the same task list. After doing some research
                                                                                                          • Tip 19: How to display images in Pages using ZML snippets

                                                                                                            Hi folks, We're back with another tip on how to use Zoho Markup Language (ZML) to create interactive pages in Zoho Creator. You can use ZML snippets to add various kinds of components to your pages and structure them in meaningful ways. That's not all, though—using ZML you can ensure your application is automatically compatible with all kinds of devices without any inconsistencies. We often get questions from users about how to invoke Deluge scripts within ZML code. Here's a simple use case for adding
                                                                                                          • Can zoho swign format block text spacing automatically when prefilled from zoho crm?

                                                                                                            I'm sending zoho sign template from zoho crm, so that zoho crm pre-populates most fields. I have existing pdf documents that i am having signed. I have no ability to change the pdf documents, they are standardized government forms. The problem I am facing
                                                                                                          • Forced Logouts - Daily and More Frequent

                                                                                                            In the last month or so, I've been getting "power logged out" of all of my Zoho apps at least daily, sometimes more frequently. This happens in the same browser session on the same computer, and I need to re-login to each app separately after this happens.
                                                                                                          • Zoho Inventory / Finance Suite - Add feature to prevent duplicate values in Item Unit field

                                                                                                            I've noticed that a client has 2 values the same in the Unit field on edit/create Items. This surprised me as why would you have 2 units with the same name. Please consider adding a feature which prevents this as it seems to serve no purpose.
                                                                                                          • Reference lookup field values in Client script

                                                                                                            hello all, I'm using a "ZDK.Apps.CRM.Products.searchByCriteria" function call, which is returning the matching records correctly; however, one of the fields is a lookup field which I need the associated data. I believe there is a way to get this data
                                                                                                          • In App Auto Refresh/Update Features

                                                                                                            Hi,    I am trying to use Zoho Creator for Restaurant management. While using the android apps, I reliased the apps would not auto refresh if there is new entries i.e new kitchen order ticket (KOT) from other users.   The apps does received notification but would not auto refresh, users required to refresh the apps manually in order to see the new KOT in the apps.    I am wondering why this features is not implemented? Or is this feature being considered to be implemented in the future? With the
                                                                                                          • Next Page