Exigo Web Services API v2022.12.19.1

GetGuests

Gets a list of guests

Input Properties

GetGuestsRequest
PropertyData TypeNotes
GuestIDInt32Optional. If set, guests with this unique identifier will be returned.
CustomerIDInt32Optional. If set, guests with, this customer ID will be returned. Customer IDs are assigned only if they have a corresponding customer account.
HostIDInt32Optional. If set, guests tied to this host will be returned.
GuestStatusesInt32[]Optional. If set, guests with any of these statuses will be returned.
LanguageIDInt32Optional. The language ID the guests should have.
FirstNameStringOptional. The guest's first name.
MiddleNameStringOptional. The guest's middle name.
LastNameStringOptional. The guest's last name.
NameSuffixStringOptional. The guest's name suffix.
CompanyStringOptional. The guest's company name.
EmailStringOptional. The guest's email address.
PhoneStringOptional.
Phone2StringOptional.
MobilePhoneStringOptional.
Address1StringOptional.
Address2StringOptional.
Address3StringOptional.
CityStringOptional.
CountyStringOptional.
StateStringOptional.
ZipStringOptional.
CountryStringOptional.
Field1StringOptional.
Field2StringOptional.
Field3StringOptional.
Field4StringOptional.
Field5StringOptional.
Field6StringOptional.
Field7StringOptional.
Field8StringOptional.
Field9StringOptional.
Field10StringOptional.
Field11StringOptional.
Field12StringOptional.
Field13StringOptional.
Field14StringOptional.
Field15StringOptional.
Date1DateTimeOptional.
Date2DateTimeOptional.
Date3DateTimeOptional.
Date4DateTimeOptional.
Date5DateTimeOptional.
CreatedDateStartDateTimeOptional.
CreatedDateEndDateTimeOptional.
CustomerKeyStringOptional. If set, guests with, this customer Key will be returned. Customer IDs are assigned only if they have a corresponding customer account.

Output Properties

GetGuestsResponse
PropertyData TypeNotes
GuestsGuestResponse[]
GuestResponse
PropertyData TypeNotes
GuestIDInt32
CustomerIDInt32Unique numeric identifier for customer record.
HostIDInt32
FirstNameString
MiddleNameString
LastNameString
NameSuffixString
CompanyString
Gender Gender
GuestStatusInt32
LanguageID Int32Customize the web experience by setting this.
Address1String
Address2String
Address3String
CityString
CountyString
State String
ZipString
Country String
PhoneString
Phone2String
MobilePhoneString
EmailString
Field1 String
Field2 String
Field3 String
Field4 String
Field5 String
Field6 String
Field7 String
Field8 String
Field9 String
Field10 String
Field11 String
Field12 String
Field13 String
Field14 String
Field15 String
Date1DateTime
Date2DateTime
Date3DateTime
Date4DateTime
Date5DateTime
CreatedDateDateTime
ModifiedDateDateTime
CustomerKeyStringUnique alpha numeric identifier for customer record .

Http Request

GET https://yourcompany-api.exigo.com/3.0/guestAuthorization: Basic base64Encoded
                            

Http Response

HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: length

{ "guests": null, "result": null }

Soap Request

The following is a sample SOAP 1.1 request and response. The placeholders shown need to be replaced with actual values.

