I FEED er det mulighet for å sette opp eksterne jobber, samt sette opp en planlegger/schedule for disse.
Et typisk bruksområde er for å kommunisere med integrasjonsservice'er til eksterne systemer, slik som ERP, Bransjedatabaser, Websider etc.
Tilgang til External jobs API
For å kunne ta i bruk API for å registrere og sette opp eksterne jobber i feed® så forutsetter det at API nøkkel får nødvendige tilganger.
Som standard har en API nøkkel kun tilgang til import og / eller eksport API i feed®. Dette gir foreløpig ikke tilgang til eksternal jobs API.
Denne tilgangen kan dere få ved å kontakte oss via support@isys.no. Den kan opprettes en egen API nøkkel for dette, men en kan også gi denne tilgangen til eksisterende API nøkler hvis ønskelig.
kommende endring
Endpoints for eksterne jobber er i prosess med å flyttes ut fra /api som i utgangspunktet er reservert for feed® webklient til det eksternt tilgjengelig /import api'et. Per versjon 2.10.8 så er "external job config" tilgjengelig under /import, men nødvendige endpoints for logging ligger fortsatt under /api. Når disse er flyttet ut vil /api endpoint bli markert som utgått [deprecated], men fortsatt være tilgjengelig en god stund framover.
Konfigurasjon
API endpoints for external jobs ligger under https://<hostname>/import. Swagger dokumentasjon finnes under https://<hostname>/import/swagger-ui/index.html
For å sette opp en ekstern konfigurasjon i feed, kan følgende endpoint benyttes:
Her må minimum name, authMethod og urlToCall angis. I tillegg må basicUsername og basicPassword settes.
NB! Det er kun basic auth som er støttet for authMethod pr. nå.
Planlegger
I planleggermodulen kan det settes opp scheduler(e) for service-konfigurasjonen.
Dette gjøres enkelt i gui ved å angi jobbtype "Ekstern", velge ønsket konfigurasjon, og dernest sette opp et cronuttrykk for når denne jobben skal kjøre i feed-installasjonen.
Velg lagre cronuttrykk og lagre planlegger etterpå.
Ekstern service
Den eksterne service'en må implementere et triggerendpoint (urlToCall i konfigurasjonen), samt kommunisere med feed-installasjonen ved å gjøre api-kall for å oppdatere status og legge til alle advarsler/feil som oppstår.
1. Trigger-endpoint som tar imot kall fra feed-installasjonen må implementeres. Dette må være et POST-endpoint og kunne ta inn en requestbody.
Requestbody består av et id-felt (dette er jobbid fra feed og skal brukes videre for å legge til logglinjer og oppdatere jobbstatus). Navnet på den eksterne jobb-konfigurasjonen sendes også med i body (som String)
Eksempel:
|
2. Utføre api-kall mot feed for å oppdatere status på jobben
3. Utføre api-kall mot feed for å legge til logglinjer (warnings/error/info)
Relevante endpoints i FEED-API