/* Options: Date: 2026-02-22 02:44:22 Version: 10.05 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://api.bokamera.se //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: ListWebhookMessageAttempts.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; abstract class ICompany { String? CompanyId; } class WebhookMessageAttempt implements IConvertible { String Id = ""; String MessageId = ""; String EndpointId = ""; String Url = ""; String Status = ""; int? ResponseStatusCode; DateTime Timestamp = DateTime(0); String TriggerType = ""; WebhookMessageAttempt({this.Id,this.MessageId,this.EndpointId,this.Url,this.Status,this.ResponseStatusCode,this.Timestamp,this.TriggerType}); WebhookMessageAttempt.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Id = json['Id']; MessageId = json['MessageId']; EndpointId = json['EndpointId']; Url = json['Url']; Status = json['Status']; ResponseStatusCode = json['ResponseStatusCode']; Timestamp = JsonConverters.fromJson(json['Timestamp'],'DateTime',context!); TriggerType = json['TriggerType']; return this; } Map toJson() => { 'Id': Id, 'MessageId': MessageId, 'EndpointId': EndpointId, 'Url': Url, 'Status': Status, 'ResponseStatusCode': ResponseStatusCode, 'Timestamp': JsonConverters.toJson(Timestamp,'DateTime',context!), 'TriggerType': TriggerType }; getTypeName() => "WebhookMessageAttempt"; TypeContext? context = _ctx; } class ListMessageAttemptsResponse implements IConvertible { List Attempts = []; bool Done; String? Iterator; ListMessageAttemptsResponse({this.Attempts,this.Done,this.Iterator}); ListMessageAttemptsResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Attempts = JsonConverters.fromJson(json['Attempts'],'List',context!); Done = json['Done']; Iterator = json['Iterator']; return this; } Map toJson() => { 'Attempts': JsonConverters.toJson(Attempts,'List',context!), 'Done': Done, 'Iterator': Iterator }; getTypeName() => "ListMessageAttemptsResponse"; TypeContext? context = _ctx; } // @Route("/webhook/messages/{MessageId}/attempts", "GET") // @ApiResponse(Description="You were unauthorized to call this service", StatusCode=401) // @ValidateRequest(Validator="IsAuthenticated") class ListWebhookMessageAttempts implements IReturn, ICompany, IConvertible, IGet { /** * The company id, if empty will use the company id for the user you are logged in with. */ // @ApiMember(Description="The company id, if empty will use the company id for the user you are logged in with.", IsRequired=true, ParameterType="query") String CompanyId = ""; /** * The ID of the webhook message. */ // @ApiMember(Description="The ID of the webhook message.", IsRequired=true, ParameterType="path") String MessageId = ""; /** * Pagination iterator. */ // @ApiMember(Description="Pagination iterator.") String? Iterator; /** * Maximum number of attempts to return. */ // @ApiMember(Description="Maximum number of attempts to return.") int? Limit; /** * Filter by message status. 0 = Success, 1 = Pending, 2 = Fail, 3 = Sending. */ // @ApiMember(Description="Filter by message status. 0 = Success, 1 = Pending, 2 = Fail, 3 = Sending.") int? Status; /** * Filter by event types. */ // @ApiMember(Description="Filter by event types.") List? EventTypes; /** * Filter by endpoint ID. */ // @ApiMember(Description="Filter by endpoint ID.") String? EndpointId; /** * Filter attempts before this date. */ // @ApiMember(Description="Filter attempts before this date.") DateTime? Before; /** * Filter attempts after this date. */ // @ApiMember(Description="Filter attempts after this date.") DateTime? After; ListWebhookMessageAttempts({this.CompanyId,this.MessageId,this.Iterator,this.Limit,this.Status,this.EventTypes,this.EndpointId,this.Before,this.After}); ListWebhookMessageAttempts.fromJson(Map json) { fromMap(json); } fromMap(Map json) { CompanyId = json['CompanyId']; MessageId = json['MessageId']; Iterator = json['Iterator']; Limit = json['Limit']; Status = json['Status']; EventTypes = JsonConverters.fromJson(json['EventTypes'],'List',context!); EndpointId = json['EndpointId']; Before = JsonConverters.fromJson(json['Before'],'DateTime',context!); After = JsonConverters.fromJson(json['After'],'DateTime',context!); return this; } Map toJson() => { 'CompanyId': CompanyId, 'MessageId': MessageId, 'Iterator': Iterator, 'Limit': Limit, 'Status': Status, 'EventTypes': JsonConverters.toJson(EventTypes,'List',context!), 'EndpointId': EndpointId, 'Before': JsonConverters.toJson(Before,'DateTime',context!), 'After': JsonConverters.toJson(After,'DateTime',context!) }; createResponse() => ListMessageAttemptsResponse(); getResponseTypeName() => "ListMessageAttemptsResponse"; getTypeName() => "ListWebhookMessageAttempts"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'api.bokamera.se', types: { 'ICompany': TypeInfo(TypeOf.Interface), 'WebhookMessageAttempt': TypeInfo(TypeOf.Class, create:() => WebhookMessageAttempt()), 'ListMessageAttemptsResponse': TypeInfo(TypeOf.Class, create:() => ListMessageAttemptsResponse()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'ListWebhookMessageAttempts': TypeInfo(TypeOf.Class, create:() => ListWebhookMessageAttempts()), });