BokaMera.API.Host

<back to all web services

ListWebhookMessageAttempts

Requires Authentication
Requires any of the roles:bookingsupplier-administrator-write, superadmin
The following routes are available for this service:
GET/webhook/messages/{MessageId}/attemptsList webhook message attempts
namespace BokaMera.API.ServiceModel.Dtos

open System
open System.IO
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations

    [<AllowNullLiteral>]
    type WebhookMessageAttempt() = 
        member val Id:String = null with get,set
        member val MessageId:String = null with get,set
        member val EndpointId:String = null with get,set
        member val Url:String = null with get,set
        member val Status:String = null with get,set
        member val ResponseStatusCode:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val Timestamp:DateTime = new DateTime() with get,set
        member val TriggerType:String = null with get,set

    [<AllowNullLiteral>]
    type ListMessageAttemptsResponse() = 
        member val Attempts:ResizeArray<WebhookMessageAttempt> = null with get,set
        member val Done:Boolean = new Boolean() with get,set
        member val Iterator:String = null with get,set

    [<ApiResponse(Description="You were unauthorized to call this service", StatusCode=401)>]
    [<ValidateRequest(Validator="IsAuthenticated")>]
    [<AllowNullLiteral>]
    type ListWebhookMessageAttempts() = 
        ///<summary>
        ///The company id, if empty will use the company id for the user you are logged in with.
        ///</summary>
        [<ApiMember(Description="The company id, if empty will use the company id for the user you are logged in with.", IsRequired=true, ParameterType="query")>]
        member val CompanyId:Nullable<Guid> = new Nullable<Guid>() with get,set

        ///<summary>
        ///The ID of the webhook message.
        ///</summary>
        [<ApiMember(Description="The ID of the webhook message.", IsRequired=true, ParameterType="path")>]
        member val MessageId:String = null with get,set

        ///<summary>
        ///Pagination iterator.
        ///</summary>
        [<ApiMember(Description="Pagination iterator.")>]
        member val Iterator:String = null with get,set

        ///<summary>
        ///Maximum number of attempts to return.
        ///</summary>
        [<ApiMember(Description="Maximum number of attempts to return.")>]
        member val Limit:Nullable<Int32> = new Nullable<Int32>() with get,set

        ///<summary>
        ///Filter by message status. 0 = Success, 1 = Pending, 2 = Fail, 3 = Sending.
        ///</summary>
        [<ApiMember(Description="Filter by message status. 0 = Success, 1 = Pending, 2 = Fail, 3 = Sending.")>]
        member val Status:Nullable<Int32> = new Nullable<Int32>() with get,set

        ///<summary>
        ///Filter by event types.
        ///</summary>
        [<ApiMember(Description="Filter by event types.")>]
        member val EventTypes:ResizeArray<String> = null with get,set

        ///<summary>
        ///Filter by endpoint ID.
        ///</summary>
        [<ApiMember(Description="Filter by endpoint ID.")>]
        member val EndpointId:String = null with get,set

        ///<summary>
        ///Filter attempts before this date.
        ///</summary>
        [<ApiMember(Description="Filter attempts before this date.")>]
        member val Before:Nullable<DateTime> = new Nullable<DateTime>() with get,set

        ///<summary>
        ///Filter attempts after this date.
        ///</summary>
        [<ApiMember(Description="Filter attempts after this date.")>]
        member val After:Nullable<DateTime> = new Nullable<DateTime>() with get,set

F# ListWebhookMessageAttempts DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv

HTTP + JSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

GET /webhook/messages/{MessageId}/attempts HTTP/1.1 
Host: api.bokamera.se 
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	Attempts: 
	[
		{
			Id: String,
			MessageId: String,
			EndpointId: String,
			Url: String,
			Status: String,
			ResponseStatusCode: 0,
			TriggerType: String
		}
	],
	Done: False,
	Iterator: String
}