Creating and configuring custom service connections in Bigin Toppings

Creating and configuring custom service connections in Bigin Toppings

Hello Biginners,

Integrating Bigin with external applications extends its capabilities and enables customized functionalities. In our last post, we saw how to create a default service connection. Today, we'll see how to create a custom service connection when the application you need to integrate with isn't listed in the default services.

Consider a scenario where a team uses Bigin to manage its tasks and handles project tracking and collaboration in Trello. Keeping both the applications synchronized can be a challenging task and often requires manual data entry, which increases the risk of errors. To solve this challenge, we can create a Bigin topping with a custom service connection established with the Trello application. Using this custom service connection, we can automate the process by creating a new card inside Trello each time a new task is created in Bigin.

Let's learn how to do this.

Setting up the topping

A topping needs to be created using the Bigin Developer Center; for detailed instructions on creating a topping, refer to this post.

Once you've created the topping and accessed the Bigin Developer Console, the next steps are creating the custom service connection and configuring the topping's functionality.
  1. Navigate to the Connections section in the left panel and click the Get Started button.
  1. Under the Services section, select Custom Services, then click Create Service.
  1. Fill in the required details for the custom service in the configuration screen.
  1. Enter a name for the custom service connection under Service Name; this will automatically generate the service link name.
  2. Select the appropriate authentication type supported by the third-party application from the available options: API key, Basic Authentication, OAuth 1, OAuth 2, or AWS signature.
Notes
Note:

Refer to the official API documentation of the third-party application to determine the authentication type.
  1. Each authentication type has its own set of parameters to ensure secure integration with the third-party app. For detailed instructions on configuring each authentication type and field, refer to this guide.
  2. For integrating with Trello, we'll choose API Key, which is the authentication type supported by the Trello app. For more information on getting your API key and token, refer to the Trello API documentation. Trello requires an API key and token to authenticate with another app. They have to be configured as query parameters, so set the parameter type to Query String.
  3. In the Parameter Key fields, enter the key and token, and set their corresponding Parameter Display Names to Trello API Key and Trello Token respectively.
Notes
Note:

Providing both the key and token is essential because Trello requires these two credentials for secure API access.
The key is the unique identifier for your application, and the token is a user-specific credential that authorizes our application to access and modify Trello data.
  1. Once all the required parameters are configured, click Create Service.

After successfully creating the custom service, the next step is to establish the connection with the Trello service by clicking the Create Connection button.

  1. On the following screen, provide a connection name for your Trello integration; this name will automatically generate the Connection Link Name.
  2. Once you've entered the necessary details, click the Create And Connect button to start the connection process.
  1. You'll be prompted to authenticate your Trello account using the API key and token you got from the Trello API documentation.
  2. After entering these credentials, click Connect to authenticate and integrate your Trello account with the custom service you have created.
  1. Once the connection is established, you'll be redirected back to the Bigin Developer Console. Here, you can view the details of your custom service connection, including the connection link name, confirming that the integration with Trello is active and ready for use.

This connection link name serves as a unique identifier for your integration and will be referenced in the Deluge code.

You'll also need to create a default service connection with Bigin with the scope ZohoBigin.modules.tasks.ALL to access Task details from your Bigin account.



The next step is to set up a workflow rule to automate the card creation process. This workflow will trigger whenever a new task is created in Bigin to create a corresponding card in Trello. To do this, a custom function needs to be associated with the workflow.

To configure the workflow, navigate to the Automate section in the left panel of the Bigin Developer Console and select Workflow. Create a new workflow rule within the Tasks module, setting the trigger to activate whenever a new task is created in Bigin. For the trigger condition, choose to apply the workflow to All tasks to ensure every new task initiates the automation.

Next, associate the workflow rule with a function by selecting the Function option from the Instant Actions menu.


After providing the required function details, you'll be redirected to the Deluge editor, where you can implement the logic for creating a new Trello Card.



In the Deluge code:
  1. Retrieve the details of the newly created task from Bigin using its Task ID.
  2. Extract relevant task data such as the subject (used as the task name) and description.
  3. Identify the target Trello board and the specific list where the card should be created.
  4. Fetch all lists from the Trello board and locate the list ID that matches the desired list name. For our use case, we'll be creating the task as a card in the Trello list named "Today" so that the task created on that specific day will fall under the Today list. Later, it can be moved across other lists in Trello as its status updates.
  5. Prepare the card details using the extracted task information and the identified list ID.
  6. Create a new card in Trello using the prepared details.
