|
/ Documentation /Core Features/ Using API app in OttoKit

Using API app in OttoKit

Not every app you use will have a native integration in OttoKit, and that is completely fine.

The API App in OttoKit lets you connect to any external service that has a public API, even if it has not been officially added to OttoKit yet. You can send data to it, fetch data from it, and build it into your automated workflows just like any other app.

In this guide, you will learn exactly what the API App does, what each setting means, and how to configure it step by step. No coding experience needed.

What Is the API App?

An API (Application Programming Interface) is a way for two apps to talk to each other. Most modern software tools, such as HubSpot, Notion, Airtable, payment processors, and custom databases, expose APIs that allow other tools to send or receive data from them.

The API App in OttoKit acts as a universal connector. You tell it which service to talk to, what data to send, and how to authenticate. OttoKit handles the rest, making the call automatically whenever your workflow runs.

When Would You Use It?

You would use the API App whenever:

  • An app you want to connect to is not yet natively supported in OttoKit.
  • You need to call a custom or internal API, for example, your own company’s backend system.
  • You need more control over how data is sent than a standard integration provides.

Key Terms to Know Before You Start

If you are new to APIs, these are the terms you will encounter when configuring the API App. Take a few minutes to read through them. They will make the setup process much clearer.

Endpoint URL

This is the web address of the specific action you want to perform in the external app. Think of it like a street address. It tells OttoKit exactly where to send the request. You will find the endpoint URL in the API documentation of the app you want to connect.

Example: https://api.example.com/v1/contacts

annotation on 2026 05 13 at 22 11 33

Method

The method tells OttoKit what kind of action you are performing. There are five options:

  • GET. Retrieve or read data from the server. Use this when you want to fetch information.
  • POST. Submit new data to the server. Use this when you want to create something, for example, adding a new contact.
  • PUT. Replace existing data on the server entirely.
  • PATCH. Update just part of an existing record.
  • DELETE. Remove data from the server.

The correct method for your use case is always specified in the API documentation of the app you are connecting to.

image

Payload Type

When you send data to an API, it needs to be in a specific format that the receiving server expects. This is the payload type. The most common options are:

  • JSON. The most widely used format. Sends data as structured key-value pairs.
  • Form Data. Sends data as a standard HTML form submission.
  • Query Parameters. Sends data as part of the URL itself, for example: ?name=John&[email protected].
  • x-www-form-urlencoded. Similar to Form Data but encoded differently. Common in older APIs.
  • Raw JSON. Let’s you write the JSON payload directly as raw text.
  • XML. Used by some older or enterprise APIs.
  • Text, HTML, or JavaScript. Formats for specific use cases as required by some APIs.

The correct payload type is always specified in the API documentation of the app you are connecting to.

image

Authentication

Authentication is how you prove to the external API that OttoKit has permission to access it. Think of it as showing your ID at the door. The API App supports six authentication methods:

  • No Auth. No authentication required. Rare, but some public APIs do not need it.
  • Basic Auth. Uses a username and password.
  • Bearer Token. Uses a single access token provided by the external service.
  • API Key. Uses a key-value pair sent in the header or URL. Very common.
  • JWT Bearer Token. Uses a JSON Web Token for authentication.
  • OAuth 2.0. Uses a token obtained after the user grants access. Used by services like Google and Salesforce.

The API documentation of the app you are connecting to will specify which method to use and how to obtain the required credentials.

image

Headers

Headers are additional pieces of information you send alongside your request. They are key-value pairs and often include things like content type, authorization, or caching instructions. Many APIs require specific headers. Check the API documentation to see which ones are needed.

image

Parameters

Parameters are key-value pairs that carry data you want to send to the external app. For example, when creating a coupon via an API, parameters might include fields like coupon name,amount_off, and duration. The keys (field names) are specified in the API documentation. The values can be mapped dynamically from your workflow’s trigger or previous steps.

image

How to Add the API App to Your Workflow

Before you can configure the API App, you need a workflow with a trigger already set up. If you have not created a workflow yet, see the Getting Started guide first.

Once your trigger is configured, follow these steps to add the API App as an action:

  1. In the workflow editor, click the + (plus) button below your trigger step.
  2. In the app search field, type API and select the API app from the results.
image

The API App panel will open with three tabs: Select, Configure, and Test. You will work through them in order.

Step 1: The Select Tab

The first tab you see is the Select tab. 

  • You will see the action event “API Request”. Click on it.
image

Then click on the “continue” button to go to the configure tab.

Step 2: The Configure Tab

This is the main configuration screen. Work through each setting from top to bottom.

