El webhook SESAR notifica a su sistema cuando se recibe y procesa un archivo. Se basa en una solicitud HTTP que contiene un objeto estructurado y debe configurarse correctamente para garantizar una integración fluida con su entorno.
Cuando se carga un archivo mediante SESAR, se envía una notificación (un "gancho") a la dirección que usted haya definido. Esta notificación contiene un objeto cifrado que su servicio debe recibir, descifrar y procesar.
El webhook espera una solicitud POST con el siguiente contenido :
{
"args": {
"CryptedObject": "...",
"HashKey": "..."
}
}
CryptedObject : el manifiesto cifrado en base64.
HashKey : el SHA512 de la clave pública utilizada para el cifrado, también en base64.
Este contenido se envía con el encabezado Content-Type: application/json .
[WebMethod]
[ScriptMethod(UseHttpGet = false, ResponseFormat = ResponseFormat.Json)]
public void SESARHook(SesarWebHook args)
{
// Traitement ici
}
[HttpPost]
public string SESARHook([FromBody] HookArgs SEManifest)
{
var crypted = SEManifest.args.CryptedObject;
var hash = SEManifest.args.HashKey;
// Traitement ici
return "OK";
}
public class HookArgs
{
public SesarWebHook args { get; set; }
}
public class SesarWebHook
{
public string CryptedObject { get; set; }
public string HashKey { get; set; }
}
CryptedObjectPara descifrar el objeto recibido (StoreManifest), utilice el SDK de intercambios seguros de la siguiente manera:
var jsonObject = CryptoHelper.DecryptStringFromBytes(
Convert.FromBase64String(cryptedObject),
Convert.FromBase64String(base64Key),
Convert.FromBase64String(base64Iv)
);
StoreManifest manifest = SerializationHelper.DeserializeFromJson<StoreManifest>(jsonObject);
base64Key : la clave AES de 256 bits utilizada para el cifrado.
base64Iv : el vector de inicialización (IV) de 128 bits .
Estos dos valores deben protegerse en su entorno.
Los siguientes elementos son cruciales para el correcto funcionamiento de su webhook:
WebHookKey : clave AES de 256 bits (generable a través de herramientas SECT).
WebHookIv : IV 128 bits (también generable mediante herramientas SECT).
Estos valores se utilizan para cifrar/descifrar StoreManifests.

.sesar específico para su configuración. Este archivo no debe transferirse .La URL de su webhook debe seguir este formato:
https://[adresse_serveur]/[endpoint]/[methode]
Por ejemplo :
https://localhost/Test.asmx/SESARHook
El webhook se llama cada 30 segundos si hay archivos disponibles.
Un código HTTP 200 significa que el procesamiento fue exitoso.
Si el webhook falla o devuelve otro código, se volverá a intentar.
El tiempo de espera de respuesta es de 5 minutos .