API för AI-personalisering
Generera AI-skrivna e-posthookar och ämnesrader via API:et. Lär dig när du använder sync eller batch, mönstren för idempotens och polling, priser och felkoder.
Översikt
Endpoints för AI-personalisering genererar två e-postvariabler per lead: en `ai_hook` (en kort, nyfikenhetsdriven inledning) och en `ai_subject` (en ämnesrad). Båda skrivs av en LLM utifrån leadens egna webbplatsdata, på det språk du begär. Varje ny generering kostar 1,06 kr; cacheträffar och misslyckanden debiteras aldrig. Hook- och subject-familjerna delar ett identiskt kontrakt — byt `ai/hook` mot `ai/subject` och svarsfältet `hook` mot `subject`.
Sync eller Batch — vilken du ska välja
Använd den **synkrona** endpointen när du behöver ett värde direkt och kan vänta ~3 sekunder: ```bash curl -X POST https://api.meirra.com/v1/ai/hook \ -H "x-api-key: mk_live_your_key_here" \ -H "Content-Type: application/json" \ -d '{"leadId": "<lead-uuid>", "locale": "en", "mode": "native"}' ``` Använd **batch**-endpointen för många leads (upp till 100). Den skapar ett asynkront jobb, debiterar inget vid skapandet och fakturerar 1,06 kr per lyckad lead — misslyckade leads är gratis. Leaden måste vara din; okända eller andra kunders leads ger 404.
Polla ett batchjobb
En batchförfrågan returnerar ett `jobId` och en `pollUrl`. Polla `GET /v1/jobs/{id}` tills `status` är `completed` och läs sedan resultaten per lead: ```bash # 1. Skapa batchen curl -X POST https://api.meirra.com/v1/ai/hook/batch \ -H "x-api-key: mk_live_your_key_here" \ -H "Content-Type: application/json" \ -d '{"leads": [{"leadId": "<uuid-1>"}, {"leadId": "<uuid-2>", "locale": "de", "mode": "translate"}]}' # 2. Polla den returnerade pollUrl curl https://api.meirra.com/v1/jobs/<jobId> \ -H "x-api-key: mk_live_your_key_here" ``` Lyckade leads innehåller en `hook`; misslyckade gör det inte och debiterades inte.
Idempotens
Skicka en `Idempotency-Key`-header på varje förändrande förfrågan (särskilt `batch`) så att ett nätverksåterförsök aldrig skapar ett dubbelt jobb eller debiterar två gånger. En upprepning inom 24 timmar returnerar det ursprungliga svaret med `X-Idempotent-Replayed: true` och debiteras inte igen. Att återanvända en nyckel med en annan body ger `409 IDEMPOTENCY_KEY_CONFLICT`; en nyckel längre än 128 tecken ger `400 INVALID_IDEMPOTENCY_KEY`. ```bash curl -X POST https://api.meirra.com/v1/ai/hook/batch \ -H "x-api-key: mk_live_your_key_here" \ -H "Idempotency-Key: my-batch-2026-05-29-001" \ -H "Content-Type: application/json" \ -d '{"leads": [{"leadId": "<lead-uuid>"}]}' ```
Exempel i Node och Python
Minimala exempel i Node och Python: **Node (fetch):** ```javascript const res = await fetch("https://api.meirra.com/v1/ai/hook", { method: "POST", headers: { "x-api-key": process.env.MEIRRA_API_KEY, "Content-Type": "application/json", }, body: JSON.stringify({ leadId, locale: "en" }), }); const { data } = await res.json(); console.log(data.hook); ``` **Python (requests):** ```python import os, requests res = requests.post( "https://api.meirra.com/v1/ai/hook", headers={"x-api-key": os.environ["MEIRRA_API_KEY"]}, json={"leadId": lead_id, "locale": "en"}, ) print(res.json()["data"]["hook"]) ```
Hämta och lista (gratis)
Att läsa redan genererade värden kostar aldrig krediter. Hämta det senaste värdet för en lead med `GET /v1/ai/hook/{leadId}`, eller lista dina genereringar med `GET /v1/ai/hook?limit=50&status=complete&locale=en`. Listan är paginerad (`limit` ≤ 100, `offset`) och filtrerbar på `locale`, `status` och `from` (ISO 8601). Värdet är `null` tills dess `status` är `complete`.
Felkoder
AI-genereringar debiteras aldrig vid misslyckande. Koderna du kan se: • `LEAD_NOT_FOUND` (404) — leaden finns inte eller tillhör inte dig • `NO_SCRAPE_DATA` (422) — inga webbplatsdata fanns att generera från • `GENERATION_QUALITY_FAILED` (422) — utdata klarade inte formatreglerna efter ett återförsök • `UPSTREAM_TIMEOUT` / `UPSTREAM_UNAVAILABLE` (503) — AI-leverantören är upptagen; försök igen snart • `INSUFFICIENT_BALANCE` (402) — för lågt saldo för förfrågan (eller hela batchen) • `RATE_LIMIT_EXCEEDED` (429) — fler än 1000 förfrågningar/timme per nyckel
Upptäck funktioner
Anropa `GET /v1/ai/info` för att läsa den live-katalogen — variabler, priser, språk som stöds, genereringslägen och hastighetsgräns. Utan API-nyckel returneras den offentliga katalogen; med en giltig nyckel returneras även ditt saldo och dina AI-utgifter för innevarande månad. Det är gratis och debiteras aldrig.
Relaterade artiklar
API-fakturering
Hur krediter, priser och användningsbaserad fakturering fungerar för alla endpoints.
Hastighetsgränser
Gränsen på 1000 förfrågningar/timme per nyckel och hur batchförfrågningar räknas mot den.
API-autentisering
Säkra din API-integration med rätt autentisering. Lär dig om API-nycklar, headers, IP-allowlists och bästa praxis för säkerhet.