Get CU costs
Get the complete CU cost list for all triggers and actions (public, no auth)
GET
/v1/cu/costs
Get the complete CU cost list for all triggers and actions (public, no auth)
Responses
200
OK
application/jsoncode
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"}
API Playground
Try this endpoint
GET
/v1/cu/costs
