GET | /HotelSegments |
---|
Imports System
Imports System.IO
Imports System.Collections
Imports System.Collections.Generic
Imports System.Runtime.Serialization
Imports ServiceStack
Imports ServiceStack.DataAnnotations
Imports AgentivityAPI.ServiceModel.Types
Imports AgentivityAPI.ServiceModel.Base
Imports AgentivityAPI.ServiceModel
Namespace Global
Namespace AgentivityAPI.ServiceModel
<DataContract(Name:="AgentivityResponse", Namespace:="schemas.agentivity.com/types")>
Public Partial Class ItemResponse(Of TItem, TReport)
<DataMember(Order:=1)>
Public Overridable Property ResponseMetadata As ResponseMetadata
<DataMember(Order:=2, EmitDefaultValue:=false)>
Public Overridable Property ResponseReport As TReport
<DataMember(Order:=3, EmitDefaultValue:=false)>
Public Overridable Property ResponseError As AgentivityError
End Class
<DataContract(Namespace:="schemas.agentivity.com/types")>
Public Partial Class Report(Of TItemResponse, TItem)
<DataMember(Order:=1, EmitDefaultValue:=false)>
Public Overridable Property Item As TItem
End Class
End Namespace
Namespace AgentivityAPI.ServiceModel.Base
<DataContract(Namespace:="schemas.agentivity.com/types")>
Public Partial Class CompanyLevelRequestBase
Inherits PagingMetadata
Implements IMemberUsername
Implements IMemberOwningCompanyCode
'''<Summary>
'''Comma Delimited List of Owning Company Codes
'''</Summary>
<DataMember>
Public Overridable Property OwningCompanyCode As String() Implements IMemberOwningCompanyCode.OwningCompanyCode
'''<Summary>
'''UserName in form of an email address
'''</Summary>
<DataMember>
Public Overridable Property UserName As String Implements IMemberUsername.UserName
End Class
End Namespace
Namespace AgentivityAPI.ServiceModel.Types
<DataContract(Name:="ResponseMetadata", Namespace:="schemas.agentivity.com/types")>
Public Partial Class AgentivityError
<DataMember>
Public Overridable Property ErrorCode As String
<DataMember>
Public Overridable Property Message As String
<DataMember>
Public Overridable Property StatusCode As String
<DataMember>
Public Overridable Property VerboseMessage As String
End Class
<DataContract(Name:="CacheMetadata", Namespace:="schemas.agentivity.com/types")>
Public Partial Class CacheMetadata
<DataMember(Order:=1)>
Public Overridable Property CachedAt As Date
<DataMember(Order:=2)>
Public Overridable Property CacheExpiresAt As Date
<DataMember(Order:=0)>
Public Overridable Property IsFromCache As Boolean
End Class
<DataContract(Name:="CustomField", Namespace:="schemas.agentivity.com/types")>
Public Partial Class CustomFieldData
<DataMember(Order:=20)>
Public Overridable Property FieldName As String
<DataMember(Order:=30)>
Public Overridable Property FieldValue As String
End Class
Public Partial Class CustomFieldsCollection
Inherits List(Of CustomFieldData)
End Class
<DataContract(Namespace:="schemas.agentivity.com/types")>
Public Partial Class GetHotelSegments
Inherits CompanyLevelRequestBase
'''<Summary>
'''Date in format YYYYMMDD
'''</Summary>
<DataMember>
Public Overridable Property DateStart As String
'''<Summary>
'''Date in format YYYYMMDD
'''</Summary>
<DataMember>
Public Overridable Property DateEnd As String
'''<Summary>
'''Comma Delimited List of Accounts
'''</Summary>
<DataMember>
Public Overridable Property Account As String()
'''<Summary>
'''3 letter city code
'''</Summary>
<DataMember>
Public Overridable Property CityCode As String
'''<Summary>
'''Include Notepad Entry: 1=Yes
'''</Summary>
<DataMember>
Public Overridable Property WithNotepad As String
'''<Summary>
'''Comma Delimited List of PCCs
'''</Summary>
<DataMember>
Public Overridable Property OwningAgencyLocationID As String()
'''<Summary>
'''Comma Delimited List of CountryCodes
'''</Summary>
<DataMember>
Public Overridable Property OwningAgencyCountryCode As String()
'''<Summary>
'''Date search type option, a single character (A to search by Arrival dates, C to search by booking creation dates, S to search by segment creation dates).
'''</Summary>
<DataMember>
Public Overridable Property DateSearchType As String
'''<Summary>
'''IsGDS=0 (bookings from Non-GDS eg Supplier Direct). IsGDS=1 (bookings from GDS).
'''</Summary>
<DataMember>
Public Overridable Property IsGDS As String
'''<Summary>
'''IsPassive=0 (only include non-passive segments). IsPassive=1 (only include passive segments).
'''</Summary>
<DataMember>
Public Overridable Property IsPassive As String
'''<Summary>
'''Comma Delimited List of Custom Fields
'''</Summary>
<DataMember>
Public Overridable Property CustomField As String()
End Class
<DataContract(Name:="Segment", Namespace:="schemas.agentivity.com/types")>
Public Partial Class HotelSegment
Implements IBookingCustomFields
<DataMember(Order:=10)>
Public Overridable Property AgentivityRef As Integer Implements IBookingCustomFields.AgentivityRef
<DataMember(Order:=15)>
Public Overridable Property PNRCreationDate As Date?
<DataMember(Order:=20)>
Public Overridable Property HotelSegmentNbr As String
<DataMember(Order:=30)>
Public Overridable Property RecordLocator As String
<DataMember(Order:=50)>
Public Overridable Property OwningAgencyLocationID As String
<DataMember(Order:=60)>
Public Overridable Property Account As String
<DataMember(Order:=70)>
Public Overridable Property OwningConsultantID As String
<DataMember(Order:=80)>
Public Overridable Property OwningConsultant As String
<DataMember(Order:=90)>
Public Overridable Property StatusCode As String
<DataMember(Order:=95)>
Public Overridable Property SegmentCreationDate As Date?
<DataMember(Order:=100)>
Public Overridable Property ArrivalDate As Date?
<DataMember(Order:=110)>
Public Overridable Property DepartureDate As Date?
<DataMember(Order:=120)>
Public Overridable Property NbrNights As Integer
<DataMember(Order:=130)>
Public Overridable Property VendorCode As String
<DataMember(Order:=140)>
Public Overridable Property PropertyName As String
<DataMember(Order:=150)>
Public Overridable Property PropertyNbr As String
<DataMember(Order:=160)>
Public Overridable Property PropertyAddress As String
<DataMember(Order:=145)>
Public Overridable Property PropertyPhoneNbr As String
<DataMember(Order:=170)>
Public Overridable Property CityCode As String
<DataMember(Order:=170)>
Public Overridable Property CityName As String
<DataMember(Order:=180)>
Public Overridable Property CountryCode As String
<DataMember(Order:=190)>
Public Overridable Property CountryName As String
<DataMember(Order:=200)>
Public Overridable Property Passenger As String
<DataMember(Order:=210)>
Public Overridable Property ConfirmationNbr As String
<DataMember(Order:=220)>
Public Overridable Property RateAccessCode As String
<DataMember(Order:=230)>
Public Overridable Property RoomBookingCode As String
<DataMember(Order:=240)>
Public Overridable Property CurrencyCode As String
<DataMember(Order:=250)>
Public Overridable Property RateAmount As String
<DataMember(Order:=260)>
Public Overridable Property NbrRooms As Integer
<DataMember(Order:=270)>
Public Overridable Property BookedInName As String
<DataMember(Order:=275)>
Public Overridable Property ServiceInformation As String
<DataMember(Order:=280)>
Public Overridable Property TotalAirSegs As String
<DataMember(Order:=290)>
Public Overridable Property CreatingAgencyIata As String
<DataMember(Order:=310)>
Public Overridable Property IsCommissionable As Boolean?
<DataMember(Order:=320)>
Public Overridable Property Commission As String
<DataMember(Order:=330)>
Public Overridable Property IsPassive As Boolean
<DataMember(Order:=340)>
Public Overridable Property CustomFields As CustomFieldsCollection Implements IBookingCustomFields.CustomFields
<DataMember(Order:=350)>
Public Overridable Property HotelNotepad As String
End Class
<DataContract(Name:="AgentivityResponse", Namespace:="schemas.agentivity.com/types")>
Public Partial Class HotelSegmentsItemResponse
Inherits ItemResponse(Of HotelSegment, HotelSegmentsResponseReport)
End Class
<DataContract(Name:="HotelSegment", Namespace:="schemas.agentivity.com/types")>
Public Partial Class HotelSegmentsResponseReport
Inherits Report(Of HotelSegmentsItemResponse, HotelSegment)
End Class
<DataContract(Name:="Metadata", Namespace:="schemas.agentivity.com/types")>
Public Partial Class PagingMetadata
'''<Summary>
'''Starting Record
'''</Summary>
<DataMember>
<ApiMember(DataType:="string", Description:="Starting Record", Name:="Offset", ParameterType:="query")>
Public Overridable Property Offset As String
'''<Summary>
'''Number of records to return (PageSize)
'''</Summary>
<DataMember>
<ApiMember(DataType:="string", Description:="Number of records to return (PageSize)", Name:="Limit", ParameterType:="query")>
Public Overridable Property Limit As String
'''<Summary>
'''Total Number of Records in a Full Reponse (if no paging)
'''</Summary>
<DataMember>
<ApiMember(DataType:="string", Description:="Total Number of Records in a Full Reponse (if no paging)", Name:="TotalRecords", ParameterType:="query")>
Public Overridable Property TotalRecords As Integer
'''<Summary>
'''Total Number of Records in this Reponse (on this page)
'''</Summary>
<DataMember>
<ApiMember(DataType:="string", Description:="Total Number of Records in this Reponse (on this page)", Name:="ResponseRecords", ParameterType:="query")>
Public Overridable Property ResponseRecords As Integer
End Class
<DataContract(Name:="ResponseMetadata", Namespace:="schemas.agentivity.com/types")>
Public Partial Class ResponseMetadata
<DataMember(Order:=0)>
Public Overridable Property Success As Boolean
<DataMember(Order:=1)>
Public Overridable Property HasCache As Boolean
<DataMember(Order:=2)>
Public Overridable Property HasPaging As Boolean
<DataMember(Order:=3, EmitDefaultValue:=false)>
Public Overridable Property CacheMetadata As CacheMetadata
<DataMember(Order:=4, EmitDefaultValue:=false)>
Public Overridable Property PagingMetadata As PagingMetadata
End Class
End Namespace
End Namespace
To override the Content-type in your clients, use the HTTP Accept Header, append the .json suffix or ?format=json
To embed the response in a jsonp callback, append ?callback=myCallback
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
GET /HotelSegments HTTP/1.1 Host: api.agentivity.com Accept: application/json
HTTP/1.1 200 OK Content-Type: application/json Content-Length: length {"ResponseMetadata":{"Success":false,"HasCache":false,"HasPaging":false,"CacheMetadata":{"IsFromCache":false,"CachedAt":"\/Date(-62135596800000-0000)\/","CacheExpiresAt":"\/Date(-62135596800000-0000)\/"},"PagingMetadata":{"Offset":"String","Limit":"String","TotalRecords":0,"ResponseRecords":0}},"ResponseReport":{"Item":{"AgentivityRef":0,"PNRCreationDate":"\/Date(-62135596800000-0000)\/","HotelSegmentNbr":"String","RecordLocator":"String","OwningAgencyLocationID":"String","Account":"String","OwningConsultantID":"String","OwningConsultant":"String","StatusCode":"String","SegmentCreationDate":"\/Date(-62135596800000-0000)\/","ArrivalDate":"\/Date(-62135596800000-0000)\/","DepartureDate":"\/Date(-62135596800000-0000)\/","NbrNights":0,"VendorCode":"String","PropertyName":"String","PropertyPhoneNbr":"String","PropertyNbr":"String","PropertyAddress":"String","CityCode":"String","CityName":"String","CountryCode":"String","CountryName":"String","Passenger":"String","ConfirmationNbr":"String","RateAccessCode":"String","RoomBookingCode":"String","CurrencyCode":"String","RateAmount":"String","NbrRooms":0,"BookedInName":"String","ServiceInformation":"String","TotalAirSegs":"String","CreatingAgencyIata":"String","IsCommissionable":false,"Commission":"String","IsPassive":false,"CustomFields":[{"FieldName":"String","FieldValue":"String"}],"HotelNotepad":"String"}},"ResponseError":{"ErrorCode":"String","Message":"String","StatusCode":"String","VerboseMessage":"String"}}