# Welcome to Seliom

**Seliom** is a workflow automation platform that helps your team operate more efficiently and collaborate better.&#x20;

You can create **custom business workflows** to standardize your internal operations and make sure everyone works the same way. :handshake:&#x20;

By automating repeatable processes, you can **save time, reduce errors, and continuously improve.**&#x20;

## With Seliom you can:

* :atom: **Create custom business workflows** with a simple and intuitive interface:

![A simple workflow created on Seliom](/files/-MUSCuSkHH5KB6OVLjYW)

* :information\_source: **Indicate the information required in every step of a workflow,** with our form editor:

![Every task can have a form to complete](/files/-MUSEam7nMRoJyIQw9mI)

* :page\_facing\_up: **Use our case-management system** to keep track of all your business processes:

![Keep track of everything that's going on](/files/-MUSGRWFW9Zzd6qjozUp)

* **Collaborate on your cases** and make sure everyone is on the same page:

![See who is blocking others and what's left to do](/files/-MUSHViswB4y54_-O9IO)

## What's more?

If you want to know if Seliom is right for you:

{% content-ref url="/pages/-MUSJhp-V3fVj3XieU56" %}
[Why Seliom?](/resources/why-seliom)
{% endcontent-ref %}

:woman\_running: **The best way to discover Seliom is to try it out:**

{% content-ref url="/pages/-MUSJ8ImK4l4hQ7azDCc" %}
[Getting Started](/getting-started/start-exploring)
{% endcontent-ref %}

:question: Check out our frequently asked questions too:

{% content-ref url="/pages/-MUSJvDNq4qIr12BTcKB" %}
[FAQ](/resources/faq)
{% endcontent-ref %}


# Beginner's Tutorial

Let's get you up and running

## :ledger: Introduction

In this guide we will cover the basics of automating a simple business process on Seliom. We are going to create a simple process that shows you the basics of the platform in just **5 minutes.**

By the end of this tutorial, you will:

* Understand the power of business process automation
* Learn the basics of how Seliom works
* Document, model and automate your first business process
* Create cases for your newly-created business process

Let's jump right in! The first thing we need to do is add a couple of team members onto the platform:

{% content-ref url="/pages/-MUU9t0shhpXq6uvvSZV" %}
[Adding our team members](/getting-started/start-exploring/adding-our-team-members)
{% endcontent-ref %}


# Adding our team members

## :woman\_office\_worker: Welcome, Lois and Clark

Processes tend to consist of different tasks to be executed by more than one person. For the purposes of this demo, let's assume that our process participants will be **Lois** and **Clark**.

Before we begin, head over to [Settings](https://app.seliom.com/app/settings) and then click on ***Add new member*** to add them to your organization.

{% hint style="info" %}
In more advanced scenarios, you may want to group your team members by job title, departments, or any other association.
{% endhint %}

We are now ready to ideate our first process.

{% content-ref url="/pages/-MUU7APU2OwMApCR0ZF\_" %}
[Ideating our first process](/getting-started/start-exploring/ideating-our-first-process)
{% endcontent-ref %}


# Ideating our first process

## :bulb: A sample business process

Let's assume that we want to automate a process in which someone makes a time-off request in your organization:

* **Lois** is in charge of approving all incoming requests.&#x20;
* If the request is approved, it should send an email to the requestor confirming the start and end date of the time-off granted.&#x20;
  * At the same time, **Clark** should manually (for now) update the Google Calendar of the company to ensure that everyone is aware.

In case that **Lois** denies the request, it should simply let the requestor know via email.

![Our example process](/files/-MUTMKeDz58CYfe6Q5hq)

{% hint style="info" %}
The process in this guide is for demonstration purposes only. Seliom processes can be as simple or as complex as you need them to be.
{% endhint %}

Let's go ahead and automate this process on Seliom:

{% content-ref url="/pages/-MUU7ESIBndGvxBknuxS" %}
[Creating our process on Seliom](/getting-started/start-exploring/creating-our-process-on-seliom)
{% endcontent-ref %}


# Creating our process on Seliom

From idea to automation in minutes

Head over to the [Processes](https://app.seliom.com/app/processes) page and click on **Add new process**. Give your process a meaningful name such as **Time-off Requests**.&#x20;

After your process is created, click on it to view it.

## :writing\_hand: Documenting our process

The first step in Seliom is to write a description of your process for others to understand. We provide a powerful **text editor** to make this easy for you.

![Seliom's document editor](/files/-MUTNkL9Ffr0HRUAxeqo)

## &#x20; :rocket: Automating our process

Head over to the **Workflow** tab and then click on **New workflow.** You will now see the *Workflow Editor***.**

![Seliom's workflow editor](/files/-MUTOiVAd_EK2IxDPlte)

You can drag and drop nodes from the left sidebar onto the canvas and connect them however you like!

![What you draw is what you get!](/files/-MUTWgWzMosf2fBtEYzI)

Our final process will look like this in the editor:

![Drag and drop the nodes to create a workflow like this one](/files/-MUT_X9S-Al-3q1whyXx)

Now that we have drawn our process, let's **configure it**.&#x20;

Double click on a node to open its settings. Different types of nodes have different settings that you can adjust:

![Double click on a node to configure it](/files/-MUTXLDhTm6RJGqvV4I0)

### :sparkler: Configuring the Start Node

The **Start** task represents the first task required to start this process. You can only have one start task per process. They are represented by a yellow node.&#x20;

In our example, we are going to create a form in the **start node** that asks for a *start date* and an *end date* for our time-off requests.

Double click on the node and configure it the following way:

* In the **Basic Details** tab, give it a name such as **Time-off Request.**
* In the **Start Settings** tab, indicate the team members who can create time-off requests.&#x20;
  * For this demo, make sure to add at least yourself!
* Head over to the **Form Editor** tab, and click on **Add Element.** You can create different form elements that request the information you need to start a process. For this demo, make sure to have:
  * A *date* element, called **Start Date**, with a *Field ID* of **start\_date.**
  * A *date* element, called **End Date**, with a *Field ID* of ***end*****\_date.**

![This is how you design forms in Seliom](/files/-MUUEhA1tkixEdQDO50G)

{% hint style="info" %}
The **Field ID** is an identifier for your form element. You can reference form elements in other tasks and robots to create powerful business applications.
{% endhint %}

### :raised\_hands: Configuring Task Nodes

**Tasks** are represented by blue nodes and indicate something that needs to be done manually by a team member. The most important configuration options for tasks are:

* The **form editor,** used to indicate the data that must be provided in each task. This is the same as in the *Start* node.
* The **task owners**, where we indicate who is responsible for performing each task.

For this example, we only have one **Task** called **Update company calendar.** This is the task that **Clark** must perform when **Lois** approves a Time-off request. Let's go ahead and configure it:

Double click on the task and head over to the **Task Owners** tab.&#x20;

* In the **People** section, you should indicate that **Clark** is the person who should perform this task.

![Make sure to add Clark to the People section](/files/-MUUIBAb0BIXKoz7sJJq)

For this task, we are going to leave the **Form Editor** empty, as we don't require **Clark** to provide any data.

{% hint style="info" %}
The **form editor** and **task owners** tabs offer a lot of custom options. Explore them to learn more.
{% endhint %}

### :large\_blue\_diamond: Configuring Decision Nodes

**Decision** nodes help us create conditions in our processes. For example, if a request is *approved* we might want our process to go a different way than if it was *not approved*.

We only have one decision node in our process called **Approved?**. This is a task that is assigned to **Lois** when a time-off request is created.&#x20;

Double click on the decision node to configure it.&#x20;

* In the **Decision Makers** tab, select **Lois** as the person in charge of making the decision.
* In the **Decision Options** tab, you can see the different options that the person making this decision could select. By default, we always provide *Approved* and *Not Approve&#x64;**.*** You can leave this options as they appear.

{% hint style="info" %}
Decision nodes offer advanced automation options with formulas. We are skipping this for now.
{% endhint %}

### :robot: Configuring Robot Nodes

**Robots** (represented by purple nodes), are automatic tasks that do not require human intervention. They can be used to send emails, wait until a specific date, or connect to external systems. In this example, we are using 2 **email robots:**

* When **Lois** denies a request, the **Notify Requestor** robot sends an email to the requestor letting him know.
* When **Lois** approves a request, the **Notify requestor of approval** robot sends a similar email to the requestor letting him know.

The process for configuring both robots is very similar:

* First we double click on the Robot node.
* Then we click on the **Robot Settings** tab. We select **Email Robot** under Seliom Robots.
* Under **Recipients**, we click on **Add Recipient,** and from the dropdown we select **Previous Task Owner**. We then select the *Start* task, called **Time-off Request**.
* The rest of the fields are optional. We recommend adding a *Sender's name* and the following *Body* to your email:

```
The time-off request from {start_date} to {end_date} has been approved. 
```

![Example of an email robot](/files/-MUUSp-wMkWusj46bL3B)

{% hint style="info" %}
You can see we are referencing in our robot the *start\_date* and *end\_date* **Field ID** from a previous form in our process.
{% endhint %}

### :jigsaw: Finishing our automation

Now that all the steps in our workflow have been configured, we just need to click on the **Automate** button in our canvas. This will validate our process to ensure there are no errors.&#x20;

If any warnings or errors pop up, correct them and try again. Otherwise, click on **Submit.**

{% hint style="warning" %}
You should notice a warning regarding the **Update company calendar** task, as we did not fill out its form. You can safely ignore it.
{% endhint %}

![Click on Automate to publish your process](/files/-MUUZQ4LU0Ee2-CNCxCQ)

Now that our process has been automated, let's see it in action:

{% content-ref url="/pages/-MUUZjtmouNKrvOH5NqC" %}
[Launching our process](/getting-started/start-exploring/launching-our-process)
{% endcontent-ref %}


# Launching our process

a.k.a Creating a case

## :heavy\_plus\_sign: Create a new case

Now that our process has been automated, we can create cases for it. When you create a case for a process, tasks will be assigned and executed following the workflow you designed.&#x20;

To get started, head over to [New Case](https://app.seliom.com/app/create). You will see a list of all the process for which you have permissions to create cases for.

{% hint style="warning" %}
If you cannot see the process that you just automated in the list, make sure that you can create cases for it. This is something you can edit in the **Start node** of your workflow.
{% endhint %}

![You can see only see processes that you are permitted to launch](/files/-MUVMmQOYef5bAopLxuH)

### :information\_source: Fill out the form

When you click on your newly created process, the form you designed in the Start Node will appear:

![The form for our Time-off Request process](/files/-MUVNDYa1MksfderGznx)

{% hint style="info" %}
The **Case Label** is the name we would like to give our new case. This is something that can also be automated in the **Start Node** of your workflow.
{% endhint %}

When you click on **Create**, the case will be created.&#x20;

## :notebook\_with\_decorative\_cover: Viewing our cases

If you head over to [Cases](https://app.seliom.com/app/cases), you will see the list of all cases we have created:

![List of all cases created](/files/-MUVODElraeM2WI4rdqY)

Clicking on case, will take you the **Case File:**

![This is the case file for our vacation request](/files/-MUVOr0HMQF2qeKz8wHg)

{% hint style="success" %}
Notice how the case file shows a pending task called **Approved?**. This is the current task that is blocking our process.
{% endhint %}

Every task in the list shows who is responsible for it, and when it was assigned. You will notice that all the important information for your case can be found on this page.

If you click on the **Workflow** section on the left sidebar, you will see your case's workflow visually:

![Our case's workflow](/files/-MUVPYc1rrkKOyyIw9Ey)

This is a very powerful feature of Seliom. If you click on any snapshot in the **Case History** sidebar (other than the first and last snapshot), you can rollback your case to a previous point in time.

{% hint style="info" %}
The case file is a great place for managers to see how all the cases are performing and if they are stuck. Seliom provides **granular permissions** regarding who can access case files.
{% endhint %}

## :eye\_in\_speech\_bubble: Viewing our tasks

Although the case file shows all tasks in a given case, every user can also access their own tasks from their **Dashboard**. Click on the home icon to view yours:

![Lois's tasks dashboard](/files/-MUVQo2yLIccbW-YgEbl)

{% hint style="info" %}
**Wondering why you can't see the task?** It is because it was not assigned to you! Don't forget that the **Approved?** task was assigned to Lois.

Head over to your case file, click on the **Approved?** task, and edit its owner to assign it to yourself. Then head back to your tasks dashboard to see it.
{% endhint %}

Clicking on task will show you the specific task to complete:

![A task to complete](/files/-MUVRSU-n_k_9b7-C8Ef)

Every task will show the **form** that you designed for it. On the right side, you can see the **timeline** of all tasks previously completed. On the bottom, you can see the **task's activity history**, where you can collaborate with your team by adding comments.

## :white\_check\_mark: Completing a task

Click on **Submit** to complete your task. Remember that we designed our process so that when the request was approved, two parallel tasks should be created:

* On one hand, a **robot** should send an **email** to you letting you know that the request has been approved.
* On the other hand, a manual task should be assigned to **Clark**, reminding him to update the company's calendar.

If you head back to your **Case File**, you will notice that the **Email Robot** finished automatically (check your inbox!), and that now **Clark** has a new task:

![Pending and completed tasks](/files/-MUVT8y82AgwKtelIvQg)

For your reference, you should receive an email like this:

![An automated email from Seliom](/files/-MUVTUC_DAoy2Qa3iTNP)

As Clark finishes his task, the process will be completed.

## :tada: Congratulations!

You have finished automating your first process on Seliom.&#x20;

{% hint style="info" %}
Seliom offers much more advanced automation capabilities. We hope you discover the benefits of workflow automation with our platform.&#x20;
{% endhint %}

If feel like this tutorial needs more information, or have any questions, please reach out to <info@seliom.com>.&#x20;


# Introduction

Welcome to Seliom's API documentation

This document summarizes Seliom's Public API. We are continuously adding new endpoints. If there is a specific feature you need, please [reach out](mailto:support@seliom.com).

{% hint style="warning" %}
This document is meant for software developers and technical users. It covers advanced functionality.
{% endhint %}

Seliom's API lets you integrate external systems with our platform. In order to access Seliom's API, you must first **request the API token** for your account.

{% hint style="success" %}
Seliom's API Base URL is **<https://api.seliom.com>**
{% endhint %}

{% hint style="info" %}
We will provide you with your account's API token within 24 hours. Please reach out to <support@seliom.com> to obtain it.
{% endhint %}


# Authorization

After obtaining your account's **API Token**, you should test your connection with our **whoami** endpoint.

{% hint style="info" %}
All requests made to Seliom's API should include the following headers:

* **Authorization:** your auth token.
* **X-Organization:** your organization's UUID.
* **Content-Type: a**pplication/json
  {% endhint %}

## Who Am I?

<mark style="color:blue;">`GET`</mark> `https://api.seliom.com/whoami`

This endpoint validates your API token and returns information about yourself.

#### Headers

| Name           | Type   | Description                                                   |
| -------------- | ------ | ------------------------------------------------------------- |
| Content-Type   | string | application/json                                              |
| X-ORGANIZATION | string | UUID of the organization for which you are making the request |
| Authentication | string | Your authentication token                                     |

{% tabs %}
{% tab title="200 Authorization successful." %}

```
{    
   "first_name": "Clark",    
   "last_name": "Kent",
   "organization": "Seliom"
}
```

{% endtab %}

{% tab title="401 You auth token or organization UUID is invalid." %}

```
{    
   "message": "Please log in to continue."
}
```

{% endtab %}
{% endtabs %}


# Process Templates

List of public endpoints for process templates

**Process Templates** are the official name of processes that have been created for your organization.

{% hint style="danger" %}
Dont forget to include the **Authorization** and **X-Organization** headers in every request. They have been omitted from these endpoints for brevity.&#x20;
{% endhint %}

## Basic Endpoints

These endpoints allow you to index, view, update and delete process templates.

## Index

<mark style="color:blue;">`GET`</mark> `https://api.seliom.com/process_templates/basic`

This endpoint retrieves the process templates that your account has permissions to see.

#### Path Parameters

| Name       | Type   | Description                                                                    |
| ---------- | ------ | ------------------------------------------------------------------------------ |
| launchable | string | If true, include only processes your user has permissions to create cases for. |

{% tabs %}
{% tab title="200 " %}

```
```

{% endtab %}
{% endtabs %}

## Index - API Launchable

<mark style="color:blue;">`GET`</mark> `https://api.seliom.com/process_templates/basic/launchables`

This endpoint retrieves the process templates that your account has permissions to see and create cases for **via the API**.

{% tabs %}
{% tab title="200 Process templates successfully retrieved." %}

```
{
    "process_templates": [
        {
            "name": "Time-off Requests",
            "uuid": "5c7549b6-3f7b-4c96-8346-141326da5cf0",
            "launchable": true,
            "resource_type": "process",
            "automated": true
        }
    ]
}

```

{% endtab %}
{% endtabs %}

## Index - Automated Processes

<mark style="color:blue;">`GET`</mark> `https://api.seliom.com/process_templates/basic/automated_processes`

This endpoint retrieves the process templates in your organization that have been automated. You must have the ***EDIT\_PROCESSES*** permission in order to access this method.

#### Path Parameters

| Name | Type   | Description |
| ---- | ------ | ----------- |
|      | string |             |

{% tabs %}
{% tab title="200 " %}

```
```

{% endtab %}
{% endtabs %}

## Show Process Template

<mark style="color:blue;">`GET`</mark> `https://api.seliom.com/process_templates/basic/:template_uuid`

This endpoint retrieves a specific process template that your account has permissions to see.

#### Path Parameters

| Name           | Type   | Description                  |
| -------------- | ------ | ---------------------------- |
| template\_uuid | string | UUID of the process template |

{% tabs %}
{% tab title="200 Process templates successfully retrieved." %}

```
{
    "process_template": {
        "name": "Time-off Requests",
        "uuid": "5c7549b6-3f7b-4c96-8346-141326da5cf0",
        "automated": true
    },
    "can_launch": true
}
```

{% endtab %}
{% endtabs %}

## Update Process Template

<mark style="color:orange;">`PUT`</mark> `https://api.seliom.com/process_templates/basic/:template_uuid`

Updates a given process template's name

#### Path Parameters

| Name           | Type   | Description                  |
| -------------- | ------ | ---------------------------- |
| template\_uuid | string | UUID of the process template |

#### Request Body

| Name | Type   | Description                       |
| ---- | ------ | --------------------------------- |
| name | string | New name for the process template |

{% tabs %}
{% tab title="200 Process templates successfully retrieved." %}

```
{
    "message": "Process updated successfully!"
}
```

{% endtab %}
{% endtabs %}

## Delete Process Template

<mark style="color:red;">`DELETE`</mark> `https://api.seliom.com/process_templates/directory/:template_uuid`

Deletes the given process template

#### Path Parameters

| Name           | Type   | Description                  |
| -------------- | ------ | ---------------------------- |
| template\_uuid | string | UUID of the process template |

{% tabs %}
{% tab title="200 Process templates successfully retrieved." %}

```
{
    "message": "You have successfully deleted the process"
}
```

{% endtab %}
{% endtabs %}

## Automation Endpoints

These endpoints allow you to request the information required by a process template in order to create a **case** for it.

## Start Definition

<mark style="color:blue;">`GET`</mark> `https://api.seliom.com/process_templates/automation/:template_uuid/start_definition`

This endpoint retrieves the information required by the **start node** of a process template in order to create a case for it.

#### Path Parameters

| Name           | Type   | Description                  |
| -------------- | ------ | ---------------------------- |
| template\_uuid | string | UUID of the process template |

{% tabs %}
{% tab title="200 The response from the start definition." %}

```
{
    "process_template": {
        "name": "Time-off Requests",
        "uuid": "5c7549b6-3f7b-4c96-8346-141326da5cf0"
    }, 
    "manual_label": true,
    "definition_elements": [
        {
            "definition": {
                "label": "Start Date",
                "identifier": "0e49e482-b6f0-4f28-8a59-b5c506620760",
                "type": "date",
                "assignedID": "start_date",
                "required": true
            }
        },
        {
            "definition": {
                "label": "End Date",
                "identifier": "ad219870-183f-427c-b4c3-f2454447ecb6",
                "type": "date",
                "assignedID": "end_date",
                "required": true
            }
        }
    ]

```

{% endtab %}
{% endtabs %}

## Team Members - Start Definition

<mark style="color:blue;">`GET`</mark> `https://api.seliom.com/process_templates/automation/:template_uuid/definition_element/:definition_element_uuid/members`

Team member form fields require another request in order to retrieve the list of users that can be selected from the dropdown menu.

#### Path Parameters

| Name                      | Type   | Description                                                |
| ------------------------- | ------ | ---------------------------------------------------------- |
| definition\_element\_uuid | string | The UUID of the definition element of type *team\_members* |
| template\_uuid            | string | UUID of the process template                               |

{% tabs %}
{% tab title="200 The response from the start definition." %}

```
{
    "members": [
        {
            "uuid": "3cd4ca21-fa4d-4bed-9217-fb495c748d0c",
            "first_name": "Clark",
            "last_name": "Kent",
            "invitation_status": "accepted",
            "deleted": false,
            "slug": "clark-kent"
        }
    ]
}
```

{% endtab %}
{% endtabs %}


# Signal Triggers

List of public endpoints for managing and triggering signals

Processes can contain a specific type of robot called *Await Signa&#x6C;**.*** This robot will wait for a signal from an external system before allowing the process to proceed. Signals can contain data, which can then be used in subsequent steps in your process. This page summarizes the API endpoints for managing and triggering signals.

{% hint style="danger" %}
Dont forget to include the **Authorization** and **X-Organization** headers in every request. They have been omitted from these endpoints for brevity.&#x20;
{% endhint %}

## Index

<mark style="color:blue;">`GET`</mark> `https://api.seliom.com/signals`

Returns the list of signals stored for a specific process template. Every element in the list is the Signal ID.

#### Query Parameters

| Name           | Type   | Description                  |
| -------------- | ------ | ---------------------------- |
| template\_uuid | string | UUID of the process template |

{% tabs %}
{% tab title="200 " %}

```
{
    "signals": ['AWAIT_SIGNED_DOCUMENT']
}
```

{% endtab %}
{% endtabs %}

## Show

<mark style="color:blue;">`GET`</mark> `https://api.seliom.com/signals/:signal_id`

Returns all the data necessary to trigger the signal.

#### Path Parameters

| Name       | Type   | Description      |
| ---------- | ------ | ---------------- |
| signal\_id | string | ID of the signal |

#### Query Parameters

| Name           | Type   | Description                                           |
| -------------- | ------ | ----------------------------------------------------- |
| template\_uuid | string | UUID of the process template that contains the signal |

{% tabs %}
{% tab title="200 " %}

```
{
    "submission_elements": [
        {
            "definition_element": {
                label: "Employee Name",
                type: "text",
                name: "employee_name",
                exit_type: "text",
                required: true
            }
        }
    ]
}
```

{% endtab %}
{% endtabs %}

## Trigger a Signal Event

<mark style="color:green;">`POST`</mark> `https://api.seliom.com/signals`

Triggers the specified signal by sending an event with the signal's required data.

#### Request Body

| Name                    | Type   | Description                                                       |
| ----------------------- | ------ | ----------------------------------------------------------------- |
| submission\_elements    | array  | Form elements required to trigger the signal                      |
| process\_instance\_uuid | string | ID of the process instance (case) that is waiting for the signal. |
| signal\_id              | string | ID of the signal to trigger                                       |

{% tabs %}
{% tab title="200 " %}

```
{
    "message": "Signal event triggered successfully"
}
```

{% endtab %}
{% endtabs %}


# Cases

List of public endpoints for cases

**Cases** represent instances of your process templates. For example, if you have a process template called **Purchase Order Approval**, a case would be a specific purchase order that needs to be approved.

In Seliom's API, cases also receive the name of **Process Instances.**

{% hint style="danger" %}
Dont forget to include the **Authorization** and **X-Organization** headers in every request. They have been omitted from these endpoints for brevity.&#x20;
{% endhint %}

## Index

<mark style="color:blue;">`GET`</mark> `https://api.seliom.com/process_monitor/process_instances`

This endpoint retrieves all the cases that the user has permissions to see.

#### Query Parameters

| Name            | Type   | Description                                                                 |
| --------------- | ------ | --------------------------------------------------------------------------- |
| sort\_by        | string | Sort the resulting cases by: status, newest, oldest.                        |
| created\_before | string | Date in ISO 8601 to filter by.                                              |
| created\_after  | string | Date in ISO 8601 to filter by.                                              |
| status          | array  | Array of statuses to filter by: running, error, stopped, completed, paused. |
| process\_type   | array  | Array of UUIDs of the process templates to filter by                        |
| cursor          | string | Cursor used for pagination                                                  |

{% tabs %}
{% tab title="200 Process instances successfully retrieved." %}

```
{
    "processes": [
        "name": "My first time-off request",
        "created_at": "2021-02-22 18:37:25 UTC",
        "uuid": "23d6ff0b-717c-4712-b988-ab3e5c9732f3",
        "completed_date": null,
        "status": "running",
        "sequential_id": 1,
        "process_template": {
            "name": "Time-off Requests",
            "uuid": "5c7549b6-3f7b-4c96-8346-141326da5cf0",
            "launchable": true,
            "resource_type": "process",
            "automated": true
        }, 
        "launcher" : {
            "first_name": "Clark",
            "last_name": "Kent",
            "uuid": "3cd4ca21-fa4d-4bed-9217-fb495c748d0c"
        }
    ],
    "next_cursor": null,
    "prev_cursor": null, 
    "total": 1,
    "limit": 15,
    "page": 1
}

```

{% endtab %}
{% endtabs %}

## Show Case

<mark style="color:blue;">`GET`</mark> `https://api.seliom.com/process_monitor/process_instances/:process_instance_uuid`

This endpoint retrieves a specific case and the permissions your user has for it.

#### Path Parameters

| Name                    | Type   | Description                  |
| ----------------------- | ------ | ---------------------------- |
| process\_instance\_uuid | string | UUID of the process instance |

{% tabs %}
{% tab title="200 Process instance successfully retrieved." %}

```
{
    "process_instance": {
        "name": "My first time-off request",
        "created_at": "2021-02-22 18:37:25 UTC",
        "uuid": "23d6ff0b-717c-4712-b988-ab3e5c9732f3",
        "completed_date": null,
        "status": "running",
        "sequential_id": 1,
        "process_template": {
            "name": "Time-off Requests",
            "uuid": "5c7549b6-3f7b-4c96-8346-141326da5cf0",
            "launchable": true,
            "resource_type": "process",
            "automated": true
        }, 
        "launcher" : {
            "first_name": "Clark",
            "last_name": "Kent",
            "uuid": "3cd4ca21-fa4d-4bed-9217-fb495c748d0c"
        }
    },
    "permissions": [
        "Edit tasks",
        "Perform actions",
        "Delete instance",
        "Edit comments",
        "View process instance",
        "Manage case permissions",
        "Rollback case"
    ]
}
```

{% endtab %}

{% tab title="403 Not allowed to see the process instance requested." %}

```
{
    "message": "You do not have permissions to view this process instance"
}
```

{% endtab %}

{% tab title="404 Process instance not found" %}

```
{
    "message": "Process instance not found"
}
```

{% endtab %}
{% endtabs %}

## List Case Documents

<mark style="color:blue;">`GET`</mark> `https://api.seliom.com/process_monitor/process_instances/:process_instance_uuid/documents`

This endpoint retrieves all task submissions associated to a case that contain documents.

#### Path Parameters

| Name                    | Type   | Description                  |
| ----------------------- | ------ | ---------------------------- |
| process\_instance\_uuid | string | UUID of the process instance |

{% tabs %}
{% tab title="200 Process instance documents successfully retrieved." %}

```
{
    "docs": [
        {
            "id": "a340197d-7eab-49d5-9880-1da29fefaa35",
            "status": "completed",
            "assignee_type": "member",
            "member": {
                "first_name": "Clark",
                "last_name": "Kent",
                "uuid": "23d6ff0b-717c-4712-b988-ab3e5c9732f3"
            },
            "task_definition": {
                 "id": "cade268a-443e-44d8-9c71-667079bb7ac5",
                 "name": "Upload customer documentation",
                 "task_type": "task"
            },
            "documents_info": [
                "field_name": "Customer documents",
                "content": {
                   "type": "attachment",
                   "files": [
                       {
                           "originalName": "mydocs.pdf",
                           "storageName": "cade268a-443e-44d8-9c71-667079bb7ac5/1572657277933_mydocs.pdf"
                       }
                   ]
                }
            ]
        }
    ]
}
```

{% endtab %}
{% endtabs %}

## Create New Case

<mark style="color:green;">`POST`</mark> `https://api.seliom.com/process_instances`

This endpoint creates a new case based on a given process template.

#### Request Body

| Name                    | Type   | Description                                                                            |
| ----------------------- | ------ | -------------------------------------------------------------------------------------- |
| label                   | string | Label for the new case. Required if it has not been automated in the process template. |
| submission\_elements    | object | Form elements required to create a case for the given process template                 |
| process\_template\_uuid | string | UUID of the process template                                                           |

{% tabs %}
{% tab title="200 Case created successfully." %}

```
{
    "message": "Process launched successfully!",
    "process_instance_uuid": "972a4cb0-8f4e-43b3-9e54-99c952f8531e"
}
```

{% endtab %}

{% tab title="400 Label is required for the process template" %}

```
{
    "message": "Please provide a label"
}
```

{% endtab %}

{% tab title="401 User does not have necessary permissions" %}

```
{
    "message": "You do not have permissions to launch this process"
}
```

{% endtab %}
{% endtabs %}

## Pause Case

<mark style="color:orange;">`PUT`</mark> `https://api.seliom.com/process_monitor/process_instances/:process_instance_uuid/pause`

This endpoint pauses a process instance that is currently running.

{% tabs %}
{% tab title="200 " %}

```
{
    "message": "Your process instance has been paused"
}
```

{% endtab %}
{% endtabs %}

## Stop Case

<mark style="color:orange;">`PUT`</mark> `https://api.seliom.com/process_monitor/process_instances/:process_instance_uuid/stop`

This endpoint stops a process instance that is currently running.

{% tabs %}
{% tab title="200 " %}

```
{
    "message": "Your process instance has been stopped"
}
```

{% endtab %}
{% endtabs %}

## Resume Case

<mark style="color:orange;">`PUT`</mark> `https://api.seliom.com/process_monitor/process_instances/:process_instance_uuid/resume`

This endpoint resumes a process instance that was previously stopped or paused.

{% tabs %}
{% tab title="200 " %}

```
{
    "message": "Your process instance has been resumed"
}
```

{% endtab %}
{% endtabs %}

## Delete Case

<mark style="color:red;">`DELETE`</mark> `https://api.seliom.com/process_monitor/process_instances/:process_instance_uuid`

This endpoint permanently deletes a process instance.

{% tabs %}
{% tab title="200 " %}

```
{
    "message": "Your process instance has been deleted"
}
```

{% endtab %}
{% endtabs %}


# Files

List of public endpoints for managing files on Seliom

Seliom provides you with a file repository to store all files in your organization. You can upload files to your repository with our public API.

{% hint style="danger" %}
Dont forget to include the **Authorization** and **X-Organization** headers in every request. They have been omitted from these endpoints for brevity.&#x20;
{% endhint %}

## Upload File

<mark style="color:green;">`POST`</mark> `https://api.seliom.com/upload`

This endpoint uploads a file to your organization's repository and returns its **File ID.**

#### Request Body

| Name | Type   | Description                                                                                                                                |
| ---- | ------ | ------------------------------------------------------------------------------------------------------------------------------------------ |
| name | string | Name of the file you are uploading.                                                                                                        |
| file | object | File object with the keys **data** and **type**. Currently only the type **Buffer** is supported. Therefore, data should be a byte buffer. |

{% tabs %}
{% tab title="200 Successful response" %}

```
{
   "fileId": "a27fudi8-e830-47c9-8e28-60448937d0e2/1616008578647_file.pdf"
}
```

{% endtab %}

{% tab title="500 Error" %}

```
{
   "message": "An error occured uploading your file. Please make sure you are sending the required parameters and try again."
}
```

{% endtab %}
{% endtabs %}


# Why Seliom?

Business process management does not have to be complex

As your team grows and scales, you will notice that it becomes more difficult to keep track of everything that's happening in your organization.&#x20;

If the following sound familiar to you, it is probably the time to adopt a **Business Process Management** platform:

### 1. :envelope: Email & Spreadsheets have become the main tool to run your operations

Circling back to spreadsheets and emails from months ago to find information is usually the first sign that you need a more powerful solution to help you scale.

{% hint style="success" %}
Seliom **centralizes** all your information and makes it easily accessible to the right people
{% endhint %}

### 2. :question: You can't tell who is working on what, and when things are going to get done.

Your business is constantly processing incoming data such as customer requests, purchase orders, returns, deliveries, contracts to be signed, and services to be fulfilled. All of these need be handled by different people in your organization.

**As your operations scale, more mistakes are bound to happen, costing you precious time and money.** You will benefit from a solution like Seliom if it has become too difficult to answer simple questions such a&#x73;**:**

* When will this purchase order get approved?
* Did we respond to the customer inquiry from 2 weeks ago?
* Has anyone helped onboard our new employee yet?
* Who was in charge of packaging this product?

{% hint style="success" %}
&#x20;Seliom helps you **scale and streamline** your business processes. It makes sure that everyone operates the same way, and that things get done on time.
{% endhint %}

### 3. :loud\_sound: Information overload makes it hard to move fast

You probably have a CRM, an ERP, a chat application, and dozens of other solutions that process important business data. Making sure that all the information gets to the right place is crucial, but manually inputting information into these systems is time-consuming, error prone, and boring.&#x20;

{% hint style="success" %}
&#x20;Seliom **connects** to your existing software applications and glues everything together. Input your data once and see it appear in all your systems.
{% endhint %}

### 4. :page\_facing\_up:You have hundreds of PDF documents with outdated instructions

Managers try to standardize work by creating documents for their business processes. Unfortunately:

* They quickly become **obsolete**.&#x20;
* Nobody reads them.
* Even if the team does read them, they are difficult to enforce.

{% hint style="success" %}
&#x20;Seliom provides **always up-to-date** processes that are simple to enforce.
{% endhint %}


# FAQ

Frequently Asked Questions

## :hammer: Do I need any advanced technical skills or professional support services to implement Seliom?

Seliom was designed to be intuitive and not require advanced technical knowledge to design and automate your workflows. However, in large and complex proceses some customers prefer to receive help from technical consultants. We are happy to recommend one of our partners.

## :infinity: What does "unlimited" really mean?

We do not cap storage or the number of workflows you can run, as long as it does not create an overload on our end. If your usage goes beyond the general use cases, we will reach out to figure out a plan that works for both of us.

## :robot: How is Seliom different from RPA?

RPA (Robotic Process Automation) is a form of business process automation that relies on recording how a user interacts with a UI and then replaying it automatically for different data. Seliom is different in that it automates an entire workflow (consisting of multiple tasks) from beginning to end, and can leverage the use of robots via integrations to automate specific tasks.

Seliom complements very well with RPA, but is much broader in scope as it is a full Business Process Management (BPM) suite. It provides everything you need to manage your business processes, including documentation, modeling, orchestration, automation, and task & case management.

## :closed\_lock\_with\_key: How is my data kept safe? Is Seliom GDPR compliant?

We take data security very seriously. Our service providers\
have undergone the most strict of security audits to ensure\
that your data is never compromised. Seliom is GDPR compliant.\
You can read more about our security mesures [here](https://storage.googleapis.com/seliom-public/Seliom%20Security.pdf).

## :man\_teacher: What kind of processes can I automate with Seliom?

You can streamline and automate standardised and dispersed operations that consume a lot of time better spent elsewhere. Processes can be simple, horizontal processes such as employee onboarding, purchase order approvals, and reimbursement requests, or vertical complex processes specific to your industry that involve a lot of people and communication bottlenecks.

## :control\_knobs: What kind of level of control can I have over employee access to data?

Seliom provides very granular control over who can access different resources. We have developed our platform with the help from experts in different industries such as logistics and insurance, ensuring that your needs for access control are met.

## :computer: How does Integration with other systems work?

Every process created on Seliom has an API that allows you to create new cases for it and fetch information. This makes it very simple to trigger new cases from external systems. For example, you could trigger a Seliom process to manage a new customer onboarding after an opportunity is closed on Salesforce.

We also offer the possibility of calling external systems from within a Seliom process. For example, after a specific task is completed you can automatically send an SMS or slack notification to your team.

For advanced integrations, we recommend [Integromat](https://www.integromat.com/?pc=seliom).

## :credit\_card: Can I cancel my subscription at any time?

Yes. Seliom has no commitment requirements. You are welcome to try out the platform for a few months and cancel your subscription at any time.

## :timer: Does Seliom offer a trial period?

New teams that sign up on Seliom get 14 days to try out the platform for free. After that period of time, we will charge your monthly or yearly subscription. You are welcome to cancel at any time. If you need more time to test out the platform, please reach out to us at <info@seliom.com>


# Bienvenido a Seliom

**Seliom** es una plataforma de automatización de procesos que permite a tu equipo trabajar de forma más eficiente y ordenada.

Puedes crear **procesos de negocio personalizados** para estandarizar las operaciones internas de tu equipo, garantizando así que todos trabajen de la misma manera.:handshake:&#x20;

Al automatizar tus procesos de negocio, puedes **ahorrar tiempo, reducir errores, e implementar una mejora continua** en tu empres&#x61;**.**

## Con Seliom puedes:

* :atom: **Crear procesos de negocio personalizados** con una interfaz gráfica simple e intuitiva:

![Un proceso sencillo creado en Seliom](/files/-MUSCuSkHH5KB6OVLjYW)

* :information\_source: **Indicar la información requerida para cada paso de tu proceso,** usando nuestro editor de formularios:

![Cada tarea puede tener un formulario a rellenar](/files/-MUSEam7nMRoJyIQw9mI)

* :page\_facing\_up: **Usar nuestro gestor de casos** para seguirle la pista a todos tus procesos:

![Síguele la pista a todo lo que ocurre](/files/-MUSGRWFW9Zzd6qjozUp)

* **Colaborar en tus casos** y asegurarte de que todo tu equipo esté al día con lo que ocurra en ellos:

![Observa quién está bloqueando a quién y lo que queda por hacer](/files/-MUSHViswB4y54_-O9IO)

## ¿Quieres saber más?

Si quieres averiguar si Seliom es para ti:

{% content-ref url="/pages/-MUSJhp-V3fVj3XieU56" %}
[¿Por qué usar Seliom?](/espanol/resources/why-seliom)
{% endcontent-ref %}

:woman\_running: **La mejor forma de comenzar con Seliom es probándolo:**

{% content-ref url="/pages/-MUSJ8ImK4l4hQ7azDCc" %}
[Empezar con Seliom](/espanol/getting-started/start-exploring)
{% endcontent-ref %}

:question: Puedes ver también nuestras preguntas más frecuentes:

{% content-ref url="/pages/-MUSJvDNq4qIr12BTcKB" %}
[Preguntas Frecuentes](/espanol/resources/faq)
{% endcontent-ref %}


# Tutorial de Inicio

Let's get you up and running

{% hint style="danger" %}
**Esta página aún no ha sido traducida al español.**
{% endhint %}

## :ledger: Introducción

En esta guía vamos a explicar los fundamentos de la automatización de un sencillo proceso de negocio con Seliom. Vamos a crear un proceso básico que te mostrará los fundamentos de la plataforma en sólo 5 minutos.&#x20;

Al final de este tutorial, podrás:&#x20;

* Comprender la potencia de la automatización de procesos de negocio
* Aprender los fundamentos del funcionamiento de Seliom
* Documentar, modelar y automatizar tu primer proceso de negocio
* Lanzar casos de tu nuevo proceso de negocio

¡Vamos allá! Lo primero que tenemos que hacer es añadir un par de miembros del equipo a la plataforma:

{% content-ref url="/pages/-MUU9t0shhpXq6uvvSZV" %}
[Añadir miembros al equipo](/espanol/getting-started/start-exploring/adding-our-team-members)
{% endcontent-ref %}


# Añadir miembros al equipo

## :woman\_office\_worker: Bienvenidos, Luisa y Jaime

Los procesos suelen constar de diferentes tareas que han de ser ejecutadas por más de una persona. Para este ejemplo, vamos a suponer que los participantes en nuestro proceso serán **Luisa** y **Jaime**.&#x20;

Antes de empezar, ve a [Ajustes](https://app.seliom.com/app/settings) y luego haz clic en ***Añadir miembro*** para invitarlos a tu entorno de trabajo u organización.

{% hint style="info" %}
En etapas más avanzados, puede que necesites agrupar a los miembros de tu equipo por puesto, función, rol, departamentos o cualquier otra relación.
{% endhint %}

Ahora estamos listos para crear nuestro primer proceso.

{% content-ref url="/pages/-MUU7APU2OwMApCR0ZF\_" %}
[Cómo diseñar tu primer proceso](/espanol/getting-started/start-exploring/ideating-our-first-process)
{% endcontent-ref %}


# Cómo diseñar tu primer proceso

## :bulb: Un ejemplo de proceso de negocio

Supongamos que queremos automatizar el proceso por el que alguien de tu organización realiza una solicitud de vacaciones:

* **Luisa** se encarga de aprobar todas las solicitudes entrantes.&#x20;
* Si la solicitud es aprobada, debe enviar un correo electrónico al solicitante confirmando la fecha de inicio y fin de las vacaciones concedidas.&#x20;
  * Al mismo tiempo, **Jaime** debería actualizar manualmente (por ahora) el Google Calendar de la empresa para asegurarse de que todo el mundo está al tanto.

En caso de que **Luisa** deniegue la solicitud, debería simplemente informar al solicitante por correo electrónico.

El esquema de este proceso podría ser algo así:

![Nuestro proceso de ejemplo](/files/-MUTMKeDz58CYfe6Q5hq)

{% hint style="info" %}
El proceso de este tutorial es sólo un ejemplo de demostración. Los procesos de Seliom pueden ser tan simples o tan complejos como necesites.
{% endhint %}

Sigamos adelante. Ahora veamos cómo automatizar este proceso en Seliom:

{% content-ref url="/pages/-MUU7ESIBndGvxBknuxS" %}
[Crea tu proceso con Seliom](/espanol/getting-started/start-exploring/creating-our-process-on-seliom)
{% endcontent-ref %}


# Crea tu proceso con Seliom

Cómo automatizar tu idea en minutos

Selecciona el icono de [Procesos](https://app.seliom.com/app/processes) y haz clic en el botón **"Nuevo proceso"**. Dale un nombre que te permita reconocerlo fácilmente, como **Solicitudes de Vacaciones**.&#x20;

Una vez creado el proceso, haz clic en él para verlo.

## :writing\_hand: Documentando nuestro proceso

El primer paso en Seliom es escribir una descripción de tu proceso para facilitar a otros su comprensión y contenido. Te servirá para poder documentar adecuadamente el proceso que estás creando.&#x20;

![Editor de Texto de Seliom](/files/-MUoCyYvpa6Eswnn29cB)

Para ello Seliom dispone de un potente **editor de texto** para hacértelo mucho más fácil. Sólo tienes que pulsar "/" para desplegar todas sus opciones:

![Opciones del editor de texto Seliom](/files/-MUoD_AAtqB2QuRpSz7A)

## &#x20; :rocket: Automatizando procesos

En el menú superior, selecciona la ficha **Flujo de Trabajo** y haz clic en el botón **"Acceder al editor"**. Ahora deberías ver el ***Editor gráfico de Flujos de Trabajo***:

![Editor gráfico de Flujos de Trabajo](/files/-MUoFh3y8zze7c8Hd2Dp)

Podrás arrastrar y soltar nodos desde la barra lateral izquierda hasta el lienzo y conectarlos como quieras!

![Dibuja libremente lo que necesitas!](/files/-MUTWgWzMosf2fBtEYzI)

Finalmente, nuestro proceso tendrá un aspecto similar a este en el editor:

![Arrastra y suelta los notos para crear un flujograma como ésteone](/files/-MUT_X9S-Al-3q1whyXx)

Ahora que ya dibujamos nuestro proceso, vamos a **configurarlo**.&#x20;

Haz doble clic en un nodo para editar su configuración. Los cinco tipos de nodos tienen distintas opciones que podrás configurar según tus necesidades:

![Haz doble clic en un nodo para editar su configuración](/files/-MUTXLDhTm6RJGqvV4I0)

### :sparkler: Configurar el nodo de Inicio

La tarea de **Inicio** representa la primera tarea necesaria para iniciar este proceso. Sólo puede haber una tarea de Inicio por proceso. Este tipo de tarea se representa con un nodo amarillo.&#x20;

En nuestro ejemplo, crearemos un formulario dentro del nodo de inicio que pide una fecha de inicio y una fecha de finalización para nuestras solicitudes de vacaciones.&#x20;

Haz doble clic en el nodo y configúralo de la siguiente manera:&#x20;

* En la pestaña **Basic Details** escribe un nombre como **Solicitud de Vacaciones**.
* En la pestaña **Start Settings** (Configuración de inicio), indica qué miembros del equipo pueden crear solicitudes de vacaciones.&#x20;
  * Para esta demo, asegúrate de añadirte al menos a ti mismo!!
* Vete a la pestaña **Form Editor (**&#x45;ditor de formularios) y haz clic en **Add Element (**&#x41;ñadir elemento). Podrás crear diferentes campos de formulario que soliciten la información que necesitas para iniciar o detonar un proceso. Para este ejemplo, asegúrese de tener:&#x20;
  * Un campo de fecha, llamado **Fecha de inicio (Start Date)**, cuyo ID de campo será ***start\_date***.&#x20;
  * Un campo de fecha, llamado **Fecha final (End Date)**, cuyo ID de campo será ***end\_date***.

![Así se diseñan los formularios en Seliom](/files/-MUUEhA1tkixEdQDO50G)

{% hint style="info" %}
El **Field ID (**&#x49;D del campo) es un identificador para cada elemento del formulario. Podrás hacer referencia a los campos del formulario en otras tareas y robots para generar potentes aplicaciones y procesos empresariales.
{% endhint %}

### :raised\_hands: Configurar los nodos de Tareas

Las **tareas** se representan mediante nodos azules e indican acciones que debe hacer manualmente un miembro del equipo. Las opciones de configuración más importantes para las tareas son:

* **Form Editor**, el Editor de formularios que se utiliza para indicar los datos que deben proporcionarse en cada tarea. Esto es idéntico a lo visto en el nodo de Inicio.
* **Task owners**, los propietarios de las tareas, donde indicamos quién es el responsable de realizar cada una de ellas.

En este ejemplo, sólo tenemos una **Tarea** llamada **Actualizar el calendario de la empresa**. Esta es la tarea que **Jaime** debe realizar cuando **Luisa** aprueba una solicitud de vacaciones. Vamos a configurarla:

Haz doble clic en la tarea y dirígete a la pestaña **Task Owners**.&#x20;

* En la sección **People** (Personas), debes indicar que **Jaime** es la persona que debe realizar esta tarea.

![Asegúrate de añadir a Jaime en la sección Personas](/files/-MUUIBAb0BIXKoz7sJJq)

Para esta tarea, vamos a dejar el **Editor de formularios** vacío, ya que no necesitamos que Jaime proporcione ningún dato.

{% hint style="info" %}
Las pestañas del **editor de formularios** y de los **propietarios de las tareas** ofrecen un montón de opciones personalizadas. Explóralas para saber más de ellas.
{% endhint %}

### :large\_blue\_diamond: Configurar los nodos de Decisión

Los nodos de **decisión** nos ayudan a crear condiciones en nuestros procesos. Por ejemplo, si una solicitud es *aprobada* podemos querer que nuestro proceso vaya por un camino diferente que si fuese *no aprobada*.&#x20;

En nuestro proceso sólo tenemos un nodo de decisión llamado **¿Aprobado?** Esta es una tarea que se asigna a Luisa cuando se inicia una solicitud de vacaciones.&#x20;

Haz doble clic en el nodo de decisión para configurarlo.&#x20;

* En la pestaña **Decision Makers (**&#x52;esponsables de la decisión), seleccione a Luisa como la persona encargada de tomar la decisión.&#x20;
* En la pestaña **Decision Options (**&#x4F;pciones de decisión), puede ver las diferentes opciones que la persona que toma esta decisión podría seleccionar. Por defecto, siempre ofrecemos *Aprobado* y *No Aprobado*, pero puedes configurarlas a tu manera o bien dejarlas como aparecen en la pestaña.

{% hint style="info" %}
Los nodos de Decision ofrecen opciones avanzadas de automatización mediante el uso de fórmulas. De momento lo dejaremos para explicarlo más adelante.
{% endhint %}

### :robot: Configurar los nodos Robot

Los robots (representados por nodos de color púrpura), son tareas automáticas que no requieren la intervención humana. Pueden utilizarse para enviar correos electrónicos, esperar hasta una fecha determinada, conectarse a sistemas externos, crear o actualizar registros e incluso asignar roles dinámicos dentro de un proceso. En este ejemplo, se utilizan dos robots de correo electrónico:&#x20;

* Cuando Luisa rechaza una solicitud, el robot **Notify Requestor** envía un correo electrónico al solicitante para informarle.&#x20;
* Cuando Luisa aprueba una solicitud, el robot **Notify requestor of approval** envía un correo electrónico similar al solicitante para informarle.&#x20;

El proceso de configuración de ambos robots es muy similar:&#x20;

* Primero hacemos doble clic en el nodo Robot.&#x20;
* A continuación, hacemos clic en la pestaña**Robot Settings (**&#x43;onfiguración del robot). Seleccionamos **Robot de correo electrónico** entre los Robots Seliom.&#x20;
* En **Recipients (**&#x44;estinatarios), hacemos clic en Añadir destinatario, y en el desplegable seleccionamos **Previous Task Owner (**&#x50;ropietario de la tarea anterior). A continuación, seleccionamos la tarea de **Inicio**, llamada **Solicitud de Vacaciones**.&#x20;
* El resto de los campos son opcionales. Recomendamos añadir el nombre del *Remitente* y el siguiente cuerpo del mensaje al correo electrónico:

```
El periodo de vacaciones solicitado desde 
{start_date} hasta {end_date} ha sido aprobado. 
```

![Ejemplo de un robot de email](/files/-MUUSp-wMkWusj46bL3B)

{% hint style="info" %}
Puedes observar que hacemos referencia en nuestro robot a los **Fiel ID** (ID de campo) ***start\_date*** y ***end\_date*** usados previamente en otros formularios de nuestro proceso.
{% endhint %}

### :jigsaw: Terminando nuestra automatización

Ahora que todos los pasos de nuestro flujo de trabajo han sido configurados, sólo tenemos que hacer clic en el botón **Automatizar** de nuestro editor. Esto validará nuestro proceso para asegurar que no hay errores en su diseño.&#x20;

Si surgieran advertencias o errores, deberás corregirlos y volver a intentarlo. De lo contrario, haga clic en **Enviar** y el proceso quedará validado.

{% hint style="warning" %}
Verás una advertencia sobre la tarea **Actualizar el calendario de la empresa,** ya que no hemos rellenado su formulario. Puedes ignorarla sin problemas.
{% endhint %}

![Haz clic en Automatizar para publicar tu proceso](/files/-MUUZQ4LU0Ee2-CNCxCQ)

Ahora que nuestro proceso ha sido automatizado, vamos a verlo en acción:

{% content-ref url="/pages/-MUUZjtmouNKrvOH5NqC" %}
[Lanza tu proceso Seliom](/espanol/getting-started/start-exploring/launching-our-process)
{% endcontent-ref %}


# Lanza tu proceso Seliom

Cómo crear un caso

## :heavy\_plus\_sign: Create a new case

Now that our process has been automated, we can create cases for it. When you create a case for a process, tasks will be assigned and executed following the workflow you designed.&#x20;

To get started, head over to [New Case](https://app.seliom.com/app/create). You will see a list of all the process for which you have permissions to create cases for.

{% hint style="warning" %}
If you cannot see the process that you just automated in the list, make sure that you can create cases for it. This is something you can edit in the **Start node** of your workflow.
{% endhint %}

![You can see only see processes that you are permitted to launch](/files/-MUVMmQOYef5bAopLxuH)

### :information\_source: Fill out the form

When you click on your newly created process, the form you designed in the Start Node will appear:

![The form for our Time-off Request process](/files/-MUVNDYa1MksfderGznx)

{% hint style="info" %}
The **Case Label** is the name we would like to give our new case. This is something that can also be automated in the **Start Node** of your workflow.
{% endhint %}

When you click on **Create**, the case will be created.&#x20;

## :notebook\_with\_decorative\_cover: Viewing our cases

If you head over to [Cases](https://app.seliom.com/app/cases), you will see the list of all cases we have created:

![List of all cases created](/files/-MUVODElraeM2WI4rdqY)

Clicking on case, will take you the **Case File:**

![This is the case file for our vacation request](/files/-MUVOr0HMQF2qeKz8wHg)

{% hint style="success" %}
Notice how the case file shows a pending task called **Approved?**. This is the current task that is blocking our process.
{% endhint %}

Every task in the list shows who is responsible for it, and when it was assigned. You will notice that all the important information for your case can be found on this page.

If you click on the **Workflow** section on the left sidebar, you will see your case's workflow visually:

![Our case's workflow](/files/-MUVPYc1rrkKOyyIw9Ey)

This is a very powerful feature of Seliom. If you click on any snapshot in the **Case History** sidebar (other than the first and last snapshot), you can rollback your case to a previous point in time.

{% hint style="info" %}
The case file is a great place for managers to see how all the cases are performing and if they are stuck. Seliom provides **granular permissions** regarding who can access case files.
{% endhint %}

## :eye\_in\_speech\_bubble: Viewing our tasks

Although the case file shows all tasks in a given case, every user can also access their own tasks from their **Dashboard**. Click on the home icon to view yours:

![Lois's tasks dashboard](/files/-MUVQo2yLIccbW-YgEbl)

{% hint style="info" %}
**Wondering why you can't see the task?** It is because it was not assigned to you! Don't forget that the **Approved?** task was assigned to Lois.

Head over to your case file, click on the **Approved?** task, and edit its owner to assign it to yourself. Then head back to your tasks dashboard to see it.
{% endhint %}

Clicking on task will show you the specific task to complete:

![A task to complete](/files/-MUVRSU-n_k_9b7-C8Ef)

Every task will show the **form** that you designed for it. On the right side, you can see the **timeline** of all tasks previously completed. On the bottom, you can see the **task's activity history**, where you can collaborate with your team by adding comments.

## :white\_check\_mark: Completing a task

Click on **Submit** to complete your task. Remember that we designed our process so that when the request was approved, two parallel tasks should be created:

* On one hand, a **robot** should send an **email** to you letting you know that the request has been approved.
* On the other hand, a manual task should be assigned to **Clark**, reminding him to update the company's calendar.

If you head back to your **Case File**, you will notice that the **Email Robot** finished automatically (check your inbox!), and that now **Clark** has a new task:

![Pending and completed tasks](/files/-MUVT8y82AgwKtelIvQg)

For your reference, you should receive an email like this:

![An automated email from Seliom](/files/-MUVTUC_DAoy2Qa3iTNP)

As Clark finishes his task, the process will be completed.

## :tada: Congratulations!

You have finished automating your first process on Seliom.&#x20;

{% hint style="info" %}
Seliom offers much more advanced automation capabilities. We hope you discover the benefits of workflow automation with our platform.&#x20;
{% endhint %}

If feel like this tutorial needs more information, or have any questions, please reach out to <info@seliom.com>.&#x20;


# Introducción

Welcome to Seliom's API documentation

{% hint style="danger" %}
**Esta página aún no ha sido traducida al español.**
{% endhint %}

This document summarizes Seliom's Public API. We are continuously adding new endpoints. If there is a specific feature you need, please [reach out](mailto:support@seliom.com).

{% hint style="warning" %}
This document is meant for software developers and technical users. It covers advanced functionality.
{% endhint %}

Seliom's API lets you integrate external systems with our platform. In order to access Seliom's API, you must first **request the API token** for your account.

{% hint style="success" %}
Seliom's API Base URL is **<https://api.seliom.com>**
{% endhint %}

{% hint style="info" %}
We will provide you with your account's API token within 24 hours. Please reach out to <support@seliom.com> to obtain it.
{% endhint %}


# Authorización

{% hint style="danger" %}
**Esta página aún no ha sido traducida al español.**
{% endhint %}

After obtaining your account's **API Token**, you should test your connection with our **whoami** endpoint.

{% hint style="info" %}
All requests made to Seliom's API should include the following headers:

* **Authorization:** your auth token.
* **X-Organization:** your organization's UUID.
* **Content-Type:** application/json
  {% endhint %}

## Who Am I?

<mark style="color:blue;">`GET`</mark> `https://api.seliom.com/whoami`

This endpoint validates your API token and returns information about yourself.

#### Headers

| Name           | Type   | Description                                                   |
| -------------- | ------ | ------------------------------------------------------------- |
| Content-Type   | string | application/json                                              |
| X-ORGANIZATION | string | UUID of the organization for which you are making the request |
| Authentication | string | Your authentication token                                     |

{% tabs %}
{% tab title="200 Authorization successful." %}

```
{    
   "first_name": "Clark",    
   "last_name": "Kent",
   "organization": "Seliom"
}
```

{% endtab %}

{% tab title="401 You auth token or organization UUID is invalid." %}

```
{    
   "message": "Please log in to continue."
}
```

{% endtab %}
{% endtabs %}


# Procesos

List of public endpoints for process templates

{% hint style="danger" %}
**Esta página aún no ha sido traducida al español.**
{% endhint %}

**Process Templates** are the official name of processes that have been created for your organization.

{% hint style="danger" %}
Dont forget to include the **Authorization** and **X-Organization** headers in every request. They have been omitted from these endpoints for brevity.&#x20;
{% endhint %}

## Basic Endpoints

These endpoints allow you to index, view, update and delete process templates.

## Index

<mark style="color:blue;">`GET`</mark> `https://api.seliom.com/process_templates/basic`

This endpoint retrieves the process templates that your account has permissions to see.

#### Path Parameters

| Name       | Type   | Description                                                                    |
| ---------- | ------ | ------------------------------------------------------------------------------ |
| launchable | string | If true, include only processes your user has permissions to create cases for. |

{% tabs %}
{% tab title="200 " %}

```
```

{% endtab %}
{% endtabs %}

.

## Index - API Launchable

<mark style="color:blue;">`GET`</mark> `https://api.seliom.com/process_templates/basic/launchables`

This endpoint retrieves the process templates that your account has permissions to see and create cases for **via the API**.

{% tabs %}
{% tab title="200 Process templates successfully retrieved." %}

```
{
    "process_templates": [
        {
            "name": "Time-off Requests",
            "uuid": "5c7549b6-3f7b-4c96-8346-141326da5cf0",
            "launchable": true,
            "resource_type": "process",
            "automated": true
        }
    ]
}

```

{% endtab %}
{% endtabs %}

## Show Process Template

<mark style="color:blue;">`GET`</mark> `https://api.seliom.com/process_templates/basic/:template_uuid`

This endpoint retrieves a specific process template that your account has permissions to see.

#### Path Parameters

| Name           | Type   | Description                  |
| -------------- | ------ | ---------------------------- |
| template\_uuid | string | UUID of the process template |

{% tabs %}
{% tab title="200 Process templates successfully retrieved." %}

```
{
    "process_template": {
        "name": "Time-off Requests",
        "uuid": "5c7549b6-3f7b-4c96-8346-141326da5cf0",
        "automated": true
    },
    "can_launch": true
}
```

{% endtab %}
{% endtabs %}

## Update Process Template

<mark style="color:orange;">`PUT`</mark> `https://api.seliom.com/process_templates/basic/:template_uuid`

Updates a given process template's name

#### Path Parameters

| Name           | Type   | Description                  |
| -------------- | ------ | ---------------------------- |
| template\_uuid | string | UUID of the process template |

#### Request Body

| Name | Type   | Description                       |
| ---- | ------ | --------------------------------- |
| name | string | New name for the process template |

{% tabs %}
{% tab title="200 Process templates successfully retrieved." %}

```
{
    "message": "Process updated successfully!"
}
```

{% endtab %}
{% endtabs %}

## Delete Process Template

<mark style="color:red;">`DELETE`</mark> `https://api.seliom.com/process_templates/directory/:template_uuid`

Updates a given process template's name

#### Path Parameters

| Name           | Type   | Description                  |
| -------------- | ------ | ---------------------------- |
| template\_uuid | string | UUID of the process template |

{% tabs %}
{% tab title="200 Process templates successfully retrieved." %}

```
{
    "message": "You have successfully deleted the process"
}
```

{% endtab %}
{% endtabs %}

## Automation Endpoints

These endpoints allow you to request the information required by a process template in order to create a **case** for it.

## Start Definition

<mark style="color:blue;">`GET`</mark> `https://api.seliom.com/process_templates/automation/:template_uuid/start_definition`

This endpoint retrieves the information required by the **start node** of a process template in order to create a case for it.

#### Path Parameters

| Name           | Type   | Description                  |
| -------------- | ------ | ---------------------------- |
| template\_uuid | string | UUID of the process template |

{% tabs %}
{% tab title="200 The response from the start definition." %}

```
{
    "process_template": {
        "name": "Time-off Requests",
        "uuid": "5c7549b6-3f7b-4c96-8346-141326da5cf0"
    }, 
    "manual_label": true,
    "definition_elements": [
        {
            "definition": {
                "label": "Start Date",
                "identifier": "0e49e482-b6f0-4f28-8a59-b5c506620760",
                "type": "date",
                "assignedID": "start_date",
                "required": true
            }
        },
        {
            "definition": {
                "label": "End Date",
                "identifier": "ad219870-183f-427c-b4c3-f2454447ecb6",
                "type": "date",
                "assignedID": "end_date",
                "required": true
            }
        }
    ]

```

{% endtab %}
{% endtabs %}

## Team Members - Start Definition

<mark style="color:blue;">`GET`</mark> `https://api.seliom.com/process_templates/automation/:template_uuid/definition_element/:definition_element_uuid/members`

Team member form fields require another request in order to retrieve the list of users that can be selected from the dropdown menu.

#### Path Parameters

| Name                      | Type   | Description                                                |
| ------------------------- | ------ | ---------------------------------------------------------- |
| definition\_element\_uuid | string | The UUID of the definition element of type *team\_members* |
| template\_uuid            | string | UUID of the process template                               |

{% tabs %}
{% tab title="200 The response from the start definition." %}

```
{
    "members": [
        {
            "uuid": "3cd4ca21-fa4d-4bed-9217-fb495c748d0c",
            "first_name": "Clark",
            "last_name": "Kent",
            "invitation_status": "accepted",
            "deleted": false,
            "slug": "clark-kent"
        }
    ]
}
```

{% endtab %}
{% endtabs %}


# Casos

List of public endpoints for cases

{% hint style="danger" %}
**Esta página aún no ha sido traducida al español.**
{% endhint %}

**Cases** represent instances of your process templates. For example, if you have a process template called **Purchase Order Approval**, a case would be a specific purchase order that needs to be approved.

In Seliom's API, cases also receive the name of **Process Instances.**

{% hint style="danger" %}
Dont forget to include the **Authorization** and **X-Organization** headers in every request. They have been omitted from these endpoints for brevity.&#x20;
{% endhint %}

## Index

<mark style="color:blue;">`GET`</mark> `https://api.seliom.com/process_monitor/process_instances`

This endpoint retrieves all the cases that the user has permissions to see.

#### Query Parameters

| Name            | Type   | Description                                                                 |
| --------------- | ------ | --------------------------------------------------------------------------- |
| sort\_by        | string | Sort the resulting cases by: status, newest, oldest.                        |
| created\_before | string | Date in ISO 8601 to filter by.                                              |
| created\_after  | string | Date in ISO 8601 to filter by.                                              |
| status          | array  | Array of statuses to filter by: running, error, stopped, completed, paused. |
| process\_type   | array  | Array of UUIDs of the process templates to filter by                        |
| cursor          | string | Cursor used for pagination                                                  |

{% tabs %}
{% tab title="200 Process instances successfully retrieved." %}

```
{
    "processes": [
        "name": "My first time-off request",
        "created_at": "2021-02-22 18:37:25 UTC",
        "uuid": "23d6ff0b-717c-4712-b988-ab3e5c9732f3",
        "completed_date": null,
        "status": "running",
        "sequential_id": 1,
        "process_template": {
            "name": "Time-off Requests",
            "uuid": "5c7549b6-3f7b-4c96-8346-141326da5cf0",
            "launchable": true,
            "resource_type": "process",
            "automated": true
        }, 
        "launcher" : {
            "first_name": "Clark",
            "last_name": "Kent",
            "uuid": "3cd4ca21-fa4d-4bed-9217-fb495c748d0c"
        }
    ],
    "next_cursor": null,
    "prev_cursor": null, 
    "total": 1,
    "limit": 15,
    "page": 1
}

```

{% endtab %}
{% endtabs %}

## Show Case

<mark style="color:blue;">`GET`</mark> `https://api.seliom.com/process_monitor/process_instances/:process_instance_uuid`

This endpoint retrieves a specific case and the permissions your user has for it.

#### Path Parameters

| Name                    | Type   | Description                  |
| ----------------------- | ------ | ---------------------------- |
| process\_instance\_uuid | string | UUID of the process instance |

{% tabs %}
{% tab title="200 Process instance successfully retrieved." %}

```
{
    "process_instance": {
        "name": "My first time-off request",
        "created_at": "2021-02-22 18:37:25 UTC",
        "uuid": "23d6ff0b-717c-4712-b988-ab3e5c9732f3",
        "completed_date": null,
        "status": "running",
        "sequential_id": 1,
        "process_template": {
            "name": "Time-off Requests",
            "uuid": "5c7549b6-3f7b-4c96-8346-141326da5cf0",
            "launchable": true,
            "resource_type": "process",
            "automated": true
        }, 
        "launcher" : {
            "first_name": "Clark",
            "last_name": "Kent",
            "uuid": "3cd4ca21-fa4d-4bed-9217-fb495c748d0c"
        }
    },
    "permissions": [
        "Edit tasks",
        "Perform actions",
        "Delete instance",
        "Edit comments",
        "View process instance",
        "Manage case permissions",
        "Rollback case"
    ]
}
```

{% endtab %}

{% tab title="403 Not allowed to see the process instance requested." %}

```
{
    "message": "You do not have permissions to view this process instance"
}
```

{% endtab %}

{% tab title="404 Process instance not found" %}

```
{
    "message": "Process instance not found"
}
```

{% endtab %}
{% endtabs %}

## List Case Documents

<mark style="color:blue;">`GET`</mark> `https://api.seliom.com/process_monitor/process_instances/:process_instance_uuid/documents`

This endpoint retrieves all task submissions associated to a case that contain documents.

#### Path Parameters

| Name                    | Type   | Description                  |
| ----------------------- | ------ | ---------------------------- |
| process\_instance\_uuid | string | UUID of the process instance |

{% tabs %}
{% tab title="200 Process instance documents successfully retrieved." %}

```
{
    "docs": [
        {
            "id": "a340197d-7eab-49d5-9880-1da29fefaa35",
            "status": "completed",
            "assignee_type": "member",
            "member": {
                "first_name": "Clark",
                "last_name": "Kent",
                "uuid": "23d6ff0b-717c-4712-b988-ab3e5c9732f3"
            },
            "task_definition": {
                 "id": "cade268a-443e-44d8-9c71-667079bb7ac5",
                 "name": "Upload customer documentation",
                 "task_type": "task"
            },
            "documents_info": [
                "field_name": "Customer documents",
                "content": {
                   "type": "attachment",
                   "files": [
                       {
                           "originalName": "mydocs.pdf",
                           "storageName": "cade268a-443e-44d8-9c71-667079bb7ac5/1572657277933_mydocs.pdf"
                       }
                   ]
                }
            ]
        }
    ]
}
```

{% endtab %}
{% endtabs %}

## Create New Case

<mark style="color:green;">`POST`</mark> `https://api.seliom.com/process_instances`

This endpoint creates a new case based on a given process template.

#### Request Body

| Name                    | Type   | Description                                                                            |
| ----------------------- | ------ | -------------------------------------------------------------------------------------- |
| label                   | string | Label for the new case. Required if it has not been automated in the process template. |
| submission\_elements    | object | Form elements required to create a case for the given process template                 |
| process\_template\_uuid | string | UUID of the process template                                                           |

{% tabs %}
{% tab title="200 Case created successfully." %}

```
{
    "message": "Process launched successfully!",
    "process_instance_uuid": "972a4cb0-8f4e-43b3-9e54-99c952f8531e"
}
```

{% endtab %}

{% tab title="400 Label is required for the process template" %}

```
{
    "message": "Please provide a label"
}
```

{% endtab %}

{% tab title="401 User does not have necessary permissions" %}

```
{
    "message": "You do not have permissions to launch this process"
}
```

{% endtab %}
{% endtabs %}

## Pause Case

<mark style="color:orange;">`PUT`</mark> `https://api.seliom.com/process_monitor/process_instances/:process_instance_uuid/pause`

This endpoint pauses a process instance that is currently running.

{% tabs %}
{% tab title="200 " %}

```
{
    "message": "Your process instance has been paused"
}
```

{% endtab %}
{% endtabs %}

## Stop Case

<mark style="color:orange;">`PUT`</mark> `https://api.seliom.com/process_monitor/process_instances/:process_instance_uuid/stop`

This endpoint stops a process instance that is currently running.

{% tabs %}
{% tab title="200 " %}

```
{
    "message": "Your process instance has been stopped"
}
```

{% endtab %}
{% endtabs %}

## Resume Case

<mark style="color:orange;">`PUT`</mark> `https://api.seliom.com/process_monitor/process_instances/:process_instance_uuid/resume`

This endpoint resumes a process instance that was previously stopped or paused.

{% tabs %}
{% tab title="200 " %}

```
{
    "message": "Your process instance has been resumed"
}
```

{% endtab %}
{% endtabs %}

## Delete Case

<mark style="color:red;">`DELETE`</mark> `https://api.seliom.com/process_monitor/process_instances/:process_instance_uuid`

This endpoint permanently deletes a process instance.

{% tabs %}
{% tab title="200 " %}

```
{
    "message": "Your process instance has been deleted"
}
```

{% endtab %}
{% endtabs %}


# ¿Por qué usar Seliom?

Business process management does not have to be complex

{% hint style="danger" %}
**Esta página aún no ha sido traducida al español.**
{% endhint %}

As your team grows and scales, you will notice that it becomes more difficult to keep track of everything that's happening in your organization.&#x20;

If the following sound familiar to you, it is probably the time to adopt a **Business Process Management** platform:

### 1. :envelope: Email & Spreadsheets have become the main tool to run your operations

Circling back to spreadsheets and emails from months ago to find information is usually the first sign that you need a more powerful solution to help you scale.

{% hint style="success" %}
Seliom **centralizes** all your information and makes it easily accessible to the right people
{% endhint %}

### 2. :question: You can't tell who is working on what, and when things are going to get done.

Your business is constantly processing incoming data such as customer requests, purchase orders, returns, deliveries, contracts to be signed, and services to be fulfilled. All of these need be handled by different people in your organization.

**As your operations scale, more mistakes are bound to happen, costing you precious time and money.** You will benefit from a solution like Seliom if it has become too difficult to answer simple questions such a&#x73;**:**

* When will this purchase order get approved?
* Did we respond to the customer inquiry from 2 weeks ago?
* Has anyone helped onboard our new employee yet?
* Who was in charge of packaging this product?

{% hint style="success" %}
&#x20;Seliom helps you **scale and streamline** your business processes. It makes sure that everyone operates the same way, and that things get done on time.
{% endhint %}

### 3. :loud\_sound: Information overload makes is hard to move fast

You probably have a CRM, an ERP, a chat application, and dozens of other solutions that process important business data. Making sure that all the information gets to the right place is crucial, but manually inputting information into these systems is time-consuming, error prone, and boring.&#x20;

{% hint style="success" %}
&#x20;Seliom **connects** to your existing software applications and glues everything together. Input your data once and see it appear in all your systems.
{% endhint %}

### 4. :page\_facing\_up:You have hundreds of PDF documents with outdated instructions

Managers try to standardize work by creating documents for their business processes. Unfortunately:

* They quickly become **obsolete**.&#x20;
* Nobody reads them.
* Even if the team does read them, they are difficult to enforce.

{% hint style="success" %}
&#x20;Seliom provides **always up-to-date** processes that are simple to enforce.
{% endhint %}


# Preguntas Frecuentes

{% hint style="danger" %}
**Esta página aún no ha sido traducida al español.**
{% endhint %}

## :hammer: Do I need any advanced technical skills or professional support services to implement Seliom?

Seliom was designed to be intuitive and not require advanced technical knowledge to design and automate your workflows. However, in large and complex proceses some customers prefer to receive help from technical consultants. We are happy to recommend one of our partners.

## :infinity: What does "unlimited" really mean?

We do not cap storage or the number of workflows you can run, as long as it does not create an overload on our end. If your usage goes beyond the general use cases, we will reach out to figure out a plan that works for both of us.

## :robot: How is Seliom different from RPA?

RPA (Robotic Process Automation) is a form of business process automation that relies on recording how a user interacts with a UI and then replaying it automatically for different data. Seliom is different in that it automates an entire workflow (consisting of multiple tasks) from beginning to end, and can leverage the use of robots via integrations to automate specific tasks.

Seliom complements very well with RPA, but is much broader in scope as it is a full Business Process Management (BPM) suite. It provides everything you need to manage your business processes, including documentation, modeling, orchestration, automation, and task & case management.

## :closed\_lock\_with\_key: How is my data kept safe? Is Seliom GDPR compliant?

We take data security very seriously. Our service providers\
have undergone the most strict of security audits to ensure\
that your data is never compromised. Seliom is GDPR compliant.\
You can read more about our security mesures [here](https://storage.googleapis.com/seliom-public/Seliom%20Security.pdf).

## :man\_teacher: What kind of processes can I automate with Seliom?

You can streamline and automate standardised and dispersed operations that consume a lot of time better spent elsewhere. Processes can be simple, horizontal processes such as employee onboarding, purchase order approvals, and reimbursement requests, or vertical complex processes specific to your industry that involve a lot of people and communication bottlenecks.

## :control\_knobs: What kind of level of control can I have over employee access to data?

Seliom provides very granular control over who can access different resources. We have developed our platform with the help from experts in different industries such as logistics and insurance, ensuring that your needs for access control are met.

## :computer: How does Integration with other systems work?

Every process created on Seliom has an API that allows you to create new cases for it and fetch information. This makes it very simple to trigger new cases from external systems. For example, you could trigger a Seliom process to manage a new customer onboarding after an opportunity is closed on Salesforce.

We also offer the possibility of calling external systems from within a Seliom process. For example, after a specific task is completed you can automatically send an SMS or slack notification to your team.

For advanced integrations, we recommend [Integromat](https://www.integromat.com/?pc=seliom).

## :credit\_card: Can I cancel my subscription at any time?

Yes. Seliom has no commitment requirements. You are welcome to try out the platform for a few months and cancel your subscription at any time.

## :timer: Does Seliom offer a trial period?

New teams that sign up on Seliom get 14 days to try out the platform for free. After that period of time, we will charge your monthly or yearly subscription. You are welcome to cancel at any time. If you need more time to test out the platform, please reach out to us at <info@seliom.com>


