AI agents for Netlify
Sites and builds reporting into your workflows. AGNT connects to Netlify so agents can read what happens there, reason about it, and act — with a receipt for every run.
Netlify and AGNT, in brief
| What it does | Lets an AGNT agent read from and act in Netlify. |
|---|---|
| Connects with | Bearer — held in the local vault |
| AGNT node | custom-api, or the zapier-action bridge |
| Runs when | A build completes |
| Typical build time | Ten minutes |
| Where data goes | Nowhere by default — AGNT runs on your machine and credentials never leave it. |
What you can automate
Reacts when…
- a build completes
- a form submission arrives
Agents can…
- read build status
- process form submissions
Teams use it for
- form submissions triaged instantly
- build health in the weekly report
- failures explained, not just flagged
The Netlify workflow, to configure
Design goal for Netlify: form submissions triaged instantly; build health in the weekly report; failures explained, not just flagged. The template below supplies configurable nodes, not the complete logic for those goals.
Use this Netlify setup template to arrange the schedule, input review and API operation. Configure the account-specific fields and add your own decision and approval controls before activation.
This is a schema-checked starting point, not an end-to-end tested automation. Replace every CONFIGURE_ value, choose the operations you intend, connect credentials and map source outputs into later inputs. An edge orders steps; it does not supply a condition, an approval gate or a field mapping. Add and test those controls explicitly before any write. Cloud APIs and model providers may receive data. Keep the workflow inactive until tested with fixtures.
{
"id": "a934db9b-db96-4a73-a4f3-daf87c7bef3a",
"name": "Netlify — read, decide, act",
"nodes": [
{
"id": "527ce505-db7c-4712-aade-0be713f4c330",
"text": "Run on a schedule",
"x": 512,
"y": 144,
"isEditing": false,
"type": "trigger-timer",
"icon": "clock",
"category": "trigger",
"isSelected": false,
"parameters": {
"fireOnStart": "No",
"scheduleType": "Interval",
"schedule": "Every 15 Minutes"
},
"description": "Setup template for Timer Trigger. This trigger node fires the workflow at specified intervals or at a specific time. Configure credentials, inputs and output mapping before use.",
"error": null,
"isActive": false,
"output": null,
"outputs": {}
},
{
"id": "c5aba350-b2e9-48cf-ac9c-9c056730c39a",
"text": "Review source and draft",
"x": 512,
"y": 336,
"isEditing": false,
"type": "agnt-agent",
"icon": "agnt",
"category": "action",
"isSelected": false,
"parameters": {
"agentId": "CONFIGURE_AGENTID",
"message": "Decide what needs to happen in Netlify. Explain your reasoning.\nSource input: CONFIGURE_SOURCE_INPUT. Produce a reviewable draft only; do not take external actions."
},
"description": "Setup template for Agent Chat. Chat with an AI agent from your agent library. Select an agent and send messages to interact with it within your workflow. Configure credentials, inputs and output mapping before use.",
"error": null,
"isActive": false,
"output": null,
"outputs": {}
},
{
"id": "75c62817-5d13-4762-a1e4-48f95bb9b340",
"text": "Call the Netlify API",
"x": 512,
"y": 528,
"isEditing": false,
"type": "custom-api",
"icon": "connect",
"category": "action",
"isSelected": false,
"parameters": {
"url": "https://api.netlify.com/api/v1/sites/{siteId}/deploys",
"method": "GET",
"authType": "None",
"headers": "{}",
"query": ""
},
"description": "Setup template for Custom API Request. This action node makes a custom API request to any endpoint with configurable method, headers, and authentication. Configure credentials, inputs and output mapping before use.",
"error": null,
"isActive": false,
"output": null,
"outputs": {}
}
],
"edges": [
{
"id": "3e08b988-b465-4cb1-a19b-a417ed121de6",
"start": {
"id": "527ce505-db7c-4712-aade-0be713f4c330",
"type": "output"
},
"end": {
"id": "c5aba350-b2e9-48cf-ac9c-9c056730c39a",
"type": "input"
},
"startX": 800,
"startY": 168,
"endX": 512,
"endY": 360
},
{
"id": "ce4811f5-4e78-4a04-aa00-33d1c07ef424",
"start": {
"id": "c5aba350-b2e9-48cf-ac9c-9c056730c39a",
"type": "output"
},
"end": {
"id": "75c62817-5d13-4762-a1e4-48f95bb9b340",
"type": "input"
},
"startX": 800,
"startY": 360,
"endX": 512,
"endY": 552
}
],
"zoomLevel": 1,
"canvasOffsetX": 0,
"canvasOffsetY": 0,
"isTinyNodeMode": false
}
Configure Custom API Request
This action node makes a custom API request to any endpoint with configurable method, headers, and authentication.
- url — The URL of the API endpoint Current example:
https://api.netlify.com/api/v1/sites/{siteId}/deploys. - method — The HTTP method for the request Current example:
GET. - authType — The type of authentication Current example:
None. - query — Query parameters for the request (e.g., 'key1=value1&key2=value2') Current example:
. - headers — Optional headers for the request. e.g., {"Content-Type": "application/json"} Current example:
{}.
Netlify setup: choose the site ID before working with deploys. Test an authenticated site read first, then check that the selected team owns that site. A deploy operation is a separate write, not the read-only request in this template; review its artifact and destination before enabling it. Netlify API guides.
Run this against your own Netlify
Free to download, local by default — your Netlify credentials stay in a vault on your own disk.
Builds and forms in one place
Netlify covers two different automation needs: build health, which belongs in your engineering reporting, and form submissions, which are usually an inbound business process waiting to be triaged.
Form submissions are leads or requests
A submission sitting in a dashboard is a lead nobody has responded to. Reading it on arrival, classifying it and routing it to the right place is a small workflow with an immediate payoff.
Connecting Netlify today
Netlify has no dedicated node in AGNT so far. That is not a blocker — it authenticates with bearer, which the custom-api node handles directly, and the exact call is below.
| What you need | Value |
|---|---|
| Endpoint | https://api.netlify.com/api/v1/sites/{siteId}/deploys |
| Method | GET |
| Authentication | Bearer |
| Header | Authorization: Bearer {personalAccessToken} |
| Reference | Netlify API documentation |
Worth knowing: Deploy state moves through several values before `ready`; poll rather than assuming the first response is final.
Where Netlify integrations usually go wrong
Deploy state moves through several values before `ready`; poll rather than assuming the first response is final.
Everything else about Netlify behaves the way you would expect, so once that is handled the rest of the build is ordinary. The GET above is the shape every other call takes.
Connect Netlify in two minutes
- Download AGNT Community Core — free, local-first, no account needed to run.
- Connect by pasting an API key into AGNT’s vault — stored encrypted on your machine, never uploaded.
- Drop the Netlify node into a workflow or hand it to an agent — the first run produces a receipt you can read line by line.
Netlify + AGNT — common questions
Can form submissions be triaged automatically?
Yes — read, classified and routed on arrival, including into a CRM.
Can build failures be explained?
Yes, summarised into a likely cause rather than forwarded as a log.
How is Netlify connected?
With an API token held encrypted in the local vault.