The code below implements the logic for automatically creating a Trello card whenever a new task is created in Bigin.
  1. // Step 1: Get task details from Bigin
  2. taskDetails = zoho.bigin.getRecordById("Tasks",task.get("Tasks.ID"),Map(),"biginandtrello__biginconnection");
  3. // Step 2: Extract task data
  4. taskData = taskDetails.get("data").get(0);
  5. taskName = taskData.get("Subject");
  6. taskDescription = taskData.get("Description");
  7. // Step 3: Trello board and target list name
  8. boardId = "KQMtdnPX";
  9. targetListName = "Today";
  10. // Step 4: Get all lists on Trello board
  11. listsResponse = invokeurl
  12. [
  13. url :"https://api.trello.com/1/boards/" + boardId + "/lists"
  14. type :GET
  15. connection:"biginandtrello__trello"
  16. ];
  17. // Step 5: Find the list ID by name
  18. listId = "";
  19. for each listItem in listsResponse
  20. {
  21. if(listItem.get("name") == targetListName)
  22. {
  23. listId = listItem.get("id");
  24. break;
  25. }
  26. }
  27. // Step 6: Check if list exists
  28. if(listId == "")
  29. {
  30. info "List with name '" + targetListName + "' not found.";
  31. return;
  32. }
  33. // Step 7: Prepare Trello card details
  34. cardDetails = Map();
  35. cardDetails.put("name",taskName + " - From Bigin");
  36. cardDetails.put("desc",taskDescription);
  37. cardDetails.put("idList",listId);
  38. // Step 8: Create Trello card
  39. createCardResponse = invokeurl
  40. [
  41. url :"https://api.trello.com/1/cards"
  42. type :POST
  43. parameters:cardDetails
  44. connection:"biginandtrello__trello"
  45. ];
  46. // Step 9: Log Trello response
  47. info "Trello card creation response: " + createCardResponse;

For details about the API endpoints and request formats used in this code, refer to the Bigin Deluge reference library and Trello API documentation.
Now, let's test whether the topping is functioning as expected. To test the topping, click Test your Topping on the top right of the Bigin Developer Console.


You can test the topping by creating a new Task in your Bigin Sandbox account and then checking your Trello account to see if a new card is created in the specified list.



In this post, We've successfully created a custom service connection between Bigin and Trello!

By using custom service connections, you can securely integrate third-party applications with Bigin and achieve your business's use cases.

