Report Filing Service

<back to all web services

GetWebhookSubscriptionAsync

GetSubscriptionsWebhooksAsync

Represents a request to retrieve a webhook subscription by its unique identifier, and retrieve its details in an asynchronous operation.

Requires Authentication
The following routes are available for this service:
GET/async/webhooks/subscriptions/{Id}
import java.math.*
import java.util.*
import net.servicestack.client.*


/**
* Represents a request to retrieve a webhook subscription by its unique identifier, and retrieve its details in an asynchronous operation.
*/
@Api(Description="Represents a request to retrieve a webhook subscription by its unique identifier, and retrieve its details in an asynchronous operation.")
open class GetWebhookSubscriptionAsync : GetWebhookSubscriptionBase()
{
}

/**
* Specifies a request to retrieve a webhook subscription by its unique identifier, and retrieve its details.
*/
@Api(Description="Specifies a request to retrieve a webhook subscription by its unique identifier, and retrieve its details.")
open class GetWebhookSubscriptionBase : IGet
{
    /**
    * The unique identifier of the subscriber.
    */
    @ApiMember(Description="The unique identifier of the subscriber.", IsRequired=true, Name="Id")
    var id:String? = null
}

/**
* Represents a service response that encapsulates a webhook subscription.
*/
@Api(Description="Represents a service response that encapsulates a webhook subscription.")
open class SubscriptionResponse
{
    /**
    * The encapsulated webhook subscription of the response. The secret of the webhook subscription is encrypted and can only be decrypted by the owner of the private key.
    */
    @ApiMember(Description="The encapsulated webhook subscription of the response. The secret of the webhook subscription is encrypted and can only be decrypted by the owner of the private key.", Name="Subscription")
    var subscription:WebhookSubscription? = null

    /**
    * The history of the subscription event.
    */
    @ApiMember(Description="The history of the subscription event.", Name="History")
    var history:ArrayList<SubscriptionDeliveryResult> = ArrayList<SubscriptionDeliveryResult>()

    /**
    * The status of the response.
    */
    @ApiMember(Description="The status of the response.", Name="ResponseStatus")
    var responseStatus:ResponseStatus? = null
}

open class WebhookSubscription
{
    var id:String? = null
    var name:String? = null
    var event:String? = null
    var isActive:Boolean? = null
    var createdDateUtc:Date? = null
    var createdById:String? = null
    var lastModifiedDateUtc:Date? = null
    var config:SubscriptionConfig? = null
}

open class SubscriptionConfig
{
    var url:String? = null
    var contentType:String? = null
    var secret:String? = null
}

open class SubscriptionDeliveryResult
{
    var attemptedDateUtc:Date? = null
    var statusDescription:String? = null
    var statusCode:HttpStatusCode? = null
    var subscriptionId:String? = null
    var id:String? = null
    var eventId:String? = null
}

Kotlin GetWebhookSubscriptionAsync 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 /async/webhooks/subscriptions/{Id} HTTP/1.1 
Host: reportfiling.pwc.de 
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	subscription: 
	{
		id: String,
		name: String,
		event: String,
		isActive: False,
		createdDateUtc: 0001-01-01,
		createdById: String,
		lastModifiedDateUtc: 0001-01-01,
		config: 
		{
			url: String,
			contentType: String,
			secret: String
		}
	},
	history: 
	[
		{
			attemptedDateUtc: 0001-01-01,
			statusDescription: String,
			statusCode: Continue,
			subscriptionId: String,
			id: String,
			eventId: String
		}
	],
	responseStatus: 
	{
		errorCode: String,
		message: String,
		stackTrace: String,
		errors: 
		[
			{
				errorCode: String,
				fieldName: String,
				message: String,
				meta: 
				{
					String: String
				}
			}
		],
		meta: 
		{
			String: String
		}
	}
}