mirror of
https://github.com/Sea-Haven-Industries/shoc-backend.git
synced 2026-09-30 14:13:12 +00:00
32 lines
764 B
C#
32 lines
764 B
C#
namespace SeaHaven.Services.Interfaces
|
|
{
|
|
public interface IWorkOrderWebhookService
|
|
{
|
|
int MaximumBodyBytes { get; }
|
|
|
|
Task<WorkOrderWebhookResult> ProcessAsync(
|
|
WorkOrderWebhookRequest request,
|
|
CancellationToken cancellationToken);
|
|
}
|
|
|
|
public sealed record WorkOrderWebhookRequest(
|
|
string? Timestamp,
|
|
string? KeyId,
|
|
string? Signature,
|
|
byte[] Body);
|
|
|
|
public enum WorkOrderWebhookStatus
|
|
{
|
|
Applied,
|
|
Duplicate,
|
|
Unauthorized,
|
|
Disabled,
|
|
InvalidEnvelope,
|
|
HashConflict,
|
|
Unavailable
|
|
}
|
|
|
|
public sealed record WorkOrderWebhookResult(
|
|
WorkOrderWebhookStatus Status,
|
|
bool StateMutationSkipped = false);
|
|
}
|