Stay tuned for more posts where we'll dive deeper into additional features and best practices for developing powerful toppings in Bigin.

    • Recent Topics

    • Request for Assistance Regarding Email Sending Issue (554 5.1.8 - Email Outgoing Blocked)

      Dear Zoho Support Team, I hope this message finds you well. I am writing to request assistance with an issue we are currently facing regarding our Zoho Mail account. Our email account, admin@tuyensinhcanuoc.com, is encountering the following error when
    • Zoho Mail API returns empty inbox (0 messages) but webmail shows 37 unread emails

      Hello, I'm experiencing a discrepancy between Zoho Webmail and the Mail API (EU region). **Setup:** - Account: EU datacenter (mail.zoho.eu) - API: Self Client OAuth2 via api-console.zoho.eu - Scopes: ZohoMail.messages.READ, ZohoMail.messages.UPDATE, ZohoMail.folders.READ,
    • ShipStation and Zoho Inventory

      Hello, I am looking to sync zoho inventory with shipstation ZOHO INVENTORY           SHIP STATION Sales Order  ==>  create ORDERS INVOICE  <==    Shipments What exactly does BETA mean on the Shipstation connector?  This is required for me to sign-on in the next month. Thanks in advance for your efforts
    • E

      We are trying to add our Zoho Form embed in our Elementor Page Builder. After adding Zoho Forms widget in elementor page builder it’s displaying in backend page builder but it’s giving 403 error while trying to save, as it’s not reflecting in front end.
    • Connecting Zoho Inventory to ShipStation

      we are looking for someone to help connect via API shipStation with Zoho inventory. Any ideas? Thanks. Uri
    • custom module import.

      Is there a way to import data into a custom module? Thanks Rudy
    • HEIC File Type Viewer

      Hi, It would be nice to be able to click on the images in the All Entries/Reports Tables which are HEIC the same as JPG, PNG, etc. so they open in a viewer from Zoho or the Attachment Service, today HEIC requires you to download each image and open it
    • How to dynamically pass IDs from one API response to a second API call in Zoho DataPrep?

      Hi Team, I am setting up a global consolidated reporting pipeline in Zoho Analytics (India) using Zoho DataPrep as the ETL engine. I am pulling data from multiple Zoho Books Data Centers (US, Singapore, India) thats why i used the URL Source (OAuth 2.0)
    • Building Toppings #4 - Setting up and using connections in Bigin toppings

      When building a topping to extend Bigin's functionality and connect it with third-party applications, creating and handling connections is an important step. Connections provide a secure way for your topping to authenticate and communicate with other
    • Need code format to specify default values

      Can someone please direct me to the code syntax or the proper translation per the instructions circled below. These instructions don't seem correct.
    • AI Interview Insights: Turn Recorded Interviews into Quick Transcripts & Summaries

      Evaluating interviews shouldn’t require replaying long recordings or taking manual notes. With AI Interview Insights, you can now review complete transcripts and AI-generated summaries of your One-way (Recorded) interviews right inside Zoho Recruit. This
    • Record payment: Payment Mode vs. Deposit To and how to "connect" them!?

      How do we set up that when we choose:  "Payment Mode"= Cash, then "Deposit to" is automatically set to Petty Cash, and if we choose  "Payment Mode"= Check, then "Deposit to" is automatically set to Undeposited Checks, and if we choose  "Payment Mode"=
    • Grouping Undeposited Funds to Move to other accounts

      In the bank option it would be nice to check what transactions in undeposited funds I want to move to other accounts. Then while checking this it can accumulate totals and created whats essentially a deposit slip. Once the transaction is moved it should
    • Depositing funds to account

      Hello, I have been using Quickbooks for many years but am considering moving to Zoho Books so I am currently running through various workflows and am working on the Invoicing aspect. In QB, the process is to create an invoice, receive payment and then
    • Facing email delivery issues? Verify your domain's DNS records

      Have you ever wondered why your legitimate emails are landing in the recipient’s spam folder? Or been surprised to see emails sent from your registered domain getting rejected by recipient email servers? Why does this happen? In most cases, this happens
    • Order of Departments in Help Desk

      In the end user portal, , the departments are sorted by the date of creation of the department (or perhaps their id). Is there a way to choose the display order of the departments or at least to be able to sort them alphabetically?
    • COGS - Account showing negetive

      I have multiple COGS account and in these all there is one account is negetive so suggest why it is showing negetive value.?
    • Create CRM Deal from Books Quote and Auto Update Deal Stage

      I want to set up an automation where, whenever a Quote is created in Zoho Books, a Deal is automatically created in Zoho CRM with the Quote amount, customer details, and some custom fields from Zoho Books. Additionally, when the Sales Order is converted
    • %PaymentLink%

      Does not work. Software creates a BAD link. ....and yes payment options are turned on. Link on the invoice pdf once opened will work but this template is a joke.
    • Google Photos

      I am hoping that my question already has a fix. I current have Google synced accounts that I want to get away from. One in particular on is Google photos. Is there any software, or 3rd parties that I can join to back my photos up straight to specifically designated file in the ZOHO cloud that's tied to Docs? Please advise... Mike 
    • Zoho Books Items Categorisation/Grouping/Folder

      Is there a way to do items categorisation? a folder structure? Product Type A - Option 1/2/3 Product Type B - Option 1/2/3 Current problem : I have more than 50 items on the list, its hard for team to navigate.
    • Cash payments before invoice date

      We have been using zoho books for our hospitality business for some time and have been very happy with the system. However in 2025 an update was pushed through and we are now not able to record payments for invoices before the invoice date. the case scenario
    • Copy / Duplicate Workflow

      I have workflows setup that are very similar to each other. We have a monitoring system watching servers, and all notifications - no matter what client it is about - will come from a  noreply@ address which is not very helpful in having it auto assigned to the right account. I have setup a workflow that will change the contact name of the ticket (currently it would say noreply@) to the correct customer which is based on the subject line, as that mentions which server the alert it is about. I need
    • Transfer between two customers (Peters Rental account to Peters Private account)

      we are a Property Management company. Our customers have to accounts (registered as two customers - Peter Rental and Peter Private On the rental account all income and costs fron rental activities are noted. On the private account all private are noted
    • Automation#18: Automatically Fetch Values from Contacts to the Tickets Module

      Hello Everyone, Welcome to this week's edition, where you can seamlessly sync fields from the Contacts to the Tickets module. For efficient business operations, it's crucial to have details mapped across different modules. Zylker Secure offers antivirus
    • Charge multiple invoices

      We use auto-charge/recurring invoicing for 100's of clients. If we create a single manual invoice we can charge it to the credit card for these clients with the CC added to their recurring invoices. If a client has multiple outstanding invoices, is there a way to make one charge for all of the invoices instead of a separate charge to the cc for each invoice?
    • Handling/tracking escalation management in Zoho

      Hi all, I am working on finding a tool to register and track our escalation management process. Specifically, this is about client escalations, typically related to project delivery issues. The idea is that we could have some sort of form with core questions
    • Global Choice List share ownership

      I have created several forms that use one or more Global Choice Lists. These lists have been published to Org. I would like to allow one or more admins to edit the choices in these lists. Any help appreciated. Geoff
    • Setting up property management in Zoho Books

      Hi, I run a property management business that manages property complexes. There are multiple owners, some owning more than one property on the same complex. My role is to manage the fees they pay for maintenance of common areas, such as the swimming pool
    • How to prevent users from switching price lists in an order?

      Hi, I have Zoho Finance integrated with Zoho CRM. My team will be placing orders through the CRM using the Finance module. When creating a new customer I will assign it a price list, I don't want the sales rep to switch to a different Price List, other
    • Unable to Change Display Name for my outlook mail ID

      Hello, I recently added my personal outlook mail to Zohomail (in the web interface) using POP3 options. I tried to change the display name of the outlook account, but it changes for a brief moment and reverts back to the old name. Kindly help me with
    • Mollie Connect in Zoho Books

      Have noticed that Zoho Books is missing the most popular payment provider in Europe: Mollie. Knowing that Mollie has a solid Java SDK, why is this not yet implemented in Zoho Books for European customers?  More info: https://docs.mollie.com/oauth/ov
    • Unable to change Lookup field from Multi Select to Single Select

      I am trying to change a Lookup field in my Zoho Creator form from Multi Select to Single Select, but I am unable to find any option to do this.
    • Simple Callback Notifications Needed

      My team are terrible at remembering their CRM callbacks, often due to how long in the future they are set for. Is there a way i can set an e-mail notification for when a callback is due? For example we set it for 9am one day and five minutes before they
    • Personal Data (RODO), Cookies / Trackers - ePrivacy

      I have noticed several issues that should be addressed on the customer support page. Zoho Desk provides the support portal, but it currently lacks the following options: A GDPR and personal data processing consent checkbox before logging in, located in
    • How to set a multi-lookup field as mandatory?

    • Allow Multiple Scheduled Appointments with Zoho Support

      Dear Zoho Team, I hope you're doing well. First, thank you for introducing the option to schedule support calls via the Zoho CRM booking link. This has been a fantastic enhancement, eliminating the need for back-and-forth coordination when scheduling
    • Audit Log for Zoho One Admin Panel

      Dear Zoho One Team, We would like to request the addition of an Audit Log feature in the Zoho One Admin Panel. This log should provide visibility into any changes made within the Zoho One admin panel and directory, including but not limited to: Adding,
    • Bug: OAuth 2.0 State Parameter fails with Pipe Delimiters (RFC 6749 Non-Compliance)

      I've discovered a bug in how Zoho's API Console handles the OAuth 2.0 authorization flow when the state parameter contains pipe characters (|), and I'm hoping the Zoho team can address this in a future update. The Issue Zoho's OAuth 2.0 implementation
    • Custom Function to increment a value by one

      Hi, I'm trying to find a solution to set up a counter on CRM records that tracks how many times certain actions have taken place. As a specific example: We have a field on Deals called "Times Close Updated". This starts at 0 on record creation. I'd like
    • Next Page