Hämta interna konton från ert API (JSON)
I stället för att importera projekt och andra interna konton kan Expense hämta dem direkt från ert eget API. Då syns ett nytt projekt i Expense så fort det har lagts upp i ert system. URL-slug: importera-data-till-expense-via-api-json
🔄 Så fungerar det
Ni publicerar era interna konton, till exempel projekt, via ett REST-API som svarar med JSON. När en användare väljer projekt vid konteringen hämtar Expense listan från ert API, och kan skicka med det användaren söker på.
| API (JSON) | Import med XML eller Anpassad import | |
|---|---|---|
| Hur data kommer till Expense | Expense frågar ert API vid varje sökning | Ni skickar en fil enligt ett schema |
| Hur snabbt nya värden syns | Direkt | Vid nästa import |
| Vad som kan hämtas | Interna konton, till exempel projekt | Personer, roller, konton med mera |
| Vem bygger vad | Ni bygger API:et, Expense Support slår på funktionen | Ni skapar filen, Expense tar emot den |
👉 Gäller: administratörer och utvecklare som vill koppla Expense till ett eget register med interna konton.
✅ Innan du börjar
- Kontakta Expense Support, som slår på stödet för externt API.
- Bygg ett API som returnerar en lista i JSON med ett fält för kod och ett fält för beskrivning.
- Ska användarna kunna söka, se till att API:et tar emot en söksträng i URL:en och filtrerar resultatet.
⚙️ Inställningar i Expense
Gå till Administrera > Interna konton, öppna det interna kontot, till exempel Projekt, och välj Externt API som inmatningstyp. Fyll sedan i:
| Inställning | Vad du fyller i | Exempel |
|---|---|---|
| API Url | Adressen till ert API. Variabeln <%search%> byts ut mot det användaren söker på | https://exempelkund.com/project?s=<%search%> |
| Envelope | Namnet på listan om svaret ligger i ett envelope. Lämna tomt annars | projects |
| Param för kod | Namnet på fältet med koden | projectCode |
| Param för beskrivning | Namnet på fältet med beskrivningen | description |
🧾 Exempel på svar
Ange alltid teckenkodningen i headern. Utan charset tolkas svaret som ISO-8859-1.
Utan envelope
Med envelope
🔐 Säkerhet
Expense har inte stöd för sessionsbaserad inloggning mot ert API. Vi rekommenderar att API:et:
- 🔒 Använder HTTPS
- 🌐 Bara tar emot anrop från Expense IP-adress
- 🔑 Kräver en token i URL:en
❓ Vanliga frågor (FAQ)
Kan vi hämta användare via API:et?
Nej, API-kopplingen gäller interna konton som projekt. Användare importerar ni med XML-fil, Anpassad import eller Pyramid-format.
Måste API:et klara sökning?
Nej, men utan sökning visas hela listan. Med variabeln <%search%> kan användaren söka bland värdena.
Vad händer om vårt API inte svarar?
Då kan användaren inte välja värden för det interna kontot. Se till att API:et är tillgängligt.
Var får vi Expense IP-adress?
Kontakta Expense Support.
✅ Sammanfattning
- 🔄 Expense hämtar interna konton direkt från ert API
- ⚙️ Ställ in API Url, envelope och fältnamn under Administrera > Interna konton
- 🧾 API:et svarar med en JSON-lista med kod och beskrivning
- 🔐 Använd HTTPS, IP-spärr och token