4 min readUpdated Mar 2, 2026

API Builder — Real-World Examples

Three complete integrations built from scratch, demonstrating different features of the API Builder.


Example 1: Weather API

A common first integration — fetching current weather data.

Gathering information from docs:

API Builder Configuration

StepFieldValue
GeneralDisplay NameOpenWeatherMap
GeneralBase URLhttps://api.openweathermap.org/data/2.5
GeneralAuth TypeAPI Key
EndpointMethodGET
EndpointPath/weather
EndpointSummaryGet current weather for a city

Parameters

NameInRequired
qQuery✅ Yes
unitsQuery❌ No
appidQuery✅ Yes

Sample Response → Output Fields

json
{
  "main": { "temp": 72.5, "humidity": 65, "pressure": 1013 },
  "weather": [{ "description": "clear sky", "icon": "01d" }],
  "name": "London"
}
Output LabelJSON Path
Temperaturemain.temp
Humiditymain.humidity
Pressuremain.pressure
Descriptionweather[*].description
CityNamename

Example 2: CRM Customer Lookup

Fetching a specific customer record by ID — demonstrates path parameters and root accessors.

API Builder Configuration

StepFieldValue
GeneralDisplay NameAcme CRM
GeneralBase URLhttps://api.acmecrm.com/v2
GeneralAuth TypeBearer Token
EndpointMethodGET
EndpointPath/customers/{customerId}
EndpointSummaryGet customer by ID

Parameters

NameInRequired
customerIdPath✅ Yes

Sample Response → Output Fields

json
{
  "customer": {
    "id": "CUST-1234",
    "name": "Jane Smith",
    "email": "jane@example.com",
    "company": "Acme Corp",
    "lifetime_value": 12500.00,
    "tags": ["enterprise", "active"]
  }
}

Root Accessor: customer

Output LabelJSON Path
CustomerIdid
Namename
Emailemail
Companycompany
LifetimeValuelifetime_value

Why use a Root Accessor here? The actual customer data is nested inside a customer wrapper. Setting Root Accessor to customer means field paths are shorter and cleaner — name instead of customer.name.


Example 3: Paginated List API

Fetching a list of recent transactions with pagination — demonstrates query parameters, array response handling, and nested field extraction.

API Builder Configuration

StepFieldValue
GeneralDisplay NamePayment Gateway
GeneralBase URLhttps://api.payments.io/v1
GeneralAuth TypeAPI Key
EndpointMethodGET
EndpointPath/transactions
EndpointSummaryList recent transactions

Parameters

NameInRequired
limitQuery❌ No
pageQuery❌ No
statusQuery❌ No

Sample Response → Output Fields

json
{
  "results": [
    {
      "id": "txn_001",
      "amount": 150.00,
      "currency": "USD",
      "customer": { "name": "John Doe", "email": "john@example.com" },
      "status": "completed"
    }
  ],
  "pagination": { "page": 1, "total_pages": 5 }
}

Root Accessor: results

Output LabelJSON Path
TransactionId[*].id
Amount[*].amount
Currency[*].currency
CustomerName[*].customer.name
CustomerEmail[*].customer.email
Status[*].status

Why does the path start with [*]? Because results is an array. After setting Root Accessor to results, each path starts at the array itself. [*] means "for every item in the array, extract this field."


Next Steps