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 .xml suffix or ?format=xml
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/xml
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <AgentivityResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="schemas.agentivity.com/types"> <ResponseMetadata> <Success>false</Success> <HasCache>false</HasCache> <HasPaging>false</HasPaging> <CacheMetadata> <IsFromCache>false</IsFromCache> <CachedAt>0001-01-01T00:00:00</CachedAt> <CacheExpiresAt>0001-01-01T00:00:00</CacheExpiresAt> </CacheMetadata> <PagingMetadata> <Limit>String</Limit> <Offset>String</Offset> <ResponseRecords>0</ResponseRecords> <TotalRecords>0</TotalRecords> </PagingMetadata> </ResponseMetadata> <ResponseReport> <Item> <AgentivityRef>0</AgentivityRef> <PNRCreationDate>0001-01-01T00:00:00</PNRCreationDate> <HotelSegmentNbr>String</HotelSegmentNbr> <RecordLocator>String</RecordLocator> <OwningAgencyLocationID>String</OwningAgencyLocationID> <Account>String</Account> <OwningConsultantID>String</OwningConsultantID> <OwningConsultant>String</OwningConsultant> <StatusCode>String</StatusCode> <SegmentCreationDate>0001-01-01T00:00:00</SegmentCreationDate> <ArrivalDate>0001-01-01T00:00:00</ArrivalDate> <DepartureDate>0001-01-01T00:00:00</DepartureDate> <NbrNights>0</NbrNights> <VendorCode>String</VendorCode> <PropertyName>String</PropertyName> <PropertyPhoneNbr>String</PropertyPhoneNbr> <PropertyNbr>String</PropertyNbr> <PropertyAddress>String</PropertyAddress> <CityCode>String</CityCode> <CityName>String</CityName> <CountryCode>String</CountryCode> <CountryName>String</CountryName> <Passenger>String</Passenger> <ConfirmationNbr>String</ConfirmationNbr> <RateAccessCode>String</RateAccessCode> <RoomBookingCode>String</RoomBookingCode> <CurrencyCode>String</CurrencyCode> <RateAmount>String</RateAmount> <NbrRooms>0</NbrRooms> <BookedInName>String</BookedInName> <ServiceInformation>String</ServiceInformation> <TotalAirSegs>String</TotalAirSegs> <CreatingAgencyIata>String</CreatingAgencyIata> <IsCommissionable>false</IsCommissionable> <Commission>String</Commission> <IsPassive>false</IsPassive> <CustomFields> <CustomField> <FieldName>String</FieldName> <FieldValue>String</FieldValue> </CustomField> </CustomFields> <HotelNotepad>String</HotelNotepad> </Item> </ResponseReport> <ResponseError> <ErrorCode>String</ErrorCode> <Message>String</Message> <StatusCode>String</StatusCode> <VerboseMessage>String</VerboseMessage> </ResponseError> </AgentivityResponse>