POST /3.0/ExigoApi.asmx HTTP/1.1
Host: api.exigo.com
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "https://api.exigo.com/GetGuests"

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Header> <ApiAuthentication xmlns="http://api.exigo.com/"> <LoginName>string</LoginName> <Password>string</Password> <Company>string</Company> <Identity>string</Identity> <RequestTimeUtc>dateTime</RequestTimeUtc> <Signature>string</Signature> </ApiAuthentication> </soap:Header> <soap:Body> <GetGuestsRequest xmlns="http://api.exigo.com/"> <GuestID>int</GuestID> <CustomerID>int</CustomerID> <HostID>int</HostID> <GuestStatuses> <int>int</int> </GuestStatuses> <LanguageID>int</LanguageID> <FirstName>string</FirstName> <MiddleName>string</MiddleName> <LastName>string</LastName> <NameSuffix>string</NameSuffix> <Company>string</Company> <Email>string</Email> <Phone>string</Phone> <Phone2>string</Phone2> <MobilePhone>string</MobilePhone> <Address1>string</Address1> <Address2>string</Address2> <Address3>string</Address3> <City>string</City> <County>string</County> <State>string</State> <Zip>string</Zip> <Country>string</Country> <Field1>string</Field1> <Field2>string</Field2> <Field3>string</Field3> <Field4>string</Field4> <Field5>string</Field5> <Field6>string</Field6> <Field7>string</Field7> <Field8>string</Field8> <Field9>string</Field9> <Field10>string</Field10> <Field11>string</Field11> <Field12>string</Field12> <Field13>string</Field13> <Field14>string</Field14> <Field15>string</Field15> <Date1>dateTime</Date1> <Date2>dateTime</Date2> <Date3>dateTime</Date3> <Date4>dateTime</Date4> <Date5>dateTime</Date5> <CreatedDateStart>dateTime</CreatedDateStart> <CreatedDateEnd>dateTime</CreatedDateEnd> <CustomerKey>string</CustomerKey> </GetGuestsRequest> </soap:Body> </soap:Envelope>

Soap Response

HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <GetGuestsResult xmlns="http://api.exigo.com/"> <Guests> <GuestResponse> <GuestID>int</GuestID> <CustomerID>int</CustomerID> <HostID>int</HostID> <FirstName>string</FirstName> <MiddleName>string</MiddleName> <LastName>string</LastName> <NameSuffix>string</NameSuffix> <Company>string</Company> <Gender>Unknown or Male or Female</Gender> <GuestStatus>int</GuestStatus> <LanguageID>int</LanguageID> <Address1>string</Address1> <Address2>string</Address2> <Address3>string</Address3> <City>string</City> <County>string</County> <State>string</State> <Zip>string</Zip> <Country>string</Country> <Phone>string</Phone> <Phone2>string</Phone2> <MobilePhone>string</MobilePhone> <Email>string</Email> <Field1>string</Field1> <Field2>string</Field2> <Field3>string</Field3> <Field4>string</Field4> <Field5>string</Field5> <Field6>string</Field6> <Field7>string</Field7> <Field8>string</Field8> <Field9>string</Field9> <Field10>string</Field10> <Field11>string</Field11> <Field12>string</Field12> <Field13>string</Field13> <Field14>string</Field14> <Field15>string</Field15> <Date1>dateTime</Date1> <Date2>dateTime</Date2> <Date3>dateTime</Date3> <Date4>dateTime</Date4> <Date5>dateTime</Date5> <CreatedDate>dateTime</CreatedDate> <ModifiedDate>dateTime</ModifiedDate> <CustomerKey>string</CustomerKey> </GuestResponse> </Guests> </GetGuestsResult> </soap:Body> </soap:Envelope>

C# Rest Client

Install Nuget package Exigo.Api.Client

try

{

    //Create Api Client

    var api = new ExigoApiClient("yourcmpany", "yourlogin", "yourpassword");

 

    //Create Request

    var req = new GetGuestsRequest();

 

 

    //Send Request to Server and Get Response

    var res = await api.GetGuestsAsync(req);

 

    //Now examine the results:

 

    foreach (var guest in res.Guests)

    {

        Console.WriteLine("GuestID: {0}", guest.GuestID);

        Console.WriteLine("CustomerID: {0}", guest.CustomerID);

        Console.WriteLine("HostID: {0}", guest.HostID);

        Console.WriteLine("FirstName: {0}", guest.FirstName);

        Console.WriteLine("MiddleName: {0}", guest.MiddleName);

        Console.WriteLine("LastName: {0}", guest.LastName);

        Console.WriteLine("NameSuffix: {0}", guest.NameSuffix);

        Console.WriteLine("Company: {0}", guest.Company);

        Console.WriteLine("Gender: {0}", guest.Gender);

        Console.WriteLine("GuestStatus: {0}", guest.GuestStatus);

        Console.WriteLine("Address1: {0}", guest.Address1);

        Console.WriteLine("Address2: {0}", guest.Address2);

        Console.WriteLine("Address3: {0}", guest.Address3);

        Console.WriteLine("City: {0}", guest.City);

        Console.WriteLine("County: {0}", guest.County);

        Console.WriteLine("Zip: {0}", guest.Zip);

        Console.WriteLine("Phone: {0}", guest.Phone);

        Console.WriteLine("Phone2: {0}", guest.Phone2);

        Console.WriteLine("MobilePhone: {0}", guest.MobilePhone);

        Console.WriteLine("Email: {0}", guest.Email);

        Console.WriteLine("Date1: {0}", guest.Date1);

        Console.WriteLine("Date2: {0}", guest.Date2);

        Console.WriteLine("Date3: {0}", guest.Date3);

        Console.WriteLine("Date4: {0}", guest.Date4);

        Console.WriteLine("Date5: {0}", guest.Date5);

        Console.WriteLine("CreatedDate: {0}", guest.CreatedDate);

        Console.WriteLine("ModifiedDate: {0}", guest.ModifiedDate);

        Console.WriteLine("CustomerKey: {0}", guest.CustomerKey);

    }

}

