Skip to main content

The service_config Snapshot

The service_config_snapshot holds everything you need to call the operator's configured external services — the non-LLM vendors like text-to-speech or image generation. Unlike the Agent node, there's no dedicated "service node," so you read this snapshot yourself when you build a service call (see Making Service Calls).

Shape

It names the service config set and lists service assignments, one per configured service:

{
"service_config_set_name": "Production Services",
"service_assignments": [
{
"service_slug": "elevenlabs-tts",
"api_url": "https://api.elevenlabs.io/v1/text-to-speech/{{VOICE_ID}}/with-timestamps",
"compiled_api_url": "https://api.elevenlabs.io/v1/text-to-speech/abc123.../with-timestamps",
"method": "POST",
"num_retries": 2,
"unit": "characters",
"per_unit": 1000,
"headers": [ { "name": "xi-api-key", "value": "..." } ],
"variables": [ { "name": "VOICE_ID", "value": "abc123..." } ]
}
]
}

The fields you'll use

  • compiled_api_url — the URL with the operator's variables already substituted in. Use this as the endpoint; the raw api_url (with {{PLACEHOLDER}} intact) and the variables list are there for reference.
  • method and headers — the request method and headers the operator configured. Headers are passed through exactly as entered — the platform doesn't inject secrets, so if a header needs a credential that isn't in the snapshot, that's yours to supply at call time.
  • num_retries — the retry count the operator set, if you want to honour it.
  • unit and per_unit — the service's consumption units. These tell you what to measure and report: when you log the service call, report input_size/output_size in this unit, so the platform's cost formula comes out right. (Pricing isn't in the snapshot; the platform prices your reported usage.)

The snapshot gives you the what and how of the call; making the call — an HTTP request, then a Log node — is covered in the Calling Services section.