Skip to main content

Create and Manage Custom Services

Learn how to create, configure, test, publish, and manage Custom Services in Yeeflow. Custom Services allow you to build reusable business logic that can be invoked by workflows, AI tools, and application processes.

Overview

Custom Services allow you to create reusable business logic and execution capabilities within Yeeflow applications.

With Custom Services, you can build custom operations that can be reused across different business scenarios, such as:

  • Data transformation

  • Custom calculations

  • Business rule processing

  • Integration operations

  • Workflow automation logic

  • AI-powered business actions

Once published, Custom Services can be invoked from workflows, AI tools, and other application scenarios.


Before You Start

Before creating a Custom Service, make sure:

  • You have permission to manage application settings.

  • You are working in an application where Custom Services are available.

  • You understand the input and output data required by your service.


When to Use Custom Services

Use Custom services when you need to create reusable logic that can be used across application scenarios.

Common use cases include:

  • Importing data from Excel into a Yeeflow Data List

  • Converting Sub List data into an HTML table for emails

  • Running custom calculations

  • Transforming data before it is used in a workflow

  • Calling external services through configured connections

  • Preparing reusable logic for AI tools or workflow actions


Ways to Create a Custom Service

There are two main paths to create a Custom service.

Option 1: Create from New Application Resource

You can create a Custom service directly from the application resource creation page.

Steps

  1. Open your Yeeflow application.

  2. Click the Add new component button.

  3. In New application resource, select Custom services.

The Custom services card is shown as an AI-powered application resource with the description:

Create reusable custom services for integrations, automation, and AI tools.

  1. Choose how you would like to create the Custom service.

You will see three available options:

  • Create service

  • Import service

  • Create from templates


Create Service

Choose Create service if you want to start from scratch and configure everything yourself.

Steps

  1. Select Create service.

  2. In the Create custom service window, complete the following fields:

Field

Description

Service name

Enter the name of the Custom service.

Description

Describe what the service does. This is required for AI tool discovery.

Implementation type

Select the implementation type. Currently, the available option is Code-based (JavaScript).

After the service is created, you can continue configuring the service logic in the code editor.


Import Service

Choose Import service if you already have an existing service definition file.

Steps

  1. Select Import service.

  2. In the Import service window, drag and drop a file or click choose a file to upload.

  3. Make sure the file is in the supported format.

The upload window indicates:

*.ycs formatted files are supported.

Use this option when you want to reuse a service that was exported from another application or environment.


Create from Templates

Choose Create from templates if you want to start from a pre-built Custom service template.

Templates help you quickly create common service scenarios without building everything from scratch.

Available templates include:

Insert Excel Data to Data List

This template reads Excel data and inserts rows into a Yeeflow Data List.

Use this template for scenarios such as:

  • Importing supplier records

  • Uploading product catalogs

  • Creating employee records in bulk

  • Migrating existing spreadsheet data into Yeeflow

Template description:

A backend custom service template for reading Excel data and inserting rows into a Yeeflow data list.

Sub List to HTML Table

This template converts Yeeflow Sub List JSON into a professional, email-compatible HTML table with automatic column detection and inline CSS styles.

Use this template for scenarios such as:

  • Displaying supplier quotation details in approval emails

  • Showing purchase request item details in notifications

  • Formatting expense details for business communication

  • Converting line-item data into readable email content

Template description:

Convert any Yeeflow Sub List JSON into a professional, email-compatible HTML table with automatic column detection and inline CSS styles.

Steps to Use a Template

  1. Under Create from templates, select the template you want to use.

  2. Review the template information.

  3. Click Use template.

  4. The Custom service will be created based on the selected template.

  5. You can then edit and adjust the service as needed.


Option 2: Create from Application Settings

You can also create and manage Custom services from Application Settings.

Steps

  1. Open your application.

  2. Go to:

Application Settings → Integrations → Custom services

  1. Click Create service.

  2. In the Create custom service window, enter:

Field

Description

Service name

The name of the Custom service.

Description

What the service does. This is required for AI tool discovery.

Implementation type

Select Code-based (JavaScript).

You can also click Import service from this page to import an existing service definition file.


Manage Custom Services

After a Custom service is created, you can manage it from:

Application Settings → Integrations → Custom services

The Custom services page includes two tabs:

Tab

Description

This application

Shows Custom services created in the current application.

Shared to this application

Shows Custom services shared with the current application.

The service list displays information such as:

Column

Description

Name

The name of the Custom service.

Version

The current service version.

Status

The service status, such as Published.

Created by

The user who created the service.

Created time

The time the service was created.

You can use the search box to find a Custom service by name.


Custom Service Actions

On the Custom services list, click the action menu beside a service to manage it.

Available actions include:

Action

Description

Edit service

Edit the service information, such as name and description.

Open code editor

