| GET | /subscription | Get a list of subscription events that you are subscribed to |
|---|
Imports System
Imports System.Collections
Imports System.Collections.Generic
Imports System.Runtime.Serialization
Imports ServiceStack
Imports ServiceStack.DataAnnotations
Imports WebService.ClientServiceModel
Imports WebService.ClientServiceModel.Base
Imports BusinessLogic.Entities
Namespace Global
Namespace BusinessLogic.Entities
Public Enum WebhookSubscriptionEventType
DriverOnTheWay = 0
ArrivedAtWaypoint = 1
DepartedWaypoint = 2
OrderCompleted = 3
OrderCancelled = 4
End Enum
End Namespace
Namespace WebService.ClientServiceModel
Public Partial Class SubscriptionDetail
Public Overridable Property EventType As WebhookSubscriptionEventType
Public Overridable Property EventName As String
Public Overridable Property SubscriptionUrl As String
End Class
Public Partial Class SubscriptionList
Inherits ApiServiceRequest
End Class
Public Partial Class SubscriptionListResponse
Inherits ApiServiceResponse
Public Sub New()
Subscriptions = New List(Of SubscriptionDetail)
End Sub
Public Overridable Property Subscriptions As List(Of SubscriptionDetail)
End Class
End Namespace
Namespace WebService.ClientServiceModel.Base
Public Partial Class ApiServiceRequest
Implements IServiceRequest
Implements IHasApiKey
'''<Summary>
'''The API Key required for authentication
'''</Summary>
<ApiMember(DataType:="string", Description:="The API Key required for authentication", IsRequired:=true)>
Public Overridable Property ApiKey As String
End Class
Public Partial Class ApiServiceResponse
Implements IServiceResponse
'''<Summary>
'''Information about the response.
'''</Summary>
<ApiMember(Description:="Information about the response.", IsRequired:=true)>
Public Overridable Property Description As String
'''<Summary>
'''Heading or summary of the response.
'''</Summary>
<ApiMember(Description:="Heading or summary of the response.", IsRequired:=true)>
Public Overridable Property Heading As String
'''<Summary>
'''Did the intended operation for this response complete successfully?
'''</Summary>
<ApiMember(DataType:="boolean", Description:="Did the intended operation for this response complete successfully?", IsRequired:=true)>
Public Overridable Property WasSuccessful As Boolean
End Class
End Namespace
End Namespace
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
GET /subscription HTTP/1.1 Host: api.1fetch.co.za Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
Subscriptions:
[
{
EventType: 0,
EventName: String,
SubscriptionUrl: String
}
],
Description: String,
Heading: String,
WasSuccessful: False
}