GET /v1/cu/costs
Get the complete CU cost list for all triggers and actions (public, no auth)

Responses

200 OK
application/json
code integer
data object
actions object
builtIn object[]
Array of:
cost number
isStream boolean
IsStream and UptimeCu are set only on trigger items. A stream trigger bills UptimeCu once per uptime interval for as long as the workflow is active, on top of per-fire costs.
source string
"default" or "override"
type string
uptimeCu number
dynamic object[]
Array of:
cost number
isStream boolean
IsStream and UptimeCu are set only on trigger items. A stream trigger bills UptimeCu once per uptime interval for as long as the workflow is active, on top of per-fire costs.
source string
"default" or "override"
type string
uptimeCu number
logic object[]
Array of:
cost number
isStream boolean
IsStream and UptimeCu are set only on trigger items. A stream trigger bills UptimeCu once per uptime interval for as long as the workflow is active, on top of per-fire costs.
source string
"default" or "override"
type string
uptimeCu number
defaults object
builtIn number
dynamic number
logic number
trigger number
triggers object[]
Array of:
cost number
isStream boolean
IsStream and UptimeCu are set only on trigger items. A stream trigger bills UptimeCu once per uptime interval for as long as the workflow is active, on top of per-fire costs.
source string
"default" or "override"
type string
uptimeCu number
uptime object
defaultCu number
enabled boolean
enrichmentCu object
EnrichmentCu maps enricher name (e.g. "sender", "valueUsd") to its per-interval CU cost, charged on top of the trigger's base uptime for workflows that opt into the enrichment.
intervalMs integer
message string
requestId string
curl -X GET 'https://api.example.com/v1/cu/costs' \  -H 'Authorization: Bearer YOUR_API_TOKEN'
const response = await fetch('https://api.example.com/v1/cu/costs', {  method: 'GET',  headers: {      "Authorization": "Bearer YOUR_API_TOKEN"  }});const data = await response.json();console.log(data);
import requestsheaders = {    'Authorization': 'Bearer YOUR_API_TOKEN'}response = requests.get('https://api.example.com/v1/cu/costs', headers=headers)print(response.json())
package mainimport (	"fmt"	"io"	"net/http")func main() {	req, _ := http.NewRequest("GET", "https://api.example.com/v1/cu/costs", nil)	req.Header.Set("Authorization", "Bearer YOUR_API_TOKEN")	resp, _ := http.DefaultClient.Do(req)	defer resp.Body.Close()	result, _ := io.ReadAll(resp.Body)	fmt.Println(string(result))}
200 Response
{  "code": 0,  "data": {    "actions": {      "builtIn": [        {          "cost": 123,          "isStream": true,          "source": "<string>",          "type": "<string>",          "uptimeCu": 123        }      ],      "dynamic": [        {          "cost": 123,          "isStream": true,          "source": "<string>",          "type": "<string>",          "uptimeCu": 123        }      ],      "logic": [        {          "cost": 123,          "isStream": true,          "source": "<string>",          "type": "<string>",          "uptimeCu": 123        }      ]    },    "defaults": {      "builtIn": 123,      "dynamic": 123,      "logic": 123,      "trigger": 123    },    "triggers": [      {        "cost": 123,        "isStream": true,        "source": "<string>",        "type": "<string>",        "uptimeCu": 123      }    ],    "uptime": {      "defaultCu": 123,      "enabled": true,      "enrichmentCu": "<object>",      "intervalMs": 123    }  },  "message": "successfully",  "requestId": "req_abc123"}