POST | /club/guest-pass/create | Create a guest pass for a user. |
---|
Imports System
Imports System.Collections
Imports System.Collections.Generic
Imports System.Runtime.Serialization
Imports ServiceStack
Imports ServiceStack.DataAnnotations
Imports ClubReady.Web.Api.ClubAccess.Model
Imports ClubReady.Core.Api.Models
Imports ClubReady.Web.Api
Namespace Global
Namespace ClubReady.Core.Api.Models
Public Partial Class ApiDtoBase
Public Overridable Property ApiKey As String
Public Overridable Property StoreId As Nullable(Of Integer)
Public Overridable Property ChainId As Nullable(Of Integer)
End Class
Public Partial Class ApiResponseBase
Public Overridable Property Success As Boolean
Public Overridable Property Message As String
End Class
Public Partial Class CreateGuestPassRequestDto
Inherits ApiDtoBase
Public Overridable Property UserId As Integer
Public Overridable Property GuestPassTypeId As Integer
Public Overridable Property Activated As Boolean
Public Overridable Property Expires As Nullable(Of Date)
End Class
Public Partial Class CreateGuestPassResponseDto
Inherits ApiResponseBase
Public Overridable Property GuestPassId As Integer
End Class
End Namespace
Namespace ClubReady.Web.Api
Public Enum RestrictedResourceType
Store
Chain
User
Undefined
End Enum
End Namespace
Namespace ClubReady.Web.Api.ClubAccess.Model
Public Partial Class CreateGuestPassRequest
Inherits CreateGuestPassRequestDto
Implements IRestrictedApiRequest
'''<Summary>
'''Api Key - grants access to resources
'''</Summary>
<ApiMember(DataType:="string", Description:="Api Key - grants access to resources", IsRequired:=true, Name:="ApiKey", ParameterType:="query")>
Public Overridable Property ApiKey As String
'''<Summary>
'''User ID
'''</Summary>
<ApiMember(DataType:="string", Description:="User ID", IsRequired:=true, Name:="UserId", ParameterType:="query")>
Public Overridable Property UserId As Integer
'''<Summary>
'''Store ID
'''</Summary>
<ApiMember(DataType:="integer", Description:="Store ID", IsRequired:=true, Name:="StoreId", ParameterType:="query")>
Public Overridable Property StoreId As Nullable(Of Integer)
'''<Summary>
'''Guest pass type to create.
'''</Summary>
<ApiMember(DataType:="integer", Description:="Guest pass type to create.", IsRequired:=true, Name:="GuestPassTypeId", ParameterType:="query")>
Public Overridable Property GuestPassTypeId As Integer
'''<Summary>
'''Activate this Guest Pass immediately? (True or False)
'''</Summary>
<ApiMember(DataType:="bool", Description:="Activate this Guest Pass immediately? (True or False)", IsRequired:=true, Name:="Activated", ParameterType:="query")>
Public Overridable Property Activated As Boolean
'''<Summary>
'''When will this pass expire? (leave blank for never)
'''</Summary>
<ApiMember(DataType:="datetime", Description:="When will this pass expire? (leave blank for never)", Name:="Expires", ParameterType:="query")>
Public Overridable Property Expires As Nullable(Of Date)
Public Overridable Property RestrictedId As Nullable(Of Integer)
Public Overridable Property RestrictedResourceType As RestrictedResourceType
End Class
Public Partial Class CreateGuestPassResponse
Inherits CreateGuestPassResponseDto
Public Overridable Property Success As Boolean
Public Overridable Property GuestPassId As Integer
Public Overridable Property Message As String
End Class
End Namespace
End Namespace
VB.NET CreateGuestPassRequest DTOs
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.
POST /club/guest-pass/create HTTP/1.1
Host: clubready.com
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
ApiKey: String,
UserId: 0,
StoreId: 0,
GuestPassTypeId: 0,
Activated: False,
Expires: 0001-01-01,
RestrictedId: 0,
RestrictedResourceType: Store,
ChainId: 0
}
HTTP/1.1 200 OK Content-Type: text/jsv Content-Length: length { Success: False, GuestPassId: 0, Message: String }