> For clean Markdown of any page, append .md to the page URL. > For a complete documentation index, see https://docs.meetgail.com/platform/workflows/node-reference/web-and-http/http-request/llms.txt. > For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.meetgail.com/_mcp/server. # HTTP Request > Calls an external service over the web and returns its status, body, and headers for later steps to use. The HTTP Request node makes a call to an outside service and hands the response back to your workflow: the status code, the body, and the headers. It is the general-purpose way to talk to any system that has a web API, whether you are looking up a record, pushing an update, or triggering something elsewhere. ## When to use it * You need to pull data from another system mid-run, such as a policyholder's account details from your agency management system. * You want to send information out to a service, like posting a new record or kicking off a process in another tool. * You need to react to whatever the service returns, for example retrying, branching, or notifying someone when a call comes back with an error. ## Inputs | Field | What it's for | Example | | ---------------- | -------------------------------------------------------------------------------------------- | ---------------------------------------------------- | | URL | The web address of the service you are calling. | `https://api.example-crm.com/v1/accounts/sarah-chen` | | HTTP Method | The kind of call to make: get data, create, update, or delete. | `GET` | | Headers | Extra information sent with the request, such as an authorization token or the content type. | `Authorization: Bearer ...` | | Query Parameters | Values added to the end of the URL to filter or shape what comes back. | `status = active` | | Body | The data you send along, most often when creating or updating a record. | A JSON record of the new contact | Any of these can be written as an [expression](/platform/workflows/core-concepts/expressions/using-expressions-in-nodes) so the call adapts to earlier steps, and secrets like API keys can be pulled in without hard-coding them (see [Secrets](/platform/workflows/core-concepts/secrets)). ## Outputs | Field | What you get back | | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | Status code | The result code of the call. Codes in the 200s mean success; 400 and above mean the service reported a problem. A code of `0` means the request never reached the service at all. | | Response body | The content the service sent back, usually a record or a message. | | Response headers | The headers the service returned, such as content type or rate-limit hints. | ## Example Marcus Johnson submits a new quote request. A workflow calls the agency's management system to pull his existing account before deciding how to route the request. The HTTP Request node is set to `GET` the account URL, with an authorization token supplied from a secret. A later [Conditional](/platform/workflows/node-reference/logic-and-flow/conditional) step reads the status code: if it comes back in the 200s the run continues with his account data, and if it comes back `404` the run branches to create a fresh contact instead. ![The HTTP Request node configuration panel, showing the URL, HTTP method, and headers.](/_fern-img/4cb73c229849db0db1a2a012eadcfa19482e70c139cff4147ae611f458f722be.webp) > **Note** > > This node never stops the run on its own, even when a call fails. It always > hands back a result so you stay in control. Follow it with a > [Check](/platform/workflows/node-reference/logic-and-flow/check) or > [Conditional](/platform/workflows/node-reference/logic-and-flow/conditional) that reads > the status code, and treat `0` as "the service could not be reached." ## Related nodes #### [Web Search](/platform/workflows/node-reference/web-and-http/web-search) Find pages on the public web instead of calling a known API. #### [Agent](/platform/workflows/node-reference/ai/agent) Hand the response to an agent to summarize or pull out key fields. #### [Conditional](/platform/workflows/node-reference/logic-and-flow/conditional) Branch the run based on the status code that came back. #### [Check](/platform/workflows/node-reference/logic-and-flow/check) Turn the response into a single labeled outcome. > Documentation for Gail, the AI platform for financial services. Learn how to set up GailGPT and Gail Agent to automate customer communications for insurance, banking, and finance.