Hvordan publisere Altinn App-hendelser
Veiledning for publisering av Altinn App-hendelser
Er du en Altinn App-utvikler?
Vennligst se Altinn Apps-dokumentasjonen for veiledning om hvordan du aktiverer hendelsesfunksjonaliteten og definerer egendefinerte hendelser i din Altinn App.
Siden publisering av app-hendelser håndteres av kjernelogikken i applikasjonen, er denne dokumentasjonen kun relevant for utviklere som arbeider med kjerneapplikasjonslogikk, dvs. applikasjonsmalen.
Endepunkt
POST /app
Autentisering
Dette API-et krever autentisering og et Platform Access Token i headeren.
Se Autentisering og autorisasjon for mer informasjon.
Forespørsel
Content-type
application/json
Request body
Request body skal inneholde Cloud Event formatert som en AppCloudEventRequestModel og serialisert som en JSON-streng.
Events vil håndtere å sette ID og tid på Cloud Event.
Påkrevde Cloud Event-egenskaper og utvidelsesattributter
type
- hendelsestype for Cloud Event, type: string
source
- hendelseskilde for Cloud Event, type: URI
subject
- party ID for instanceOwner, type: string
Format på subject-strengen: /party/{partyId}
specversion
- Cloud Events spesifikasjonsversjon, type: string
Valgfrie Cloud Event-egenskaper og utvidelsesattributter
alternative subject
- alternativ identifikator for subject, type: string
Det alternative subject bør være en identifikator som er allment kjent for dine abonnenter. Denne egenskapen støttes som en spørre-/filterparameter ved abonnering eller spørring av hendelser. Vi anbefaler å inkludere et alternativt subject hvis subject-egenskapen er en intern ID som er ukjent for hendelsesabonnentene.
For Altinn-relaterte hendelser følger alternative subject formatet /person/16069412345
og /organisation/987564321
.
Respons
En vellykket registrering av Cloud Event skal resultere i en 201 Created-respons med GUID til Cloud Event-instansen som payload.
Content-Type
- application/json
Responskoder
201 Created: Cloud Event ble registrert vellykket
400 Bad Request: Forespørselen var ugyldig.
Se problemdetaljer i responskroppen for mer informasjon.
401 Unauthorized: Indikerer en manglende, ugyldig eller utløpt autorisasjonsheader, eller at appen ikke er autorisert til å publisere hendelser for den oppgitte kilden.
403 Forbidden: Indikerer at Platform Access Token mangler eller er ugyldig.
Eksempler
Forespørsel
Merk at Platform Access og Altinn tokens skal settes inn i headerne.
curl \
--location 'https://platform.altinn.no/events/api/v1/app' \
--header 'Content-Type: application/json' \
--header 'PlatformAccessToken: {Sett inn Platform Access token}' \
--header 'Authorization: Bearer {Sett inn Altinn token}' \
--data '{
"type": "app.instance.created",
"source": "https://ttd.apps.altinn.no/ttd/apps-test/instances/50019855/428a4575-2c04-4400-89a3-1aaadd2579cd",
"subject": "/party/50019855",
"specversion": "1.0",
"alternativesubject": "/person/01017512345"
}'
Respons
200 OK
Responsen inneholder ID-en for Cloud Event.
"4815d141-8cf6-4555-8c3c-e069c7b80c79"
400 Bad Request
Responsen inneholder et problemdetaljeobjekt med feilmeldingen i detail-egenskapen.
{
"type": "https://tools.ietf.org/html/rfc7231#section-6.5.1",
"title": "Bad Request",
"status": 400,
"detail": "Missing parameter values: source, subject and type cannot be null",
"traceId": "00-4b54a6a0c9b74bf5afc5e917863f96fd-eb14b06c1f0c3cf8-00"
}