catch (Exception ex)

{

    Console.WriteLine("Error: " + ex.Message);

}

C# Soap Client

try

{

    //Create Main API Context Object

    ExigoApi api = new ExigoApi();

 

    //Create Authentication Header

    ApiAuthentication auth = new ApiAuthentication();

    auth.LoginName = "yourLoginName";

    auth.Password = "yourPassword";

    auth.Company = "yourCompany";

    api.ApiAuthenticationValue = auth;

 

    //Create Request

    GetGuestsRequest req = new GetGuestsRequest();

 

 

    //Send Request to Server and Get Response

    GetGuestsResponse res = api.GetGuests(req);

 

    //Now examine the results:

 

    foreach (GuestResponse guest in res.Guests)

    {

        Console.WriteLine("GuestID: {0}", guest.GuestID);

        Console.WriteLine("CustomerID: {0}", guest.CustomerID);

        Console.WriteLine("HostID: {0}", guest.HostID);

        Console.WriteLine("FirstName: {0}", guest.FirstName);

        Console.WriteLine("MiddleName: {0}", guest.MiddleName);

        Console.WriteLine("LastName: {0}", guest.LastName);

        Console.WriteLine("NameSuffix: {0}", guest.NameSuffix);

        Console.WriteLine("Company: {0}", guest.Company);

        Console.WriteLine("Gender: {0}", guest.Gender);

        Console.WriteLine("GuestStatus: {0}", guest.GuestStatus);

        Console.WriteLine("Address1: {0}", guest.Address1);

        Console.WriteLine("Address2: {0}", guest.Address2);

        Console.WriteLine("Address3: {0}", guest.Address3);

        Console.WriteLine("City: {0}", guest.City);

        Console.WriteLine("County: {0}", guest.County);

        Console.WriteLine("Zip: {0}", guest.Zip);

        Console.WriteLine("Phone: {0}", guest.Phone);

        Console.WriteLine("Phone2: {0}", guest.Phone2);

        Console.WriteLine("MobilePhone: {0}", guest.MobilePhone);

        Console.WriteLine("Email: {0}", guest.Email);

        Console.WriteLine("Date1: {0}", guest.Date1);

        Console.WriteLine("Date2: {0}", guest.Date2);

        Console.WriteLine("Date3: {0}", guest.Date3);

        Console.WriteLine("Date4: {0}", guest.Date4);

        Console.WriteLine("Date5: {0}", guest.Date5);

        Console.WriteLine("CreatedDate: {0}", guest.CreatedDate);

        Console.WriteLine("ModifiedDate: {0}", guest.ModifiedDate);

        Console.WriteLine("CustomerKey: {0}", guest.CustomerKey);

    }

}

catch (Exception ex)

{

    Console.WriteLine("Error: " + ex.Message);

}

VB.Net

