Hopp til slutten av metadata
Gå til begynnelsen av metadataene

Du ser på en gammel versjon av denne siden. Se den nye versjonen.

Sammenlign med nåværende Vis sidehistorikk

« Forrige Versjon 3 Gjeldende »

Oppsett av abonnement gjøres via henvendelse til Service Desk. Følgende må være en del av henvendelsen;

  • Søknadssystemetsnavn (typisk identifikatoren som brukes i xml-noden metadata/fraSluttbrukersystem )

  • URL til WebhookAPIet som det ønskes å motta hendelser på

Krav til Webhook API

WebhookAPI-et må kunne ta i mot en POST-request med støtte for Cloud Event Schema v1.0. I tillegg til dette må API-et støtte validering av abonnementet. For cloud events gjøres dette ved et OPTIONS kall til endepunktet. Se spec for detaljer https://github.com/cloudevents/spec/blob/v1.0/http-webhook.md#4-abuse-protection

Eksempel på en controller i Dotnet som håndterer Cloud Events

 C# controller for Cloud Events
using Azure.Messaging;
using Microsoft.AspNetCore.Mvc;
using System.Text;

namespace CloudEventController
{
    [ApiController]
    [Route("api/[controller]")]
    public class CloudEventController(ICloudEventService cloudEventService) : ControllerBase
    {
        [HttpPost]
        public async Task<IActionResult> PostCloudEvent(CloudEvent cloudEvent)
        {
			await cloudEventService.HandleEventAsync(cloudEvent);

			return Ok();            
        }

        [HttpOptions]
        public IActionResult Validate()
        {
            using var reader = new StreamReader(Request.Body, Encoding.UTF8);
            
            var webhookRequestOrigin = HttpContext.Request.Headers["WebHook-Request-Origin"].FirstOrDefault();
            var webhookRequestCallback = HttpContext.Request.Headers["WebHook-Request-Callback"];
            var webhookRequestRate = HttpContext.Request.Headers["WebHook-Request-Rate"];

            HttpContext.Response.Headers.Append("WebHook-Allowed-Rate", "*");
            HttpContext.Response.Headers.Append("WebHook-Allowed-Origin", webhookRequestOrigin);           

            return Ok();
        }
    }
}

Ressurser:

Mer info om Microsoft sine krav til Webhook-API: WebHook event delivery - Azure Event Grid

Microsoft CloudEvents docs: https://learn.microsoft.com/en-us/azure/event-grid/cloudevents-schema

Cloud Events Abuse Protection docs: https://github.com/cloudevents/spec/blob/v1.0/http-webhook.md#4-abuse-protection

  • Ingen etiketter