Skip to main content
Lets the model make HTTP requests to external APIs during execution. Configure the endpoint and the model fills in the parameters at runtime.

Configuration

  • URL – the endpoint to call. Supports environment variable substitution with ${VAR_NAME} syntax
  • Method – GET, POST, PUT, PATCH, DELETE
  • Headers – custom headers, also supporting ${VAR_NAME} substitution
  • Parameters – defined as a JSON Schema. For GET requests, parameters are serialised into the query string. For other methods, they travel as a JSON request body

Environment variable substitution

Use ${VAR_NAME} in URLs and headers to inject values from your workspace’s environment variables at runtime. This keeps secrets out of your workflow definitions – store an API key as an environment variable, reference it in the header, and the actual value gets injected when the tool runs.

Correlation headers

Every request the tool makes carries two headers identifying the run it came from, so your endpoint can correlate calls back to a PromptJuggler run:
  • PromptJuggler-RunId – the root run ID. It is shared across every prompt and workflow in the same run tree, so nested tool calls all report the same value.
  • PromptJuggler-Thread – the conversation thread ID.
PromptJuggler sets these after your custom headers, so they take precedence if you configure a header with the same name. HTTP header names are case-insensitive – match on the name, not its exact casing.