Open the service code editor to view or modify the service logic.

Duplicate

Create a copy of the service.

Share service

Share the service so it can be used in another application.

Export service

Export the service as a service definition file.

Disable service

Disable a published service so it can no longer be used.

Delete service

Delete the service from the application.


Edit a Custom Service

Use Edit service when you need to update the service name, description, or other service information.

Steps

  1. Go to Application Settings → Integrations → Custom services.

  2. Find the service you want to update.

  3. Open the action menu.

  4. Click Edit service.

  5. Make your changes.

  6. Save the service.


Open the Code Editor

Use Open code editor when you need to modify the service logic.

Steps

  1. Go to Application Settings → Integrations → Custom services.

  2. Find the Custom service.

  3. Open the action menu.

  4. Click Open code editor.

In the code editor, you can update the JavaScript logic, configure variables, test the service, and publish changes.


Configure Service Variables

Custom services use variables to receive data, use connections, and return results.

The main variable types are:

Variable Type

Description

Connection variables

Connections used by the service when calling external systems or APIs.

Input variables

Data passed into the service when it is invoked.

Output variables

Results returned by the service after execution.

For example, a service that converts a Sub List into an HTML table may use:

Variable

Type

Purpose

subListJson

Input variable

Receives the Sub List data.

htmlTable

Output variable

Returns the generated HTML table.


Test a Custom Service

Before publishing a Custom service, use Test Run to verify that the service works correctly.

Steps

  1. Open the service in the code editor.

  2. Go to Test Run.

  3. Enter sample values for the required input variables.

  4. Run the service.

  5. Review the output.

Testing helps confirm that:

  • Input variables are mapped correctly.

  • The service logic works as expected.

  • Output variables return the expected result.


Publish a Custom Service

After testing the service, publish it so it can be used by workflows, AI tools, and application processes.

Steps

  1. Open the Custom service in the code editor.

  2. Click Publish.

  3. Review the version information.

  4. Add a version description if needed.

  5. Click Publish.

After publishing, the service status will be updated to Published.


Use a Custom Service in Workflows and AI Tools

After a Custom service is published, it can be used in execution scenarios such as workflows and AI tools.

Use in a Workflow

In the Flow designer, use the Invoke custom service action to call a published Custom service.

This allows a workflow to:

  • Send input values to the service

  • Run custom logic

  • Receive output values

  • Use the output in later workflow steps

Example:

A supplier quotation workflow can invoke a Custom service to convert supplier quote Sub List data into an HTML table, then insert the generated table into an approval email.


Use as an AI Tool

Custom services can also be added as AI tools.

This allows AI Agents or Copilots to use published services to perform configured business operations.

Example:

An AI Agent can invoke a Custom service to transform business data, calculate a result, or prepare structured output for users.


Example: Supplier Quote Table for Approval Email

This example uses the Sub List to HTML Table template.

Scenario

A procurement team submits a supplier quotation review form. The form includes a Sub List with supplier quote details, such as:

  • Supplier Name

  • Quoted Amount

  • Currency

  • Delivery Lead Time

  • Payment Terms

  • Evaluation Score

  • Recommendation

The workflow invokes the Custom service and passes the Sub List data into the service.

The service returns an HTML table, which is then inserted into an approval email.

Result

The approver receives an email with a formatted supplier comparison table, making it easier to review supplier options before approving the request.


Best Practices

Use Clear Service Names

Use names that describe what the service does.

Recommended:

Sub List to HTML Table
Supplier Quote Evaluation
Insert Excel Data to Data List

Avoid names that are too generic, such as:

Service 1
Test Service


Write a Helpful Description

The Description field helps users and AI tools understand what the service does.

Recommended:

Convert supplier quote Sub List data into an email-ready HTML table.

Avoid descriptions that are too vague, such as:

This is a service.


Test Before Publishing

Always test the service with realistic sample data before publishing.


Use Templates to Start Faster

If your scenario is similar to an existing template, start from Create from templates and adjust the service as needed.


Manage Published Services Carefully

If a published service is already used by workflows or AI tools, review the impact before disabling or deleting it.


Troubleshooting

I cannot find my Custom service after creating it from New application resource

Go to:

Application Settings → Integrations → Custom services

Check the This application tab.

The Custom service created from New application resource will be listed there.


The service is not available in Invoke custom service

Make sure the service has been published. Only published services can be invoked by workflows or AI tools.


The output is empty

Check the following:

  • Required input variables are mapped correctly.

  • The input data format is valid.

  • The service logic returns the expected output variable.

  • The output variable is bound to a workflow variable when used in a workflow.


The template output does not look correct

If you are using a template, open the service with Open code editor and review the input and output variable configuration.

For the Sub List to HTML Table template, make sure the input value is valid Sub List JSON.

Did this answer your question?