--- title: "Contact Service 3.0" slug: "contact-service-30" tags: ["Store", "Allocations", "Classic WineDirect"] updated: 2026-01-08T20:56:11Z published: 2026-01-08T20:56:11Z canonical: "docs.winedirect.com/contact-service-30" --- > ## Documentation Index > Fetch the complete documentation index at: https://docs.winedirect.com/llms.txt > Use this file to discover all available pages before exploring further. # Contact Service 3.0 Enhancing your Data SecurityTo provide the most secure environment for your business, WineDirect is moving all web services to a more secure protocol (HTTPS) **effective February 16, 2026**. Starting on **February 16, 2026** all API calls not using HTTPS will be redirected to the HTTPS version of the endpoint and return an **HTTP 302 Found** response code. This may break some integrations if redirects cannot be handled by your current implementation. To avoid this, please update your API calls to use only HTTPS endpoints or reach out to your Web Developer or Integration Partner to confirm that your current connections are compatible with HTTPS. ### WSDL: [https://webservices.vin65.com/V300/ContactService.cfc?wsdl](https://webservices.vin65.com/V300/ContactService.cfc?wsdl) [https://webservices.vin65.com/V304/ContactService.cfc?wsdl](https://webservices.vin65.com/V304/ContactService.cfc?wsdl) #### Australian URL: [https://webservices.aus.vin65.com/V300/ContactService.cfc?wsdl](https://webservices.aus.vin65.com/V300/ContactService.cfc?wsdl) [https://webservices.aus.vin65.com/V304/ContactService.cfc?wsdl](https://webservices.aus.vin65.com/V304/ContactService.cfc?wsdl) ### Methods: **SearchContacts()** Use this method to search across contacts. **GetContact()** Use this method to get a single contact. **GetContactStatus()** Use this method to get a contacts status (Subscriber, Purchaser, Club Member). **SearchShippingAddresses()** Use this method to search across shipping addresses. **SearchContactTypes()** Use this method to search across contact types. **GetContactType()** Use this method to get a single contact type. **AddUpdateContactType()** Use this method to add or update an existing contact type. **AddContactTypeToContact()** Use this method to add a contact type to a contact. **RemoveContactTypeFromContact()** Use this method to remove a contact type from a contact. **SearchMergedContacts()** Use this method to find contact that have been merged. **MergeContact()** Use this method to merge one contact into another contact. **UpsertContact()** Use this method to upsert contacts. # SearchContacts() ### Part Of: Contact Webservice 3.0 ### WSDL: [https://webservices.vin65.com/V300/ContactService.cfc?wsdl](https://webservices.vin65.com/V300/ContactService.cfc?wsdl) #### Australian URL: [https://webservices.aus.vin65.com/V300/ContactService.cfc?wsdl](https://webservices.aus.vin65.com/V300/ContactService.cfc?wsdl) ### Description: Use the SearchContacts() function to get a single contact or a list of contacts using the search options listed below. Required fields are indicated by a '*' ### Parameters: | Attribute | Data Type | Default | Description | | --- | --- | --- | --- | | WebsiteIDs | Comma-separated list of UUIDs | | Available for Enterprise Webservices. Leave blank for all Websites | | ContactID | UUID | | UUID of the contact | | AltContactID | String 50 | | | | CustomerNumber | Integer | | | | FirstName | String 50 | | | | LastName | String 50 | | | | Company | String 255 | | | | City | String 50 | | | | StateCode | String 50 | | | | Phone | String 50 | | | | Email | String 100 | | | | EmailStatus | String 50 | | | | ContactType | String 50 | | | | DateModifiedFrom* | DateTime | | ISO 8601 format. E.g.: 2017-10-26T19:43:31Z | | DateModifiedTo* | DateTime | | | | SortBy | comma separated, from list of set values | LastName | Allowed values: LastName, Company, City, StateCode, Email, CustomerNumber, LTV | | MaxRows | Integer | 100 | | | Page | Integer | 1 | | ### Sample Request: ``` Your_Username Your_Password 1234 2011-01-01T12:21:43 2011-09-12T12:21:43 LastName 100 1 ``` ### Sample Response: ``` true
120 Wellington Rd.
Sumas 89eab9c7-a2c9-bfd7-e9e9-421b924a56f0 US 1234 2011-03-08T21:22:30.890Z 2011-04-19T16:50:12.507Z john.smith@gmail.com Double Opt In John true Smith 2012-04-23T21:29:03.000Z 3463.89 3463.89 11 604-852-8140 WA <Username/> <WebsiteID>66272648-1e0b-4e34-f09b-81477a31b25f</WebsiteID> <WholesaleNumber/> <ZipCode>98295</ZipCode> </Contact> </Contacts> <RecordCount>1</RecordCount> </SearchContactsReturn> </SearchContactsResponse> </soapenv:Body> </soapenv:Envelope> ``` # GetContact() ### Part Of: Contact Webservice 3.0 ### WSDL: [https://webservices.vin65.com/V300/ContactService.cfc?wsdl](https://webservices.vin65.com/V300/ContactService.cfc?wsdl) #### Australian URL: [https://webservices.aus.vin65.com/V300/ContactService.cfc?wsdl](https://webservices.aus.vin65.com/V300/ContactService.cfc?wsdl) Description: Use the GetContact() function to get a single contact. Required fields are indicated by a '*' ### Parameters: | Attribute | Data Type | Default | Description | | --- | --- | --- | --- | | WebsiteID | UUID | | Available For Enterprise Webservices UUID of the Vin65 Website Not necessary if ContactID is present Useful if searching by AltContactID or CustomerNumber and AltContactID or CustomerNumber is not unique across Enterprise | | ContactID | UUID | | UUID of the Vin65 Contact | | AltContactID | String 50 | | | | CustomerNumber | Integer | | | ### Sample Request: ``` <soap:Envelope xmlns:soap="https://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="https://www.w3.org/2001/XMLSchema"> <soap:Body> <GetContact> <Request> <Security> <Username>//Your Usernam e//</Username> <Password>//Your Password//</Password> </Security> <WebsiteID>66272648-1e0b-4e34-f09b-81477a31b25f</WebsiteID> <ContactID></ContactID> <AltContactID></AltContactID> <CustomerNumber>1234</CustomerNumber> </Request> </GetContact> </soap:Body> </soap:Envelope> ``` ### Sample Response: ``` <?xml version="1.0" encoding="UTF-8"?> <soapenv:Envelope xmlns:soapenv="https://sche mas.xmlsoap.org/soap/envelope/" xmlns:xsd="https://www.w3.org/2001/XMLSchema" xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance"> <soapenv:Body> <GetContactResponse> <GetContactReturn> <Errors></Errors> <IsSuccessful>true</IsSuccessful> <Contact> <Address>120 Wellington Rd.</Address> <Address2></Address2> <BirthDate/> <City>Sumas</City> <Company></Company> <ContactID>89eab9c7-a2c9-bfd7-e9e9-421b924a56f0</ContactID> <CountryCode>US</CountryCode> <CustomerNumber>1234</CustomerNumber> <DateAdded>2011-03-08T21:22:30.890Z</DateAdded> <DateModified>2011-04-19T16:50:12.507Z</DateModified> <Email>john.smith@gmail.com</Email> <EmailStatus>Double Opt In</EmailStatus> <FirstName>John</FirstName> <IsNonTaxable>true</IsNonTaxable> <LastLoginDate/> <LastName>Smith</LastName> <LastOrderDate>2012-04-23T21:29:03.000Z</LastOrderDate> <LifetimeValue>3463.89</LifetimeValue> <OrderCount>11</OrderCount> <Phone>604-852-8140</Phone> <StateCode>WA</StateCode> <SourceCode>Event</SourceCode> <Title> 66272648-1e0b-4e34-f09b-81477a31b25f 98295
1
``` # GetContactStatus() ### Part Of: Contact Webservice 3.0 ### WSDL: [https://webservices.vin65.com/V300/ContactService.cfc?wsdl](https://webservices.vin65.com/V300/ContactService.cfc?wsdl) #### Australian URL: [https://webservices.aus.vin65.com/V300/ContactService.cfc?wsdl](https://webservices.aus.vin65.com/V300/ContactService.cfc?wsdl) ### Description: Use the GetContactStatus() function to get a single contact status (Status, Subscriber, Purchaser, Club Member). Required fields are indicated by a '*' ### Parameters: | Attribute | Data Type | Default | Description | | --- | --- | --- | --- | | WebsiteID | UUID | | Available For Enterprise Webservices UUID of the Vin65 Website Not necessary if ContactID is present Useful if searching by AltContactID or CustomerNumber and AltContactID or CustomerNumber is not unique across Enterprise | | ContactID | UUID | | UUID of the Vin65 Contact | | AltContactID | String 50 | | | | CustomerNumber | Integer | | | ### Sample Request: ``` //Your Username// //Your Password// 66272648-1e0b-4e34-f09b-81477a31b25f 1234 1stTimeCustomer ``` ### Sample Response: ``` true false true true 1stTimeCustomer 1 ``` # SearchShippingAddress() ### Part Of: Contact Webservice 3.0 ### WSDL: [https://webservices.vin65.com/V300/ContactService.cfc?wsdl](https://webservices.vin65.com/V300/ContactService.cfc?wsdl) #### Australian URL: [https://webservices.aus.vin65.com/V300/ContactService.cfc?wsdl](https://webservices.aus.vin65.com/V300/ContactService.cfc?wsdl) ### Description: Use the SearchShippingAddresses() function to get a single shipping address or a list of address book entries using the search options listed below. Required fields are indicated by a '*' ### Parameters: | Attribute | Data Type | Default | Description | | --- | --- | --- | --- | | WebsiteIDs | UUID List | | Available for Enterprise Webservices Comma seperated list of WebsiteIDs in Enterprise Leave blank for all Websites | | ContactID | UUID | | UUID of the Vin65 Contact | | ShippingAddressID | UUID | | | | AltShippingAddressID | String 50 | | | | IsPrimary | Boolean | | | | DateModifiedFrom* | DateTime | | in ISO 8601 notation | | DateModifiedTo* | DateTime | | | | MaxRows | Integer | 100 | | | Page | Integer | 1 | | ### Sample Request: ``` //Your Username// //Your Password// 2011-01-01T12:21:43 2011-09-12T12:21:43 100 1 ``` ### Sample Response: ``` true
115 First Street
1902-01-02T08:00:00.000Z Sumas 8c6d813f-9038-b3a5-4714-6a67131d25c3 US 2010-10-03T05:48:38.100Z 2011-04-11T20:18:54.343Z John Smith d335af93-9211-da2f-a334-de3302ccbb33 WA 66272648-1e0b-4e34-f09b-81477a31b25f
1700 Soscol St.
2009-11-10T08:00:00.000Z Napa NVPOS 7bffad51-1cc4-fbb6-23f3-cd65cc2947b0 US 2011-03-09T21:33:55.307Z 2011-03-09T21:33:55.307Z test@test.com Joe Smith 707-666-5555 bdd1e973-2264-112b-b1ab-82727e13a716 CA 66272648-1e0b-4e34-f09b-81477a31b25f 94559
2
``` # SearchContactTypes() ### Part Of: Contact Webservice 3.0 ### WSDL: [https://webservices.vin65.com/V300/ContactService.cfc?wsdl](https://webservices.vin65.com/V300/ContactService.cfc?wsdl) #### Australian URL: [https://webservices.aus.vin65.com/V300/ContactService.cfc?wsdl](https://webservices.aus.vin65.com/V300/ContactService.cfc?wsdl) ### Description: Use the SearchContactTypes() function to get a single contact type or a list of contact types using the search options listed below. Required fields are indicated by a '*' ### Parameters: | Attribute | Data Type | Default | Description | | --- | --- | --- | --- | | WebsiteIDs | UUID List | | Available for Enterprise Webservices Comma seperated list of WebsiteIDs in Enterprise Leave blank for all Websites | | ContactTypeID | UUID | | UUID of the Vin65 Contact Type | | ContactType | String 50 | | | | DateModifiedFrom | DateTime | | | | DateModifiedTo | DateTime | | | | MaxRows | Integer | 100 | | | Page | Integer | 1 | | ### Sample Request: ``` //Your Username// //Your Password// 2011-01-01T12:21:43 2011-09-12T12:21:43 100 1 ``` ### Sample Response: ``` true 200 Club 7887de3f-dc0f-c933-195e-de6812e2b585 2011-03-08T21:22:30.890Z 2011-04-19T16:50:12.507Z 1 66272648-1e0b-4e34-f09b-81477a31b25f 1 ``` # GetContactType() ### Part Of: Contact Webservice 3.0 ### WSDL: [https://webservices.vin65.com/V300/ContactService.cfc?wsdl](https://webservices.vin65.com/V300/ContactService.cfc?wsdl) #### Australian URL: [https://webservices.aus.vin65.com/V300/ContactService.cfc?wsdl](https://webservices.aus.vin65.com/V300/ContactService.cfc?wsdl) ### Description: Use the GetContactType() function to get a single contact type. Required fields are indicated by a '*' ### Parameters: | Attribute | Data Type | Default | Description | | --- | --- | --- | --- | | ContactTypeID | UUID | | UUID of the Vin65 Contact Type | ### Sample Request: ``` //Your Username// //Your Password// ef0db0d3-fc40-c0e1-1faf-25e7d0015c1b ``` ### Sample Response: ``` true 200 Club ef0db0d3-fc40-c0e1-1faf-25e7d0015c1b 2011-03-08T21:22:30.890Z 2011-04-19T16:50:12.507Z 1 66272648-1e0b-4e34-f09b-81477a31b25f 1 ``` # AddUpdateContactType() ### Part Of: Contact Webservice 3.0 ### WSDL: [https://webservices.vin65.com/V300/ContactService.cfc?wsdl](https://webservices.vin65.com/V300/ContactService.cfc?wsdl) #### Australian URL: [https://webservices.aus.vin65.com/V300/ContactService.cfc?wsdl](https://webservices.aus.vin65.com/V300/ContactService.cfc?wsdl) ### Description: Use the AddUpdateContactType() function to either add a new contact type or update a current contact type. Required fields are indicated by a '*' ### Parameters: | Attribute | Data Type | Default | Description | | --- | --- | --- | --- | | WebsiteID | UUID* | | Only required for Enterprise Webservices UUID of the Vin65 Website | | ContactTypeID | UUID | | UUID of the Vin65 Contact Type | | ContactType | String 50* | | | | IsPublic | Boolean | False | | | DateAdded | DateTime | | Controlled by Vin65 System | | DateModified | DateTime | | Controlled by Vin65 System | ### Sample Request: ``` //Your Username// //Your Password// 71e67a5c-2264-112b-b1f4-a6d602ad8bb4 43e15e63-2264-112b-b157-70b1cc864227 Employee False Strict ``` ### Sample Response: ``` true 43e15e63-2264-112b-b157-70b1cc864227 1 ``` # AddContactTypeToContact() ### Part Of: Contact Webservice 3.0 ### WSDL: [https://webservices.vin65.com/V300/ContactService.cfc?wsdl](https://webservices.vin65.com/V300/ContactService.cfc?wsdl) #### Australian URL: [https://webservices.aus.vin65.com/V300/ContactService.cfc?wsdl](https://webservices.aus.vin65.com/V300/ContactService.cfc?wsdl) ### Description: Use the AddContactTypeToContact() function to add a Contact Type to a Contact. Required fields are indicated by a '*' ### Parameters: | Attribute | Data Type | Default | Description | | --- | --- | --- | --- | | ContactID | UUID* | | UUID of the Vin65 Contact | | ContactTypeID | UUID* | | UUID of the Vin65 Contact Type | ### Sample Request: ``` //Your Username// //Your Password// 71e67a5c-2264-112b-b1f4-a6d602ad8bb4 43e15e63-2264-112b-b157-70b1cc864227 ``` ### Sample Response: ``` true 1 ``` # RemoveContactTypeFromContact() ### Part Of: Contact Webservice 3.0 ### WSDL: [https://webservices.vin65.com/V300/ContactService.cfc?wsdl](https://webservices.vin65.com/V300/ContactService.cfc?wsdl) #### Australian URL: [https://webservices.aus.vin65.com/V300/ContactService.cfc?wsdl](https://webservices.aus.vin65.com/V300/ContactService.cfc?wsdl) ### Description: Use the RemoveContactTypeFromContact() function to remove a Contact Type from a Contact. Required fields are indicated by a '*' ### Parameters: | Attribute | Data Type | Default | Description | | --- | --- | --- | --- | | ContactID | UUID* | | UUID of the Vin65 Contact | | ContactTypeID | UUID* | | UUID of the Vin65 Contact Type | ### Sample Request: ``` //Your Username// //Your Password// 71e67a5c-2264-112b-b1f4-a6d602ad8bb4 43e15e63-2264-112b-b157-70b1 cc864227 ``` ### Sample Response: ``` true 1 ``` # SearchMergedContacts() ### Part Of: Contact Webservice 3.0 ### WSDL: [https://webservices.vin65.com/V300/ContactService.cfc?wsdl](https://webservices.vin65.com/V300/ContactService.cfc?wsdl) #### Australian URL: [https://webservices.aus.vin65.com/V300/ContactService.cfc?wsdl](https://webservices.aus.vin65.com/V300/ContactService.cfc?wsdl) ### Description: Use the SearchMergedContacts() function to get a list of all contacts that have been merged using the search options listed below. Required fields are indicated by a '*' ### Parameters: | Attribute | Data Type | Default | Description | | --- | --- | --- | --- | | WebsiteIDs | UUID List | | Available for Enterprise Webservices Comma seperated list of WebsiteIDs in Enterprise Leave blank for all Websites | | ContactID | UUID | | UUID of the Vin65 Contact | | DateMergedFrom | DateTime | | | | DateMergedTo | DateTime | | | | MaxRows | Integer | 100 | | | Page | Integer | 1 | | ### Sample Request: ``` //Your Username// //Your Password// 2011-01-01T12:21:43 2011-09-12T12:21:43 100 1 ``` ### Sample Response: ``` true 66272648-1e0b-4e34-f09b-81477a31b25f 89eab9c7-a2c9-bfd7-e9e9-421b924a56f0 9b0971bd-bab6-f888-9cfc-ab6ba035b9c3 2011-03-08T21:22:30.890Z 1 ``` # MergeContact() ### Part Of: Contact Webservice 3.0 ### WSDL: [https://webservices.vin65.com/V300/ContactService.cfc?wsdl](https://webservices.vin65.com/V300/ContactService.cfc?wsdl) #### Australian URL: [https://webservices.aus.vin65.com/V300/ContactService.cfc?wsdl](https://webservices.aus.vin65.com/V300/ContactService.cfc?wsdl) ### Description: Use the MergeContact() function to get a merge one contact into another. Required fields are indicated by a '*' ### Parameters: | Attribute | Data Type | Default | Description | | --- | --- | --- | --- | | WebsiteID | UUID | | Available For Enterprise Webservices UUID of the Vin65 Website Not necessary if ContactID is present Useful if searching by AltContactID or CustomerNumber and AltContactID or CustomerNumber is not unique across Enterprise | | ContactID | UUID | | UUID of the Vin65 Contact | | AltContactID | String 50 | | | | CustomerNumber | Integer | | | | MergeIntoContactID | UUID | | UUID of the Vin65 Contact | | MergeIntoAltContactID | String 50 | | | | MergeIntoCustomerNumber | Integer | | | ### Sample Request: ``` //Your Usernam e// //Your Password// 66272648-1e0b-4e34-f09b-81477a31b25f 1234             1235 ``` ### Sample Response: ``` true 89eab9c7-a2c9-bfd7-e9e9-421b924a56f0 9b0971bd-bab6-f888-9cfc-ab6ba035b9c3 1 ``` # UpsertContact() ### Part Of: Contact Webservice 3.04 ### WSDL: [https://webservices.vin65.com/V304/ContactService.cfc?wsdl](https://webservices.vin65.com/V304/ContactService.cfc?wsdl) #### Australian URL: [https://webservices.aus.vin65.com/V304/ContactService.cfc?wsdl](https://webservices.aus.vin65.com/V304/ContactService.cfc?wsdl) Description: Use the UpsertContact() function to upsert an array of contacts. Required fields are indicated by a '*' ### Parameters: | Attribute | Data Type | Default | Description | | --- | --- | --- | --- | | ContactID | UUID | Auto-generated if contact doesn't exist by "AltContactID" or "Email" | UUID of the WineDirect Contact | | AltContactID | String 50 | | A string reference to the contact in your system. Setting this will allow future updates to occur using your AltContactID instead of the WineDirect "ContactID". | | FirstName | String 50 | | The first name of the customer. | | LastName | String 50 | | The last name of the customer. | | Title | String 50 | | The customer's title. | | Company | String 255 | | The customer's business or company. | | Address | String 255 | | The street address of the customer. | | Address2 | String 255 | | Additional address information. For example, unit #, apt #, etc. | | City | String 50 | | The customer's city of residence. | | StateCode | String 50 | | The two character abbreviated state code or province code. For example, California = CA, British Columbia = BC. Australia state codes, South Australia = SA, Victoria = VIC etc. | | CountryCode | String 50 | | This is a standard two letter country code, default is “US”. | | ZipCode | String 50 | | The customer's zip code or Postal Code. | | MainPhone | String 50 | | The customer's main phone number. Format is in: 000-000-0000 | | Email | String 100 | | When upserting customers, email is used to match existing records if no other IDs are passed in. | | Username | String 100 | | Usernames must be unique and greater than 6 characters. Required if "Password" is passed in. | | Password | String 255 | | Passwords must be greater than 6 characters. Required if "Username" is passed in. | | Birthdate | Date | | Formatted as a YYYY-MM-DD | | PriceLevel | String 50 | | The name of a price level that must already exist in the WineDirect platform. If it exists, the contact will have that price level assigned. If it does not exist, you will get an error. | | IsNonTaxable | Boolean | False | Set this to true for contacts that are not required to pay tax. Tax calculations will use this flag to make them exempt if appropriate. Default is false. | | WholesaleNumber | String 50 | | The Wholesale number of the customer. | | PaymentTerms | String 50 | | Enumerated type that is either blank (default), “Net 10”, “Net 30”, or “Upon Receipt”. | | FacebookProfileID | String 50 | | Used to store a Facebook ID for Facebook related services in the WineDirect platform. | | CreditCardType | String 50 | | If it exists, this will overwrite the primary credit card. Must be one of the following values: MasterCard,Visa,AmericanExpress,Diners,Discover,JCB | | CreditCardNumber | String 255 | | If it exists, this will overwrite the primary credit card. Must match the format of the passed in "CreditCardType". | | .CreditCardExpirationMonth | Integer | | If it exists, this will overwrite the primary credit card. Must be a valid integer between 1 and 12. | | CreditCardExpirationYear | Integer | | If it exists, this will overwrite the primary credit card. Must be a valid 4 digit year. | | CreditCardNameOnCard | String 255 | | If it exists, this will overwrite the primary credit card. Name that appears on the Credit Card. | | IsSingleOptIn | Boolean | False | Set this to true for customers who have requested to opt into a mailing list. This will set their email status to "Single Opt In", and will send them an "Email Verification" email which contains a link to Double Opt In. Default is false. | ### Sample Request: ``` //Your Usernam e// //Your Password// Michael Hersch michael.hersch@winedirect.com   invalidemail   ``` ### Sample Response: ```
5897B83E-EC54-1187-9214-72B17F0ED71C 22796 2019-07-24T21:28:08.297Z 2019-07-24T21:28:08.297Z michael.hersch@winedirect.com Michael false Hersch
true
InvalidEmailFormat Email must be valid. false
InvalidContact 1 contact(s) failed to upsert. View 'ContactResults' for more details. false 1.0
```