Here, you decide whether to configure a new API call or reuse one you already saved in a previous workflow.

New API

Choose this option when you are setting up an API connection for the first time. This opens the full configuration form where you enter all the details.

Reuse API

Choose this option if you have previously saved an API configuration in OttoKit. A dropdown will appear, allowing you to select a previously saved API by name, so you don’t have to re-enter all the settings.

For a first-time setup, select New API 

image

1. Select a Method

Choose the HTTP method that matches the action you want to perform. Your API documentation will specify the correct method. When in doubt, POST is used to create data and GET is used to retrieve data.

image

In the example below, we will use the GET method to fetch details about a product in SureCart using the product ID:

image

2. Enter the Endpoint URL

Paste the full endpoint URL from your API documentation into the Endpoint URL field. This is the specific URL for the action you are performing. It will often include a base URL plus a path, for example: https://api.yourapp.com/v1/users.

You can also use dynamic data here by typing @ to insert values from your trigger or previous steps.

image

Now, let us add the product ID to replace the dynamic {id} copied from the SureCart API documentation. Please note that you can also map the product ID from the previous step by using @

image

3. Choose a Payload Type

Select the format in which you want to send your data. Your API documentation will specify the correct format. JSON is the most common choice for modern APIs.

image

Note: If you select Raw JSON, JavaScript, Text, HTML, or XML, a Data field will appear where you can type or paste your raw payload directly.

In our example, there are no parameters required. Hence, we will simply select JSON

image

4. Set Up Authentication

Select the authentication method required by the API you are connecting to. Based on your selection, additional fields will appear:

  • No Auth. No extra fields. Proceed to the next setting.
  • Basic Auth. Enter your Username and Password.
  • Bearer Token. Enter your Bearer Token in the field provided.
  • API Key. Enter the Key name, the Value, and choose where to send it: in the Header or as a Query Parameter.
  • JWT Bearer Token. Enter your JWT Bearer Token.
  • OAuth 2.0. OttoKit will guide you through the authorization flow to obtain a token.
image

In our example, we selected “No Auth” for the Authentication method because the SureCart API documentation specifies that the bearer token should be passed in the request headers. This can be seen in point 5 below.

image

5. Add Headers (Optional)

If your API requires custom headers, such as a content-type declaration or an API version header, check the Add Headers box. A key-value field will appear where you can enter each header.

Click the + button to add more than one header. You can also map dynamic values from your workflow by typing @ in the value field.

image

In our example, we are adding “Authorization” to the key field, then Bearer and token to the value field as outlined in the SureCart API documentation:

image

6. Add Parameters (Optional)

If you need to send data fields to the API, for example, a contact’s name and email, check the Add Parameters box. A key-value repeater will appear.

Enter each parameter key (the field name expected by the API) and map the value by typing @ to pull in dynamic data from your trigger or a previous step.

image

Note: Parameters are typically used with POST, PUT, and PATCH methods. For GET requests, data is usually sent via Query Parameters in the URL or headers.

In our example, since we are using a GET request to retrieve the details of a product using its Product ID, and the SureCart API documentation does not require any additional parameters for this endpoint, we will leave the “Add Parameter” option unchecked. 

7. Send Entire Payload (Optional)

If you check Send Entire Payload, OttoKit will send the complete data received from the trigger as a JSON body to the API. This is a shortcut that avoids mapping individual fields. It is useful when you want to forward all trigger data to an external system without filtering.

image

This field is also not required for our example, as there are no payloads to be sent. So, we will leave it unchecked.

image

8. Wrap Request in Array (Optional)

Some APIs expect their payload to be wrapped inside an array ([ ] brackets) rather than a plain object. If your API documentation specifies this format, set Wrap Request in Array to Yes. If not, you can keep it as No

image

In our example, we will select No as the option.

9. Save This API for Reuse (Optional)

If you plan to use this same API call in other workflows, check the Reuse This API box. A field labelled API Identifier will appear. Enter a descriptive name so you can easily identify it later, for example, SureCart Fetch product details.

Once saved, this API will be available to select from the Reuse API option in any future workflow.

image

Now that we’ve filled in all the required information, it’s time to send our API request to the SureCart API. To proceed, click the Continue button.

image

Shortcut: Using the cURL Import Feature

If the API documentation you are working with includes a cURL command, you can skip manually filling in the fields above. Instead, paste the cURL command directly into OttoKit, and it will auto-fill the Method, Endpoint URL, Headers, and Authentication fields for you.

What is cURL?

