§ Sourcing & automatisering

Lägg till ett API som källa

Anpassade datakällor — sport-API:er, väder, börs, vad-som-helst med ett HTTP-endpoint. Mer setup-arbete än RSS men kraftfullt.

AdminAvancerad8 min läsning

Uppdaterad idag

API-källor öppnar dörren till alla data som finns bakom ett HTTP-endpoint: sportligor, börsdata, väderdata, branschspecifika tjänster. Allt som ger JSON eller XML kan bli ett AI-utkast i Ahody.

Det här är mer avancerat än RSS men ger massor av flexibilitet.

§ Skärmdump Bevakningar — välj typ 'API' vid Lägg till bevakning
Bevakningar — välj typ 'API' vid Lägg till bevakning

  1. Identifiera API:t

    Du behöver:

    • Endpoint-URL — typ https://api.tjanst.se/v1/events
    • Autentisering — API-nyckel, OAuth-token, eller ingen alls
    • Response-format — JSON eller XML
    • Dokumentation — vad fälten betyder
  2. Identifiera vad du vill hämta

    API:er returnerar ofta mycket data — bara delar är intressanta som artiklar. Bestäm:

    • Vilka events ska bli artiklar? (Alla matcher? Bara över viss publik?)
    • Vilka fält behöver AI:n? (Rubrik, beskrivning, datum, deltagare?)
    • När ska polrering ske? (Var 5 min? Vid webhook?)
  3. Öppna källkonfigen

    Som admin: Källor"Lägg till bevakning" → välj typ "API" (eller "Custom HTTP").

  4. Grundinställningar

    • Namn — beskrivande, "Allsvenskan-matcher"
    • Prioritet — 1-10
    • Schema — hur ofta polra
  5. API-konfiguration

    • Endpoint-URL — full URL
    • HTTP-metod — vanligen GET
    • HeadersAuthorization: Bearer {token}, Content-Type: application/json, etc.
    • Query-parametrar — typ ?league=allsvenskan&season=2026
  6. Response-mappning

    Detta är det mest tekniska steget. Du säger till Ahody vilka fält i API-svaret som motsvarar vad.

    Exempel JSON-svar:

    {
      "events": [
        {
          "id": "abc",
          "title": "AIK - Hammarby 2-1",
          "summary": "AIK vann derbymöte...",
          "date": "2026-04-15T19:00:00Z"
        }
      ]
    }
    

    Mappning i Ahody:

    • Items-path: events (var artiklarna ligger)
    • ID-fält: id (för deduplicering)
    • Titel-fält: title
    • Beskrivning-fält: summary
    • Datum-fält: date
  7. Filtering (frivilligt)

    Vill du bara ha vissa events från API:t — sätt filter:

    • Bara matcher där publik > 5000 — filter på attendance > 5000
    • Bara från senaste dygnet — filter på date > yesterday
  8. Sätt AI-prompten

    Som med RSS — system-meddelande + user-meddelande + exempel.

    Exempel user-prompt för sport:

    "Här är matchdata: {data}. Skriv en kort matchsammanfattning på 100-150 ord. Börja med resultatet, sedan viktigaste händelserna, sedan citat om tillgängligt."

  9. Testkör

    Klicka "Kör nu" för att testa. Kolla Loggar för:

    • Lyckades API-anropet?
    • Returnerade förväntad data?
    • Genererades artiklar i Inkorgen?
  10. Aktivera och övervaka

    Toggla "Aktiv". Källan börjar köras enligt schema.

    Övervaka:

    • Loggar — för fel (API:t kan ändra sin response-struktur)
    • Inkorgen — kvalitet på utkast
    • Källans rate limit — många API:er har gränser, sänk schemat om ni får 429-fel

Om du fastnar

  • "Authentication failed (401)" — API-nyckel är fel eller utlöpt. Förnya hos tjänsten.
  • "Response är tom" — Endpoint kan ha ändrats. Verifiera URL:en med Postman/curl.
  • "Items-path matchar inte" — Använd Ahodys testkörnings-resultat för att se exakt struktur som returneras. Justera mappningen.
  • "Vissa items hoppas över" — Dedupliceringen baseras på ID-fält. Säkerställ att den är unik och konsistent.
  • "Rate limit error" — Sänk pollingfrekvensen. Eller använd webhook istället om API:t stödjer det.