Try

    'Create Main API Context Object

    Dim api as new ExigoApi()

 

    'Create Authentication Header

    Dim auth as new ApiAuthentication()

    auth.LoginName = "yourLoginName"

    auth.Password = "yourPassword"

    auth.Company = "yourCompany"

    api.ApiAuthenticationValue = auth

 

    'Create Request

    Dim req as new GetGuestsRequest()

 

 

    'Send Request to Server and Get Response

    Dim res As GetGuestsResponse = api.GetGuests(req)

 

    'Now examine the results:

 

    For Each guest As GuestResponse In res.Guests

        Console.WriteLine("GuestID: {0}", guest.GuestID)

        Console.WriteLine("CustomerID: {0}", guest.CustomerID)

        Console.WriteLine("HostID: {0}", guest.HostID)

        Console.WriteLine("FirstName: {0}", guest.FirstName)

        Console.WriteLine("MiddleName: {0}", guest.MiddleName)

        Console.WriteLine("LastName: {0}", guest.LastName)

        Console.WriteLine("NameSuffix: {0}", guest.NameSuffix)

        Console.WriteLine("Company: {0}", guest.Company)

        Console.WriteLine("Gender: {0}", guest.Gender)

        Console.WriteLine("GuestStatus: {0}", guest.GuestStatus)

        Console.WriteLine("Address1: {0}", guest.Address1)

        Console.WriteLine("Address2: {0}", guest.Address2)

        Console.WriteLine("Address3: {0}", guest.Address3)

        Console.WriteLine("City: {0}", guest.City)

        Console.WriteLine("County: {0}", guest.County)

        Console.WriteLine("Zip: {0}", guest.Zip)

        Console.WriteLine("Phone: {0}", guest.Phone)

        Console.WriteLine("Phone2: {0}", guest.Phone2)

        Console.WriteLine("MobilePhone: {0}", guest.MobilePhone)

        Console.WriteLine("Email: {0}", guest.Email)

        Console.WriteLine("Date1: {0}", guest.Date1)

        Console.WriteLine("Date2: {0}", guest.Date2)

        Console.WriteLine("Date3: {0}", guest.Date3)

        Console.WriteLine("Date4: {0}", guest.Date4)

        Console.WriteLine("Date5: {0}", guest.Date5)

        Console.WriteLine("CreatedDate: {0}", guest.CreatedDate)

        Console.WriteLine("ModifiedDate: {0}", guest.ModifiedDate)

        Console.WriteLine("CustomerKey: {0}", guest.CustomerKey)

    Next

Catch ex As Exception

    Console.WriteLine("Error: " & ex.Message)

End Try

PHP

Note: PHP is not officially supported.

<?php

try

{

    //Setup the SoapClient and Authentication

    $api = new SoapClient("http://api.exigo.com/3.0/ExigoApi.asmx?WSDL");

    $ns = "http://api.exigo.com/";

    $auth = array()

    $auth["LoginName"] = new SoapVar("yourLoginName",XSD_STRING,null,null,null,$ns);

    $auth["Password"] = new SoapVar("yourPassword",XSD_STRING,null,null,null,$ns);

    $auth["Company"] = new SoapVar("yourCompany",XSD_STRING,null,null,null,$ns);

    $headerBody = new SoapVar($auth, SOAP_ENC_OBJECT);

    $header = new SoapHeader($ns, 'ApiAuthentication', $headerBody);

    $api->__setSoapHeaders(array($header));

 

    //Create Request

 

 

    //Send Request to Server and Get Response

    $res = $api.GetGuests($req);

 

    //Now examine the results:

}

catch (SoapFault $ex)

{

    echo "Error: ", $ex->getMessage();

}

?>

Java

Note: Java is not officially supported.

try

{

    //Create Main API Context Object

    ExigoApi api = new ExigoApi();

 

    //Create Authentication Header

    ApiAuthentication auth = new ApiAuthentication();

    auth.setLoginName("yourLoginName");

    auth.setPassword("yourPassword");

    auth.setCompany("yourCompany");

    api.setApiAuthenticationValue(auth);

 

    //Create Request

    GetGuestsRequest req = new GetGuestsRequest();

 

 

    //Send Request to Server and Get Response

    GetGuestsResponse res = api.getExigoApiSoap().getGuests(req, auth);

 

    //Now examine the results:

}

catch (Exception ex)

{

    System.out.println("Error: " + ex.getMessage());

}

CSV

This method does not support csv output.