| POST | /profile/{SubscriptionId}/{CendynPropertyId} |
|---|
import java.math.*
import java.util.*
import net.servicestack.client.*
import com.google.gson.annotations.*
import com.google.gson.reflect.*
open class ProfilePost
{
var profileContainer:ProfileContainer? = null
var subscriptionId:String? = null
var cendynPropertyId:String? = null
}
open class ProfileContainer
{
var echoToken:String? = null
var changeAction:String? = null
var profiles:ArrayList<Profile> = ArrayList<Profile>()
}
open class Profile
{
var cendynPropertyID:String? = null
var propertyName:String? = null
var uniqueIDs:ArrayList<UniqueIDType> = ArrayList<UniqueIDType>()
var profileTypeCode:String? = null
var profileTypeDescription:String? = null
var nameCode:String? = null
var profileTypeCategory:String? = null
var jobTitle:String? = null
var salutation:String? = null
var firstName:String? = null
var familiarName:String? = null
var middleName:String? = null
var lastName:String? = null
var fullName:String? = null
var nameSuffix:String? = null
var vipid:String? = null
var vipCode:String? = null
var primaryLanguage:String? = null
var genderCode:String? = null
var dobYear:String? = null
var dobMonth:String? = null
var dobDayOfMonth:String? = null
var companyName:String? = null
var arNumber:String? = null
var allowMail:Boolean? = null
var allowEMail:Boolean? = null
var guestPriv:Boolean? = null
var allowPhone:Boolean? = null
var allowSMS:Boolean? = null
var allowHistory:Boolean? = null
var allowMarketResearch:Boolean? = null
var allowThirdParty:Boolean? = null
var allowLoyaltyProgram:Boolean? = null
var creatorCode:String? = null
var lastUpdaterCode:String? = null
var dateProfileCreated:Date? = null
var dateProfileUpdated:Date? = null
var inactiveDate:Date? = null
var nationality:String? = null
var resortCode:String? = null
var retiredProfileId:String? = null
var transferredSubscriptionId:String? = null
var sourceName:String? = null
var sourceID:String? = null
var optOutMarketing:Boolean? = null
var optOutDate:Date? = null
var profileExtension:ProfileExtension? = null
var addresses:ArrayList<Address> = ArrayList<Address>()
var memberships:ArrayList<Membership> = ArrayList<Membership>()
var contactMethods:ArrayList<ContactMethod> = ArrayList<ContactMethod>()
var actionComments:ArrayList<ActionComment> = ArrayList<ActionComment>()
var specialRequests:ArrayList<SpecialRequest> = ArrayList<SpecialRequest>()
var udfDataCollection:ArrayList<UDFDataType> = ArrayList<UDFDataType>()
var lead:Lead? = null
var relatedTravelers:ArrayList<RelatedTraveler> = ArrayList<RelatedTraveler>()
var documents:ArrayList<Document> = ArrayList<Document>()
var vouchers:ArrayList<Voucher> = ArrayList<Voucher>()
var profilePolicies:ArrayList<ProfilePolicy> = ArrayList<ProfilePolicy>()
}
open class UniqueIDType
{
var id:String? = null
@SerializedName("type") var Type:String? = null
var context:String? = null
}
open class ProfileExtension
{
var languageCode:String? = null
var salutationExt:String? = null
var firstNameExt:String? = null
var familiarNameExt:String? = null
var middleNameExt:String? = null
var lastNameExt:String? = null
var nameSuffixExt:String? = null
var companyNameExt:String? = null
var blacklist:String? = null
var blackListMessage:String? = null
var anonymizationStatus:String? = null
}
open class Address
{
var addressTypeCode:String? = null
var addressTypeDescription:String? = null
var addressStatus:String? = null
var attn:String? = null
var address1:String? = null
var address2:String? = null
var city:String? = null
var stateProvince:String? = null
var postalCode:String? = null
var countryCode:String? = null
var isPrimary:Boolean? = null
var addressLanguage:String? = null
var addressCleansed:Boolean? = null
var optOutMarketing:Boolean? = null
var optOutDate:Date? = null
}
open class Membership
{
var externalID:String? = null
var programCode:String? = null
var membershipID:String? = null
var membershipCategory:String? = null
var membershipName:String? = null
var membershipLevel:String? = null
var membershipStatus:String? = null
var enrollmentCode:String? = null
var dateMembershipStarts:Date? = null
var dateMembershipExpires:Date? = null
var totalStays:Int? = null
var awardCredits:Int? = null
var awardAvailable:Int? = null
var primaryAirline:Boolean? = null
var displaySequence:Int? = null
var sourceName:String? = null
var sourceID:String? = null
var isActive:Boolean? = null
var inactiveDate:Date? = null
var pointsIndicator:Boolean? = null
}
open class ContactMethod
{
@SerializedName("type") var Type:String? = null
var category:String? = null
var dataValue:String? = null
var extraData:String? = null
var optOut:Boolean? = null
var sourceDate:Date? = null
var isPrimary:Boolean? = null
var confirmation:Boolean? = null
var inactiveDate:Date? = null
var optOutMarketing:Boolean? = null
var optOutDate:Date? = null
}
open class ActionComment
{
var externalID:String? = null
var commentType:String? = null
var commentTitle:String? = null
var commentClass:String? = null
var actionType:String? = null
var comment:String? = null
var actionDate:Date? = null
var inactiveDate:Date? = null
var guestViewable:Boolean? = null
var creatorCode:String? = null
var dateCommentCreated:Date? = null
var resortCode:String? = null
}
open class SpecialRequest
{
var externalID:String? = null
var requestType:String? = null
var requestCode:String? = null
var requestComments:String? = null
var resortField:String? = null
var actionTypeCode:String? = null
var actionType:String? = null
var inactiveDate:Date? = null
}
open class UDFDataType
{
var cendynPropertyID:String? = null
var moduleName:String? = null
var tableName:String? = null
var columnName:String? = null
var udfValue:String? = null
}
open class Lead
{
var fK_Reservation:UUID? = null
var externalLeadID:String? = null
var externalLeadSource:String? = null
var leadStatus:String? = null
var leadAcquired:Date? = null
var tentativeStartDate:Date? = null
var tentativeEndDate:Date? = null
var assignedAgent:String? = null
var assignedDate:Date? = null
var contactMethod:String? = null
var contactAgent:String? = null
var contactDate:Date? = null
var lastFollowupMethod:String? = null
var lastFollowupAgent:String? = null
var lastFollowupDate:Date? = null
var bookingMethod:String? = null
var bookingAgent:String? = null
var bookingDate:Date? = null
var reasonforStay:String? = null
var marketCode:String? = null
var campaignCode:String? = null
var campaignName:String? = null
var priceEstimate:BigDecimal? = null
var flaggedForAttention:Boolean? = null
}
open class RelatedTraveler
{
var cendynPropertyID:String? = null
var propertyName:String? = null
var uniqueIDs:ArrayList<UniqueIDType> = ArrayList<UniqueIDType>()
var salutation:String? = null
var firstName:String? = null
var familiarName:String? = null
var middleName:String? = null
var lastName:String? = null
var fullName:String? = null
var suffix:String? = null
var relation:String? = null
var isPrimary:Boolean? = null
}
open class Document
{
var documentID:String? = null
var documentType:String? = null
var documentSource:String? = null
var codeOnDocument:String? = null
var documentNotes:String? = null
var nameOnDocument:String? = null
var nationalityOnDocument:String? = null
var effectiveDate:Date? = null
var expirationDate:Date? = null
var issuer:String? = null
var issuerCountry:String? = null
var isPrimary:Boolean? = null
var piI_StoredAs:String? = null
var inactiveDate:Date? = null
}
open class Voucher
{
var hotelCode:String? = null
var voucherID:String? = null
var voucherID2:String? = null
var appliedToResort:String? = null
var reservationID:String? = null
var profileIDRecipient:String? = null
var subscriberIDRecipient:String? = null
var recipientName:String? = null
var emailaddress:String? = null
var profileIDPurchaser:String? = null
var purchaserName:String? = null
var voucherStatus:String? = null
var voucherType:String? = null
var membershipType:String? = null
var certCode:String? = null
var certNo:String? = null
var shortDescription:String? = null
var giftMessage:String? = null
var comments:String? = null
var voucherAmount:BigDecimal? = null
var currencyCode:String? = null
var issueType:String? = null
var dateConsumed:Date? = null
var expirationDate:Date? = null
var awardPoints:Int? = null
var ruleType:String? = null
var ruleValue:String? = null
var cancelAllowed:Boolean? = null
var maxExtensions:Int? = null
var referenceType:String? = null
var referenceID:String? = null
var promotionCode:String? = null
var reservationConsumed:Boolean? = null
var webConsumed:Boolean? = null
var pmsConsumed:Boolean? = null
var verifyCertNo:Boolean? = null
var generateInLieu:Boolean? = null
var creatorCode:String? = null
var lastUpdaterCode:String? = null
var folioID:String? = null
var inactiveDate:Date? = null
}
open class ProfilePolicy
{
var policyType:String? = null
var attributeName:String? = null
var integerValue:Int? = null
var stringValue:String? = null
var effectiveDate:Date? = null
var expirationDate:Date? = null
var comments:String? = null
var externalID:String? = null
var appliesTo:String? = null
var appliesToDescriptor:String? = null
}
open class Response
{
var statusCode:String? = null
var recordCount:Int? = null
var errorCount:Int? = null
}
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.
POST /profile/{SubscriptionId}/{CendynPropertyId} HTTP/1.1
Host: cert.cendyn.com
Accept: application/json
Content-Type: application/json
Content-Length: length
{"profileContainer":{"echoToken":"String","changeAction":"String","profiles":[{"cendynPropertyID":"String","propertyName":"String","uniqueIDs":[{"id":"String","type":"String","context":"String"}],"profileTypeCode":"String","profileTypeDescription":"String","nameCode":"String","profileTypeCategory":"String","jobTitle":"String","salutation":"String","firstName":"String","familiarName":"String","middleName":"String","lastName":"String","fullName":"String","nameSuffix":"String","vipid":"String","vipCode":"String","primaryLanguage":"String","genderCode":"String","dobYear":"String","dobMonth":"String","dobDayOfMonth":"String","companyName":"String","arNumber":"String","allowMail":false,"allowEMail":false,"guestPriv":false,"allowPhone":false,"allowSMS":false,"allowHistory":false,"allowMarketResearch":false,"allowThirdParty":false,"allowLoyaltyProgram":false,"creatorCode":"String","lastUpdaterCode":"String","dateProfileCreated":"0001-01-01T00:00:00.0000000","dateProfileUpdated":"0001-01-01T00:00:00.0000000","inactiveDate":"0001-01-01T00:00:00.0000000","nationality":"String","resortCode":"String","retiredProfileId":"String","transferredSubscriptionId":"String","sourceName":"String","sourceID":"String","optOutMarketing":false,"optOutDate":"0001-01-01T00:00:00.0000000","profileExtension":{"languageCode":"String","salutationExt":"String","firstNameExt":"String","familiarNameExt":"String","middleNameExt":"String","lastNameExt":"String","nameSuffixExt":"String","companyNameExt":"String","blacklist":"String","blackListMessage":"String","anonymizationStatus":"String"},"addresses":[{"addressTypeCode":"String","addressTypeDescription":"String","addressStatus":"String","attn":"String","address1":"String","address2":"String","city":"String","stateProvince":"String","postalCode":"String","countryCode":"String","isPrimary":false,"addressLanguage":"String","addressCleansed":false,"optOutMarketing":false,"optOutDate":"0001-01-01T00:00:00.0000000"}],"memberships":[{"externalID":"String","programCode":"String","membershipID":"String","membershipCategory":"String","membershipName":"String","membershipLevel":"String","membershipStatus":"String","enrollmentCode":"String","dateMembershipStarts":"0001-01-01T00:00:00.0000000","dateMembershipExpires":"0001-01-01T00:00:00.0000000","totalStays":0,"awardCredits":0,"awardAvailable":0,"primaryAirline":false,"displaySequence":0,"sourceName":"String","sourceID":"String","isActive":false,"inactiveDate":"0001-01-01T00:00:00.0000000","pointsIndicator":false}],"contactMethods":[{"type":"String","category":"String","dataValue":"String","extraData":"String","optOut":false,"sourceDate":"0001-01-01T00:00:00.0000000","isPrimary":false,"confirmation":false,"inactiveDate":"0001-01-01T00:00:00.0000000","optOutMarketing":false,"optOutDate":"0001-01-01T00:00:00.0000000"}],"actionComments":[{"externalID":"String","commentType":"String","commentTitle":"String","commentClass":"String","actionType":"String","comment":"String","actionDate":"0001-01-01T00:00:00.0000000","inactiveDate":"0001-01-01T00:00:00.0000000","guestViewable":false,"creatorCode":"String","dateCommentCreated":"0001-01-01T00:00:00.0000000","resortCode":"String"}],"specialRequests":[{"externalID":"String","requestType":"String","requestCode":"String","requestComments":"String","resortField":"String","actionTypeCode":"String","actionType":"String","inactiveDate":"0001-01-01T00:00:00.0000000"}],"udfDataCollection":[{"cendynPropertyID":"String","moduleName":"String","tableName":"String","columnName":"String","udfValue":"String"}],"lead":{"fK_Reservation":"00000000000000000000000000000000","externalLeadID":"String","externalLeadSource":"String","leadStatus":"String","leadAcquired":"0001-01-01T00:00:00.0000000","tentativeStartDate":"0001-01-01T00:00:00.0000000","tentativeEndDate":"0001-01-01T00:00:00.0000000","assignedAgent":"String","assignedDate":"0001-01-01T00:00:00.0000000","contactMethod":"String","contactAgent":"String","contactDate":"0001-01-01T00:00:00.0000000","lastFollowupMethod":"String","lastFollowupAgent":"String","lastFollowupDate":"0001-01-01T00:00:00.0000000","bookingMethod":"String","bookingAgent":"String","bookingDate":"0001-01-01T00:00:00.0000000","reasonforStay":"String","marketCode":"String","campaignCode":"String","campaignName":"String","priceEstimate":0,"flaggedForAttention":false},"relatedTravelers":[{"cendynPropertyID":"String","propertyName":"String","uniqueIDs":[{"id":"String","type":"String","context":"String"}],"salutation":"String","firstName":"String","familiarName":"String","middleName":"String","lastName":"String","fullName":"String","suffix":"String","relation":"String","isPrimary":false}],"documents":[{"documentID":"String","documentType":"String","documentSource":"String","codeOnDocument":"String","documentNotes":"String","nameOnDocument":"String","nationalityOnDocument":"String","effectiveDate":"0001-01-01T00:00:00.0000000","expirationDate":"0001-01-01T00:00:00.0000000","issuer":"String","issuerCountry":"String","isPrimary":false,"piI_StoredAs":"String","inactiveDate":"0001-01-01T00:00:00.0000000"}],"vouchers":[{"hotelCode":"String","voucherID":"String","voucherID2":"String","appliedToResort":"String","reservationID":"String","profileIDRecipient":"String","subscriberIDRecipient":"String","recipientName":"String","emailaddress":"String","profileIDPurchaser":"String","purchaserName":"String","voucherStatus":"String","voucherType":"String","membershipType":"String","certCode":"String","certNo":"String","shortDescription":"String","giftMessage":"String","comments":"String","voucherAmount":0,"currencyCode":"String","issueType":"String","dateConsumed":"0001-01-01T00:00:00.0000000","expirationDate":"0001-01-01T00:00:00.0000000","awardPoints":0,"ruleType":"String","ruleValue":"String","cancelAllowed":false,"maxExtensions":0,"referenceType":"String","referenceID":"String","promotionCode":"String","reservationConsumed":false,"webConsumed":false,"pmsConsumed":false,"verifyCertNo":false,"generateInLieu":false,"creatorCode":"String","lastUpdaterCode":"String","folioID":"String","inactiveDate":"0001-01-01T00:00:00.0000000"}],"profilePolicies":[{"policyType":"String","attributeName":"String","integerValue":0,"stringValue":"String","effectiveDate":"0001-01-01T00:00:00.0000000","expirationDate":"0001-01-01T00:00:00.0000000","comments":"String","externalID":"String","appliesTo":"String","appliesToDescriptor":"String"}]}]},"subscriptionId":"String","cendynPropertyId":"String"}
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length
{"statusCode":"String","recordCount":0,"errorCount":0}