[{"data":1,"prerenderedAt":304},["ShallowReactive",2],{"navigation":3,"\u002Freference\u002Fingest-slug":53,"\u002Freference\u002Fingest-slug-surround":299},[4,13,28,46],{"title":5,"path":6,"stem":7,"children":8,"icon":12},"Getting Started","\u002Fgetting-started","1.getting-started\u002F1.index",[9],{"title":10,"path":6,"stem":7,"icon":11},"Concepts","i-lucide-house",false,{"title":14,"path":15,"stem":16,"children":17,"page":12},"Guides","\u002Fguides","2.guides",[18,23],{"title":19,"path":20,"stem":21,"icon":22},"Server webhooks","\u002Fguides\u002Fserver-webhooks","2.guides\u002F1.server-webhooks","i-lucide-server",{"title":24,"path":25,"stem":26,"icon":27},"Signed webhooks","\u002Fguides\u002Fsigned-webhooks","2.guides\u002F2.signed-webhooks","i-lucide-shield-check",{"title":29,"path":30,"stem":31,"children":32,"page":12},"Reference","\u002Freference","3.reference",[33,37,41],{"title":34,"path":35,"stem":36,"icon":22},"POST \u002Fapi\u002Fv1\u002Fingest","\u002Freference\u002Fingest","3.reference\u002F1.ingest",{"title":38,"path":39,"stem":40,"icon":27},"POST \u002Fapi\u002Fv1\u002Fingest\u002F:slug","\u002Freference\u002Fingest-slug","3.reference\u002F2.ingest-slug",{"title":42,"path":43,"stem":44,"icon":45},"Headers, errors & limits","\u002Freference\u002Fheaders-errors-limits","3.reference\u002F3.headers-errors-limits","i-lucide-list-checks",{"title":47,"path":48,"stem":49,"children":50,"icon":52},"Changelog","\u002Fchangelog","4.changelog\u002F1.index",[51],{"title":47,"path":48,"stem":49,"icon":52},"i-lucide-history",{"id":54,"title":38,"body":55,"description":292,"extension":293,"links":294,"meta":295,"navigation":296,"path":39,"seo":297,"sitemap":294,"stem":40,"__hash__":298},"docs\u002F3.reference\u002F2.ingest-slug.md",{"type":56,"value":57,"toc":284},"minimark",[58,67,72,83,99,182,192,195,199,247,254,258,272,276],[59,60,61,62,66],"p",{},"HMAC-signed lead submission, keyed by form slug. See the ",[63,64,65],"a",{"href":25},"signed webhooks guide"," for a walkthrough and worked examples.",[68,69,71],"h2",{"id":70},"request","Request",[73,74,79],"pre",{"className":75,"code":77,"language":78},[76],"language-text","POST https:\u002F\u002Fapp.blackglassleads.com\u002Fapi\u002Fv1\u002Fingest\u002F:slug\n","text",[80,81,77],"code",{"__ignoreMap":82},"",[59,84,85,88,89,98],{},[80,86,87],{},":slug"," is the form's slug (",[90,91,92,93,97],"strong",{},"Settings → Forms → ",[94,95,96],"span",{},"form"," → Delivery",").",[100,101,102,118],"table",{},[103,104,105],"thead",{},[106,107,108,112,115],"tr",{},[109,110,111],"th",{},"Header",[109,113,114],{},"Required",[109,116,117],{},"Value",[119,120,121,135,155,169],"tbody",{},[106,122,123,129,132],{},[124,125,126],"td",{},[80,127,128],{},"X-BGL-Timestamp",[124,130,131],{},"Yes",[124,133,134],{},"Unix seconds; within ±5 minutes of server time",[106,136,137,142,144],{},[124,138,139],{},[80,140,141],{},"X-BGL-Signature",[124,143,131],{},[124,145,146,147,150,151,154],{},"Hex ",[80,148,149],{},"HMAC-SHA256(secret, \"{timestamp}.{rawBody}\")",". Optional ",[80,152,153],{},"sha256="," prefix accepted.",[106,156,157,162,164],{},[124,158,159],{},[80,160,161],{},"Content-Type",[124,163,131],{},[124,165,166],{},[80,167,168],{},"application\u002Fjson",[106,170,171,176,179],{},[124,172,173],{},[80,174,175],{},"X-BGL-Idempotency-Key",[124,177,178],{},"No",[124,180,181],{},"1–255 char string; dedups retries for 24h",[59,183,184,187,188,191],{},[90,185,186],{},"Body"," — arbitrary flat JSON object, max ",[90,189,190],{},"128 KB",".",[59,193,194],{},"A form with no webhook secret configured rejects every request — signing is mandatory on this surface, not optional.",[68,196,198],{"id":197},"response","Response",[100,200,201,213],{},[103,202,203],{},[106,204,205,208,210],{},[109,206,207],{},"Status",[109,209,186],{},[109,211,212],{},"Meaning",[119,214,215,230],{},[106,216,217,222,227],{},[124,218,219],{},[80,220,221],{},"202",[124,223,224],{},[80,225,226],{},"{ \"submission_id\": \"\u003Cuuid>\" }",[124,228,229],{},"Accepted and scored.",[106,231,232,237,242],{},[124,233,234],{},[80,235,236],{},"200",[124,238,239],{},[80,240,241],{},"{ \"status\": \"rejected\" }",[124,243,244,245,191],{},"Opaque rejection — see ",[63,246,42],{"href":43},[59,248,249,250,253],{},"A ",[80,251,252],{},"200 { \"status\": \"rejected\" }"," covers: form not found\u002Finactive\u002Fambiguous slug, suspended workspace, no webhook secret configured, missing or invalid timestamp, timestamp outside the ±5 minute window, missing or malformed signature, signature mismatch, rate limit exceeded, malformed idempotency key, and oversized body.",[68,255,257],{"id":256},"rate-limits","Rate limits",[59,259,260,261,264,265,268,269,191],{},"Per workspace: ",[90,262,263],{},"1,000\u002Fminute",", ",[90,266,267],{},"50,000\u002Fday"," — tracked separately from Surface 1a's buckets. See ",[63,270,42],{"href":271},"\u002Freference\u002Fheaders-errors-limits#rate-limits",[68,273,275],{"id":274},"idempotency","Idempotency",[59,277,278,279,191],{},"Same 24-hour dedup semantics as ",[63,280,282],{"href":281},"\u002Freference\u002Fingest#idempotency",[80,283,34],{},{"title":82,"searchDepth":285,"depth":286,"links":287},1,2,[288,289,290,291],{"id":70,"depth":286,"text":71},{"id":197,"depth":286,"text":198},{"id":256,"depth":286,"text":257},{"id":274,"depth":286,"text":275},"Reference for the HMAC-signed slug ingest endpoint — Surface 1b.","md",null,{},{"icon":27},{"title":38,"description":292},"43apoCjekkl35e6jXiZnBupz4-t0wXEk8-G2gQ18kG0",[300,302],{"title":34,"path":35,"stem":36,"description":301,"icon":22,"children":-1},"Reference for the Bearer-token server ingest endpoint — Surface 1a.",{"title":42,"path":43,"stem":44,"description":303,"icon":45,"children":-1},"The shared header, response-shape, and rate-limit contract across both server ingest surfaces.",1786814658631]