cURL is a command-line tool used to make HTTP requests. Many API documentation pages, including SureCart, Stripe, and HubSpot, provide ready-made cURL commands that you can copy and paste directly into OttoKit. You do not need to know how to use cURL yourself. OttoKit reads the command and does the configuration work for you.

Here is our example, cURL command:

image

How to Use the cURL Import

  1. On the Configure tab, click the cURL button at the top
image
  1. Paste your cURL command into the input field and click RUN.
image
image
  1. OttoKit automatically parses the command and pre-fills the Method, Endpoint URL, Headers, and Authentication fields, and you can find this by switching to the New API tab.
  2. Review the auto-filled settings, adjust if needed, then click Continue to proceed to the Test tab.

Step 3: The Test Tab

Once you have filled in all the required settings in the Configure tab, click Continue to move to the Test tab.

Here you can run a live test of your API call to confirm that everything is set up correctly before your workflow goes live.

  1. Click the Test Action button.
  2. OttoKit will send a real request to the API using the settings you configured.
  3. If the test is successful, you will see the response data returned by the API.
image
  1. Review the response to confirm the data looks correct, then click Save to finish.

Note: If the test fails, double-check your Endpoint URL, authentication credentials, and payload type. Most errors are caused by incorrect authentication or a wrong URL.

Reusing a Saved API in Another Workflow

If you previously saved an API configuration by checking the Reuse This API option, you can quickly use it again in any new workflow without re-entering all the settings.

  1. Add the API App as an action in your new workflow and reach the Configure tab.
  2. Click the Reuse API button.
image
  1. From the Choose API dropdown, select the saved API you want to use.
  2. Click Continue to proceed directly to the Test tab and verify the call.

This is especially useful when the same external API is used across many different workflows. You set it up once and reuse it everywhere.

Practical Example 1: Connecting to a CRM

Here is a practical example showing how to configure OttoKit to send data to a CRM via its API. Imagine you use a form on your website to capture new leads. You want to automatically create a contact in your CRM every time someone submits the form.

Your CRM provides an API. Here is how you would configure the API App:

SettingExample Value
MethodPOST
Endpoint URLhttps://api.yourcrm.com/v1/contacts
Payload TypeJSON
AuthenticationAPI Key (Key: x-api-key, Value: your API key, Add to Header)
Parametersname mapped from form trigger, email mapped from form trigger

Once configured and tested, your workflow will automatically create a new CRM contact every time the form is submitted. No manual work required.

Practical Example 2: Using cURL Import with SureCart

SureCart is a WordPress-native eCommerce platform with a REST API. This example shows how to use the cURL import feature to connect OttoKit to SureCart’s Customers endpoint. This is useful for syncing customer data or triggering follow-up workflows after a purchase.

Step 1: Get Your SureCart API Credentials

From your SureCart dashboard, go to Settings, then API Keys. Copy your Secret API Key

Step 2: Find the cURL Command

SureCart uses Bearer Token authentication. The cURL command to list your customers is:

curl –request GET \

  –url https://api.surecart.com/v1/customers \

  –header ‘Authorization: Bearer <token>’

Replace token with your Secret API Key.

Step 3: Import into OttoKit

  1. In your workflow, add the API app as an action and open the Configure tab.
  2. Click on cURL.
  3. Paste the cURL command with your actual token filled in, then click Run. OttoKit will populate the fields as follows:
FieldAuto-Filled Value
MethodGET
Endpoint URLhttps://api.surecart.com/v1/customers
HeaderBearer <Your token>
  1. Click Continue, then click Test Action. If successful, you will see your SureCart customer records returned as JSON in the response.
  2. Click Save to finish. The step is now ready to use in your workflow.

Note: Never paste cURL commands containing live API keys into shared documents or public repositories. In OttoKit, enter your real credentials directly in the form fields after the import, or reference them from a Global Variable for added security.

Tips for Getting It Right

  • Always read the API documentation of the app you are connecting to. It will tell you the correct method, endpoint URL, payload type, and authentication method.
  • Test before publishing. Always use the Test tab to confirm your API call works correctly before turning the workflow on.
  • Use dynamic data. Type @ in any field to map values from your trigger or previous steps. This is what makes the automation powerful.
  • Save frequently used APIs. If you call the same endpoint in multiple workflows, check Reuse This API to avoid re-entering settings each time.
  • Check your authentication. Most API failures are caused by an expired, incorrect, or missing token or API key.

Need Help?

If you get stuck, our support team is happy to help.

Reach out at [email protected] or visit our support page 

You can also browse more guides in the OttoKit Knowledge Base.

Was this doc helpful?
What went wrong?

We don't respond to the article feedback, we use it to improve our support content.

Need help? Contact Support
Scroll to Top