Bullseye Locations API

The Bullseye Locations Developer Hub

Welcome to the Bullseye Locations developer hub. You'll find comprehensive guides and documentation to help you start working with Bullseye Locations as quickly as possible, as well as support if you get stuck. Let's jump right in!

Get Started    
Suggest Edits

RestClientOptions Object

 

This object is used to represent the search options selected for a given client/region.

Type
Name
Description

FormFilterOptions

FormRadiusOptions

Int

ResultsPerPage

Bool

ShowYahooMapLink

Bool

ShowGoogleMapLink

Bool

ShowMapInPopup

Bool

ShowDrivingDirectionsLink

ResultsDisplay

String

Header

HTML that goes before the search box

String

Footer

HTML that goes after the search box

String

NavigationForeColor

String

NoResultsText

Text to display when there are no results.

String

HtmlHeadSection

Code to place in the html <head> section

String

ImageFileName

String

Title

Text to use as page title

Int

MaxRadius

Int

MaxResults

Bool

IncludeInternet

Int

SearchTypeID

0=n/a, 1=radius, 2=territory

bool

UsesGeocoding

informational; set to 'true' if this client uses full geocoding.

 
Suggest Edits

RCOFormFilterOptions Object

 

This is a component of the RestClientOptions result, indicating which fields should be displayed in the search filter.

Type
Name
Description

Int

Pos

Position (from zero)

String

FilterDisplayName

 
Suggest Edits

RCOFormRadiusOptions Object

 

This is a component of the RestClientOptions result, indicating what values should be displayed in the radius drop-down.

Type
Name
Description

Int

Pos

Position (from zero)

Int

Radius

Number to show in drop-down

 
Suggest Edits

RCOResultsDisplay Object

 

This is a component of the RestClientOptions result, indicating how results should be displayed.

Type
Name
Description

Int

DisplayTypeId

Search=1, details=2, email=3

Int

Pos

Int

FieldId

Int

FieldName

 
Suggest Edits

RClientTerms Object

 

Returned by the GetClientTerms call.

Type
Name
Description

String

DefaultLocationTerm

String

DefaultRepTerm

String

DefaultKeywordTerm

String

DefaultCategoryTerm

String

DefaultSubcategoryTerm

String

DefaultCategoryPluralTerm

String

DefaultSubcategoryPluralTerm

String

DefaultCityStateORZipCodeTerm

String

DefaultCityProvinceORPostCodeTerm

String

DefaultCityORPostcodeTerm

String

DefaultCityORRegionORPostcodeTerm

String

DefaultCityProvinceORPostalCodeTerm

String

DefaultRadiusTerm

String

DefaultSearchTerm

String

DefaultPrevTerm

String

DefaultNextTerm

String

DefaultShowinPageTerm

String

DefaultResultsFoundTerm

String

DefaultEmailTerm

String

DefaultDirectionsTerm

String

DefaultWebsiteTerm

String

DefaultInvalidCityofPostCodeTerm

String

DefaultInvalidCityProvinceorPostalCodeTerm

String

DefaultCountryisRequiredTerm

String

DefaultCityandProvinceorPostalCodeisRequiredTerm

String

DefaultCityandRegionorPostCodeisRequiredTerm

String

DefaultCityorRegionisRequiredTerm

String

DefaultCityorPostCodeisRequiredTerm

String

DefaultCityorRegionorPostCodeisRequiredTerm

String

DefaultCityandStateorZipisRequiredTerm

String

DefaultCountryselectiondoesnotmatchzippostalcodeTerm

String

DefaultCountryselectiondoesnotmatchcityandstateprovinceTerm

String

DefaultBusinessHoursTerm

String

DefaultMonTerm

String

DefaultTueTerm

String

DefaultWedTerm

String

DefaultThuTerm

String

DefaultFriTerm

String

DefaultSatTerm

String

DefaultSunTerm

String

DefaultTimezonesTerm

String

DefaultSorryThisZipPostalCodeIsNotValidPleaseCheckItAndReRnterIfYouFeelThatYouveReceivedThisMessageIncorrectlyPleaseContactTerm

String

DefaultCityTerm

String

DefaultCountryTerm

String

DefaultChooseCategoryTerm

String

DefaultMoreInfoTerm

String

DefaultBacktoResultsTerm

String

DefaultLocationpluralTerm

String

DefaultContactTerm

String

DefaultPageOfTerm

String

DefaultNearestLocationTerm

String

DefaultCityOnlyTerm

String

DefaultCityORRegionTerm

String

DefaultCityAndRegionTerm

String

DefaultRegionORPostcodeTerm

String

DefaultCityIsRequiredTerm

String

DefaultCityAndRegionAreRequiredTerm

String

DefaultRegionORPostcodeIsRequiredTerm

String

DefaultSearchLabelTerm

String

DefaultChooseSubcategoryTerm

List<RestCategory>

Categories

 
Suggest Edits

RestClientSearchInterfaceConfig Object

 

Returned by the GetGeneralClientConfig call.

Type
Name
Description

Int

TemplateID

Search=1, details=2, email=3

Int

CurrentInterfaceConfigurationID

string

FontName

string

FontSize

string

HeaderFontSize

string

Name

string

ContentBackground

string

TextColor

string

LinkColor

string

HeaderColor

string

ButtonBaseColor

string

ButtonTextColor

string

LabelColor

string

PageColor

bool

ShowYahooMap

bool

ShowGoogleMap

bool

ShowDrivingDirections

bool

ShowFBLike

int

ResultsPerPage

string

NoResultsText

string

HeaderText

string

HeaderCode

string

FooterCode

string

HTMLHeadSection

bool

EnableMobile

bool

EnableCustomHeaderFooter

bool

EnableCustomLLP

bool

DefaultInterface

bool

Preview

List<RCOInterfaceFormFilterOptions>

InterfaceFormFilterOptions

List<RCOInterfaceSLFormRadiusOptions>

InterfaceSLFormRadiusOptions

List<RCOInterfaceResultsDisplay>

InterfaceResultsDisplay

List<RestInterfaceConfigRegions>

InterfaceConfigRegions

List<RestInterfaceCategories>

InterfaceConfigCategories

List<RestInterfaceIcon>

InterfaceIcons

List<RestCountrySum>

Countries

List<RestCategory>

Categories

List<RestCategory>

AllCategories

RClientTerms

ClientTerm

int

MaxRadius

int

MaxResults

bool

IncludeInternet

int

SearchTypeID

bool

UsesGeocoding

byte

MaxMindFlag

string

LogoImage

string

Description

string

Title

string

MetaDescription

string

Heading

int

ContainerWidth

bool

ShowCategories

bool

ShowCategoriesAsDropdown

bool

ShowSubcategories

bool

ShowSubcategoriesAsCheckboxes

string

CustomMapIcon

bool

ShowCoupons

bool

ShowEvents

bool

ShowContact

bool

ShowLocationImage

bool

ShowCategoriesResults

bool

ShowBELogo

bool

ShowLocationLandingPage

bool

IsResponsive

int

PageHeight

int

MapHeight

bool

ShowKeyword

bool

ShowLeadCapture

bool

ShowLocationLink

int

FormID

int

LocationFormID

bool

EnableEventSearch

bool

EnableEventRegistration

bool

FindNearestLocation

bool

UseGoogleAutocomplete

string

LocationFormTitle

string

EventRegFormTitle

bool

LinkToLangingPages

bool

UseCollapsedView

int

WidgetPositionID

string

LocationImage

bool

ShowLocationName

bool

ShowLocationPhone

bool

LinkAdvancedSearch

string

AdvancedSearchInterfaceName

string

AdvancedSearchURL

string

DefaultLocationTerm

List<RestInterfaceConfigurationLanguage>

AllLanguages

bool

UseAutocomplete

bool

DisplayHolidayHours

bool

EnableTranslation

bool

InternetOnlySearch

 
Suggest Edits

RestClientSettings

 

Mapping settings object returned by GetClientMappingSettings

Type
Name
Description

Int

clientID

Client ID.

string

Token

Google Maps API Key or a Mapbox token.

int

GeocodingServiceID

1=Google
2= Mapbox
3=Integrated Google
4=Integrated Mapbox

string

ScriptReference

Either Google or Mapbox map script reference where API key or Token needs to be replaced with the client's value.

 
Suggest Edits

RestSearchResults Object

 

This is a wrapper for the RestLocationResult list, and is returned by the DoSearch2() call.

Type
Name
Description

Int

TotalResults

Total # of results for the search.
A negative value in this field indicates an error condition.

ResultList

The subset of results requested, given StartIndex and PageSize.

 
Suggest Edits

RestLocationResult Object

 

This object represents a single location, in a search result set.

Type
Name
Description

Int

Id

Bullseye location ID

String

Name

The name of the location

String

URL

The location’s website URL

String

Address1

First line of Address

String

Address2

Second line of Address

String

Address3

Third line of Address

String

Address4

Fourth line of Address

String

City

The location’s city

String

State

The location’s state abbreviation (e.g. “NJ”)

String

PostCode

The location’s postal code (zip code in US)

String

EmailAddress

String

PhoneNumber

The location’s phone number

String

FaxNumber

String

MobileNumber

String

ContactName

String

ContactPosition

String

ThirdPartyId

Third-party ID assigned by client

Double

Distance

Distance from search point, in miles.

String

CategoryIds

Comma-separated list of category ID's to which this location is assigned

Attributes

List of attributes for this location.

Supports text, link, photo, numeric, and yes/no attributes.

ComplexAttributes

List of complex attributes and sub attributes for this location.

String

CountryCode

“US”, “CA” (Canada), etc.

Decimal

Latitude

If available

Decimal

Longitude

Int

GeoCodeStatusId

0=None, 1=Zip Level, 2=Street Level

Boolean

InternetLocation

True if this is an internet location.

String

BusinessHours

A formatted string, representing the location’s business hours.

String

LocationTypeName

Standard, Preferred, or Exclusive

String

TimeZone

String

FacebookPageId

Associates a Facebook page with the location.

String

ImageFileUrl

Location thumbnail image

Coupons

List of Coupons for the location

Events

List of upcoming Events which will be held at this location.

Boolean

IsStoreLocator

Indicates whether a location has the Store Locator service. Ignore if ReturnServices is not requested.

Boolean

IsLeadManager

Indicates whether a location has the Lead Manager service. Ignore if ReturnServices is not requested.

DailyHoursList

Returns the hours for the upcoming 7 days.

 
Suggest Edits

RestAttribute Object

 

Represents an attribute and its value.

Type
Name
Description

Int

AttributeId

Bullseye attribute ID

String

AttributeName

The name of the attribute

String

AttributeValue

The value of the attribute, as a string.

Boolean attributes will be “True” or “False”.

String

AttributeDisplayText

This parameter is only used for Link type Attributes; it contains the display text for the Link.

 
Suggest Edits

RestComplexAttribute Object

 

Represents a complex attribute and its sub attributes.

Type
Name
Description

Int

AttributeId

Bullseye attribute ID

String

AttributeName

Attribute name

SubAttributes

List of sub attributes

 
Suggest Edits

RestCoupon Object

 

Represents a coupon.

Type
Name
Description

Int

CouponId

Bullseye coupon ID

String

Name

The name of the coupon

String

CouponText

Text for the coupon

DateTime

StartDate

Date when coupon starts

Nullable DateTime

EndDate

Date when coupon ends

String

PromoPageURL

URL for the Coupon

String

CouponImage

URL for the coupon Image

String

ThumbnailImage

URL for coupon thumbnail

 
Suggest Edits

RestEvent Object

 

Represents an event associated with location.

Type
Name
Description

Int

EventId

Bullseye event ID

String

EventTitle

The title of an event

String

EventImageURL

Relative URL of an uploaded image

String

EventDescription

Description of an event

String

OrganizerName

Name of event organaizer

String

OrganizerDescription

Description of an event organizer

DateTime

StartDate

Date when event starts

Nullable DateTime

EndDate

Date when event ends

TimeSpan

StartTime

Time when event starts

Nullable TimeSpan

EndTime

Time when event starts

String

RegistrationURL

URL to register for the event

String

FacebookURL

URL for the event Facebook account

String

TwitterURL

URL for the event Twitter account

 
Suggest Edits

RestDailyHours

 

This class represents an entry in the list of Daily Hours for the week containing the current day.

Type
Name
Description

String

NameOfDay

Name of the day for which the following data applies.

Boolean

NoHoursAvailable

Indicates there was no data available for the day.

Boolean

Closed

Indicates the location is closed on this day.

Boolean

HolidayHours

Indicates the hours are for a Holiday.

Boolean

SpecialHours

Indicates the hours are non-standard for the day.

Nullable DateTime

OpeningTime

Time of the day at which the location opens.

Nullable DateTime

ClosingTime

Time of the day at which the location closes.

String

HolidayName

Name given to the current day, whether a Holiday or a Special Day such as Black Friday.

Int

DayOrder

Used internally to order all 7 days.

String

HoursDisplayText

The Opening and Closing times, or the word "Closed" formatted to display on a page. Format for times is HH:MM AM/PM.

 
Suggest Edits

RestCategory Object

 

Represents a category, and its place in the category tree.

Type
Name
Description

Int

CategoryId

Bullseye category ID

String

CategoryName

The name of the category

String

ThirdPartyID

Optional third-party ID

String

CategoryData

Optional additional data for this category

Nullable int

ParentCategoryID

Id of this category’s parent. Null if this is a root category.

Int

Depth

Depth of this category in the tree. 0 for root category.

String

Lineage

A string representing the lineage of this category.

This is a sequence of category ids from the root to this entry, separated by vertical bars. For example, if category 3 was under category 1 and 2, this value would be “|1|2|”. (It will be just “|” if root.)

String

ImageFileURL

Optional image URL

 
Suggest Edits

RestCatSum Object

 

This is a list of categories and the count of locations within each category

Type
Name
Description

Int

CategoryId

Bullseye category ID

String

CategoryName

The name of the category

Int

Locations

Number of locations in this category

 
Suggest Edits

RestState Object

 

This represents a state or province.

Type
Name
Description

String

Abbr

State abbreviation, e.g. “NJ”

String

Name

State name, e.g. “New Jersey”

 
Suggest Edits

RestCountrySum Object

 

This represents a country summary item.

Type
Name
Description

Int

Id

Bullseye country ID. 1=US, 2=Canada, etc.

String

Name

Country name

String

Code

Country code, e.g. “US”, “CA”, etc.

Int

Pos

Can be used for ordering.

Int

Locations

Count of locations in country

 
Suggest Edits

RestCitySum Object

 

This represents a city summary item.

Type
Name
Description

String

Name

City name, e.g. “Somerset”

String

RegionId

Bullseye region ID (state/prod)

Int

Locations

Count of locations in city

String

RegionAbbr

Region1 abbreviation, e.g. “NJ”

String

RegionName

Region1 name, e.g. “New

Jersey”

 
Suggest Edits

RestPostalCode Object

 

This represents a US or Canadian postal code.

Type
Name
Description

String

PostalCode

Five-digit US zip code, or six-character Canadian postal code.

String

State

State or provice code, e.g. "NJ"

String

City

City name

String

County

County name

Double

Latitude

zip center point latitude

Double

Longitude

zip center point longitude

 
Suggest Edits

RestSearchLogList Object

 

This is a wrapper for the RestSearchLog list, and is returned by the GetSearchLog() call.

Type
Name
Description

Int

TotalResults

Total # of results for the search.

RestSearchLog

The subset of results requested, given startDate and endDate.

 
Suggest Edits

RestSearchLog Object

 

Represents a RestSearchLog.

Type
Name
Description

String

IPAddress

IP address from which the search originated

String

DomainName

Domain Name

String

City

City

String

State

State

String

PostalCode

Postal Code

String

Country

Country

String

Keyword

Keyword

String

NumResults

Number Results returned

String

SearchSource

Search Source

DateTime

DateCreated

Date Created

String

InterfaceName

The name of the interface where the search was performed

 
Suggest Edits

RestSearchResponseLogList Object

 

This is a wrapper for the RestSearchResponseLog list, and is returned by the GetSearchResponseLog() call

Type
Name
Description

Int

TotalResults

Total # of results for the search.

RestSearchResponseLog

The subset of results requested, given startDate and endDate.

 
Suggest Edits

RestSearchResponseLog

 

Represents a RestSearchResponseLog.

Type
Name
Description

String

LocationName

Name of the location returned in a search

bool

Viewed

returns true

bool

URLClicked

returns true if URL link in the results was clicked

bool

EmailClicked

returns true if Email link in the results was clicked

bool

LocationResultsClicked

returns true if More Info link in the results was clicked

bool

LocationMapClicked

LocationMapClicked

bool

DirectionsClicked

returns true if map pin in the results was clicked

DateTime

DateCreated

Date Created

 
Suggest Edits

RestLogSearchRslt Object

 
Type
Name
Description

String

errorMsg

 
Suggest Edits

RestCompanyName Object

 

Represents a RestCompanyName and it's returned by the GetCompanyNames call.

Type
Name
Description

Int

ID

Company Name ID.

Int

ClientID

Client ID.

String

Name

Company Name name.

String

ThirdPartyID

Company Name third party ID.

 
Suggest Edits

RestTerritory Object

 

Returned by the GetTerritories call.

Type
Name
Description

Int

ID

Territory ID.

Int

ClientID

Client ID.

String

Name

Territory name.

Int

TypeID

Territory type ID. Can be null.

String

Type

Territory type.

Int

CountryID

Country ID. Can be null.

String

Country

Country.

 
Suggest Edits

RestStateSum Object

 

Returned by the GetRegion1List call.

Type
Name
Description

String

Name

State name, e.g. “New Jersey”

String

Abbr

State abbreviation, e.g. “NJ”

Int

Locations

Count of locations in the state

 
Suggest Edits

GetClientSearchSettings

This method will return all client search settings, for a given region. It is only useful for building a general-purpose search page that works across multiple clients.

Return Value: RestClientOptions

 
gethttps://ws.bullseyelocations.com/RestSearch.svc/GetClientSearchSettings

Query Params

ClientId
int32
required
ApiKey
string
required
RegionId
int32
required

1 for US, 2 for Canada, and 4 for International.

If this method returns null, then settings are not configured for the given client / region.

<?php
//1. Include Bullseye library
require_once '../../Bullseye.php';
//2. Create Bullseye object
$clientId = 5786;
$searchKey = null; //'cf623cdf-1090-43ba-8b0f-9fa67fcf9d57';
$adminKey = 'aa4c7e55-9d0b-4a97-b62e-c95efec4285e';
$useStagingServer = true;
$bullseye = new Bullseye\Bullseye($clientId, $searchKey, $adminKey, $useStagingServer);
//2.1 activate debug mode
//$bullseye->debug(true);
//3. Call method to get search settings
$regionId = 1;
$response = $bullseye->getClientSearchSettings($regionId);
//4. Check response
if(false !== $response)
  print_r($response);
else{
  //if location was not found
  print_r($bullseye->getLastError());
}
A binary file was returned

You couldn't be authenticated

{
  "Footer": null,
  "FormFilterOptions": [
    {
      "Enabled": true,
      "FilterDisplayName": "Zip",
      "Pos": 0
    },
    {
      "Enabled": true,
      "FilterDisplayName": "City/Province",
      "Pos": 1
    },
    {
      "Enabled": true,
      "FilterDisplayName": "Category",
      "Pos": 2
    },
    {
      "Enabled": true,
      "FilterDisplayName": "Keyword",
      "Pos": 3
    }
  ],
  "FormRadiusOptions": [
    {
      "Pos": 0,
      "Radius": 5
    },
    {
      "Pos": 1,
      "Radius": 10
    },
    {
      "Pos": 2,
      "Radius": 25
    },
    {
      "Pos": 3,
      "Radius": 50
    }
  ],
  "Header": null,
  "HtmlHeadSection": null,
  "ImageFileName": null,
  "IncludeInternet": false,
  "IsLMSubscription": false,
  "MaxRadius": 0,
  "MaxResults": 0,
  "NavigationBackColor": null,
  "NavigationForeColor": null,
  "NavigationLinkColor": null,
  "NoResultsText": null,
  "RegionName": null,
  "ResultsDisplay": [
    {
      "DisplayTypeId": 1,
      "FieldId": 1,
      "FieldName": "Location Name",
      "Pos": 0
    },
    {
      "DisplayTypeId": 1,
      "FieldId": 2,
      "FieldName": "URL",
      "Pos": 1
    },
    {
      "DisplayTypeId": 1,
      "FieldId": 3,
      "FieldName": "Address",
      "Pos": 2
    },
    {
      "DisplayTypeId": 1,
      "FieldId": 4,
      "FieldName": "Contact Name",
      "Pos": 3
    },
    {
      "DisplayTypeId": 1,
      "FieldId": 5,
      "FieldName": "Contact Position",
      "Pos": 4
    },
    {
      "DisplayTypeId": 1,
      "FieldId": 6,
      "FieldName": "Contact E-Mail",
      "Pos": 5
    },
    {
      "DisplayTypeId": 1,
      "FieldId": 7,
      "FieldName": "Contact Phone",
      "Pos": 6
    },
    {
      "DisplayTypeId": 1,
      "FieldId": 8,
      "FieldName": "Contact Fax",
      "Pos": 7
    },
    {
      "DisplayTypeId": 1,
      "FieldId": 9,
      "FieldName": "Image",
      "Pos": 8
    },
    {
      "DisplayTypeId": 1,
      "FieldId": 10,
      "FieldName": "Categories",
      "Pos": 9
    },
    {
      "DisplayTypeId": 1,
      "FieldId": 11,
      "FieldName": "Time Zone",
      "Pos": 10
    },
    {
      "DisplayTypeId": 1,
      "FieldId": 12,
      "FieldName": "Business Hours",
      "Pos": 11
    },
    {
      "DisplayTypeId": 2,
      "FieldId": 1,
      "FieldName": "Location Name",
      "Pos": 0
    },
    {
      "DisplayTypeId": 2,
      "FieldId": 2,
      "FieldName": "URL",
      "Pos": 1
    },
    {
      "DisplayTypeId": 2,
      "FieldId": 3,
      "FieldName": "Address",
      "Pos": 2
    },
    {
      "DisplayTypeId": 2,
      "FieldId": 4,
      "FieldName": "Contact Name",
      "Pos": 3
    },
    {
      "DisplayTypeId": 2,
      "FieldId": 5,
      "FieldName": "Contact Position",
      "Pos": 4
    },
    {
      "DisplayTypeId": 2,
      "FieldId": 6,
      "FieldName": "Contact E-Mail",
      "Pos": 5
    },
    {
      "DisplayTypeId": 2,
      "FieldId": 7,
      "FieldName": "Contact Phone",
      "Pos": 6
    },
    {
      "DisplayTypeId": 2,
      "FieldId": 8,
      "FieldName": "Contact Fax",
      "Pos": 7
    },
    {
      "DisplayTypeId": 2,
      "FieldId": 9,
      "FieldName": "Image",
      "Pos": 8
    },
    {
      "DisplayTypeId": 2,
      "FieldId": 10,
      "FieldName": "Categories",
      "Pos": 9
    },
    {
      "DisplayTypeId": 2,
      "FieldId": 11,
      "FieldName": "Time Zone",
      "Pos": 10
    },
    {
      "DisplayTypeId": 2,
      "FieldId": 12,
      "FieldName": "Business Hours",
      "Pos": 11
    }
  ],
  "ResultsPerPage": 10,
  "SearchHeaderBackColor": null,
  "SearchHeaderForeColor": null,
  "SearchTypeID": 1,
  "ServiceRegionID": 0,
  "ShowDrivingDirectionsLink": false,
  "ShowGoogleMapLink": true,
  "ShowMapInPopup": false,
  "ShowYahooMapLink": false,
  "Title": null,
  "UsesGeocoding": true
}
 
Suggest Edits

GetClientSubsFeatures

 
gethttps://ws.bullseyelocations.com/restsearch.svc/GetClientSubsFeatures

Query Params

ClientID
int32
APIKey
string
 
curl --request GET \
  --url https://ws.bullseyelocations.com/restsearch.svc/GetClientSubsFeatures
var request = require("request");

var options = { method: 'GET',
  url:
   'https://ws.bullseyelocations.com/restsearch.svc/GetClientSubsFeatures' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://ws.bullseyelocations.com/restsearch.svc/GetClientSubsFeatures")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://ws.bullseyelocations.com/restsearch.svc/GetClientSubsFeatures");

xhr.send(data);
import requests

url = "https://ws.bullseyelocations.com/restsearch.svc/GetClientSubsFeatures"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

[{"FeatureID":2,"FeatureName":"IP Detection","FeatureValue":null,"ID":13,"SubscriptionTypeID":9,"TemplateID":0},{"FeatureID":8,"FeatureName":"Mobile Locator","FeatureValue":null,"ID":29,"SubscriptionTypeID":9,"TemplateID":9},{"FeatureID":7,"FeatureName":"Territory Search","FeatureValue":null,"ID":32,"SubscriptionTypeID":9,"TemplateID":0},{"FeatureID":9,"FeatureName":"Free Locator Interface","FeatureValue":null,"ID":38,"SubscriptionTypeID":9,"TemplateID":0},{"FeatureID":10,"FeatureName":"List Locator Interface","FeatureValue":null,"ID":42,"SubscriptionTypeID":9,"TemplateID":0},{"FeatureID":11,"FeatureName":"Embeddable Locator Interface","FeatureValue":null,"ID":46,"SubscriptionTypeID":9,"TemplateID":0},{"FeatureID":1,"FeatureName":"Number Of Categories","FeatureValue":null,"ID":50,"SubscriptionTypeID":9,"TemplateID":0},{"FeatureID":3,"FeatureName":"Custom Map Icons","FeatureValue":null,"ID":74,"SubscriptionTypeID":9,"TemplateID":9},{"FeatureID":4,"FeatureName":"Attributes","FeatureValue":null,"ID":75,"SubscriptionTypeID":9,"TemplateID":9},{"FeatureID":5,"FeatureName":"Location Image","FeatureValue":null,"ID":76,"SubscriptionTypeID":9,"TemplateID":9},{"FeatureID":6,"FeatureName":"Business Hours","FeatureValue":null,"ID":77,"SubscriptionTypeID":9,"TemplateID":9},{"FeatureID":13,"FeatureName":"Contact Name","FeatureValue":null,"ID":78,"SubscriptionTypeID":9,"TemplateID":9},{"FeatureID":14,"FeatureName":"Contact Email","FeatureValue":null,"ID":79,"SubscriptionTypeID":9,"TemplateID":9},{"FeatureID":15,"FeatureName":"Edit Credentials","FeatureValue":null,"ID":83,"SubscriptionTypeID":9,"TemplateID":0},{"FeatureID":16,"FeatureName":"Location Report","FeatureValue":null,"ID":88,"SubscriptionTypeID":9,"TemplateID":0},{"FeatureID":17,"FeatureName":"IP Report","FeatureValue":null,"ID":93,"SubscriptionTypeID":9,"TemplateID":0},{"FeatureID":18,"FeatureName":"Source Report","FeatureValue":null,"ID":98,"SubscriptionTypeID":9,"TemplateID":0},{"FeatureID":19,"FeatureName":"Sources","FeatureValue":null,"ID":103,"SubscriptionTypeID":9,"TemplateID":0},{"FeatureID":20,"FeatureName":"Security Filter","FeatureValue":null,"ID":108,"SubscriptionTypeID":9,"TemplateID":0},{"FeatureID":21,"FeatureName":"Territories","FeatureValue":null,"ID":113,"SubscriptionTypeID":9,"TemplateID":0},{"FeatureID":22,"FeatureName":"MaxLocations","FeatureValue":null,"ID":123,"SubscriptionTypeID":9,"TemplateID":0},{"FeatureID":23,"FeatureName":"Coupons","FeatureValue":null,"ID":138,"SubscriptionTypeID":9,"TemplateID":0},{"FeatureID":24,"FeatureName":"Map List Interface","FeatureValue":null,"ID":142,"SubscriptionTypeID":9,"TemplateID":0}]
 
Suggest Edits

GetGeneralClientConfig

Returns all configuration related to the interface including labels
Return Value: RestClientSearchInterfaceConfig

 
gethttps://ws.bullseyelocations.com/GetGeneralClientConfig

Query Params

ClientId
int32
required
APIKey
string
required
InterfaceConfigId
string
InterfaceName
string
LanguageID
int32
LanguageCode
string
 
curl --request GET \
  --url 'https://ws.bullseyelocations.com/GetGeneralClientConfig?ClientId=ClientId&APIKey=APIKey'
var request = require("request");

var options = { method: 'GET',
  url: 'https://ws.bullseyelocations.com/GetGeneralClientConfig',
  qs:
   { ClientId: 'ClientId',
     APIKey: 'APIKey' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://ws.bullseyelocations.com/GetGeneralClientConfig?ClientId=ClientId&APIKey=APIKey")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://ws.bullseyelocations.com/GetGeneralClientConfig?ClientId=ClientId&APIKey=APIKey");

xhr.send(data);
import requests

url = "https://ws.bullseyelocations.com/GetGeneralClientConfig"

querystring = {"ClientId":"ClientId","APIKey":"APIKey"}

response = requests.request("GET", url, params=querystring)

print(response.text)
A binary file was returned

You couldn't be authenticated

{
    "AdvancedSearchInterfaceName": null,
    "AdvancedSearchURL": null,
    "AllCategories": [
        {
            "CategoryData": "",
            "CategoryId": 1407,
            "CategoryName": "All Instruments",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 0,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1408,
            "CategoryName": "Accordion",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 1,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1409,
            "CategoryName": "Autoharp",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 2,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1410,
            "CategoryName": "Bagpipes",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 3,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1411,
            "CategoryName": "Banjo",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 4,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1412,
            "CategoryName": "Bass Guitar",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 5,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1413,
            "CategoryName": "Bassoon",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 6,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1414,
            "CategoryName": "Cello",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 7,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1415,
            "CategoryName": "Clarinet",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 8,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1416,
            "CategoryName": "Concertina",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 9,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1417,
            "CategoryName": "Conducting",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 10,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1418,
            "CategoryName": "Double Bass",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 11,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1419,
            "CategoryName": "Drums",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 12,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1420,
            "CategoryName": "Dulcimer",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 13,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1421,
            "CategoryName": "Ear Training",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 17,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1422,
            "CategoryName": "Euphorium",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 14,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1423,
            "CategoryName": "Flute",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 18,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1424,
            "CategoryName": "French Horn",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 16,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "01",
            "CategoryId": 1425,
            "CategoryName": "Guitar",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 15,
            "ThirdPartyId": "1"
        },
        {
            "CategoryData": "",
            "CategoryId": 1426,
            "CategoryName": "Handbells",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 19,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1427,
            "CategoryName": "Harmonica",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 20,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1428,
            "CategoryName": "Harp",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 21,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1429,
            "CategoryName": "Keyboard",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 23,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1430,
            "CategoryName": "Lute",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 22,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1431,
            "CategoryName": "Mandolin",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 24,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1432,
            "CategoryName": "Marimba",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 25,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1433,
            "CategoryName": "Oboe",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 26,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1434,
            "CategoryName": "Organ",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 27,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1435,
            "CategoryName": "Other",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 28,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1436,
            "CategoryName": "Percussion",
            "Depth": 1,
            "Lineage": "|1437|",
            "ParentCategoryId": 1437,
            "Pos": 1,
            "ThirdPartyId": "http://www.bullseyelocations.com/products/store-locator-app-facebook"
        },
        {
            "CategoryData": "http://www.bullseyelocations.com",
            "CategoryId": 1437,
            "CategoryName": "Piano",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 29,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1438,
            "CategoryName": "Recorder",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 30,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1439,
            "CategoryName": "Recording",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 31,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1440,
            "CategoryName": "Saxophone",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 32,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1441,
            "CategoryName": "Theory",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 33,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1442,
            "CategoryName": "Timpani",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 34,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1443,
            "CategoryName": "Trombone",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 35,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1444,
            "CategoryName": "Trumpet",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 36,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1445,
            "CategoryName": "Tuba",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 37,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1446,
            "CategoryName": "Ukelele",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 38,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1447,
            "CategoryName": "Viola",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 39,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1448,
            "CategoryName": "Violin",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 40,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1449,
            "CategoryName": "Voice",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 41,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "03",
            "CategoryId": 5973,
            "CategoryName": "Mini Guitar",
            "Depth": 1,
            "Lineage": "|1425|",
            "ParentCategoryId": 1425,
            "Pos": 1,
            "ThirdPartyId": "3"
        },
        {
            "CategoryData": "02",
            "CategoryId": 5974,
            "CategoryName": "Large Guitars",
            "Depth": 1,
            "Lineage": "|1425|",
            "ParentCategoryId": 1425,
            "Pos": 0,
            "ThirdPartyId": "2"
        },
        {
            "CategoryData": "021",
            "CategoryId": 5975,
            "CategoryName": "Very Large Guitars",
            "Depth": 2,
            "Lineage": "|1425|5974|",
            "ParentCategoryId": 5974,
            "Pos": 0,
            "ThirdPartyId": "21"
        },
        {
            "CategoryData": "022",
            "CategoryId": 5976,
            "CategoryName": "Super Gigantic Guitars",
            "Depth": 3,
            "Lineage": "|1425|5974|5975|",
            "ParentCategoryId": 5975,
            "Pos": 0,
            "ThirdPartyId": "22"
        },
        {
            "CategoryData": "http://www.bullseyelocations.com/products/store-locator-software",
            "CategoryId": 6358,
            "CategoryName": "Grand Piano",
            "Depth": 1,
            "Lineage": "|1437|",
            "ParentCategoryId": 1437,
            "Pos": 0,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "http://www.bullseyelocations.com/products/store-locator-plugin-for-wordpress",
            "CategoryId": 6359,
            "CategoryName": "Electric Piano",
            "Depth": 1,
            "Lineage": "|1437|",
            "ParentCategoryId": 1437,
            "Pos": 2,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 15950,
            "CategoryName": "Autoharp 2",
            "Depth": 1,
            "Lineage": "|1409|",
            "ParentCategoryId": 1409,
            "Pos": 0,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "023",
            "CategoryId": 7903,
            "CategoryName": "Super Gigantic Guitars2",
            "Depth": 4,
            "Lineage": "|1425|5974|5975|5976|",
            "ParentCategoryId": 5976,
            "Pos": 0,
            "ThirdPartyId": "23"
        }
    ],
    "AllLanguages": [
        {
            "Id": 849,
            "InterfaceConfigurationId": 1828,
            "LanguageCode": "en",
            "LanguageId": 41,
            "LanguageName": "English "
        },
        {
            "Id": 850,
            "InterfaceConfigurationId": 1828,
            "LanguageCode": "fr",
            "LanguageId": 48,
            "LanguageName": "French "
        }
    ],
    "ButtonBaseColor": "#6B2B6F",
    "ButtonTextColor": "#ffffff",
    "Categories": [
        {
            "CategoryData": "01",
            "CategoryId": 1425,
            "CategoryName": "Guitar",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 15,
            "ThirdPartyId": "1"
        }
    ],
    "ClientTerm": {
        "Categories": null,
        "DefaultBacktoResultsTerm": "Back To Results",
        "DefaultBusinessHoursTerm": "Business Hours",
        "DefaultCategoryPluralTerm": "Instruments",
        "DefaultCategoryTerm": "Instrument",
        "DefaultChooseCategoryTerm": "Select Instrument",
        "DefaultChooseSubcategoryTerm": "Choose Subcategory",
        "DefaultCityAndRegionAreRequiredTerm": "City And Region Are Required",
        "DefaultCityAndRegionTerm": "City And Region",
        "DefaultCityIsRequiredTerm": "City Is Required",
        "DefaultCityORPostcodeTerm": "City OR Postcode",
        "DefaultCityORRegionORPostcodeTerm": "City OR Region OR Postcode",
        "DefaultCityORRegionTerm": "City OR Region",
        "DefaultCityOnlyTerm": "City Only",
        "DefaultCityProvinceORPostCodeTerm": "City & Province OR Post Code",
        "DefaultCityProvinceORPostalCodeTerm": "City, Province OR Postalcode",
        "DefaultCityStateORZipCodeTerm": "City & State OR Zip Code",
        "DefaultCityTerm": "City",
        "DefaultCityandProvinceorPostalCodeisRequiredTerm": "City And Province Or Postal Code Is Required",
        "DefaultCityandRegionorPostCodeisRequiredTerm": "City And Region Or Post Code Is Required",
        "DefaultCityandStateorZipisRequiredTerm": "City And State Or Zip Is Required",
        "DefaultCityorPostCodeisRequiredTerm": "City Or Post Code Is Required",
        "DefaultCityorRegionisRequiredTerm": "City Or Region Is Required",
        "DefaultCityorRegionorPostCodeisRequiredTerm": "City Or Region Or Post Code Is Required",
        "DefaultContactTerm": "Contact",
        "DefaultCountryTerm": "Country",
        "DefaultCountryisRequiredTerm": "Country Is Required",
        "DefaultCountryselectiondoesnotmatchcityandstateprovinceTerm": "Country Selection Does Not Match City And State/Province",
        "DefaultCountryselectiondoesnotmatchzippostalcodeTerm": "ountry Selection Does Not Match Zip/Postal Code",
        "DefaultDirectionsTerm": "Directions",
        "DefaultEmailTerm": "Email",
        "DefaultFriTerm": "Fri",
        "DefaultInvalidCityProvinceorPostalCodeTerm": "Invalid City, Province Or Postal Code",
        "DefaultInvalidCityofPostCodeTerm": "Invalid City Or Post Code",
        "DefaultKeywordTerm": "Music Stores",
        "DefaultLocationTerm": "Teacher",
        "DefaultLocationpluralTerm": "Locations",
        "DefaultMonTerm": "Mon",
        "DefaultMoreInfoTerm": "More Info",
        "DefaultNearestLocationTerm": "Sorry, no results were found within your search area. <br/><br/> <strong>Please find your nearest result listed below.</strong>",
        "DefaultNextTerm": "Next",
        "DefaultPageOfTerm": "of",
        "DefaultPrevTerm": "Prev",
        "DefaultRadiusTerm": "Radius",
        "DefaultRegionORPostcodeIsRequiredTerm": "Region OR Postcode Is Required",
        "DefaultRegionORPostcodeTerm": "Region OR Postcode",
        "DefaultRepTerm": "Rep",
        "DefaultResultsFoundTerm": "Results Found",
        "DefaultSatTerm": "Sat",
        "DefaultSearchLabelTerm": "Please enter your",
        "DefaultSearchTerm": "Search",
        "DefaultShowinPageTerm": "Showing Page",
        "DefaultSorryThisZipPostalCodeIsNotValidPleaseCheckItAndReRnterIfYouFeelThatYouveReceivedThisMessageIncorrectlyPleaseContactTerm": "Sorry, This Zip/Postal Code Is Not Valid. Please Check It And Re-Enter. If You Feel That You've Received This Message Incorrectly, Please Contact",
        "DefaultSubcategoryPluralTerm": "Sub Instruments",
        "DefaultSubcategoryTerm": "Sub Instrument",
        "DefaultSunTerm": "Sun",
        "DefaultThuTerm": "Thu",
        "DefaultTimezonesTerm": "Time Zones",
        "DefaultTueTerm": "Tue",
        "DefaultWebsiteTerm": "Website",
        "DefaultWedTerm": "Wed"
    },
    "ContainerWidth": 0,
    "ContentBackground": "#ffffff",
    "Countries": [
        {
            "Code": "US",
            "Id": 1,
            "Locations": 0,
            "Name": "United States",
            "Pos": 1
        },
        {
            "Code": "CA",
            "Id": 2,
            "Locations": 0,
            "Name": "Canada",
            "Pos": 2
        }
    ],
    "CurrentInterfaceConfigurationID": 1828,
    "CustomMapIcon": null,
    "DefaultInterface": true,
    "DefaultLocationTerm": "Teacher",
    "Description": null,
    "DisplayHolidayHours": false,
    "EnableCustomHeaderFooter": true,
    "EnableCustomLLP": false,
    "EnableEventRegistration": true,
    "EnableEventSearch": true,
    "EnableMobile": false,
    "EnableTranslation": true,
    "EventRegFormTitle": "Cool Event Registration Form 2",
    "FindNearestLocation": false,
    "FontName": "Arial, Helvetica, sans-serif",
    "FontSize": "15px",
    "FooterCode": "<div class=\"sixteen columns\">\n\t\t\t\t<footer id=\"colophon\" class=\"site-footer\" role=\"contentinfo\">\n\t\t\t\t\t<div class=\"site-info\">\n\t\t\t\t\t\t(c) 2014 MusicStaff.com\t\t\t\t\t</div><!-- .site-info -->\n\t\t\t\t\t<div class=\"social-icon\"><a class=\"facebook\" href=\"https://www.facebook.com/pages/Music-Staff/112564055478412\" target=\"_blank\"></a><a class=\"email\" href=\"&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#105;&#110;&#102;&#111;&#64;&#109;&#117;&#115;&#105;&#99;&#115;&#116;&#97;&#102;&#102;&#46;&#99;&#111;&#109;\"></a></div>\t\t\t\t</footer><!-- #colophon .site-footer -->\n\t\t\t</div>\n\t\t\t<!-- #main .site-main -->\n\t\t\t<div id=\"back-top\">\n\t\t\t\t<a rel=\"nofollow\" href=\"#top\" title=\"Back to top\">&#8593;</a>\n\t\t\t</div> ",
    "FormID": 82,
    "HTMLHeadSection": "<style type=\"text/css\">\nH1 {font-size : 27px; }\nH2 {font-size : 20px; }\nH3 {font-size : 18px; }\nH4 {font-size : 16px; }\nH5 {font-size : 14px; }\nH6 {font-size : 12px; }\nH1, H2, H3, H4, H5, H6 {font-family : Arial, Helvetica, sans-serif; }\n.main-navigation a {font-family : Open Sans, sans-serif; color : #bfbfbf; }\n.main-navigation ul:not(.sub-menu) &gt; li &gt; a, .main-navigation ul:not(.sub-menu) &gt; li:hover &gt; a { font-size : 14px; }\n.main-navigation {background-color : #ffffff; }\n#header_language_select a {font-family : Open Sans, sans-serif;}\nbody {font-size : 14px; font-family : Open Sans, sans-serif; }\nbody { background-color : #ffffff; }\n.container.page-container {background-color : #ffffff; }\n.head-container {background-color : #ffffff; }\n.head-container {min-height : 84px; }\n.main-navigation ul li.current_page_item a, .main-navigation ul li.current-menu-ancestor a, .main-navigation ul li.current-menu-item a, .main-navigation ul li.current-menu-parent a, .main-navigation ul li.current_page_parent a {background-color : #f4d224; }\n.main-navigation ul li.current_page_item a, .main-navigation ul li.current-menu-ancestor a, .main-navigation ul li.current-menu-item a, .main-navigation ul li.current-menu-parent a, .main-navigation ul li.current_page_parent a {color : #ffffff; }\n.main-navigation ul &gt; li:hover&gt;a {\nbackground-color : #f4d224;\ncolor : #ffffff;\n}\n#masthead .main-navigation ul &gt; li &gt; ul &gt; li &gt; a {\nbackground-color : #ffffff;\ncolor : #333333;\n}\n#masthead .main-navigation ul &gt; li &gt; ul &gt; li:hover &gt; a {\nbackground-color : #f4d224;\ncolor : #333333;\n}\n#masthead .main-navigation ul &gt; li ul &gt; li.current-menu-item &gt; a {\nbackground-color : #f4d224;\ncolor : #333333;\n}\n#masthead div .main-navigation ul &gt; li &gt; ul &gt; li &gt; ul a {\nbackground-color : #ffffff;\ncolor : #333333;\n}\n#masthead div .main-navigation ul &gt; li &gt; ul &gt; li &gt; ul li:hover a {\nbackground-color : #f4d224;\ncolor : #333333;\n}\n#lang-select-block li ul li a{\nbackground-color : #ffffff;\ncolor : #333333;\n}#lang-select-block li ul li a:hover{\nbackground-color : #f4d224;\ncolor : #333333;\n}#lang-select-block li ul li.active a{\nbackground-color : #f4d224;\ncolor : #333333;\n}#header_language_select ul li.current &gt; a { color : #bfbfbf; }\n#header_language_select { background-color : #ffffff; }\n#header_language_select ul li.current:hover &gt; a {\nbackground-color : #f4d224;\ncolor : #ffffff;\n}\nbody {color : #333333; }\na {color : #333333; }\na:hover {color : #f2cf21; }\na:focus {color : #f2cf21; }\na:active {color : #f2cf21; }\n#page .container #secondary .widget h3.widget-title, #page .container #secondary .widget h1.widget-title, header.post-header .post-title {border-color : #f2cf21; }\nbody.single-product #page .related.products h2 {border-bottom-color : #f2cf21; }\n.blog_post .date_of_post {background : none repeat scroll 0 0 #f2cf21; }\n.blog_post .date_of_post {color : #ffffff; }\n.nav-links.shop .pages-links .page-numbers, .nav-links.shop .nav-next a, .nav-links.shop .nav-previous a{background-color : #333333 !important; }\nbutton:hover, button:active, button:focus{background-color : #efc023 !important; }\ninput[type=\"button\"]:hover, input[type=\"button\"]:active, input[type=\"button\"]:focus{background-color : #efc023 !important; }\ninput[type=\"submit\"]:hover, input[type=\"submit\"]:active, input[type=\"submit\"]:focus{background-color : #efc023 !important; }\ninput[type=\"reset\"]:hover, input[type=\"reset\"]:active, input[type=\"reset\"]:focus{background-color : #efc023 !important; }\n.nav-links.shop .pages-links .page-numbers:hover, .nav-links.shop .nav-next a:hover, .nav-links.shop .nav-previous a:hover, .nav-links.shop .pages-links .page-numbers.current{background-color : #efc023 !important; }\n/*html, body, div#page{height:100%; margin:0;padding:0;overflow:auto;}\ndiv#page div.page-container, div#page div.page-container div.columns:first-child, div#page div.page-container div.content{height:100% !important; display:block;}\ndiv#page div.page-container div.content&gt;p{height:100% !important;}*/\n.entry-content iframe {max-height: none;}\n/*Adjust top margin for Google ads*/\n#page .container #secondary{margin-top:110px}\n.main-navigation {\ndisplay: block;\nfloat: left;\nmargin: 10px 0 0;\nposition: relative;\n}\n.main-navigation ul {\nlist-style: none outside none;\nmargin: 0;\npadding-left: 0;\n}\n.main-navigation li:first-child {\nmargin: 0;\n}\n.main-navigation li {\nmargin: 0 0 0 10px;\n}\n.main-navigation li {\nfloat: left;\nposition: relative;\n}\n.main-navigation a {\ndisplay: block;\nfont-size: 14px;\npadding: 7px 10px;\ntext-decoration: none;\ntext-transform: uppercase;\n}\n.main-navigation ul ul {\nbackground: none repeat scroll 0 0 #fff;\nbox-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);\ndisplay: block;\nfloat: left;\nleft: 0;\nmargin: 20px 0 0;\nopacity: 0;\nposition: absolute;\ntop: 35px;\ntransition: all 0.2s ease-in-out 0s;\nvisibility: hidden;\nz-index: 99999;\n}\n.main-navigation ul ul ul {\nleft: 100%;\nmargin: 0 0 0 20px;\ntop: 0;\n}\n.main-navigation ul ul a {\nbackground: none repeat scroll 0 0 rgba(0, 0, 0, 0);\nbox-shadow: none !important;\ncolor: #333333;\nfont-size: 14px;\nmin-width: 155px;\npadding: 12px 15px !important;\ntext-transform: none;\n}\n.main-navigation ul ul li:first-child {\nbackground: none repeat scroll 0 0 rgba(0, 0, 0, 0);\n}\n.main-navigation ul ul li {\nfloat: left;\nmargin: 0 !important;\nwidth: 100%;\n}\n.main-navigation ul li:hover &gt; a {\nbackground: none repeat scroll 0 0 #f2cf21;;\ncolor: #fff;\nfont-size: 14px;\npadding: 7px 10px;\ntransition: all 0.3s ease-in-out 0s;\n}\n.main-navigation ul ul:hover &gt; a {\ncolor: #333 !important;\ntext-shadow: none !important;\n}\n.main-navigation ul ul a:hover, .main-navigation ul ul li.current_page_item a, .main-navigation ul ul li.current-menu-item a, .main-navigation ul ul li.current-menu-parent a, .main-navigation ul ul li.current-menu-ancestor a {\ncolor: #333;\ntext-shadow: none !important;\n}\n.main-navigation ul li:hover &gt; ul {\nmargin: 0;\nopacity: 1;\nvisibility: visible;\n}\n.main-navigation ul li.current_page_item a, .main-navigation ul li.current-menu-item a, .main-navigation ul li.current-menu-parent a, .main-navigation ul li.current_page_parent a, .main-navigation ul li.current-menu-ancestor a {\nbackground: none repeat scroll 0 0 #f15a23;\ncolor: #fff;\npadding: 7px 10px;\n}\n.menu-toggle {\ncursor: pointer;\n}\n.main-small-navigation .menu {\ndisplay: none;\n}\n#masthead, #colophon, #content {\nfloat: left;\nmargin: 10px 0;\nmin-height: 60px;\nwidth: 100%;\n}\n#colophon {\nborder-top: 1px solid #d6d6d6;\nmargin: 10px 0;\npadding: 10px 0;\nposition: relative;\n}\n#colophon .site-info {\nfloat: left;\nfont-size: 12px;\npadding: 8px 0;\nwidth: 420px;\n}\n.footer, #headerContent{width:100%}\n#embedMap header .menu-wrapper.right-pos {\ndisplay: inline-block;\nfloat: right;\n}\n#embedMap header .header-hgroup.left-pos {\nfloat: left;\nmargin: 0 15px 0 0;\n}\n#colophon .social-icon {\nfloat: right;\n}\n#colophon .social-icon a {\nbackground-image: url(\"http://musicstaff.com/wp-content/themes/fruitful/images/social.png\");\nbackground-repeat: no-repeat;\nfloat: left;\nheight: 30px;\nopacity: 1;\nwidth: 30px;\n}\n#colophon .social-icon a:hover, #colophon .social-icon a:active {\nopacity: 0.9;\n}\n#colophon .social-icon a.facebook {\nbackground-position: -249px 0;\n}\n#colophon .social-icon a.twitter {\nbackground-position: -280px 0;\n}\n#colophon .social-icon a.email {\nbackground-position: -342px 0;\n}\n#back-top {\nbottom: 65px;\ndisplay: block;\nposition: absolute;\nright: 2%;\n}\n#back-top a {\ncolor: #000;\nfont-size: 18px;\ntext-decoration: none;\n}\n</style>\n<script async src=\"//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js\"></script>\n<script>(adsbygoogle = window.adsbygoogle || []).push({});</script>",
    "HeaderCode": "<header id=\"masthead\" class=\"site-header\" role=\"banner\">\n<div data-originalstyle=\"left-pos\" class=\"header-hgroup left-pos\">\n<a href=\"http://www.musicstaff.com/\" title=\"#1 Music Teacher Directory\" rel=\"home\"><img class=\"logo\" src=\"http://www.musicstaff.com/wp-content/uploads/2014/07/musicstaffLogo2.png\" alt=\"#1 Music Teacher Directory\" /></a> </div>\n<div data-originalstyle=\"right-pos\" class=\"menu-wrapper right-pos\">\n<nav role=\"navigation\" class=\"site-navigation main-navigation\">\n<div class=\"menu-musicstaff-container\">\n<ul id=\"menu-musicstaff\" class=\"menu\">\n     <li id=\"menu-item-8\" class=\"menu-item menu-item-type-custom menu-item-object-custom menu-item-8\"><a href=\"http://musicstaff.com/\">Home</a></li>\n     <li id=\"menu-item-15\" class=\"menu-item menu-item-type-taxonomy menu-item-object-category menu-item-15\"><a href=\"http://www.musicstaff.com/category/teacher-lounge/\">Teacher Lounge</a></li>\n     <li id=\"menu-item-175\" class=\"menu-item menu-item-type-post_type menu-item-object-page menu-item-175\"><a href=\"http://www.musicstaff.com/teachersearch/\">Teacher Search</a></li>\n     <li id=\"menu-item-18\" class=\"menu-item menu-item-type-post_type menu-item-object-page menu-item-18\"><a href=\"http://www.musicstaff.com/musicstaff-com/\">About</a></li>\n</ul>\n</div>\n</nav><!-- .site-navigation .main-navigation -->\n</div>\n</header>\n<!-- #masthead .site-header -->\n<!-- Inject Script Filtered -->\n<!-- MusicStaff Header -->\n<ins class=\"adsbygoogle\" style=\"display:block;width:728px;height:90px;margin:0 auto; clear:both;\" data-ad-client=\"ca-pub-6361509654784458\" data-ad-slot=\"2935413951\"></ins>\n<!-- Inject Script Filtered -->\n ",
    "HeaderColor": "#663366",
    "HeaderFontSize": "28px",
    "HeaderText": null,
    "Heading": null,
    "IncludeInternet": false,
    "InterfaceConfigCategories": [
        {
            "CategoryID": 1425
        }
    ],
    "InterfaceConfigRegions": [
        {
            "CountryID": 1,
            "ServiceRegionID": 0
        },
        {
            "CountryID": 2,
            "ServiceRegionID": 0
        }
    ],
    "InterfaceFormFilterOptions": null,
    "InterfaceIcons": [],
    "InterfaceResultsDisplay": null,
    "InterfaceSLFormRadiusOptions": [
        {
            "DefaultOption": false,
            "Pos": 0,
            "Radius": 5
        },
        {
            "DefaultOption": false,
            "Pos": 1,
            "Radius": 10
        },
        {
            "DefaultOption": false,
            "Pos": 2,
            "Radius": 20
        },
        {
            "DefaultOption": true,
            "Pos": 3,
            "Radius": 35
        },
        {
            "DefaultOption": false,
            "Pos": 4,
            "Radius": 50
        },
        {
            "DefaultOption": false,
            "Pos": 5,
            "Radius": 100
        }
    ],
    "InternetOnlySearch": false,
    "IsResponsive": true,
    "LabelColor": "#555555",
    "LinkAdvancedSearch": false,
    "LinkColor": "#ff8000",
    "LinkToLangingPages": false,
    "LocationFormID": 107,
    "LocationFormTitle": "Joshua Registration New Test",
    "LocationImage": null,
    "LogoImage": null,
    "MapHeight": 210,
    "MaxMindFlag": 0,
    "MaxRadius": 0,
    "MaxResults": 0,
    "MetaDescription": null,
    "Name": "musicstaff1",
    "NoResultsText": "There are no results to display.  Please widen your search.     ",
    "PageColor": "#80ff80",
    "PageHeight": 0,
    "Preview": false,
    "ResultsPerPage": 5,
    "SearchTypeID": 0,
    "ShowBELogo": true,
    "ShowCategories": false,
    "ShowCategoriesAsDropdown": false,
    "ShowCategoriesResults": true,
    "ShowContact": false,
    "ShowCoupons": true,
    "ShowDrivingDirections": false,
    "ShowEvents": true,
    "ShowFBLike": false,
    "ShowGoogleMap": true,
    "ShowKeyword": true,
    "ShowLeadCapture": true,
    "ShowLocationImage": true,
    "ShowLocationLandingPage": true,
    "ShowLocationLink": true,
    "ShowLocationName": true,
    "ShowLocationPhone": true,
    "ShowSubcategories": false,
    "ShowSubcategoriesAsCheckboxes": true,
    "ShowYahooMap": false,
    "TemplateID": 10,
    "TextColor": "#333333",
    "Title": null,
    "UseAutocomplete": false,
    "UseCollapsedView": false,
    "UseGoogleAutocomplete": false,
    "UsesGeocoding": true,
    "WidgetPositionID": 0
}
 
Suggest Edits

GetAllClientSearchSettings

 
gethttps://ws.bullseyelocations.com/GetAllClientSearchSettings

Query Params

ClientID
int32
ApiKey
string
 
curl --request GET \
  --url https://ws.bullseyelocations.com/GetAllClientSearchSettings
var request = require("request");

var options = { method: 'GET',
  url:
   'https://ws.bullseyelocations.com/GetAllClientSearchSettings' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://ws.bullseyelocations.com/GetAllClientSearchSettings")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://ws.bullseyelocations.com/GetAllClientSearchSettings");

xhr.send(data);
import requests

url = "https://ws.bullseyelocations.com/GetAllClientSearchSettings"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results
 
Suggest Edits

GetClientTerms

This method returns labels and categories for the given client and language.
Return Value: RClientTerms

 
gethttp://ws.bullseyelocations.com/RestSearch.svc/GetClientTerms

Query Params

ClientID
int32
required
APIKey
string
required
LanguageCode
string

If no language code is specified, default (English) is returned.

LanguageID
int32
 
No code samples available
A binary file was returned

You couldn't be authenticated

{
    "Categories": [
        {
            "CategoryData": "",
            "CategoryId": 1420,
            "CategoryName": "Dulcimer",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 0,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1443,
            "CategoryName": "Trombone",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 0,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "http://www.bullseyelocations.com/products/store-locator-software",
            "CategoryId": 6358,
            "CategoryName": "Grand Piano",
            "Depth": 1,
            "Lineage": "|1437|",
            "ParentCategoryId": 1437,
            "Pos": 0,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1449,
            "CategoryName": "Voice",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 0,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "02",
            "CategoryId": 5974,
            "CategoryName": "Large Guitars",
            "Depth": 1,
            "Lineage": "|1425|",
            "ParentCategoryId": 1425,
            "Pos": 0,
            "ThirdPartyId": "2"
        },
        {
            "CategoryData": "",
            "CategoryId": 1440,
            "CategoryName": "Saxophone",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 0,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1426,
            "CategoryName": "Handbells",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 0,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1423,
            "CategoryName": "Flute",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 0,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1446,
            "CategoryName": "Ukelele",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 0,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1409,
            "CategoryName": "Autoharp",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 0,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "http://www.bullseyelocations.com",
            "CategoryId": 1437,
            "CategoryName": "Piano",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 0,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 15950,
            "CategoryName": "Autoharp 2",
            "Depth": 1,
            "Lineage": "|1409|",
            "ParentCategoryId": 1409,
            "Pos": 0,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1417,
            "CategoryName": "Conducting",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 0,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1429,
            "CategoryName": "Keyboard",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 0,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1424,
            "CategoryName": "French Horn",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 0,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1441,
            "CategoryName": "Theory",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 0,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1412,
            "CategoryName": "Bass Guitar",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 0,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1438,
            "CategoryName": "Recorder",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 0,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1418,
            "CategoryName": "Double Bass",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 0,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1432,
            "CategoryName": "Marimba",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 0,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1421,
            "CategoryName": "Ear Training",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 0,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1444,
            "CategoryName": "Trumpet",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 0,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "021",
            "CategoryId": 5975,
            "CategoryName": "Very Large Guitars",
            "Depth": 2,
            "Lineage": "|1425|5974|",
            "ParentCategoryId": 5974,
            "Pos": 0,
            "ThirdPartyId": "21"
        },
        {
            "CategoryData": "",
            "CategoryId": 1435,
            "CategoryName": "Other",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 0,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1415,
            "CategoryName": "Clarinet",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 0,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1447,
            "CategoryName": "Viola",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 0,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1407,
            "CategoryName": "All Instruments",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 0,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "022",
            "CategoryId": 5976,
            "CategoryName": "Super Gigantic Guitars",
            "Depth": 3,
            "Lineage": "|1425|5974|5975|",
            "ParentCategoryId": 5975,
            "Pos": 0,
            "ThirdPartyId": "22"
        },
        {
            "CategoryData": "",
            "CategoryId": 1436,
            "CategoryName": "Percussion",
            "Depth": 1,
            "Lineage": "|1437|",
            "ParentCategoryId": 1437,
            "Pos": 0,
            "ThirdPartyId": "http://www.bullseyelocations.com/products/store-locator-app-facebook"
        },
        {
            "CategoryData": "",
            "CategoryId": 1410,
            "CategoryName": "Bagpipes",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 0,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1416,
            "CategoryName": "Concertina",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 0,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1430,
            "CategoryName": "Lute",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 0,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "http://www.bullseyelocations.com/products/store-locator-plugin-for-wordpress",
            "CategoryId": 6359,
            "CategoryName": "Electric Piano",
            "Depth": 1,
            "Lineage": "|1437|",
            "ParentCategoryId": 1437,
            "Pos": 0,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "03",
            "CategoryId": 5973,
            "CategoryName": "Mini Guitar",
            "Depth": 1,
            "Lineage": "|1425|",
            "ParentCategoryId": 1425,
            "Pos": 0,
            "ThirdPartyId": "3"
        },
        {
            "CategoryData": "",
            "CategoryId": 1433,
            "CategoryName": "Oboe",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 0,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1413,
            "CategoryName": "Bassoon",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 0,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1439,
            "CategoryName": "Recording",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 0,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1419,
            "CategoryName": "Drums",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 0,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1427,
            "CategoryName": "Harmonica",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 0,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1422,
            "CategoryName": "Euphorium",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 0,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1445,
            "CategoryName": "Tuba",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 0,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "023",
            "CategoryId": 7903,
            "CategoryName": "Super Gigantic Guitars2",
            "Depth": 4,
            "Lineage": "|1425|5974|5975|5976|",
            "ParentCategoryId": 5976,
            "Pos": 0,
            "ThirdPartyId": "23"
        },
        {
            "CategoryData": "",
            "CategoryId": 1434,
            "CategoryName": "Organ",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 0,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1414,
            "CategoryName": "Cello",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 0,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1428,
            "CategoryName": "Harp",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 0,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1448,
            "CategoryName": "Violin",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 0,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1442,
            "CategoryName": "Timpani",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 0,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1408,
            "CategoryName": "Accordion",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 0,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1411,
            "CategoryName": "Banjo",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 0,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "",
            "CategoryId": 1431,
            "CategoryName": "Mandolin",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 0,
            "ThirdPartyId": ""
        },
        {
            "CategoryData": "01",
            "CategoryId": 1425,
            "CategoryName": "Guitar",
            "Depth": 0,
            "Lineage": "|",
            "ParentCategoryId": null,
            "Pos": 0,
            "ThirdPartyId": "1"
        }
    ],
    "DefaultBacktoResultsTerm": "Volver a Resultados",
    "DefaultBusinessHoursTerm": "Horas de oficina",
    "DefaultCategoryPluralTerm": "Categorías",
    "DefaultCategoryTerm": "Categoría",
    "DefaultChooseCategoryTerm": "Elegir la categoría",
    "DefaultChooseSubcategoryTerm": "Elije sub",
    "DefaultCityAndRegionAreRequiredTerm": null,
    "DefaultCityAndRegionTerm": null,
    "DefaultCityIsRequiredTerm": null,
    "DefaultCityORPostcodeTerm": "Ciudad o Código Postal",
    "DefaultCityORRegionORPostcodeTerm": "Ciudad o Región o Código Postal",
    "DefaultCityORRegionTerm": null,
    "DefaultCityOnlyTerm": null,
    "DefaultCityProvinceORPostCodeTerm": "Ciudad, Provincia o Código Postal",
    "DefaultCityProvinceORPostalCodeTerm": "Ciudad, Provincia o Código Posta",
    "DefaultCityStateORZipCodeTerm": "Ciudad, Estado o Código Postal",
    "DefaultCityTerm": "Ciudad",
    "DefaultCityandProvinceorPostalCodeisRequiredTerm": "Ciudad y Provincia o Código Postal se Requiere",
    "DefaultCityandRegionorPostCodeisRequiredTerm": "Ciudad y Región o Código Postal se Requiere",
    "DefaultCityandStateorZipisRequiredTerm": "Ciudad y Estado o Código Postal se Requiere",
    "DefaultCityorPostCodeisRequiredTerm": "Ciudad o Código Postal se Requiere",
    "DefaultCityorRegionisRequiredTerm": "Ciudad o Región se Requiere",
    "DefaultCityorRegionorPostCodeisRequiredTerm": "Ciudad o Región o Código Postal se Requiere",
    "DefaultContactTerm": "Contacto",
    "DefaultCountryTerm": "País",
    "DefaultCountryisRequiredTerm": "País Requerido",
    "DefaultCountryselectiondoesnotmatchcityandstateprovinceTerm": "El país que usted a selecionado no coincide con la ciudad, estado o provincia.",
    "DefaultCountryselectiondoesnotmatchzippostalcodeTerm": "Selección del país no coincide con el código postal",
    "DefaultDirectionsTerm": "Direcciones",
    "DefaultEmailTerm": "Email",
    "DefaultFriTerm": "Viernes",
    "DefaultInvalidCityProvinceorPostalCodeTerm": "Ciudad, Estado o Código Postal No Valido",
    "DefaultInvalidCityofPostCodeTerm": "Ciudad o Código Postal No Valido",
    "DefaultKeywordTerm": "Palabra clave",
    "DefaultLocationTerm": "Ubicación",
    "DefaultLocationpluralTerm": "Ubicaciones",
    "DefaultMonTerm": "Lunes",
    "DefaultMoreInfoTerm": "Más información",
    "DefaultNearestLocationTerm": null,
    "DefaultNextTerm": "Siguiente",
    "DefaultPageOfTerm": "de",
    "DefaultPrevTerm": "Anterior",
    "DefaultRadiusTerm": "Radio",
    "DefaultRegionORPostcodeIsRequiredTerm": null,
    "DefaultRegionORPostcodeTerm": null,
    "DefaultRepTerm": "Reps",
    "DefaultResultsFoundTerm": "Resultados Encontrados",
    "DefaultSatTerm": "Sabado",
    "DefaultSearchLabelTerm": null,
    "DefaultSearchTerm": "Buscar",
    "DefaultShowinPageTerm": "Página",
    "DefaultSorryThisZipPostalCodeIsNotValidPleaseCheckItAndReRnterIfYouFeelThatYouveReceivedThisMessageIncorrectlyPleaseContactTerm": "",
    "DefaultSubcategoryPluralTerm": "Subcategorías",
    "DefaultSubcategoryTerm": "Subcategoría",
    "DefaultSunTerm": "Domingo",
    "DefaultThuTerm": "Jueves",
    "DefaultTimezonesTerm": "Zonas horarias",
    "DefaultTueTerm": "Martes",
    "DefaultWebsiteTerm": "Sitio web",
    "DefaultWedTerm": "Miercoles"
}
 
Suggest Edits

DoSearch2

This method will return a list of locations, given search criteria. This call wraps the returned list in a structure that includes the total number of results. Default sorting and search type are configured in the admin under search rules.

Return Value: RestSearchResults

 
gethttps://ws.bullseyelocations.com/restsearch.svc/dosearch2

Query Params

ClientID
int32
required
ApiKey
string
required
PostalCode
string
City
string
State
string
CountryID
int32
required

Should be set to 1 for US and 2 for Canada. For other country codes, you can check the result of the GetCountryList method

CategoryIDs
string

Can include comma-delimited list to limit to those categories

Radius
int32

Specify radius in miles. To perform a literal search unconstrained by radius, pass -1 as the radius. This will allow you to retrieve all locations in a given postal code, state, or city/state, or matching a given keyword

StartIndex
int32
required

Use this to specify the start number of the results for the page you are requesting.

PageSize
int32
required

Specify the number of results returned within a paging request.

Latitude
string

If you specify a lat/lon pair, a radius search will be performed regardless of the configured search rules.

Longitude
string

If you specify a lat/lon pair, a radius search will be performed regardless of the configured search rules.

Keyword
string

Keyword search will perform a string match against the location name.

UserIPAddress
string

If you specify a user IP address, then this will be checked against the list of blocked IP addresses for this client. If the address is on the block list, the search will not be performed, and a 403 (forbidden) response code will be returned. Passing this argument also causes the given IP address to be logged, if search logging is enabled for this client. (If the user IP is not passed in, then the IP of the machine calling the web service will be logged.)

ReturnGeocode
boolean

If this flag is set, the web service call will geocode any locations that need it

FillAttr
boolean

If the FillAttr parameter is set to true, the web service will fill in the Attributes list in each location result. If not, then the attributes list will not be filled in. (In some instances, returning attributes can slow down the search. Do not return attributes unless you need them.)

ReturnCoupon
boolean

If set to true, the web service will fill in the coupons list in each location result.

SearchSourceName
string

Used to indicate the source of this search, for reporting purposes. Default source names are “Web” and “Facebook”. To use another source, you must set it up via the Bullseye admin site.

SearchTypeOverride
int32

See notes below.

CountryScope
string

This optional parameter is used to access all locations regardless of what country they are in. It must be used in conjunction with the SearchTypeOverride parameter being set to Country Search. It also requires that the Other International subscription has been set up through the Bullseye admin site, as it uses the search and sort rules associated with this subscription. For now this parameter only has one acceptable value, "All", which will return all locations worldwide. The locations can be filtered by Category and Keyword if those parameters have been provided.

MaxResults
int32

Used to set a ceiling on the number of results returned if this has not been set for a specific country, or to override that setting if it exists for the country that is being searched.

MatchAllCategories
boolean

By default performing a search with multiple categories will return locations that match "any" of the categories in the request. For search requests which require locations to match all of the categories input, the MatchAllCategories optional parameter can be used. This parameter is automatically set to false, but when overridden to true will require that any result be assigned to all categories passed in. Setting this parameter to "True" will return results that match "all" categories.

ReturnServices
boolean

When set to "True", this parameter results in two flags on the Location object being set for each location: IsStoreLocator and IsLeadManager. If not set, or set to false, these fields will not be populated and should be ignored

FindNearestForNoResults
boolean

Setting this parameter to "True" will return the single nearest result regardless of the specified radius. Results are limited to the country of the original request.

LanguageCode
string

Specify the ISO code of the language that results should be returned. Will return custom translations for both labels and categories if that subscription is enabled. Otherwise, will return global translations for labels only. See Language Codes/IDs here

LanguageID
int32

Specify the Bullseye LanguageID to request translated values as defined above. See Language Codes/IDs here

GetHoursForUpcomingWeek
boolean

If set to True, the web service will return daily business hours

Usage Tip

Results should be retrieved one page at a time. To retrieve the first 25 results, specify StartIndex = 0 and PageSize = 25. To retrieve the next 25 results, specify StartIndex=25, PageSize=25

SearchTypeOverride

The optional parameter SearchTypeOverride can be used to change the inherent search type for a particular country. The inherent Search Type refers to the Search Rules configured for a country on the Bullseye admin site. For example, if the search type for Australia is set to Radius Search, setting the SearchTypeOverride to the value for Country Search will result in all Australian locations being returned. The defined search types are:

Radius: 1 - Retrieves all locations that fall within the distance defined by the Radius parameter. For the US, the value of the Radius parameter is interpreted in miles; in all other countries it is considered kilometers. A starting point needs to be defined through a combination of the City, State, PostalCode, Latitude and Longitude parameters.

Territory: 2 - Based on the inputted starting point, retrieves all locations that belong to defined territories that include the starting point.

Literal: 3 - Retrieves all locations within a country that have the value in the Keyword parameter in their name.

Country: 4 - Retrieves all locations that fall within the country defined by the CountryId parameter. An example of when to use the SearchTypeOverride parameter is if no results are returned for a country configured for Radius Search. The fallback for that situation would be to have a second call with SearchTypeOverride set to Country that would return all locations for that country.

Territory Or Radius: 5 - Based on the inputted starting point, retrieves all locations that belong to defined territories that include the starting point. If no locations are found, a Radius Search will then be performed and all locations from that returned. For this to be effective, the Radius parameter must be supplied with a value.

Territory And Radius: 6 - Based on the inputted starting point, retrieves all locations that belong to defined territories that include the starting point. A Radius Search is then performed and the results combined with those from the Territory Search. For this to be effective, the Radius parameter must be supplied with a value.

Internet Only: 7 - Returns all internet only locations across all countries.

InternationalRadius: 8 - Performs a radius search based on an inputted set of geocodes without regard to country. This search path will bypass requiring ClientSettings/RoutingMethod/RoutingDetails records. Latitude and longitude are required.

An example of when to use the SearchTypeOverride parameter is if no results are returned for a country configured for Radius Search. The fallback for that situation would be to have a second call with SearchTypeOverride set to Country that would return all locations for that country.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Net;
using EasyHttp.Http;
using JsonFx.Json;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
 
namespace RestWebSvcCsharpConsoleTest
{
    class Program
    {
        static void Main(string[] args)
        {
            string myUrl = 
                "http://ws.bullseyelocations.com/RestSearch.svc/DoSearch2"
                + "?ClientId=999&ApiKey=YOUR-API-KEY-HERE";
 
            // presumably, these values would come from the end-user 
            // and/or your business logic:
            int countryId = 1;      // US
            string zipCode = "08876";
            string city = "";
            string state = "";      // e.g. "NJ"
            int radius = 25;
            bool returnGeocodes = true;
            bool returnAttributes = false;
 
            // construct the full URL:
            myUrl += string.Format("&CountryId={0}", countryId);
            if (!string.IsNullOrEmpty(zipCode))
                myUrl += string.Format("&PostalCode={0}", zipCode);
            if (!string.IsNullOrEmpty(city))
                myUrl += string.Format("&City={0}", city);
            if (!string.IsNullOrEmpty(state))
                myUrl += string.Format("&State={0}", state);
            myUrl += string.Format("&Radius={0}", radius);
            if (returnGeocodes)
                myUrl += "&ReturnGeocode=true";
            if (returnAttributes)
                myUrl += "&FillAttr=true";
 
            myUrl += string.Format("&StartIndex={0}&PageSize={1}", 0, 25);
 
            var http = new HttpClient
            {
                Request = { Accept = HttpContentTypes.ApplicationJson }
            };
 
            EasyHttp.Http.HttpResponse response = null;
            try
            {
                response = http.Get(myUrl);
            }
            catch (WebException ex)
            {
                Console.WriteLine("Error: web exception - msg = {0}", ex.Message);
                return;
            }
 
            var statcode = response.StatusCode;
            string statdesc = response.StatusDescription;
 
            if (statcode != System.Net.HttpStatusCode.OK)
            {
                Console.WriteLine("Error: response code = {0}", statdesc);
                return;
            }
 
            // get the raw JSON:
            string rawresp = response.RawText;
 
            if (string.IsNullOrEmpty(rawresp))
            {
                Console.WriteLine("Error: no response text received from server.");
                return;
            }
 
            // create a dynamic var and pop it from the raw JSON:
            var reader = new JsonFx.Json.JsonReader();
            dynamic myResults = reader.Read(rawresp);
 
            int nTotResults = myResults.TotalResults;
 
            // optionally, deserialize it to a static variable:
            // NOTE that we use Json.Net here instead of JsonFx, 
            // due to some issues with JsonFx.
            // RestSearchResults myOtherRes = 
            //  JsonConvert.DeserializeObject<RestSearchResults>(rawresp);
 
            Console.WriteLine("total # of results: {0}\n\n", nTotResults);
 
            int nRows = 0;
            foreach (var row in myResults.ResultList)
            {
                nRows++;
                if (nRows > 10)
                    break;
                Console.WriteLine(
                    "Name:{0}, Distance:{1}, Address1:{2}, City:{3}, State:{4}\n",
                    row.Name, row.Distance, row.Address1, row.City, row.State);
                if (row.Attributes != null)
                {
                    foreach (var attr in row.Attributes)
                    {
                        Console.WriteLine("\tid={0}, name={1}, value={2}\n",
                            attr.AttributeId, attr.AttributeName, attr.AttributeValue);
                    }
                }
            }
 
            // or you can use LINQ via JSON.NET:
            Console.WriteLine("\nExtracting location names via JSON:");
            JObject jResults = JObject.Parse(rawresp);
            var jq = from row in jResults["ResultList"].Children()
                     orderby row["Name"]
                     select row["Name"];
            foreach (var rowName in jq)
            {
                Console.WriteLine(rowName);
            }
 
            if (nRows == 0)
                Console.WriteLine("Empty array returned.\n");
 
            Console.WriteLine("Press any key...");
            Console.ReadKey();
        }
    }
}
<?php
/* This next sample shows how to call the DoSearch2 method. */
 
$myUrl = "http://ws.bullseyelocations.com/RestSearch.svc/DoSearch2" .
"?ClientId=999&ApiKey=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx " .
"&Latitude=40.665505&Longitude=-74.267242&Radius=25" .
"&UserIPAddress=1.2.3.4" .
"&StartIndex=0&PageSize=25";
 
print "$myUrl <br/>"; 
$method = "GET";
 
$myHeaders = array(
	'Accept: application/json',
	'Content-type: application/json'
	);
 
$handle = curl_init();
curl_setopt($handle, CURLOPT_URL, $myUrl);
 
curl_setopt($handle, CURLOPT_HTTPHEADER, $myHeaders);
curl_setopt($handle, CURLOPT_RETURNTRANSFER, true);
curl_setopt($handle, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($handle, CURLOPT_SSL_VERIFYPEER, false);
 
$response = curl_exec($handle);
$code = curl_getinfo($handle, CURLINFO_HTTP_CODE);
 
print "return code = $code <br/>";
 
$myRespArr = json_decode($response, true);
print $myRespArr["TotalResults"] . " total results.<br/>\n";
print "<pre>";
var_dump($myRespArr);
print "</pre>";
?>
A binary file was returned

You couldn't be authenticated

{
  "FindNearestSearch": false,
  "ResultList": [
    {
      "Address1": "3121 US Hwy 22 East",
      "Address2": "Suite 301",
      "Address3": null,
      "Address4": null,
      "Attributes": null,
      "BusinessHours": "Mon-Tue 8:00 AM-5:00 PM|",
      "CategoryIds": "",
      "City": "Branchburg",
      "ContactName": null,
      "ContactPosition": null,
      "ContactURL": null,
      "CountryCode": "US",
      "Coupons": null,
      "DailyHoursList": null,
      "Distance": 0,
      "EmailAddress": "rachael@test.electricvine.com",
      "Events": null,
      "FaceBookPageId": null,
      "FaxNumber": null,
      "GeoCodeStatusId": 2,
      "Id": 4952378,
      "ImageFileUrl": null,
      "InternetLocation": false,
      "IsLeadManager": false,
      "IsStoreLocator": false,
      "LMServiceID": false,
      "Latitude": 40.600771,
      "LocationTypeName": "Standard",
      "Longitude": -74.686472,
      "MobileNumber": null,
      "Name": "Atlantic City Dinettes",
      "PhoneNumber": "609-646-6464",
      "PostCode": "08876",
      "State": "NJ",
      "ThirdPartyId": null,
      "TimeZone": "(GMT-05:00) Eastern Time (US & Canada)",
      "URL": null
    }
  ],
  "SearchReqLogId": 10514187,
  "TotalResults": 1
}
 
Suggest Edits

GetCategories

This method will return the full list of categories for a given client.

Return Value: RestCategory

 
gethttps://ws.bullseyelocations.com/RestSearch.svc/GetCategories

Query Params

ClientId
int32
required
ApiKey
string
required
LanguageCode
string

Specify the ISO code of the language that results should be returned. See Language Codes/IDs here

LanguageID
int32

Specify the Bullseye LanguageID of the language that results should be returned.See Language Codes/IDs here

CategoryGroupID
int32

Defines the category group to return categories for.

ReturnAllCategories
boolean

Default is false, when true it will return all existing categories.

 
<?php
//1. Include Bullseye library
require_once '../../Bullseye.php';
//2. Create Bullseye object
$clientId = 5786;
$searchKey = null; //'cf623cdf-1090-43ba-8b0f-9fa67fcf9d57';
$adminKey = 'aa4c7e55-9d0b-4a97-b62e-c95efec4285e';
$useStagingServer = true;
$bullseye = new Bullseye\Bullseye($clientId, $searchKey, $adminKey, $useStagingServer);
//2.1 activate debug mode
//$bullseye->debug(true);
//3. Call method to get categories
$alphaOrdering = true;
$response = $bullseye->getCategories($alphaOrdering);
//4. Check response
if($response)
  print_r($response);
else{
  //if location was not found
  print_r($bullseye->getLastError());
}
A binary file was returned

You couldn't be authenticated

[
{
        "CategoryData": "",
        "CategoryId": 1409,
        "CategoryName": "Autoharp",
        "Depth": 0,
        "ImageFileURL": null,
        "Lineage": "|",
        "ParentCategoryId": null,
        "Pos": 0,
        "ThirdPartyId": "1409"
    },
    {
        "CategoryData": "",
        "CategoryId": 1410,
        "CategoryName": "Bagpipes",
        "Depth": 0,
        "ImageFileURL": null,
        "Lineage": "|",
        "ParentCategoryId": null,
        "Pos": 0,
        "ThirdPartyId": "1410"
    }
]
 
Suggest Edits

GetCatSum

This method will return a list of categories, and the number of locations within each, given a set of criteria for a location search.

Return Value: RestCatSum

 
gethttps://ws.bullseyelocations.com/RestSearch.svc/GetCatSum

Query Params

ClientId
int32
required
ApiKey
string
required
PostalCode
string

5-digit zip. If you specify postal code, your configured search type (territory or radius) will be used.

City
string

If you specify city/state, your configured search type (territory or radius) will be used.

State
string

2-alpha state code. If you specify city/state, your configured search type (territory or radius) will be used.

Latitude
string

If you specify a lat/lon pair, a radius search will be performed

Longitude
string

If you specify a lat/lon pair, a radius search will be performed

Keyword
string

If you specify a keyword, this will be used to filter results to locations containing that keyword in the name field

CategoryIds
string

You can specify a comma-delimited list of categories. This will limit the summary to locations within those categories.

Radius
int32
required

Specify radius in miles. Radius is required for any geographical search.

Specify postal code (5-digit zip), city and state (2-alpha state code), or latitude/longitude (degrees).

If you specify a lat/lon pair, a radius search will be performed. If you specify postal code or city/state, your configured search type (territory or radius) will be used.

If you specify a keyword, this will be used to filter results to locations containing that keyword in the name field.

You can specify a comma-delimited list of categories. This will limit the summary to locations within those categories.

Specify radius in miles.

	var mydata = {
	  ClientId: 999,
	  ApiKey: "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
	  //PostalCode: "08876",
	  City: "Somerset", State: "NJ",
        //Latitude: 40.54374, Longitude: -74.66004,
        //CategoryIds: "1,2,3",
	  Radius: 5
	};
	$.ajax( {
	  url: "http://ws.bullseyelocations.com/RestSearch.svc/GetCatSum",
	  data: mydata,
	  type: "GET",
	  processData: true,
	  timeout: 10000,
	  dataType: "json",
	  success:
		function(data, status, xhr)
		  {
		  console.log(data);
		  console.log(status);
		  $("div#cats").text(data.length + " elements returned");
		  } ,
	  error:
		function(xhr, status, ex)
		  {
		  console.log("ERROR: "+status);
		  }
	} );
<?php
//1. Include Bullseye library
require_once '../../Bullseye.php';
//2. Create Bullseye object
$clientId = 5786;
$searchKey = null; //'cf623cdf-1090-43ba-8b0f-9fa67fcf9d57';
$adminKey = 'aa4c7e55-9d0b-4a97-b62e-c95efec4285e';
$useStagingServer = true;
$bullseye = new Bullseye\Bullseye($clientId, $searchKey, $adminKey, $useStagingServer);
//2.1 activate debug mode
//$bullseye->debug(true);
//3. Call method to get categories
$args = array(
  'City' => 'Somerset',
  'State' => 'NJ',
  'Radius' => 10
);
$response = $bullseye->getCatSum($args);
//4. Check response
if(false !== $response)
  print_r($response);
else{
  //if location was not found
  print_r($bullseye->getLastError());
}
A binary file was returned

You couldn't be authenticated

[
  {
    "CategoryId": 1408,
    "CategoryName": "Accordion",
    "Locations": 9
  },
  {
    "CategoryId": 1410,
    "CategoryName": "Bagpipes",
    "Locations": 2
  }
  ]
 
Suggest Edits

GetLocation

This method retrieves information for a location, given a Bullseye location ID, or a third-party ID.

Return Value: LocationJson

 
gethttps://ws.bullseyelocations.com/RestSearch.svc/GetLocation

Query Params

ClientId
int32
required
ApiKey
string
required
LocationId
int32
required
ThirdPartyId
string

This is identical to the GetLocation method in the RestLocation service. It is being made available in the search service also, for convenience.

//Json date returned from the API contains a 4 hour offset time
// offset needs to be included when converting a date to ASP.Net DateTime
private DateTime ConvertJsonStringToDateTime(string jsonTime)
        {
            if (!string.IsNullOrEmpty(jsonTime))
            {
                string milis = jsonTime;
                string sign = milis.IndexOf("+") > -1 ? "+" : "-";
                string hours = milis.Substring(milis.IndexOf(sign));
                milis = milis.Substring(0, milis.IndexOf(sign));
                return new DateTime(1970, 1, 1, 0, 0, 0, 0, DateTimeKind.Utc).AddMilliseconds(Convert.ToInt64(milis)).AddHours(Convert.ToInt64(hours) / 100);
            }
 
            return DateTime.Now;
        }
 
//usage
 var time1 = ConvertJsonStringToDateTime("1442926800000-0400");
 var time2 = ConvertJsonStringToDateTime("1442955600000-0400");
<?php
//1. Include Bullseye library
require_once '../../Bullseye.php';
//2. Create Bullseye object
$clientId = 5786;
$searchKey = null; //'cf623cdf-1090-43ba-8b0f-9fa67fcf9d57';
$adminKey = 'aa4c7e55-9d0b-4a97-b62e-c95efec4285e';
$useStagingServer = true;
$bullseye = new Bullseye\Bullseye($clientId, $searchKey, $adminKey, $useStagingServer);
//2.1 activate debug mode
$bullseye->debug(true);
//3. Call method to get the location
$locationId = '4885827';
$location = $bullseye->getLocation($locationId);
//4. Check location
if($location)
  print_r($location);
else{
  //if location was not found
  print_r($bullseye->getLastError());
}
A binary file was returned

You couldn't be authenticated

{
  "Active": true,
  "Address1": "Little Heath,Barley Lane",
  "Address2": "Essex",
  "Address3": null,
  "Address4": null,
  "Attributes": [
    {
      "AttributeId": 226,
      "AttributeName": "My Rates",
      "AttributeTypeID": 1,
      "BoolValue": null,
      "DateCreated": "/Date(1463046616567-0400)/",
      "DateDeleted": null,
      "DateLastModified": "/Date(1463046616567-0400)/",
      "Id": 4058923,
      "LocationId": 4886269,
      "MemoValue": null,
      "NumericValue": null,
      "OptionID": null,
      "OptionName": null,
      "TextValue": "30",
      "LinkValue": null
    },
    {
      "AttributeId": 238,
      "AttributeName": "Teaching Location",
      "AttributeTypeID": 1,
      "BoolValue": null,
      "DateCreated": "/Date(1463046616567-0400)/",
      "DateDeleted": null,
      "DateLastModified": "/Date(1463046616567-0400)/",
      "Id": 4058924,
      "LocationId": 4886269,
      "MemoValue": null,
      "NumericValue": null,
      "OptionID": null,
      "OptionName": null,
      "TextValue": "Home",
      "LinkValue": null
    },
    {
      "AttributeId": 241,
      "AttributeName": "Years Teaching",
      "AttributeTypeID": 3,
      "BoolValue": null,
      "DateCreated": "/Date(1463046616567-0400)/",
      "DateDeleted": null,
      "DateLastModified": "/Date(1463046616567-0400)/",
      "Id": 4058925,
      "LocationId": 4886269,
      "MemoValue": null,
      "NumericValue": 10,
      "OptionID": null,
      "OptionName": null,
      "TextValue": null,
      "LinkValue": null
    },
    {
      "AttributeId": 248,
      "AttributeName": "References Available?",
      "AttributeTypeID": 4,
      "BoolValue": false,
      "DateCreated": "/Date(1463046616567-0400)/",
      "DateDeleted": null,
      "DateLastModified": "/Date(1463046616567-0400)/",
      "Id": 4058926,
      "LocationId": 4886269,
      "MemoValue": null,
      "NumericValue": null,
      "OptionID": null,
      "OptionName": null,
      "TextValue": null,
      "LinkValue": null
    },
    {
      "AttributeId": 232,
      "AttributeName": "In-Home Lessons?",
      "AttributeTypeID": 4,
      "BoolValue": false,
      "DateCreated": "/Date(1463046616567-0400)/",
      "DateDeleted": null,
      "DateLastModified": "/Date(1463046616567-0400)/",
      "Id": 4058927,
      "LocationId": 4886269,
      "MemoValue": null,
      "NumericValue": null,
      "OptionID": null,
      "OptionName": null,
      "TextValue": null,
      "LinkValue": null
    },
    {
      "AttributeId": 249,
      "AttributeName": "MTNA Certified?",
      "AttributeTypeID": 4,
      "BoolValue": false,
      "DateCreated": "/Date(1463046616567-0400)/",
      "DateDeleted": null,
      "DateLastModified": "/Date(1463046616567-0400)/",
      "Id": 4058928,
      "LocationId": 4886269,
      "MemoValue": null,
      "NumericValue": null,
      "OptionID": null,
      "OptionName": null,
      "TextValue": null,
      "LinkValue": null
    },
    {
      "AttributeId": 251,
      "AttributeName": "Newsletter?",
      "AttributeTypeID": 4,
      "BoolValue": false,
      "DateCreated": "/Date(1463046616567-0400)/",
      "DateDeleted": null,
      "DateLastModified": "/Date(1463046616567-0400)/",
      "Id": 4058929,
      "LocationId": 4886269,
      "MemoValue": null,
      "NumericValue": null,
      "OptionID": null,
      "OptionName": null,
      "TextValue": null,
      "LinkValue": null
    },
    {
      "AttributeId": 261,
      "AttributeName": "Styles Taught",
      "AttributeTypeID": 7,
      "BoolValue": null,
      "DateCreated": "/Date(1463046616567-0400)/",
      "DateDeleted": null,
      "DateLastModified": "/Date(1463046616567-0400)/",
      "Id": 4058930,
      "LocationId": 4886269,
      "MemoValue": null,
      "NumericValue": null,
      "OptionID": 209,
      "OptionName": "All Styles",
      "TextValue": null,
      "LinkValue": null
    }
  ],
  "BusinessHours": {
    "DateCreated": "/Date(1462448937963-0400)/",
    "DateDeleted": null,
    "DateLastModified": "/Date(1463046616583-0400)/",
    "FridayClose": null,
    "FridayOpen": null,
    "Id": 4886269,
    "LocationID": 4886269,
    "MondayClose": null,
    "MondayOpen": null,
    "SaturdayClose": null,
    "SaturdayOpen": null,
    "SundayClose": null,
    "SundayOpen": null,
    "ThursdayClose": null,
    "ThursdayOpen": null,
    "TimeZoneID": 5,
    "TimeZoneName": null,
    "TuesdayClose": null,
    "TuesdayOpen": null,
    "WednesdayClose": null,
    "WednesdayOpen": null,
    "Display24HourFormat": false
  },
  "BusinessHoursFmtd": null,
  "Categories": [],
  "City": "Essex",
  "ClientId": 267,
  "ContactName": "Contact name 3rd pty",
  "ContactPosition": "Daram",
  "ContactURL": null,
  "CountryId": 1,
  "CountryName": "United States",
  "Coupons": [],
  "DailyHoursList": null,
  "DateCreated": "/Date(1462448937917-0400)/",
  "DateDeleted": null,
  "DateLastGeoCoded": "/Date(1462448937887-0400)/",
  "DateLastModified": "/Date(1463046616567-0400)/",
  "EmailAddress": "test@gmail.com",
  "Events": [],
  "FacebookPageId": null,
  "FaxNumber": null,
  "GeoCodeStatusId": 1,
  "Id": 4886269,
  "ImageFileUrl": null,
  "InternationalAddress": null,
  "InternetLocation": false,
  "LMServiceID": true,
  "Latitude": 40.49934,
  "LocationTypeId": 656,
  "LocationTypeName": "Standard",
  "Longitude": -74.52138,
  "MemberId": null,
  "MobileNumber": null,
  "Name": "LOC name 3rd pty",
  "Password": null,
  "PhoneNumber": null,
  "PostCode": "08873",
  "RepFullName": null,
  "RepId": 139,
  "ResponsivenessId": 5,
  "ResponsivenessName": null,
  "RestAttributes": null,
  "RestHolidayHours": [],
  "RestLocationImage": [],
  "RestLocationSEO": null,
  "RestLocationSocialMedia": {
    "DateCreated": "/Date(-62135578800000-0500)/",
    "DateLastModified": "/Date(-62135578800000-0500)/",
    "FacebookURL": null,
    "GooglePlusURL": "",
    "ID": 2364,
    "LinkedInURL": "",
    "LocationID": 4886269,
    "PinterestURL": "",
    "TwitterURL": "",
    "YelpURL": ""
  },
  "RestLocationSocialMediaLinks": {
    "DateCreated": "/Date(-62135578800000-0500)/",
    "DateLastModified": "/Date(-62135578800000-0500)/",
    "FacebookURL": null,
    "GooglePlusURL": "",
    "ID": 2364,
    "LinkedInURL": "",
    "LocationID": 4886269,
    "PinterestURL": "",
    "TwitterURL": "",
    "YelpURL": ""
  },
  "Services": [
    {
      "DateCreated": "/Date(1463046616567-0400)/",
      "DateDeleted": null,
      "DateLastModified": "/Date(1463046616567-0400)/",
      "Id": 4421545,
      "LocationID": 4886269,
      "LocationName": null,
      "ServiceID": 1,
      "ServiceName": "Lead Manager"
    },
    {
      "DateCreated": "/Date(1463046616567-0400)/",
      "DateDeleted": null,
      "DateLastModified": "/Date(1463046616567-0400)/",
      "Id": 4421546,
      "LocationID": 4886269,
      "LocationName": null,
      "ServiceID": 2,
      "ServiceName": "Store Locator"
    }
  ],
  "StateAbbr": "NJ",
  "StateId": 35,
  "Territories": [],
  "ThirdPartyId": "TRDPID",
  "URL": null,
  "UserName": null
}
 
Suggest Edits

GetLocationByIP

This method uses the MaxMind API to retrieve location information for a specific IP address. Maxmind is a paid service so all requests have an expense to them.

 
gethttps://ws.bullseyelocations.com/restsearch.svc/GetLocationByIP

Query Params

ClientID
int32
required
APIKey
string
required
IPAddress
string
 
<?php
//1. Include Bullseye library
require_once '../../Bullseye.php';
//2. Create Bullseye object
$clientId = 5786;
$searchKey = null; //'cf623cdf-1090-43ba-8b0f-9fa67fcf9d57';
$adminKey = 'aa4c7e55-9d0b-4a97-b62e-c95efec4285e';
$useStagingServer = true;
$bullseye = new Bullseye\Bullseye($clientId, $searchKey, $adminKey, $useStagingServer);
//2.1 activate debug mode
//$bullseye->debug(true);
//3. Call method to get location by IP
$ip = '8.8.8.8';
$response = $bullseye->getLocationByIp($ip);
//4. Check response
if(false !== $response)
  print_r($response);
else{
  //if location was not found
  print_r($bullseye->getLastError());
}
A binary file was returned

You couldn't be authenticated

{"City":"Buffalo","Country":"US","CountryId":1,"ErrorMsg":null,"Lat":45.184502,"Lon":-93.839699,"State":"MN"}
 
Suggest Edits

GetStatesByCountry

This method will return a list of states or provinces, given a country id.

Return Value: RestState

 
gethttps://ws.bullseyelocations.com/RestSearch.svc/GetStatesByCountry

Query Params

ClientId
int32
required
ApiKey
string
required
CountryId
int32
required

1 for US, 2 for Canada.

 
<?php
//1. Include Bullseye library
require_once '../../Bullseye.php';
//2. Create Bullseye object
$clientId = 5786;
$searchKey = null; //'cf623cdf-1090-43ba-8b0f-9fa67fcf9d57';
$adminKey = 'aa4c7e55-9d0b-4a97-b62e-c95efec4285e';
$useStagingServer = true;
$bullseye = new Bullseye\Bullseye($clientId, $searchKey, $adminKey, $useStagingServer);
//2.1 activate debug mode
//$bullseye->debug(true);
//3. Call method to get states
$countryId = 2;
$response = $bullseye->getStatesByCountry($countryId);
//4. Check response
if(false !== $response)
  print_r($response);
else{
  //if location was not found
  print_r($bullseye->getLastError());
}
A binary file was returned

You couldn't be authenticated

[
  {
    "Abbr": "AL",
    "CountryID": 0,
    "ID": 0,
    "Name": "Alabama"
  },
  {
    "Abbr": "AK",
    "CountryID": 0,
    "ID": 0,
    "Name": "Alaska"
  },
  {
    "Abbr": "AS",
    "CountryID": 0,
    "ID": 0,
    "Name": "American Samoa"
  },
  {
    "Abbr": "AZ",
    "CountryID": 0,
    "ID": 0,
    "Name": "Arizona"
  },
  {
    "Abbr": "AR",
    "CountryID": 0,
    "ID": 0,
    "Name": "Arkansas"
  },
  {
    "Abbr": "CA",
    "CountryID": 0,
    "ID": 0,
    "Name": "California"
  },
  {
    "Abbr": "CO",
    "CountryID": 0,
    "ID": 0,
    "Name": "Colorado"
  },
  {
    "Abbr": "CT",
    "CountryID": 0,
    "ID": 0,
    "Name": "Connecticut"
  },
  {
    "Abbr": "DE",
    "CountryID": 0,
    "ID": 0,
    "Name": "Delaware"
  },
  {
    "Abbr": "DC",
    "CountryID": 0,
    "ID": 0,
    "Name": "District of Columbia"
  },
  {
    "Abbr": "FM",
    "CountryID": 0,
    "ID": 0,
    "Name": "Federated States of Micronesia"
  },
  {
    "Abbr": "FL",
    "CountryID": 0,
    "ID": 0,
    "Name": "Florida"
  },
  {
    "Abbr": "GA",
    "CountryID": 0,
    "ID": 0,
    "Name": "Georgia"
  },
  {
    "Abbr": "GU",
    "CountryID": 0,
    "ID": 0,
    "Name": "Guam"
  },
  {
    "Abbr": "HI",
    "CountryID": 0,
    "ID": 0,
    "Name": "Hawaii"
  },
  {
    "Abbr": "ID",
    "CountryID": 0,
    "ID": 0,
    "Name": "Idaho"
  },
  {
    "Abbr": "IL",
    "CountryID": 0,
    "ID": 0,
    "Name": "Illinois"
  },
  {
    "Abbr": "IN",
    "CountryID": 0,
    "ID": 0,
    "Name": "Indiana"
  },
  {
    "Abbr": "IA",
    "CountryID": 0,
    "ID": 0,
    "Name": "Iowa"
  },
  {
    "Abbr": "KS",
    "CountryID": 0,
    "ID": 0,
    "Name": "Kansas"
  },
  {
    "Abbr": "KY",
    "CountryID": 0,
    "ID": 0,
    "Name": "Kentucky"
  },
  {
    "Abbr": "LA",
    "CountryID": 0,
    "ID": 0,
    "Name": "Louisiana"
  },
  {
    "Abbr": "ME",
    "CountryID": 0,
    "ID": 0,
    "Name": "Maine"
  },
  {
    "Abbr": "MH",
    "CountryID": 0,
    "ID": 0,
    "Name": "Marshall Islands"
  },
  {
    "Abbr": "MD",
    "CountryID": 0,
    "ID": 0,
    "Name": "Maryland"
  },
  {
    "Abbr": "MA",
    "CountryID": 0,
    "ID": 0,
    "Name": "Massachusetts"
  },
  {
    "Abbr": "MI",
    "CountryID": 0,
    "ID": 0,
    "Name": "Michigan"
  },
  {
    "Abbr": "MN",
    "CountryID": 0,
    "ID": 0,
    "Name": "Minnesota"
  },
  {
    "Abbr": "MS",
    "CountryID": 0,
    "ID": 0,
    "Name": "Mississippi"
  },
  {
    "Abbr": "MO",
    "CountryID": 0,
    "ID": 0,
    "Name": "Missouri"
  },
  {
    "Abbr": "MT",
    "CountryID": 0,
    "ID": 0,
    "Name": "Montana"
  },
  {
    "Abbr": "NE",
    "CountryID": 0,
    "ID": 0,
    "Name": "Nebraska"
  },
  {
    "Abbr": "NV",
    "CountryID": 0,
    "ID": 0,
    "Name": "Nevada"
  },
  {
    "Abbr": "NH",
    "CountryID": 0,
    "ID": 0,
    "Name": "New Hampshire"
  },
  {
    "Abbr": "NJ",
    "CountryID": 0,
    "ID": 0,
    "Name": "New Jersey"
  },
  {
    "Abbr": "NM",
    "CountryID": 0,
    "ID": 0,
    "Name": "New Mexico"
  },
  {
    "Abbr": "NY",
    "CountryID": 0,
    "ID": 0,
    "Name": "New York"
  },
  {
    "Abbr": "NC",
    "CountryID": 0,
    "ID": 0,
    "Name": "North Carolina"
  },
  {
    "Abbr": "ND",
    "CountryID": 0,
    "ID": 0,
    "Name": "North Dakota"
  },
  {
    "Abbr": "MP",
    "CountryID": 0,
    "ID": 0,
    "Name": "Northern Mariana Islands"
  },
  {
    "Abbr": "OH",
    "CountryID": 0,
    "ID": 0,
    "Name": "Ohio"
  },
  {
    "Abbr": "OK",
    "CountryID": 0,
    "ID": 0,
    "Name": "Oklahoma"
  },
  {
    "Abbr": "OR",
    "CountryID": 0,
    "ID": 0,
    "Name": "Oregon"
  },
  {
    "Abbr": "PW",
    "CountryID": 0,
    "ID": 0,
    "Name": "Palau"
  },
  {
    "Abbr": "PA",
    "CountryID": 0,
    "ID": 0,
    "Name": "Pennsylvania"
  },
  {
    "Abbr": "PR",
    "CountryID": 0,
    "ID": 0,
    "Name": "Puerto Rico"
  },
  {
    "Abbr": "RI",
    "CountryID": 0,
    "ID": 0,
    "Name": "Rhode Island"
  },
  {
    "Abbr": "SC",
    "CountryID": 0,
    "ID": 0,
    "Name": "South Carolina"
  },
  {
    "Abbr": "SD",
    "CountryID": 0,
    "ID": 0,
    "Name": "South Dakota"
  },
  {
    "Abbr": "TN",
    "CountryID": 0,
    "ID": 0,
    "Name": "Tennessee"
  },
  {
    "Abbr": "TX",
    "CountryID": 0,
    "ID": 0,
    "Name": "Texas"
  },
  {
    "Abbr": "UT",
    "CountryID": 0,
    "ID": 0,
    "Name": "Utah"
  },
  {
    "Abbr": "VT",
    "CountryID": 0,
    "ID": 0,
    "Name": "Vermont"
  },
  {
    "Abbr": "VI",
    "CountryID": 0,
    "ID": 0,
    "Name": "Virgin Islands"
  },
  {
    "Abbr": "VA",
    "CountryID": 0,
    "ID": 0,
    "Name": "Virginia"
  },
  {
    "Abbr": "WA",
    "CountryID": 0,
    "ID": 0,
    "Name": "Washington"
  },
  {
    "Abbr": "WV",
    "CountryID": 0,
    "ID": 0,
    "Name": "West Virginia"
  },
  {
    "Abbr": "WI",
    "CountryID": 0,
    "ID": 0,
    "Name": "Wisconsin"
  },
  {
    "Abbr": "WY",
    "CountryID": 0,
    "ID": 0,
    "Name": "Wyoming"
  },
  {
    "Abbr": "SX",
    "CountryID": 0,
    "ID": 0,
    "Name": "St. Croix"
  },
  {
    "Abbr": "SJ",
    "CountryID": 0,
    "ID": 0,
    "Name": "St. John"
  },
  {
    "Abbr": "ST",
    "CountryID": 0,
    "ID": 0,
    "Name": "St. Thomas"
  }
]
 
Suggest Edits

GetCountryList

This method will return a list of countries in which the client has locations. A location count for each country will be included.

Return Value: RestCountrySum

 
gethttps://ws.bullseyelocations.com/RestSearch.svc/GetCountryList

Query Params

ClientId
int32
required
ApiKey
string
required
 
<?php
//1. Include Bullseye library
require_once '../../Bullseye.php';
//2. Create Bullseye object
$clientId = 5786;
$searchKey = null; //'cf623cdf-1090-43ba-8b0f-9fa67fcf9d57';
$adminKey = 'aa4c7e55-9d0b-4a97-b62e-c95efec4285e';
$useStagingServer = true;
$bullseye = new Bullseye\Bullseye($clientId, $searchKey, $adminKey, $useStagingServer);
//2.1 activate debug mode
//$bullseye->debug(true);
//3. Call method to get countries with locations
$response = $bullseye->getCountryList();
//4. Check response
if(false !== $response)
  print_r($response);
else{
  //if location was not found
  print_r($bullseye->getLastError());
}
A binary file was returned

You couldn't be authenticated

[
  {
    "Code": "US",
    "Id": 1,
    "Locations": 4513,
    "Name": "United States",
    "Pos": 1
  },
  {
    "Code": "CA",
    "Id": 2,
    "Locations": 110,
    "Name": "Canada",
    "Pos": 2
  },
  {
    "Code": "GB",
    "Id": 88,
    "Locations": 106,
    "Name": "United Kingdom",
    "Pos": 3
  },
  {
    "Code": "AR",
    "Id": 10,
    "Locations": 8,
    "Name": "Argentina",
    "Pos": 4
  },
  {
    "Code": "AU",
    "Id": 13,
    "Locations": 39,
    "Name": "Australia",
    "Pos": 4
  },
  {
    "Code": "AT",
    "Id": 14,
    "Locations": 2,
    "Name": "Austria",
    "Pos": 4
  },
  {
    "Code": "BS",
    "Id": 17,
    "Locations": 1,
    "Name": "Bahamas",
    "Pos": 4
  },
  {
    "Code": "BH",
    "Id": 18,
    "Locations": 2,
    "Name": "Bahrain",
    "Pos": 4
  },
  {
    "Code": "BY",
    "Id": 21,
    "Locations": 1,
    "Name": "Belarus",
    "Pos": 4
  },
  {
    "Code": "BE",
    "Id": 22,
    "Locations": 4,
    "Name": "Belgium",
    "Pos": 4
  },
  {
    "Code": "BM",
    "Id": 25,
    "Locations": 1,
    "Name": "Bermuda",
    "Pos": 4
  },
  {
    "Code": "BR",
    "Id": 32,
    "Locations": 6,
    "Name": "Brazil",
    "Pos": 4
  },
  {
    "Code": "BG",
    "Id": 35,
    "Locations": 4,
    "Name": "Bulgaria",
    "Pos": 4
  },
  {
    "Code": "CL",
    "Id": 47,
    "Locations": 2,
    "Name": "Chile",
    "Pos": 4
  },
  {
    "Code": "CN",
    "Id": 48,
    "Locations": 4,
    "Name": "China",
    "Pos": 4
  },
  {
    "Code": "CO",
    "Id": 51,
    "Locations": 1,
    "Name": "Colombia",
    "Pos": 4
  },
  {
    "Code": "CR",
    "Id": 55,
    "Locations": 3,
    "Name": "Costa Rica",
    "Pos": 4
  },
  {
    "Code": "CZ",
    "Id": 60,
    "Locations": 1,
    "Name": "Czech Republic",
    "Pos": 4
  },
  {
    "Code": "DO",
    "Id": 64,
    "Locations": 2,
    "Name": "Dominican Republic",
    "Pos": 4
  },
  {
    "Code": "EG",
    "Id": 67,
    "Locations": 6,
    "Name": "Egypt",
    "Pos": 4
  },
  {
    "Code": "FR",
    "Id": 78,
    "Locations": 11,
    "Name": "France",
    "Pos": 4
  },
  {
    "Code": "DE",
    "Id": 85,
    "Locations": 4,
    "Name": "Germany",
    "Pos": 4
  },
  {
    "Code": "GH",
    "Id": 86,
    "Locations": 2,
    "Name": "Ghana",
    "Pos": 4
  },
  {
    "Code": "GR",
    "Id": 89,
    "Locations": 4,
    "Name": "Greece",
    "Pos": 4
  },
  {
    "Code": "GT",
    "Id": 94,
    "Locations": 1,
    "Name": "Guatemala",
    "Pos": 4
  },
  {
    "Code": "HK",
    "Id": 101,
    "Locations": 2,
    "Name": "Hong Kong",
    "Pos": 4
  },
  {
    "Code": "HU",
    "Id": 102,
    "Locations": 1,
    "Name": "Hungary",
    "Pos": 4
  },
  {
    "Code": "IN",
    "Id": 104,
    "Locations": 24,
    "Name": "India",
    "Pos": 4
  },
  {
    "Code": "ID",
    "Id": 105,
    "Locations": 3,
    "Name": "Indonesia",
    "Pos": 4
  },
  {
    "Code": "IR",
    "Id": 271,
    "Locations": 1,
    "Name": "Iran",
    "Pos": 4
  },
  {
    "Code": "IE",
    "Id": 106,
    "Locations": 5,
    "Name": "Ireland",
    "Pos": 4
  },
  {
    "Code": "IL",
    "Id": 107,
    "Locations": 3,
    "Name": "Israel",
    "Pos": 4
  },
  {
    "Code": "IT",
    "Id": 108,
    "Locations": 5,
    "Name": "Italy",
    "Pos": 4
  },
  {
    "Code": "JM",
    "Id": 109,
    "Locations": 5,
    "Name": "Jamaica",
    "Pos": 4
  },
  {
    "Code": "JP",
    "Id": 110,
    "Locations": 6,
    "Name": "Japan",
    "Pos": 4
  },
  {
    "Code": "JO",
    "Id": 111,
    "Locations": 1,
    "Name": "Jordan",
    "Pos": 4
  },
  {
    "Code": "LT",
    "Id": 125,
    "Locations": 1,
    "Name": "Lithuania",
    "Pos": 4
  },
  {
    "Code": "MW",
    "Id": 131,
    "Locations": 1,
    "Name": "Malawi",
    "Pos": 4
  },
  {
    "Code": "MY",
    "Id": 132,
    "Locations": 6,
    "Name": "Malaysia",
    "Pos": 4
  },
  {
    "Code": "MV",
    "Id": 133,
    "Locations": 1,
    "Name": "Maldives",
    "Pos": 4
  },
  {
    "Code": "MX",
    "Id": 141,
    "Locations": 4,
    "Name": "Mexico",
    "Pos": 4
  },
  {
    "Code": "NP",
    "Id": 152,
    "Locations": 1,
    "Name": "Nepal",
    "Pos": 4
  },
  {
    "Code": "NL",
    "Id": 153,
    "Locations": 6,
    "Name": "Netherlands",
    "Pos": 4
  },
  {
    "Code": "NZ",
    "Id": 157,
    "Locations": 9,
    "Name": "New Zealand",
    "Pos": 4
  },
  {
    "Code": "NG",
    "Id": 160,
    "Locations": 6,
    "Name": "Nigeria",
    "Pos": 4
  },
  {
    "Code": "NO",
    "Id": 166,
    "Locations": 1,
    "Name": "Norway",
    "Pos": 4
  },
  {
    "Code": "PK",
    "Id": 168,
    "Locations": 1,
    "Name": "Pakistan",
    "Pos": 4
  },
  {
    "Code": "PH",
    "Id": 174,
    "Locations": 6,
    "Name": "Philippines",
    "Pos": 4
  },
  {
    "Code": "PL",
    "Id": 176,
    "Locations": 4,
    "Name": "Poland",
    "Pos": 4
  },
  {
    "Code": "PT",
    "Id": 178,
    "Locations": 3,
    "Name": "Portugal",
    "Pos": 4
  },
  {
    "Code": "RO",
    "Id": 182,
    "Locations": 3,
    "Name": "Romania",
    "Pos": 4
  },
  {
    "Code": "RU",
    "Id": 184,
    "Locations": 3,
    "Name": "Russian Federation",
    "Pos": 4
  },
  {
    "Code": "SA",
    "Id": 194,
    "Locations": 2,
    "Name": "Saudi Arabia",
    "Pos": 4
  },
  {
    "Code": "RS",
    "Id": 272,
    "Locations": 1,
    "Name": "Serbia",
    "Pos": 4
  },
  {
    "Code": "SG",
    "Id": 199,
    "Locations": 25,
    "Name": "Singapore",
    "Pos": 4
  },
  {
    "Code": "ZA",
    "Id": 204,
    "Locations": 7,
    "Name": "South Africa",
    "Pos": 4
  },
  {
    "Code": "ES",
    "Id": 207,
    "Locations": 11,
    "Name": "Spain",
    "Pos": 4
  },
  {
    "Code": "LK",
    "Id": 208,
    "Locations": 1,
    "Name": "Sri Lanka",
    "Pos": 4
  },
  {
    "Code": "SE",
    "Id": 226,
    "Locations": 2,
    "Name": "Sweden",
    "Pos": 4
  },
  {
    "Code": "CH",
    "Id": 227,
    "Locations": 1,
    "Name": "Switzerland",
    "Pos": 4
  },
  {
    "Code": "TW",
    "Id": 230,
    "Locations": 2,
    "Name": "Taiwan",
    "Pos": 4
  },
  {
    "Code": "TH",
    "Id": 233,
    "Locations": 4,
    "Name": "Thailand",
    "Pos": 4
  },
  {
    "Code": "TT",
    "Id": 239,
    "Locations": 1,
    "Name": "Trinidad and Tobago",
    "Pos": 4
  },
  {
    "Code": "TR",
    "Id": 242,
    "Locations": 3,
    "Name": "Turkey",
    "Pos": 4
  },
  {
    "Code": "UA",
    "Id": 247,
    "Locations": 1,
    "Name": "Ukraine",
    "Pos": 4
  },
  {
    "Code": "AE",
    "Id": 249,
    "Locations": 2,
    "Name": "United Arab Emirates",
    "Pos": 4
  },
  {
    "Code": "VI",
    "Id": 261,
    "Locations": 1,
    "Name": "US Virgin Islands",
    "Pos": 4
  },
  {
    "Code": "VE",
    "Id": 257,
    "Locations": 1,
    "Name": "Venezuela",
    "Pos": 4
  }
]
 
Suggest Edits

GetCountriesContainedInTerritories

This method will return a list of countries which exist within the client's international territories. Unlike GetCountryList(), location count and pos are not populated; they are just set to zero.

Return Value: RestCountrySum

 
gethttps://ws.bullseyelocations.com/RestSearch.svc/GetCountriesContainedInTerritories

Query Params

ClientId
int32
required
ApiKey
string
required
 
<?php
//1. Include Bullseye library
require_once '../../Bullseye.php';
//2. Create Bullseye object
$clientId = 5786;
$searchKey = null; //'cf623cdf-1090-43ba-8b0f-9fa67fcf9d57';
$adminKey = 'aa4c7e55-9d0b-4a97-b62e-c95efec4285e';
$useStagingServer = true;
$bullseye = new Bullseye\Bullseye($clientId, $searchKey, $adminKey, $useStagingServer);
//2.1 activate debug mode
//$bullseye->debug(true);
//3. Call method to get countries with locations
$response = $bullseye->getCountriesContainedInTerritories();
//4. Check response
if(false !== $response)
  print_r($response);
else{
  //if location was not found
  print_r($bullseye->getLastError());
}
A binary file was returned

You couldn't be authenticated

[
  {
    "Code": "AR",
    "Id": 10,
    "Locations": 0,
    "Name": "Argentina",
    "Pos": 0
  },
  {
    "Code": "BO",
    "Id": 27,
    "Locations": 0,
    "Name": "Bolivia",
    "Pos": 0
  },
  {
    "Code": "BR",
    "Id": 32,
    "Locations": 0,
    "Name": "Brazil",
    "Pos": 0
  },
  {
    "Code": "CO",
    "Id": 51,
    "Locations": 0,
    "Name": "Colombia",
    "Pos": 0
  },
  {
    "Code": "EC",
    "Id": 66,
    "Locations": 0,
    "Name": "Ecuador",
    "Pos": 0
  }
]
 
Suggest Edits

GetCityList

This method will return a list of cities within a given country in which the client has locations. A count will be included.

Return Value: RestCitySum

 
gethttps://ws.bullseyelocations.com/RestSearch.svc/GetCityList

Query Params

ClientId
int32
required
ApiKey
string
required
CountryId
int32

Required if CountryNameOrCode is not provided.

CountryNameOrCode
string

Required if CountryId is empty. Accepts country name, country code, ISO3Code and Alternate Names. Click here for a list of valid values.

StateAbbr
string

You may specify a state for countries that support states.

StateId
int32

You may specify a state for countries that support states.

Note

For this method to work, you must be storing cities in the individual city field, and not as part of a free-form international address.

<?php
//1. Include Bullseye library
require_once '../../Bullseye.php';
//2. Create Bullseye object
$clientId = 5786;
$searchKey = null; //'cf623cdf-1090-43ba-8b0f-9fa67fcf9d57';
$adminKey = 'aa4c7e55-9d0b-4a97-b62e-c95efec4285e';
$useStagingServer = true;
$bullseye = new Bullseye\Bullseye($clientId, $searchKey, $adminKey, $useStagingServer);
//2.1 activate debug mode
//$bullseye->debug(true);
//3. Call method to get cities
$country = 1;
$state = "TX";
$response = $bullseye->getCityList($country, $state);
//4. Check response
if(false !== $response)
  print_r($response);
else{
  //if location was not found
  print_r($bullseye->getLastError());
}
A binary file was returned

You couldn't be authenticated

[
    {
        "Locations": 1,
        "Name": "aberdeen",
        "RegionAbbr": "NJ",
        "RegionId": 35,
        "RegionName": "New Jersey"
    },
    {
        "Locations": 1,
        "Name": "Asbury Park",
        "RegionAbbr": "NJ",
        "RegionId": 35,
        "RegionName": "New Jersey"
    },
    {
        "Locations": 1,
        "Name": "Audubon",
        "RegionAbbr": "NJ",
        "RegionId": 35,
        "RegionName": "New Jersey"
    },
    {
        "Locations": 1,
        "Name": "Avenel",
        "RegionAbbr": "NJ",
        "RegionId": 35,
        "RegionName": "New Jersey"
    },
    {
        "Locations": 1,
        "Name": "Basking Ridge",
        "RegionAbbr": "NJ",
        "RegionId": 35,
        "RegionName": "New Jersey"
    },
    {
        "Locations": 1,
        "Name": "bedminster",
        "RegionAbbr": "NJ",
        "RegionId": 35,
        "RegionName": "New Jersey"
    },
    {
        "Locations": 2,
        "Name": "Belleville",
        "RegionAbbr": "NJ",
        "RegionId": 35,
        "RegionName": "New Jersey"
    },
    {
        "Locations": 1,
        "Name": "Belmar",
        "RegionAbbr": "NJ",
        "RegionId": 35,
        "RegionName": "New Jersey"
    },
    {
        "Locations": 1,
        "Name": "Bergenfield",
        "RegionAbbr": "NJ",
        "RegionId": 35,
        "RegionName": "New Jersey"
    },
    {
        "Locations": 1,
        "Name": "Blairstown",
        "RegionAbbr": "NJ",
        "RegionId": 35,
        "RegionName": "New Jersey"
    },
    {
        "Locations": 6,
        "Name": "Bloomfield",
        "RegionAbbr": "NJ",
        "RegionId": 35,
        "RegionName": "New Jersey"
    }
]
 
Suggest Edits

GetRegion1List

This method will return a list of region1 (state, province, department, etc) within a given country in which the client has
locations. A count will be included.

Return Value: RestStateSum

 
gethttp://ws.bullseyelocations.com/RestSearch.svc/GetRegion1List

Query Params

ClientId
int32
required
ApiKey
string
required
CountryId
int32

Required if CountryNameOrCode is not provided.

CountryNameOrCode
string

Required if CountryId is empty. Accepts country name, country code, ISO3Code and Alternate Names. Click here for a list of valid values.

 
No code samples available
A binary file was returned

You couldn't be authenticated

[
    {
        "Abbr": "ENG",
        "Locations": 2,
        "Name": "England"
    },
    {
        "Abbr": "SCT",
        "Locations": 1,
        "Name": "Scotland"
    },
    {
        "Abbr": "WLS",
        "Locations": 3,
        "Name": "Wales"
    }
]
 
Suggest Edits

GetCatList

This method will return a list of categories and location counts, given the input criteria.

Return Value: RestCatSum

 
gethttps://ws.bullseyelocations.com/RestSearch.svc/GetCatList

Query Params

ClientId
int32
required
ApiKey
string
required
CountryId
int32
required
State
string

For the US, city name cannot be specified without also specifying state. State can only be used if state/province is stored in the designated field in our system, and not as part of a free-form international address.

City
string

For the US, city name cannot be specified without also specifying state.

Note that, since one location can be assigned to multiple categories, the counts will not add up to the total number of locations.

Country ID is required. For the US, city name cannot be specified without also specifying state.

For countries other than the US, state can only be used if state/province is stored in the designated field in our system, and not as part of a free-form international address.

<?php
//1. Include Bullseye library
require_once '../../Bullseye.php';
//2. Create Bullseye object
$clientId = 5786;
$searchKey = null; //'cf623cdf-1090-43ba-8b0f-9fa67fcf9d57';
$adminKey = 'aa4c7e55-9d0b-4a97-b62e-c95efec4285e';
$useStagingServer = true;
$bullseye = new Bullseye\Bullseye($clientId, $searchKey, $adminKey, $useStagingServer);
//2.1 activate debug mode
//$bullseye->debug(true);
//3. Call method to get categories
$country = 1;
$state = "TX";
$city = null;
$response = $bullseye->getCatList($country, $state, $city);
//4. Check response
if(false !== $response)
  print_r($response);
else{
  //if location was not found
  print_r($bullseye->getLastError());
}
A binary file was returned

You couldn't be authenticated

[
  {
    "CategoryId": 1412,
    "CategoryName": "Bass Guitar",
    "Locations": 1
  },
  {
    "CategoryId": 1421,
    "CategoryName": "Ear Training",
    "Locations": 1
  },
  {
    "CategoryId": 1425,
    "CategoryName": "Guitar",
    "Locations": 2
  },
  {
    "CategoryId": 1429,
    "CategoryName": "Keyboard",
    "Locations": 1
  },
  {
    "CategoryId": 1437,
    "CategoryName": "Piano",
    "Locations": 3
  },
  {
    "CategoryId": 1438,
    "CategoryName": "Recorder",
    "Locations": 1
  },
  {
    "CategoryId": 1441,
    "CategoryName": "Theory",
    "Locations": 1
  },
  {
    "CategoryId": 1446,
    "CategoryName": "Ukelele",
    "Locations": 1
  },
  {
    "CategoryId": 1447,
    "CategoryName": "Viola",
    "Locations": 2
  },
  {
    "CategoryId": 1449,
    "CategoryName": "Voice",
    "Locations": 3
  },
  {
    "CategoryId": 6358,
    "CategoryName": "Grand Piano",
    "Locations": 3
  },
  {
    "CategoryId": 6359,
    "CategoryName": "Electric Piano",
    "Locations": 3
  }
]
 
Suggest Edits

GetAttributeOptions

This method will return the list of options for a given attribute.

 
gethttps://ws.bullseyelocations.com/RestSearch.svc/GetAttributeOptions

Query Params

ClientId
int32
required
ApiKey
string
required
AttributeId
int32
 
<?php
//1. Include Bullseye library
require_once '../../Bullseye.php';
//2. Create Bullseye object
$clientId = 5786;
$searchKey = null; //'cf623cdf-1090-43ba-8b0f-9fa67fcf9d57';
$adminKey = 'aa4c7e55-9d0b-4a97-b62e-c95efec4285e';
$useStagingServer = true;
$bullseye = new Bullseye\Bullseye($clientId, $searchKey, $adminKey, $useStagingServer);
//2.1 activate debug mode
//$bullseye->debug(true);
//3. Call method to get attribute options
$attributeId = null;
$response = $bullseye->getAttributeOptions($attributeId);
//4. Check response
if(false !== $response)
  print_r($response);
else{
  //if location was not found
  print_r($bullseye->getLastError());
}
A binary file was returned

You couldn't be authenticated

[
  {
    "AttributeId": 262,
    "OptionId": 220,
    "OptionName": "All Levels"
  },
  {
    "AttributeId": 262,
    "OptionId": 221,
    "OptionName": "Beginner"
  },
  {
    "AttributeId": 262,
    "OptionId": 222,
    "OptionName": "Intermediate"
  },
  {
    "AttributeId": 262,
    "OptionId": 223,
    "OptionName": "Advanced"
  },
  {
    "AttributeId": 262,
    "OptionId": 224,
    "OptionName": "Professional"
  }
]
 
Suggest Edits

GetAttributes

This method will return the full list of attribute names and ID's for a given client.

Return Value: RestAttribute

 
gethttps://ws.bullseyelocations.com/RestSearch.svc/GetAttributes

Query Params

ClientId
int32
required
ApiKey
string
required
 
<?php
//1. Include Bullseye library
require_once '../../Bullseye.php';
//2. Create Bullseye object
$clientId = 5786;
$searchKey = null; //'cf623cdf-1090-43ba-8b0f-9fa67fcf9d57';
$adminKey = 'aa4c7e55-9d0b-4a97-b62e-c95efec4285e';
$useStagingServer = true;
$bullseye = new Bullseye\Bullseye($clientId, $searchKey, $adminKey, $useStagingServer);
//2.1 activate debug mode
//$bullseye->debug(true);
//3. Call method to get attributes
$response = $bullseye->getAttributes();
//4. Check response
if(false !== $response)
  print_r($response);
else{
  //if location was not found
  print_r($bullseye->getLastError());
}
A binary file was returned

You couldn't be authenticated

  {
    "AttributeDisplayText": null,
    "AttributeId": 226,
    "AttributeName": "My Rates",
    "AttributeValue": null
  },
  {
    "AttributeDisplayText": null,
    "AttributeId": 227,
    "AttributeName": "Music Classes/Programs",
    "AttributeValue": null
  },
  {
    "AttributeDisplayText": null,
    "AttributeId": 228,
    "AttributeName": "Recitals Held",
    "AttributeValue": null
  }
]
 
Suggest Edits

GetPostalCode

This method retrieves information for a US zip code or Canadian postal code.

Return Value: RestPostalCode

 
gethttps://ws.bullseyelocations.com/RestSearch.svc/GetPostalCode

Query Params

ClientId
int32
required
ApiKey
string
required
CountryId
int32
required

Use Country ID = 1 for US, 2 for Canada

PostalCode
string

If the given postal code is not in our database, this method will return null. If it is in our database, it will return information from the first match found for that code.

If the given postal code is not in our database, this method will return null.

If it is in our database, it will return information from the first match found for that code.

<?php
//1. Include Bullseye library
require_once '../../Bullseye.php';
//2. Create Bullseye object
$clientId = 5786;
$searchKey = null; //'cf623cdf-1090-43ba-8b0f-9fa67fcf9d57';
$adminKey = 'aa4c7e55-9d0b-4a97-b62e-c95efec4285e';
$useStagingServer = true;
$bullseye = new Bullseye\Bullseye($clientId, $searchKey, $adminKey, $useStagingServer);
//2.1 activate debug mode
//$bullseye->debug(true);
//3. Call method to get postal code information
$countryId = 1;
$postalCode = '10098';
$response = $bullseye->getPostalCode($countryId, $postalCode);
//4. Check response
if(false !== $response)
  print_r($response);
else{
  //if location was not found
  print_r($bullseye->getLastError());
}
A binary file was returned

You couldn't be authenticated

{
  "City": "Somerset",
  "County": "Somerset",
  "Latitude": 40.49934,
  "Longitude": -74.52138,
  "PostalCode": "08873",
  "State": "NJ"
}
 
Suggest Edits

GetSearchLog

This method retrieves a list of searches for a given date range.

Return Value: RestSearchLogList

 
gethttps://ws.bullseyelocations.com/RestSearch.svc/GetSearchLog

Query Params

ClientId
int32
required
ApiKey
string
required
startDate
string
required

'yyyymmdd' format

endDate
string
required

'yyyymmdd' format

 
<?php
//1. Include Bullseye library
require_once '../../Bullseye.php';
//2. Create Bullseye object
$clientId = 5786;
$searchKey = null; //'cf623cdf-1090-43ba-8b0f-9fa67fcf9d57';
$adminKey = 'aa4c7e55-9d0b-4a97-b62e-c95efec4285e';
$useStagingServer = true;
$bullseye = new Bullseye\Bullseye($clientId, $searchKey, $adminKey, $useStagingServer);
//2.1 activate debug mode
//$bullseye->debug(true);
//3. Call method to search for logs
$startDate = '20170301';
$endDate = '20170331';
$response = $bullseye->getSearchLog($startDate, $endDate);
//4. Check response
if(false !== $response)
  print_r($response);
else{
  //if location was not found
  print_r($bullseye->getLastError());
}
A binary file was returned

You couldn't be authenticated

{
  "ResultList": [
    {
      "City": "Mountain View",
      "Country": "United States",
      "DateCreated": "/Date(1484078846250-0500)/",
      "DomainName": "",
      "IPAddress": "72.14.199.158",
      "Keyword": null,
      "NumResults": 50,
      "PostalCode": null,
      "SearchSource": null,
      "State": "CA"
    },
    {
      "City": null,
      "Country": "United States",
      "DateCreated": "/Date(1484079104843-0500)/",
      "DomainName": "",
      "IPAddress": "199.199.1.108",
      "Keyword": null,
      "NumResults": 50,
      "PostalCode": "08876",
      "SearchSource": null,
      "State": null
    },
    {
      "City": null,
      "Country": "United States",
      "DateCreated": "/Date(1484079285147-0500)/",
      "DomainName": "",
      "IPAddress": "199.199.1.108",
      "Keyword": null,
      "NumResults": 50,
      "PostalCode": "08876",
      "SearchSource": null,
      "State": null
    },
    {
      "City": "Buffalo",
      "Country": "United States",
      "DateCreated": "/Date(1484078862423-0500)/",
      "DomainName": "",
      "IPAddress": "199.199.1.117",
      "Keyword": null,
      "NumResults": 18,
      "PostalCode": null,
      "SearchSource": null,
      "State": "MN"
    }
  ],
  "TotalResults": 4
}
 
Suggest Edits

GetSearchResponseLog

This method retrieves a list of search response metrics for a given date range.

Return Value: RestSearchResponseLogList

 
gethttps://ws.bullseyelocations.com/Restsearch.svc/GetSearchResponseLog

Query Params

ClientId
int32
required
ApiKey
string
required
startDate
string
required

'yyyymmdd' format

endDate
string
required

'yyyymmdd' format

 
<?php
//1. Include Bullseye library
require_once '../../Bullseye.php';
//2. Create Bullseye object
$clientId = 5786;
$searchKey = null; //'cf623cdf-1090-43ba-8b0f-9fa67fcf9d57';
$adminKey = 'aa4c7e55-9d0b-4a97-b62e-c95efec4285e';
$useStagingServer = true;
$bullseye = new Bullseye\Bullseye($clientId, $searchKey, $adminKey, $useStagingServer);
//2.1 activate debug mode
//$bullseye->debug(true);
//3. Call method to search for logs
$startDate = '20160301';
$endDate = '20170331';
$response = $bullseye->getSearchResponseLog($startDate, $endDate);
//4. Check response
if(false !== $response)
  print_r($response);
else{
  //if location was not found
  print_r($bullseye->getLastError());
}
A binary file was returned

You couldn't be authenticated

{
  "ResultList": [
    {
      "DateCreated": "/Date(1484078846487-0500)/",
      "DirectionsClicked": false,
      "EmailClicked": false,
      "LocationID": 2448955,
      "LocationMapClicked": false,
      "LocationName": "Thompson Studios",
      "LocationResultsClicked": false,
      "URLClicked": false,
      "Viewed": true
    },
    {
      "DateCreated": "/Date(1484078846440-0500)/",
      "DirectionsClicked": false,
      "EmailClicked": false,
      "LocationID": 2450039,
      "LocationMapClicked": false,
      "LocationName": "Ken Brown",
      "LocationResultsClicked": false,
      "URLClicked": false,
      "Viewed": true
    },
    {
      "DateCreated": "/Date(1484078846533-0500)/",
      "DirectionsClicked": false,
      "EmailClicked": false,
      "LocationID": 2450763,
      "LocationMapClicked": false,
      "LocationName": "Kirby's Music Studio",
      "LocationResultsClicked": false,
      "URLClicked": false,
      "Viewed": true
    },
    {
      "DateCreated": "/Date(1484078846297-0500)/",
      "DirectionsClicked": false,
      "EmailClicked": false,
      "LocationID": 2452494,
      "LocationMapClicked": false,
      "LocationName": "Michele  Sharik",
      "LocationResultsClicked": false,
      "URLClicked": false,
      "Viewed": true
    }
    ],
  "TotalResults": 4
}
 
Suggest Edits

GetCategoryTree

This method retrieves categories in their nested configuration.

 
gethttps://ws.bullseyelocations.com/RestSearch.svc/GetCategoryTree

Query Params

ClientId
int32
required
ApiKey
string
required
LanguageID
string

The category names can be returned in a different language utilizing either the LanguageID or ISO LanguageCode

LanguageCode
string

The category names can be returned in a different language utilizing either the LanguageID or ISO LanguageCode

 
<?php
//1. Include Bullseye library
require_once '../../Bullseye.php';
//2. Create Bullseye object
$clientId = 5786;
$searchKey = null; //'cf623cdf-1090-43ba-8b0f-9fa67fcf9d57';
$adminKey = 'aa4c7e55-9d0b-4a97-b62e-c95efec4285e';
$useStagingServer = true;
$bullseye = new Bullseye\Bullseye($clientId, $searchKey, $adminKey, $useStagingServer);
//2.1 activate debug mode
//$bullseye->debug(true);
//3. Call method to get category tree
$languageId = null;
$languageCode = null;
$response = $bullseye->getCategoryTree($languageId, $languageCode);
//4. Check response
if(false !== $response)
  print_r($response);
else{
  //if location was not found
  print_r($bullseye->getLastError());
}
A binary file was returned

You couldn't be authenticated

[
  {
    "Data": "",
    "ID": 1407,
    "Name": "all instruments-FR",
    "SubCategories": null,
    "ThirdPartyID": ""
  },
   {
        "Data": "02",
        "ID": 5974,
        "Name": "Large Guitars",
        "SubCategories": [
          {
            "Data": "021",
            "ID": 5975,
            "Name": "Very Large Guitars",
            "SubCategories": [
              {
                "Data": "022",
                "ID": 5976,
                "Name": "Super Gigantic Guitars",
                "SubCategories": [
                  {
                    "Data": "023",
                    "ID": 7903,
                    "Name": "Super Gigantic Guitars2",
                    "SubCategories": null,
                    "ThirdPartyID": "23"
                  }
                ],
                "ThirdPartyID": "22"
              }
            ],
            "ThirdPartyID": "21"
          }
        ],
        "ThirdPartyID": "2"
      }
    ],
    "ThirdPartyID": "1"
  },
{
    "Data": "",
    "ID": 1449,
    "Name": "Voice",
    "SubCategories": null,
    "ThirdPartyID": ""
  }
]
 
Suggest Edits

LogSearch

This method logs click on a specific link depending on the responseType parameter provided.

Return Value: RestLogSearchRslt

 
gethttps://ws.bullseyelocations.com/RestSearch.svc/LogSearch

Query Params

ClientId
int32
required
ApiKey
string
required
locationID
int32
required
responseType
int32
required

The following response types are supported: URLClicked =1, EmailClicked = 2, LocationResultsClicked = 3, LocationMapClicked = 4, DirectionsClicked = 5

SearchLogReqId
string

Optional parameter to track search response back to the search request. SearchLogReqId is returned from DoSearch2

Returns an error message in case of an error, an empty string in case of success.

curl --request GET \
  --url 'https://ws.bullseyelocations.com/RestSearch.svc/LogSearch?ClientId=ClientId&ApiKey=ApiKey&locationID=locationID&responseType=responseType'
var request = require("request");

var options = { method: 'GET',
  url: 'https://ws.bullseyelocations.com/RestSearch.svc/LogSearch',
  qs:
   { ClientId: 'ClientId',
     ApiKey: 'ApiKey',
     locationID: 'locationID',
     responseType: 'responseType' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://ws.bullseyelocations.com/RestSearch.svc/LogSearch?ClientId=ClientId&ApiKey=ApiKey&locationID=locationID&responseType=responseType")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://ws.bullseyelocations.com/RestSearch.svc/LogSearch?ClientId=ClientId&ApiKey=ApiKey&locationID=locationID&responseType=responseType");

xhr.send(data);
import requests

url = "https://ws.bullseyelocations.com/RestSearch.svc/LogSearch"

querystring = {"ClientId":"ClientId","ApiKey":"ApiKey","locationID":"locationID","responseType":"responseType"}

response = requests.request("GET", url, params=querystring)

print(response.text)
A binary file was returned

You couldn't be authenticated

{
  "errorMsg": ""
}
 
Suggest Edits

GetMap

This method will return javascript code for either Mapbox or Google Maps depending on the country determined from the information that is passed in as parameters.

 
posthttps://ws.bullseyelocations.com/RestSearch.svc/GetMap

Query Params

ClientID
int32
required
APIKey
string
required
SourceName
string

If no source provided, the default source will be used.

SourceID
string

If no source provided, the default source will be used.

Referrer
string
IPAddress
string

IP Address or Latitude and Longitude are required.

Latitude
string

IP Address or Latitude and Longitude are required.

Longitude
string

IP Address or Latitude and Longitude are required.

Locations
array of strings

Array of Latitude and Longitude or locations to display on the map

MapIcon
string

Custom icon to display on the map. If none provided, Bullseye icon will be displayed.

mapPopup
string

Optional parameter to display popup on the map, Mapbox displays popup by default

mapHeight
int32

Optional parameter to specify the size of the map. If none provided the default is 500px.

This method requires that you provide your own Google API key. This can be updated under Settings>Setup>Mapping.

curl --request POST \
  --url 'https://ws.bullseyelocations.com/RestSearch.svc/GetMap?ClientID=ClientID&APIKey=APIKey'
var request = require("request");

var options = { method: 'POST',
  url: 'https://ws.bullseyelocations.com/RestSearch.svc/GetMap',
  qs:
   { ClientID: 'ClientID',
     APIKey: 'APIKey' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://ws.bullseyelocations.com/RestSearch.svc/GetMap?ClientID=ClientID&APIKey=APIKey")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://ws.bullseyelocations.com/RestSearch.svc/GetMap?ClientID=ClientID&APIKey=APIKey");

xhr.send(data);
import requests

url = "https://ws.bullseyelocations.com/RestSearch.svc/GetMap"

querystring = {"ClientID":"ClientID","APIKey":"APIKey"}

response = requests.request("POST", url, params=querystring)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results
 
Suggest Edits

GetCompanyNames

This method returns all CompanyName records associated with the specified account.

Return Value: RestCompanyName

 
gethttp://ws.bullseyelocations.com/RestSearch.svc/GetCompanyNames

Query Params

ClientID
int32
required
APIKey
string
required
CategoryID
int32

Returns all CompanyName records associated with Locations which have that Category.

Name
string

Does a partial match against all CompanyName records and returns those that contain the inputted Name.

MaximumToReturn
int32

Caps the number of CompanyName records that are returned.

 
No code samples available
A binary file was returned

You couldn't be authenticated

[
    {
        "ClientID": 267,
        "ID": 101,
        "Name": "Test",
        "ThirdPartyID": null
    }
]
 
Suggest Edits

GetLocationsByCompany

This method returns locations based on the associated company data.

Return Value: RestSearchResults

 
gethttp://ws.bullseyelocations.com/RestSearch.svc/GetLocationsByCompany

Query Params

ClientID
int32
required
APIKey
string
required
CompanyID
string
CompanyName
string
EmailDomain
string
ThirdPartyID
string

At least one CompanyID, CompanyName, EmailDomain and ThirdPartyID must be specified in the call.

No code samples available
A binary file was returned

You couldn't be authenticated

{
    "DistanceIsMetric": false,
    "FindNearestSearch": false,
    "ResultList": [
        {
            "Address1": "123 test st",
            "Address2": null,
            "Address3": null,
            "Address4": "NJ",
            "Attributes": [],
            "BusinessHours": "",
            "CategoryIds": "7957",
            "CategoryNames": "Brand1",
            "City": "somerset",
            "ContactName": null,
            "ContactPosition": null,
            "ContactURL": null,
            "CountryCode": "US",
            "Coupons": [],
            "DailyHoursList": [],
            "Distance": 0,
            "EmailAddress": "test@email.com",
            "Events": [],
            "FaceBookPageId": null,
            "FaxNumber": null,
            "GeoCodeStatusId": 1,
            "Id": 4975002,
            "ImageFileUrl": null,
            "InternetLocation": false,
            "IsLeadManager": true,
            "IsStoreLocator": true,
            "LMServiceID": true,
            "Latitude": 40.49934,
            "LocationTypeIconURL": null,
            "LocationTypeName": "Exclusive",
            "Longitude": -74.52138,
            "MobileNumber": null,
            "Name": "test",
            "PhoneNumber": null,
            "PostCode": "08873",
            "State": "NJ",
            "ThirdPartyId": null,
            "TimeZone": null,
            "URL": null
        }
    ],
    "SearchReqLogId": 0,
    "TotalResults": 1
}
 
Suggest Edits

GetTerritories

This method returns a list of all territories for an account.

 
gethttp://ws.bullseyelocations.com/RestSearch.svc/GetTerritories

Query Params

ClientID
int32
required
APIKey
string
required
 
No code samples available
A binary file was returned

You couldn't be authenticated

[
    {
        "ClientID": 6983,
        "Country": "United States",
        "CountryID": 1,
        "ID": 7907,
        "Name": "US - Territory",
        "Type": "United States",
        "TypeID": 1
    },
    {
        "ClientID": 6983,
        "Country": "Canada",
        "CountryID": 2,
        "ID": 7908,
        "Name": "Canada - Territory",
        "Type": "Canada",
        "TypeID": 2
    },
    {
        "ClientID": 6983,
        "Country": null,
        "CountryID": null,
        "ID": 7909,
        "Name": "Brazil - Territory",
        "Type": "International",
        "TypeID": 3
    },
    {
        "ClientID": 6983,
        "Country": "Germany",
        "CountryID": 85,
        "ID": 7910,
        "Name": "Germany - Territory",
        "Type": "Germany",
        "TypeID": 5
    },
    {
        "ClientID": 6983,
        "Country": "Switzerland",
        "CountryID": 227,
        "ID": 7911,
        "Name": "Switzerland - Territory",
        "Type": "Switzerland",
        "TypeID": 6
    },
    {
        "ClientID": 6983,
        "Country": "Austria",
        "CountryID": 14,
        "ID": 7912,
        "Name": "Austria - Territory",
        "Type": "Austria",
        "TypeID": 7
    }
]
 
Suggest Edits

GetLocationsByTerritory

This method returns a list of locations based on the associated territory.

Return Value: RestSearchResults

 
gethttp://ws.bullseyelocations.com/RestSearch.svc/GetLocationsByTerritory

Query Params

ClientID
int32
required
APIKey
string
required
TerritoryID
int32
 
No code samples available
A binary file was returned

You couldn't be authenticated

{
    "DistanceIsMetric": false,
    "FindNearestSearch": false,
    "ResultList": [
        {
            "Address1": null,
            "Address2": null,
            "Address3": null,
            "Address4": null,
            "Attributes": [],
            "BusinessHours": "",
            "CategoryIds": "",
            "CategoryNames": "",
            "City": "Somerset",
            "ContactName": null,
            "ContactPosition": null,
            "ContactURL": null,
            "CountryCode": "US",
            "Coupons": [],
            "DailyHoursList": [],
            "Distance": 0,
            "EmailAddress": null,
            "Events": [],
            "FaceBookPageId": null,
            "FaxNumber": null,
            "GeoCodeStatusId": 1,
            "Id": 5179649,
            "ImageFileUrl": null,
            "InternetLocation": false,
            "IsLeadManager": false,
            "IsStoreLocator": true,
            "LMServiceID": false,
            "Latitude": 40.49934,
            "LocationTypeIconURL": null,
            "LocationTypeName": "Standard",
            "Longitude": -74.52138,
            "MobileNumber": null,
            "Name": "Test Location",
            "PhoneNumber": null,
            "PostCode": "08873",
            "State": "NJ",
            "ThirdPartyId": null,
            "TimeZone": null,
            "URL": null
        }
    ],
    "SearchReqLogId": 0,
    "TotalResults": 1
}
 
Suggest Edits

GetCountryData

This method returns country data based on the country name, alternate name or code.

 
gethttp://ws.bullseyelocations.com/RestSearch.svc/GetCountryData

Query Params

ClientID
int32
required
APIKey
string
required
ID
int32

Required if AlternateNameOrCode is not provided. ID takes precedence over AlternateNameOrCode when both are provided.

AlternateNameOrCode
string

Required if ID is not provided.

 
No code samples available
A binary file was returned

You couldn't be authenticated

{
    "AlternateNamesAndCodes": "USA,United States,United States of America,America",
    "Code": "US",
    "HasPostalCodes": true,
    "HasRegion1": true,
    "HasRegion2": true,
    "ID": 1,
    "ISO3Code": "USA",
    "IsPostalCodeRequired": true,
    "IsRegion1Required": true,
    "IsRegion2Required": false,
    "Latitude": 37.09024,
    "LocationSearchStyle": 1,
    "Longitude": -95.712891,
    "Name": "United States",
    "PostalCodeTerm": "Zip Code",
    "Region1Term": "State",
    "Region2Term": "County"
}
 
Suggest Edits

GetClientMappingSettings

This method returns mapping settings for a client account.

Return Value: RestClientSettings

 
gethttp://ws.bullseyelocations.com/RestSearch.svc/GetClientMappingSettings

Query Params

ClientID
int32
required
APIKey
string
required
 
No code samples available
A binary file was returned

You couldn't be authenticated

{
    "MappingSettings": [
        {
            "APIGUID": "00000000-0000-0000-0000-000000000000",
            "APIKey": "AIzaSyAApTtTZto3QEgRGU0R_byylxxxxxxxxxx",
            "ClientID": 267,
            "GeocodingServiceID": 1,
            "Id": 0,
            "LoginName": "",
            "Password": "",
            "ScriptReference": "<script src=\"https://maps.googleapis.com/maps/api/js?key=API_KEY\"></script>",
            "Token": ""
        }
    ],
    "OptionsList": null
}
 
Suggest Edits

GetMapLocations

This method returns all active geocoded locations, including internet locations. Locations are displayed on the map when using the "Show all locations" option in the interface builder.

Return Value: RestSearchResults It only returns a location ID, latitude and longitude for each location.

 
gethttp://ws.bullseyelocations.com/RestSearch.svc/GetMapLocations

Query Params

ClientID
int32
required
APIKey
string
required
CategoryIDs
string

Category filter of one or multiple category ids comma separated. It matches any of the ids.

 
No code samples available
A binary file was returned

You couldn't be authenticated

{"DistanceIsMetric":false,"FindNearestSearch":false,"ResultList":[{"Address1":null,"Address2":null,"Address3":null,"Address4":null,"Attributes":null,"BusinessHours":null,"CategoryIds":null,"CategoryNames":null,"City":null,"ComplexAttributes":null,"ContactName":null,"ContactPosition":null,"ContactURL":null,"CountryCode":null,"Coupons":null,"DailyHoursList":null,"Distance":0,"EmailAddress":null,"Events":null,"FaceBookPageId":null,"FaxNumber":null,"GeoCodeStatusId":0,"Id":5101322,"ImageFileUrl":null,"InternetLocation":false,"IsLeadManager":false,"IsStoreLocator":false,"LMServiceID":false,"Latitude":40.499340,"LocationTypeIconURL":null,"LocationTypeName":null,"Longitude":-74.521380,"MobileNumber":null,"Name":null,"PhoneNumber":null,"PostCode":null,"State":null,"ThirdPartyId":null,"TimeZone":null,"URL":null},{"Address1":null,"Address2":null,"Address3":null,"Address4":null,"Attributes":null,"BusinessHours":null,"CategoryIds":null,"CategoryNames":null,"City":null,"ComplexAttributes":null,"ContactName":null,"ContactPosition":null,"ContactURL":null,"CountryCode":null,"Coupons":null,"DailyHoursList":null,"Distance":0,"EmailAddress":null,"Events":null,"FaceBookPageId":null,"FaxNumber":null,"GeoCodeStatusId":0,"Id":5101323,"ImageFileUrl":null,"InternetLocation":false,"IsLeadManager":false,"IsStoreLocator":false,"LMServiceID":false,"Latitude":40.499340,"LocationTypeIconURL":null,"LocationTypeName":null,"Longitude":-74.521380,"MobileNumber":null,"Name":null,"PhoneNumber":null,"PostCode":null,"State":null,"ThirdPartyId":null,"TimeZone":null,"URL":null},{"Address1":null,"Address2":null,"Address3":null,"Address4":null,"Attributes":null,"BusinessHours":null,"CategoryIds":null,"CategoryNames":null,"City":null,"ComplexAttributes":null,"ContactName":null,"ContactPosition":null,"ContactURL":null,"CountryCode":null,"Coupons":null,"DailyHoursList":null,"Distance":0,"EmailAddress":null,"Events":null,"FaceBookPageId":null,"FaxNumber":null,"GeoCodeStatusId":0,"Id":5101324,"ImageFileUrl":null,"InternetLocation":false,"IsLeadManager":false,"IsStoreLocator":false,"LMServiceID":false,"Latitude":40.499340,"LocationTypeIconURL":null,"LocationTypeName":null,"Longitude":-74.521380,"MobileNumber":null,"Name":null,"PhoneNumber":null,"PostCode":null,"State":null,"ThirdPartyId":null,"TimeZone":null,"URL":null},{"Address1":null,"Address2":null,"Address3":null,"Address4":null,"Attributes":null,"BusinessHours":null,"CategoryIds":null,"CategoryNames":null,"City":null,"ComplexAttributes":null,"ContactName":null,"ContactPosition":null,"ContactURL":null,"CountryCode":null,"Coupons":null,"DailyHoursList":null,"Distance":0,"EmailAddress":null,"Events":null,"FaceBookPageId":null,"FaxNumber":null,"GeoCodeStatusId":0,"Id":5312685,"ImageFileUrl":null,"InternetLocation":false,"IsLeadManager":false,"IsStoreLocator":false,"LMServiceID":false,"Latitude":40.499340,"LocationTypeIconURL":null,"LocationTypeName":null,"Longitude":-74.521380,"MobileNumber":null,"Name":null,"PhoneNumber":null,"PostCode":null,"State":null,"ThirdPartyId":null,"TimeZone":null,"URL":null}],"SearchReqLogId":10933004,"TotalResults":4}
 
Suggest Edits

GetLocationsByLocationGroup

This method returns a list of locations based on location group id(s)

Return Value: RestSearchResults

 
gethttp://ws.bullseyelocations.com/RestSearch.svc/GetLocationsByLocationGroup

Query Params

ClientID
int32
required
ApiKey
string
required
LocationGroupIDs
string
required

A list of comma-separated ids

CategoryIDs
string

A list of comma-separated category ids

 
No code samples available
A binary file was returned

You couldn't be authenticated

{
    "DistanceIsMetric": false,
    "FindNearestSearch": false,
    "ResultList": [
        {
            "Address1": null,
            "Address2": null,
            "Address3": null,
            "Address4": null,
            "Attributes": [
                {
                    "AttributeDisplayText": null,
                    "AttributeId": 226,
                    "AttributeName": "My Rates",
                    "AttributeTypeID": 1,
                    "AttributeValue": "0"
                },
                {
                    "AttributeDisplayText": null,
                    "AttributeId": 235,
                    "AttributeName": "Education & Training",
                    "AttributeTypeID": 2,
                    "AttributeValue": "Educated to degree level in music BA(Hons) 2:1 - studied contem"
                },
                {
                    "AttributeDisplayText": null,
                    "AttributeId": 237,
                    "AttributeName": "Performance Experience",
                    "AttributeTypeID": 2,
                    "AttributeValue": "Regularly perform on bass in a folk band around the festivals."
                },
                {
                    "AttributeDisplayText": null,
                    "AttributeId": 238,
                    "AttributeName": "Teaching Location",
                    "AttributeTypeID": 1,
                    "AttributeValue": "Pro-recording studio at home"
                },
                {
                    "AttributeDisplayText": null,
                    "AttributeId": 241,
                    "AttributeName": "Years Teaching",
                    "AttributeTypeID": 3,
                    "AttributeValue": "1"
                },
                {
                    "AttributeDisplayText": null,
                    "AttributeId": 246,
                    "AttributeName": "Other Rate Information",
                    "AttributeTypeID": 1,
                    "AttributeValue": "A lesson can last for as long as the pupil requires"
                },
                {
                    "AttributeDisplayText": null,
                    "AttributeId": 248,
                    "AttributeName": "References Available?",
                    "AttributeTypeID": 4,
                    "AttributeValue": "True"
                },
                {
                    "AttributeDisplayText": null,
                    "AttributeId": 232,
                    "AttributeName": "In-Home Lessons?",
                    "AttributeTypeID": 4,
                    "AttributeValue": "True"
                },
                {
                    "AttributeDisplayText": null,
                    "AttributeId": 249,
                    "AttributeName": "MTNA Certified?",
                    "AttributeTypeID": 4,
                    "AttributeValue": "False"
                },
                {
                    "AttributeDisplayText": null,
                    "AttributeId": 250,
                    "AttributeName": "Personal Statement",
                    "AttributeTypeID": 2,
                    "AttributeValue": "Lessons are tailored to your requirements. I can teach techniques to use a sequencer, while demonstrating the specific techniques used with a certain style of music, for example drum and bass or hip-hop.    Any requirements you have I can make a lesson plan / course specifically for each individual. "
                },
                {
                    "AttributeDisplayText": null,
                    "AttributeId": 251,
                    "AttributeName": "Newsletter?",
                    "AttributeTypeID": 4,
                    "AttributeValue": "False"
                },
                {
                    "AttributeDisplayText": null,
                    "AttributeId": 256,
                    "AttributeName": "Teacher Type",
                    "AttributeTypeID": 5,
                    "AttributeValue": "Individual"
                },
                {
                    "AttributeDisplayText": null,
                    "AttributeId": 245,
                    "AttributeName": "Rate Time Period",
                    "AttributeTypeID": 5,
                    "AttributeValue": "per Hour"
                },
                {
                    "AttributeDisplayText": null,
                    "AttributeId": 261,
                    "AttributeName": "Styles Taught",
                    "AttributeTypeID": 7,
                    "AttributeValue": "Pop Rock"
                },
                {
                    "AttributeDisplayText": null,
                    "AttributeId": 261,
                    "AttributeName": "Styles Taught",
                    "AttributeTypeID": 7,
                    "AttributeValue": "Classical"
                },
                {
                    "AttributeDisplayText": null,
                    "AttributeId": 261,
                    "AttributeName": "Styles Taught",
                    "AttributeTypeID": 7,
                    "AttributeValue": "Other"
                },
                {
                    "AttributeDisplayText": null,
                    "AttributeId": 262,
                    "AttributeName": "Levels Taught",
                    "AttributeTypeID": 7,
                    "AttributeValue": "Beginner"
                },
                {
                    "AttributeDisplayText": null,
                    "AttributeId": 262,
                    "AttributeName": "Levels Taught",
                    "AttributeTypeID": 7,
                    "AttributeValue": "Intermediate"
                },
                {
                    "AttributeDisplayText": null,
                    "AttributeId": 262,
                    "AttributeName": "Levels Taught",
                    "AttributeTypeID": 7,
                    "AttributeValue": "Advanced"
                },
                {
                    "AttributeDisplayText": null,
                    "AttributeId": 5610,
                    "AttributeName": "Test Wilson",
                    "AttributeTypeID": 9,
                    "AttributeValue": "~/Resources/267/20181011144237434_476569950.jpg"
                },
                {
                    "AttributeDisplayText": null,
                    "AttributeId": 5611,
                    "AttributeName": "test",
                    "AttributeTypeID": 9,
                    "AttributeValue": "http://timenerdworld.files.wordpress.com/2012/08/microsoftlogos.jpg"
                },
                {
                    "AttributeDisplayText": null,
                    "AttributeId": 5700,
                    "AttributeName": "Test Photo",
                    "AttributeTypeID": 9,
                    "AttributeValue": "~/Resources/267/20181011144344977_Tesla-Motors-symbol.png"
                }
            ],
            "BusinessHours": "",
            "CategoryIds": "1414,1435",
            "CategoryNames": "Cello,Other",
            "City": "York",
            "ComplexAttributes": [],
            "ContactName": "Lee  Sykes",
            "ContactPosition": null,
            "ContactURL": null,
            "CountryCode": "GB",
            "Coupons": [],
            "DailyHoursList": [],
            "Distance": 0,
            "EmailAddress": "lee@vortexmusic.co.uk",
            "Events": [],
            "FaceBookPageId": null,
            "FaxNumber": null,
            "GeoCodeStatusId": 1,
            "Id": 2447947,
            "ImageFileUrl": null,
            "InternetLocation": false,
            "IsLeadManager": false,
            "IsStoreLocator": true,
            "LMServiceID": false,
            "Latitude": 53.9485,
            "LocationTypeIconURL": "http://app.staging.bullseyelocations.com/Resources/267/20180130182642207_if_Tools_-_common_fixed-05_1208651.png",
            "LocationTypeName": "Standard",
            "Longitude": -0.8895,
            "MobileNumber": null,
            "Name": "Vortex Music Productions",
            "PhoneNumber": "(07974) 742031",
            "PostCode": "YO41 1EU",
            "State": null,
            "ThirdPartyId": null,
            "TimeZone": null,
            "URL": "http://www.vortexmusic.esmartmusic.com"
        }
    ],
    "SearchReqLogId": 10938200,
    "TotalResults": 1
}
 
Suggest Edits

GetLocationList

Returns List of locations by country id or all locations for the client if country id not specified

Returns Plain HTML.

 
gethttp://ws.bullseyelocations.com/RestSearch.svc/GetLocationList

Query Params

ClientId
int32
required
ApiKey
string
required
CountryIds
array of integers
required

List of countries separate by comma, this will display a dropdown

CategoryIds
array of integers

Filter by categories, separated by comma

StateID
int32

Return list of locations for a given state for collapsed view

LandingPageInterface
string

Use to build the location href

Action
string

collapsedview: return countries, states and locations collapsed statechange: return list of locations for a given state this is automatically when the client select a state from the combo mobile: return countries, states and locations, mobile optimized countrychange: when the user selected a country from the combo countrychangeinternational: country is selected for international countries statechangemobile: state is selected on mobile defaultview: Full view with countries, states and locations no collapsed

 
No code samples available
A binary file was returned

You couldn't be authenticated

Try the API to see results
 
Suggest Edits

ValidateClient

 
gethttps://ws.bullseyelocations.com/RestAdmin.svc/ValidateClient

Query Params

ApiKey
int32

This is the Admin API Key

UserName
string
Password
string
Role
string

(Optional)

 
curl --request GET \
  --url https://ws.bullseyelocations.com/RestAdmin.svc/ValidateClient
var request = require("request");

var options = { method: 'GET',
  url:
   'https://ws.bullseyelocations.com/RestAdmin.svc/ValidateClient' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://ws.bullseyelocations.com/RestAdmin.svc/ValidateClient")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://ws.bullseyelocations.com/RestAdmin.svc/ValidateClient");

xhr.send(data);
import requests

url = "https://ws.bullseyelocations.com/RestAdmin.svc/ValidateClient"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results
 
Suggest Edits

CreateDefaultInterface

 
posthttps://ws.bullseyelocations.com/RestAdmin.svc/CreateDefaultInterface

Query Params

ClientID
int32
ApiKey
int32

This is the Admin API Key

StoreName
string

Wordpress Page URL or Shopify Store Name

Template
string

Pass Template Name, e.g. "wordpress" or "shopify"

 
curl --request POST \
  --url https://ws.bullseyelocations.com/RestAdmin.svc/CreateDefaultInterface
var request = require("request");

var options = { method: 'POST',
  url:
   'https://ws.bullseyelocations.com/RestAdmin.svc/CreateDefaultInterface' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://ws.bullseyelocations.com/RestAdmin.svc/CreateDefaultInterface")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://ws.bullseyelocations.com/RestAdmin.svc/CreateDefaultInterface");

xhr.send(data);
import requests

url = "https://ws.bullseyelocations.com/RestAdmin.svc/CreateDefaultInterface"

response = requests.request("POST", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results
 
Suggest Edits

LinkBullseyeAccount

 
posthttps://ws.bullseyelocations.com/restadmin.svc/LinkBullseyeAccount

Query Params

ApiKey
int32

This is the Admin API Key

ClientID
int32
UserName
string
PluginType
string

Wordpress=2

ShopName
string

Pass URL as ShopName

InterfaceName
string

Returned from CreateDefaultInterface

 
curl --request POST \
  --url https://ws.bullseyelocations.com/restadmin.svc/LinkBullseyeAccount
var request = require("request");

var options = { method: 'POST',
  url:
   'https://ws.bullseyelocations.com/restadmin.svc/LinkBullseyeAccount' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://ws.bullseyelocations.com/restadmin.svc/LinkBullseyeAccount")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://ws.bullseyelocations.com/restadmin.svc/LinkBullseyeAccount");

xhr.send(data);
import requests

url = "https://ws.bullseyelocations.com/restadmin.svc/LinkBullseyeAccount"

response = requests.request("POST", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

 
Suggest Edits

GetPluginInterfaces

Gets a list of existing Wordpress interfaces for a client

 
gethttps://ws.bullseyelocations.com/restadmin.svc/GetPluginInterfaces

Query Params

ApiKey
int32

This is the Admin API Key

ClientID
int32
Template
string

Pass template ="wordpress"

 
curl --request GET \
  --url https://ws.bullseyelocations.com/restadmin.svc/GetPluginInterfaces
var request = require("request");

var options = { method: 'GET',
  url:
   'https://ws.bullseyelocations.com/restadmin.svc/GetPluginInterfaces' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://ws.bullseyelocations.com/restadmin.svc/GetPluginInterfaces")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://ws.bullseyelocations.com/restadmin.svc/GetPluginInterfaces");

xhr.send(data);
import requests

url = "https://ws.bullseyelocations.com/restadmin.svc/GetPluginInterfaces"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

 
Suggest Edits

GetPluginAccount

 
posthttps://ws.bullseyelocations.com/restadmin.svc/GetPluginAccount

Query Params

ApiKey
int32

This is the Admin API Key

ClientID
int32
UserName
string
PluginType
string

Wordpress=2

ShopName
string

Pass URL as ShopName

InterfaceName
string

Returned from CreateDefaultInterface

 
curl --request POST \
  --url https://ws.bullseyelocations.com/restadmin.svc/GetPluginAccount
var request = require("request");

var options = { method: 'POST',
  url:
   'https://ws.bullseyelocations.com/restadmin.svc/GetPluginAccount' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://ws.bullseyelocations.com/restadmin.svc/GetPluginAccount")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://ws.bullseyelocations.com/restadmin.svc/GetPluginAccount");

xhr.send(data);
import requests

url = "https://ws.bullseyelocations.com/restadmin.svc/GetPluginAccount"

response = requests.request("POST", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

 
Suggest Edits

DeleteInterface

 
posthttps://ws.bullseyelocations.com/restadmin.svc/DeleteInterface

Query Params

ApiKey
int32

This is the Admin API Key

InterfaceID
int32
 
curl --request POST \
  --url https://ws.bullseyelocations.com/restadmin.svc/DeleteInterface
var request = require("request");

var options = { method: 'POST',
  url:
   'https://ws.bullseyelocations.com/restadmin.svc/DeleteInterface' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://ws.bullseyelocations.com/restadmin.svc/DeleteInterface")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://ws.bullseyelocations.com/restadmin.svc/DeleteInterface");

xhr.send(data);
import requests

url = "https://ws.bullseyelocations.com/restadmin.svc/DeleteInterface"

response = requests.request("POST", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

 
Suggest Edits

DeleteBullseyePluginAccount

 
posthttps://ws.bullseyelocations.com/restadmin.svc/DeleteBullseyePluginAccount

Query Params

ApiKey
int32

This is the Admin API Key

ClientID
int32
UserName
string
URL
string
 
curl --request POST \
  --url https://ws.bullseyelocations.com/restadmin.svc/DeleteBullseyePluginAccount
var request = require("request");

var options = { method: 'POST',
  url:
   'https://ws.bullseyelocations.com/restadmin.svc/DeleteBullseyePluginAccount' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://ws.bullseyelocations.com/restadmin.svc/DeleteBullseyePluginAccount")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://ws.bullseyelocations.com/restadmin.svc/DeleteBullseyePluginAccount");

xhr.send(data);
import requests

url = "https://ws.bullseyelocations.com/restadmin.svc/DeleteBullseyePluginAccount"

response = requests.request("POST", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

 
Suggest Edits

HolidayHours Object

 

This object provides Holiday Hours data associated with a location. The data is from the current date forward: historical Holiday Hours are not provided.

Type
Name
Description

Int

ID

Bullseye internal ID.

Int

LocationID

ID of the Location containing the Holiday Hours.

Nullable Int

HolidayCountryID

The Holiday Country record that these Holiday Hours are associated with.

String

HolidayName

Name of the Holiday, if applicable.

DateTime

HolidayDate

Date for this particular set of hours.

DateTime

OpeningDateAndTime

Contains the opening time for this particular date. If the Location is closed, the time is 00:00:00.

DateTime

ClosingDateAndTime

Contains the closing time for this particular date. If the Location is closed, the time is 00:00:00.

Boolean

Closed

Indicates the Location is closed on that date.

String

Name

A value to be used in place of the Holiday Name.

 
Suggest Edits

RestCountry Object

 

This object provides the ID, abbreviation and name for a Country in Bullseye.

Type
Name
Description

Int

ID

Bullseye internal country ID

String

Code

The country abbreviation.

String

Name

The generally accepted country name.

 
Suggest Edits

RestTimeZone Object

 

This object provides the ID and associated data for a TimeZone in Bullseye.

Type
Name
Description

Int

ID

Bullseye internal timezone ID

String

Name

The name of the timezone.

Double

GMTOffset

The number of hours this timezone is offset from Greenwich Mean Time (GMT).

String

Description

Text incorporating the name and GMTOffset for the timezone.

 
Suggest Edits

LocationJson Object

 

This object is returned from the GetLocation method, and is used as input for the AddLocation and UpdateLocation methods. It represents a location as used in several of the LocationService calls.

(This object is similar, but not identical, to the LocationResult object used in the search service.)

Note that the geocode-related fields (latitude, longitude, DateLastGeoCoded, and GeoCodeStatusId) will be returned on a lookup, but cannot be set on an insert or update.

Type (max length)
Name
Description

Int

Id

Bullseye location ID

String (255)

Name

The name of the location

Bool

Active

Whether the location is active or not

Int

MemberId

Bullseye member ID

(There is currently no way to retrieve detail member info via a web service call.)

String (255)

URL

The location’s website URL

Int

CountryId

The location’s numeric country ID

String

CountryName

The location’s country name (not used here)

String (255)

Address1

First line of Address

String (255)

Address2

Second line of Address

String (255)

Address3

Third line of Address

String (255)

Address4

Fourth line of Address

String (255)

City

The location’s city

Int

StateId

The location’s numeric state ID

String

StateAbbr

The location’s state abbreviation (not used)

String (50)

PostCode

The location’s postal code (zip code in US)

String (2000)

InternationalAddress

For locations outside the US, Canada, and the UK, contains the full address for the location.

NOTE that we are phasing out this field. For new locations, you should fill out the individual address fields.

String (50)

PhoneNumber

The location’s phone number

String (50)

FaxNumber

The location’s fax number

String (255)

ContactName

The location’s contact’s name

String (255)

ContactPosition

The location’s contact’s position

Bool

InternetLocation

Whether or not the location is an internet location

LocationImages

Collection of relative URLs to the location’s uploaded images

LocationSocialMedia

Object representing Location Social Media links

LocationSEO

Object representing Location SEO properties

RestHolidayHours[]

HolidayHours

An array of Holiday Hours associate with this location, from the current day going forward. (Currently not available.)

Int

LocationTypeId

The location’s type ID
(TODO: no REST call to get types.)

String

LocationTypeName

The location’s type name (not used)

String

ThirdPartyId

The location’s third party ID

Double

Distance

The distance of the location from the search input (in miles)

DateTime

DateCreated

Date record was created

DateTime

DateModified

Date record was last modified

DateTime

DateDeleted

Date record was deleted (should always be null; the web service will not return deleted records)

LocationCategory[]

Categories

An array of categories related to this location

LocationAttributes[]

Attributes

An array of attributes related to this location

ComplexAttributes

Object representing a list of complex attributes related to this location

LocationService1[]

Services

An array representing the services associated with this location (Lead Manager and/or Store Locator)

LocationTerritory[]

Territories

An array of territories related to this location

LocationBusinessHours[]

BusinessHours

An object representing the business hours for this location

Int

ResponsivenessId

Numeric responsiveness ID. (see table of values below)

String

ResponsivenessName

(currently blank)

Int

ClientId

Your client ID

Int

RepId

ID of assigned rep.

Detailed rep info can be retrieved via the Lookup.GetReps() call.
(TODO: no REST call for this.)

String

RepFullName

(currently blank)

String

UserName

Bullseye member user name

String

EmailAddress

(blank)

Decimal

Latitude

Location latitude

Decimal

Longitude

Location longitude

Int

GeoCodeStatusId

Indicates whether or not this location has been geocoded, and at what level. (0=none, 1=zip code level, 2=street address level)

DateTime

DateLastGeoCoded

The date on which this location was most recently geocoded.

String

BusinessHoursFmtd

Business hours, in a formatted string. (cannot be set)

String

FacebookPageId

(added 11/20/2012) - used to associate a Facebook page with a single location

Responsiveness ID values

Id
Name

1

Very Slow

2

Moderately Slow

3

About Average

4

Moderately Fast

5

Very Fast

 
Suggest Edits

RestLocationImage Object

 

This object provides images associated with a location to be used on a location landing page.

Type
Name
Description

Int

ID

Bullseye internal ID

Int

LocationID

Location ID

String

ImageFileUrl

Location landing page Image URL

 
Suggest Edits

RestLocationSocialMedia Object

 

This object provides Social Media links associated with a location

Type
Name
Description

Int

ID

Bullseye internal ID

Int

LocationID

Location ID

String

GooglePlusURL

Location Google Plus URL

TwitterURL

String

LinkedInURL

Location LinkedIn URL

String

PinterestURL

Location Pinterest URL

String

YelpURL

Location Yelp URL

String

InstagramURL

Location Instagram URL

 
Suggest Edits

RestLocationSEO Object

 

This object provides SEO properties associated with a location

Type
Name
Description

Int

ID

Bullseye internal ID

Int

LocationID

Location ID

String

SEOTitle

Location landing page meta title tag

String

MetaDescription

Location landing page meta description tag

 
Suggest Edits

LocRslt Object

 

Several calls use this class to pass back a location ID and/or error information.

Type
Name
Description

Int

locationId

Bullseye internal location ID

String

errorMsg

Error message. Empty if successful.

 
Suggest Edits

GetHolidayHours

This method retrieves holiday hours data for a location given a Bullseye LocationId or a client-supplied ThirdPartyId. Two optional parameters, FromDate and ToDate, can narrow the results. If neither are supplied, all holiday hours data, both historical and future, will be returned.

Return Value: HolidayHours

 
gethttps://ws.bullseyelocations.com/RestLocation.svc/GetHolidayHours

Query Params

ClientId
int32
required
ApiKey
string
required
LocationId
int32

The LocationId refers to the Bullseye Location ID created by Bullseye for a location. Either this or the ThirdPartyId must be supplied.

ThirdPartyId
int32

The ThirdPartyId refers to a client-supplied Third Party ID for a location. Either this or the LocationId must be supplied.

FromDate
string

FromDate is a string containing a date value in standard date format. If this is supplied, only Holiday Hours that are on or after this date will be returned.

ToDate
string

ToDate is a string containing a date value in standard date format. If this is supplied, only Holiday Hours that are on or before this date will be returned.

 
<?php
//1. Include Bullseye library
require_once '../../Bullseye.php';
//2. Create Bullseye object
$clientId = 5786;
$searchKey = null; //'cf623cdf-1090-43ba-8b0f-9fa67fcf9d57';
$adminKey = 'aa4c7e55-9d0b-4a97-b62e-c95efec4285e';
$useStagingServer = true;
$bullseye = new Bullseye\Bullseye($clientId, $searchKey, $adminKey, $useStagingServer);
//2.1 activate debug mode
//$bullseye->debug(true);
//3. Call method to get the hours
$locationId = '4885827';
$location = $bullseye->getHolidayHours([
  'LocationId' => $locationId,
  //'ThirdPartyId' => $locationId,
  'FromDate' => '2017-03-20',
  //'ToDate' => $locationId,
]);
//4. Check location
if(false !== $location)
  print_r($location);
else{
  //if location was not found
  print_r($bullseye->getLastError());
}
A binary file was returned

You couldn't be authenticated

[
  {
    "Closed":true,
    "ClosingDateAndTime":"\/Date(1479963600000-0500)\/",
    "HolidayCountryID":14,
    "HolidayDate":"\/Date(1479963600000-0500)\/",
    "HolidayName":null,
    "ID":1,
    "LocationID":4952134,
    "Name":null,
    "OpeningDateAndTime":"\/Date(1479963600000-0500)\/"
  },
  {
    "Closed":false,
    "ClosingDateAndTime":"\/Date(1480129200000-0500)\/",
    "HolidayCountryID":null,
    "HolidayDate":"\/Date(1480050000000-0500)\/",
    "HolidayName":null,
    "ID":2,
    "LocationID":4952134,
    "Name":"Black Friday",
    "OpeningDateAndTime":"\/Date(1480068000000-0500)\/"
  },
  {
    "Closed":false,
    "ClosingDateAndTime":"\/Date(1482606000000-0500)\/",
    "HolidayCountryID":null,
    "HolidayDate":"\/Date(1482555600000-0500)\/",
    "HolidayName":null,
    "ID":3,
    "LocationID":4952134,
    "Name":"Christmas Eve",
    "OpeningDateAndTime":"\/Date(1482573600000-0500)\/"
  },
  {
    "Closed":true,
    "ClosingDateAndTime":"\/Date(1482642000000-0500)\/",
    "HolidayCountryID":15,
    "HolidayDate":"\/Date(1482642000000-0500)\/",
    "HolidayName":null,
    "ID":4,
    "LocationID":4952134,
    "Name":null,
    "OpeningDateAndTime":"\/Date(1482642000000-0500)\/"
  },
  {
    "Closed":true,
    "ClosingDateAndTime":"\/Date(1514178000000-0500)\/",
    "HolidayCountryID":31,
    "HolidayDate":"\/Date(1514178000000-0500)\/",
    "HolidayName":null,
    "ID":5,
    "LocationID":4952134,
    "Name":"Christmas Day",
    "OpeningDateAndTime":"\/Date(1514178000000-0500)\/"
  },
  {
    "Closed":false,
    "ClosingDateAndTime":"\/Date(1479092400000-0500)\/",
    "HolidayCountryID":null,
    "HolidayDate":"\/Date(1479013200000-0500)\/",
    "HolidayName":null,
    "ID":6,
    "LocationID":4952134,
    "Name":"Pre-Veterans Day",
    "OpeningDateAndTime":"\/Date(1479038400000-0500)\/"
  },
  {
    "Closed":false,
    "ClosingDateAndTime":"\/Date(1479157200000-0500)\/",
    "HolidayCountryID":13,
    "HolidayDate":"\/Date(1479099600000-0500)\/",
    "HolidayName":null,
    "ID":7,
    "LocationID":4952134,
    "Name":null,
    "OpeningDateAndTime":"\/Date(1479124800000-0500)\/"
  }
]
 
Suggest Edits

GetAllCountries

This method will return the full list of valid countries currently in Bullseye.

Return Value: RestCountry

 
gethttps://ws.bullseyelocations.com/RestLocation.svc/GetAllCountries

Query Params

ClientId
int32
ApiKey
string
required

clientID is not required

<?php
//1. Include Bullseye library
require_once '../../Bullseye.php';
//2. Create Bullseye object
$clientId = 5786;
$searchKey = null; //'cf623cdf-1090-43ba-8b0f-9fa67fcf9d57';
$adminKey = 'aa4c7e55-9d0b-4a97-b62e-c95efec4285e';
$useStagingServer = true;
$bullseye = new Bullseye\Bullseye($clientId, $searchKey, $adminKey, $useStagingServer);
//2.1 activate debug mode
//$bullseye->debug(true);
//3. Call method to get the countries
$countries = $bullseye->getAllCountries();
//4. Check countries
if($countries)
  print_r($countries);
else{
  //if there was an error
  print_r($bullseye->getLastError());
}
A binary file was returned

You couldn't be authenticated

[
  {
    "Code": "US",
    "ID": 1,
    "Name": "United States"
  },
  {
    "Code": "CA",
    "ID": 2,
    "Name": "Canada"
  },
  {
    "Code": "GB",
    "ID": 88,
    "Name": "United Kingdom"
  },
  {
    "Code": "AF",
    "ID": 274,
    "Name": "Afghanistan"
  },
  {
    "Code": "AX",
    "ID": 276,
    "Name": "Åland Islands"
  },
  {
    "Code": "AL",
    "ID": 3,
    "Name": "Albania"
  },
  {
    "Code": "DZ",
    "ID": 4,
    "Name": "Algeria"
  },
  {
    "Code": "AS",
    "ID": 5,
    "Name": "American Samoa"
  },
  {
    "Code": "AD",
    "ID": 6,
    "Name": "Andorra"
  },
  {
    "Code": "AO",
    "ID": 7,
    "Name": "Angola"
  },
  {
    "Code": "AI",
    "ID": 8,
    "Name": "Anguilla"
  },
  {
    "Code": "AQ",
    "ID": 275,
    "Name": "Antarctica"
  },
  {
    "Code": "AG",
    "ID": 9,
    "Name": "Antigua and Barbuda"
  },
  {
    "Code": "AR",
    "ID": 10,
    "Name": "Argentina"
  },
  {
    "Code": "AM",
    "ID": 11,
    "Name": "Armenia"
  },
  {
    "Code": "AW",
    "ID": 12,
    "Name": "Aruba"
  },
  {
    "Code": "AC",
    "ID": 273,
    "Name": "Ascension Island"
  },
  {
    "Code": "AU",
    "ID": 13,
    "Name": "Australia"
  },
  {
    "Code": "AT",
    "ID": 14,
    "Name": "Austria"
  },
  {
    "Code": "AZ",
    "ID": 15,
    "Name": "Azerbaijan"
  },
  {
    "Code": "AP",
    "ID": 16,
    "Name": "Azores"
  },
  {
    "Code": "BS",
    "ID": 17,
    "Name": "Bahamas"
  },
  {
    "Code": "BH",
    "ID": 18,
    "Name": "Bahrain"
  },
  {
    "Code": "BD",
    "ID": 19,
    "Name": "Bangladesh"
  },
  {
    "Code": "BB",
    "ID": 20,
    "Name": "Barbados"
  },
  {
    "Code": "BY",
    "ID": 21,
    "Name": "Belarus"
  },
  {
    "Code": "BE",
    "ID": 22,
    "Name": "Belgium"
  },
  {
    "Code": "BZ",
    "ID": 23,
    "Name": "Belize"
  },
  {
    "Code": "BJ",
    "ID": 24,
    "Name": "Benin"
  },
  {
    "Code": "BM",
    "ID": 25,
    "Name": "Bermuda"
  },
  {
    "Code": "BT",
    "ID": 26,
    "Name": "Bhutan"
  },
  {
    "Code": "BO",
    "ID": 27,
    "Name": "Bolivia"
  },
  {
    "Code": "BL",
    "ID": 28,
    "Name": "Bonaire"
  },
  {
    "Code": "BA",
    "ID": 29,
    "Name": "Bosnia and Herzegovina"
  },
  {
    "Code": "BW",
    "ID": 30,
    "Name": "Botswana"
  },
  {
    "Code": "BV",
    "ID": 31,
    "Name": "Bouvet Island"
  },
  {
    "Code": "BR",
    "ID": 32,
    "Name": "Brazil"
  },
  {
    "Code": "IO",
    "ID": 33,
    "Name": "British Indian Ocean Territory"
  },
  {
    "Code": "VG",
    "ID": 260,
    "Name": "British Virgin Islands"
  },
  {
    "Code": "BN",
    "ID": 34,
    "Name": "Brunei Darussalam"
  },
  {
    "Code": "BG",
    "ID": 35,
    "Name": "Bulgaria"
  },
  {
    "Code": "BF",
    "ID": 36,
    "Name": "Burkina Faso"
  },
  {
    "Code": "BI",
    "ID": 37,
    "Name": "Burundi"
  },
  {
    "Code": "KH",
    "ID": 38,
    "Name": "Cambodia"
  },
  {
    "Code": "CM",
    "ID": 39,
    "Name": "Cameroon"
  },
  {
    "Code": "IC",
    "ID": 41,
    "Name": "Canary Islands"
  },
  {
    "Code": "CV",
    "ID": 42,
    "Name": "Cape Verde"
  },
  {
    "Code": "BQ",
    "ID": 286,
    "Name": "Caribbean Netherlands"
  },
  {
    "Code": "KY",
    "ID": 43,
    "Name": "Cayman Islands"
  },
  {
    "Code": "CF",
    "ID": 44,
    "Name": "Central African Republic"
  },
  {
    "Code": "TD",
    "ID": 45,
    "Name": "Chad"
  },
  {
    "Code": "CL",
    "ID": 47,
    "Name": "Chile"
  },
  {
    "Code": "CN",
    "ID": 48,
    "Name": "China"
  },
  {
    "Code": "CX",
    "ID": 49,
    "Name": "Christmas Island"
  },
  {
    "Code": "CC",
    "ID": 50,
    "Name": "Cocos (Keeling) Islands"
  },
  {
    "Code": "CO",
    "ID": 51,
    "Name": "Colombia"
  },
  {
    "Code": "KM",
    "ID": 52,
    "Name": "Comoros"
  },
  {
    "Code": "CG",
    "ID": 284,
    "Name": "Congo"
  },
  {
    "Code": "CK",
    "ID": 54,
    "Name": "Cook Islands"
  },
  {
    "Code": "CR",
    "ID": 55,
    "Name": "Costa Rica"
  },
  {
    "Code": "HR",
    "ID": 57,
    "Name": "Croatia"
  },
  {
    "Code": "CU",
    "ID": 277,
    "Name": "Cuba"
  },
  {
    "Code": "CW",
    "ID": 58,
    "Name": "Curacao"
  },
  {
    "Code": "CY",
    "ID": 59,
    "Name": "Cyprus"
  },
  {
    "Code": "CZ",
    "ID": 60,
    "Name": "Czech Republic"
  },
  {
    "Code": "CD",
    "ID": 53,
    "Name": "Democratic Republic of the Congo"
  },
  {
    "Code": "DK",
    "ID": 61,
    "Name": "Denmark"
  },
  {
    "Code": "DJ",
    "ID": 62,
    "Name": "Djibouti"
  },
  {
    "Code": "DM",
    "ID": 63,
    "Name": "Dominica"
  },
  {
    "Code": "DO",
    "ID": 64,
    "Name": "Dominican Republic"
  },
  {
    "Code": "TP",
    "ID": 65,
    "Name": "East Timor"
  },
  {
    "Code": "EC",
    "ID": 66,
    "Name": "Ecuador"
  },
  {
    "Code": "EG",
    "ID": 67,
    "Name": "Egypt"
  },
  {
    "Code": "SV",
    "ID": 68,
    "Name": "El Salvador"
  },
  {
    "Code": "GQ",
    "ID": 70,
    "Name": "Equatorial Guinea"
  },
  {
    "Code": "ER",
    "ID": 71,
    "Name": "Eritrea"
  },
  {
    "Code": "EE",
    "ID": 72,
    "Name": "Estonia"
  },
  {
    "Code": "ET",
    "ID": 73,
    "Name": "Ethiopia"
  },
  {
    "Code": "FO",
    "ID": 74,
    "Name": "Faeroe Islands"
  },
  {
    "Code": "FK",
    "ID": 75,
    "Name": "Falkland Islands"
  },
  {
    "Code": "FJ",
    "ID": 76,
    "Name": "Fiji"
  },
  {
    "Code": "FI",
    "ID": 77,
    "Name": "Finland"
  },
  {
    "Code": "FR",
    "ID": 78,
    "Name": "France"
  },
  {
    "Code": "GF",
    "ID": 79,
    "Name": "French Guiana"
  },
  {
    "Code": "PF",
    "ID": 80,
    "Name": "French Polynesia"
  },
  {
    "Code": "TF",
    "ID": 81,
    "Name": "French Southern Territories"
  },
  {
    "Code": "GA",
    "ID": 82,
    "Name": "Gabon"
  },
  {
    "Code": "GM",
    "ID": 83,
    "Name": "Gambia"
  },
  {
    "Code": "GE",
    "ID": 84,
    "Name": "Georgia"
  },
  {
    "Code": "DE",
    "ID": 85,
    "Name": "Germany"
  },
  {
    "Code": "GH",
    "ID": 86,
    "Name": "Ghana"
  },
  {
    "Code": "GI",
    "ID": 87,
    "Name": "Gibraltar"
  },
  {
    "Code": "GR",
    "ID": 89,
    "Name": "Greece"
  },
  {
    "Code": "GL",
    "ID": 90,
    "Name": "Greenland"
  },
  {
    "Code": "GD",
    "ID": 91,
    "Name": "Grenada"
  },
  {
    "Code": "GP",
    "ID": 92,
    "Name": "Guadeloupe"
  },
  {
    "Code": "GU",
    "ID": 93,
    "Name": "Guam"
  },
  {
    "Code": "GT",
    "ID": 94,
    "Name": "Guatemala"
  },
  {
    "Code": "GG",
    "ID": 279,
    "Name": "Guernsey"
  },
  {
    "Code": "GN",
    "ID": 95,
    "Name": "Guinea"
  },
  {
    "Code": "GW",
    "ID": 96,
    "Name": "Guinea-Bissau"
  },
  {
    "Code": "GY",
    "ID": 97,
    "Name": "Guyana"
  },
  {
    "Code": "HT",
    "ID": 98,
    "Name": "Haiti"
  },
  {
    "Code": "HM",
    "ID": 99,
    "Name": "Heard Island and McDonald Islands"
  },
  {
    "Code": "HN",
    "ID": 100,
    "Name": "Honduras"
  },
  {
    "Code": "HK",
    "ID": 101,
    "Name": "Hong Kong"
  },
  {
    "Code": "HU",
    "ID": 102,
    "Name": "Hungary"
  },
  {
    "Code": "IS",
    "ID": 103,
    "Name": "Iceland"
  },
  {
    "Code": "IN",
    "ID": 104,
    "Name": "India"
  },
  {
    "Code": "ID",
    "ID": 105,
    "Name": "Indonesia"
  },
  {
    "Code": "IR",
    "ID": 271,
    "Name": "Iran"
  },
  {
    "Code": "IQ",
    "ID": 281,
    "Name": "Iraq"
  },
  {
    "Code": "IE",
    "ID": 106,
    "Name": "Ireland"
  },
  {
    "Code": "IM",
    "ID": 280,
    "Name": "Isle of Man"
  },
  {
    "Code": "IL",
    "ID": 107,
    "Name": "Israel"
  },
  {
    "Code": "IT",
    "ID": 108,
    "Name": "Italy"
  },
  {
    "Code": "CI",
    "ID": 56,
    "Name": "Ivory Coast"
  },
  {
    "Code": "JM",
    "ID": 109,
    "Name": "Jamaica"
  },
  {
    "Code": "JP",
    "ID": 110,
    "Name": "Japan"
  },
  {
    "Code": "JE",
    "ID": 282,
    "Name": "Jersey"
  },
  {
    "Code": "JO",
    "ID": 111,
    "Name": "Jordan"
  },
  {
    "Code": "KZ",
    "ID": 112,
    "Name": "Kazakhstan"
  },
  {
    "Code": "KE",
    "ID": 113,
    "Name": "Kenya"
  },
  {
    "Code": "KI",
    "ID": 114,
    "Name": "Kiribati"
  },
  {
    "Code": "KO",
    "ID": 115,
    "Name": "Kosrae"
  },
  {
    "Code": "KW",
    "ID": 116,
    "Name": "Kuwait"
  },
  {
    "Code": "KG",
    "ID": 117,
    "Name": "Kyrgyzstan"
  },
  {
    "Code": "LA",
    "ID": 118,
    "Name": "Laos"
  },
  {
    "Code": "LV",
    "ID": 119,
    "Name": "Latvia"
  },
  {
    "Code": "LB",
    "ID": 120,
    "Name": "Lebanon"
  },
  {
    "Code": "LS",
    "ID": 121,
    "Name": "Lesotho"
  },
  {
    "Code": "LR",
    "ID": 122,
    "Name": "Liberia"
  },
  {
    "Code": "LY",
    "ID": 123,
    "Name": "Libya"
  },
  {
    "Code": "LI",
    "ID": 124,
    "Name": "Liechtenstein"
  },
  {
    "Code": "LT",
    "ID": 125,
    "Name": "Lithuania"
  },
  {
    "Code": "LU",
    "ID": 126,
    "Name": "Luxembourg"
  },
  {
    "Code": "MO",
    "ID": 127,
    "Name": "Macau"
  },
  {
    "Code": "MK",
    "ID": 128,
    "Name": "Macedonia"
  },
  {
    "Code": "MG",
    "ID": 129,
    "Name": "Madagascar"
  },
  {
    "Code": "MW",
    "ID": 131,
    "Name": "Malawi"
  },
  {
    "Code": "MY",
    "ID": 132,
    "Name": "Malaysia"
  },
  {
    "Code": "MV",
    "ID": 133,
    "Name": "Maldives"
  },
  {
    "Code": "ML",
    "ID": 134,
    "Name": "Mali"
  },
  {
    "Code": "MT",
    "ID": 135,
    "Name": "Malta"
  },
  {
    "Code": "MH",
    "ID": 136,
    "Name": "Marshall Islands"
  },
  {
    "Code": "MQ",
    "ID": 137,
    "Name": "Martinique"
  },
  {
    "Code": "MR",
    "ID": 138,
    "Name": "Mauritania"
  },
  {
    "Code": "MU",
    "ID": 139,
    "Name": "Mauritius"
  },
  {
    "Code": "YT",
    "ID": 140,
    "Name": "Mayotte"
  },
  {
    "Code": "MX",
    "ID": 141,
    "Name": "Mexico"
  },
  {
    "Code": "FM",
    "ID": 142,
    "Name": "Micronesia"
  },
  {
    "Code": "MD",
    "ID": 143,
    "Name": "Moldova"
  },
  {
    "Code": "MC",
    "ID": 144,
    "Name": "Monaco"
  },
  {
    "Code": "MN",
    "ID": 145,
    "Name": "Mongolia"
  },
  {
    "Code": "ME",
    "ID": 285,
    "Name": "Montenegro"
  },
  {
    "Code": "MS",
    "ID": 146,
    "Name": "Montserrat"
  },
  {
    "Code": "MA",
    "ID": 147,
    "Name": "Morocco"
  },
  {
    "Code": "MZ",
    "ID": 148,
    "Name": "Mozambique"
  },
  {
    "Code": "MM",
    "ID": 149,
    "Name": "Myanmar"
  },
  {
    "Code": "NA",
    "ID": 150,
    "Name": "Namibia"
  },
  {
    "Code": "NR",
    "ID": 151,
    "Name": "Nauru"
  },
  {
    "Code": "NP",
    "ID": 152,
    "Name": "Nepal"
  },
  {
    "Code": "NL",
    "ID": 153,
    "Name": "Netherlands"
  },
  {
    "Code": "NC",
    "ID": 156,
    "Name": "New Caledonia"
  },
  {
    "Code": "NZ",
    "ID": 157,
    "Name": "New Zealand"
  },
  {
    "Code": "NI",
    "ID": 158,
    "Name": "Nicaragua"
  },
  {
    "Code": "NE",
    "ID": 159,
    "Name": "Niger"
  },
  {
    "Code": "NG",
    "ID": 160,
    "Name": "Nigeria"
  },
  {
    "Code": "NU",
    "ID": 161,
    "Name": "Niue"
  },
  {
    "Code": "NF",
    "ID": 162,
    "Name": "Norfolk Island"
  },
  {
    "Code": "KP",
    "ID": 163,
    "Name": "North Korea"
  },
  {
    "Code": "MP",
    "ID": 165,
    "Name": "Northern Mariana Islands"
  },
  {
    "Code": "NO",
    "ID": 166,
    "Name": "Norway"
  },
  {
    "Code": "OM",
    "ID": 167,
    "Name": "Oman"
  },
  {
    "Code": "PK",
    "ID": 168,
    "Name": "Pakistan"
  },
  {
    "Code": "PW",
    "ID": 169,
    "Name": "Palau"
  },
  {
    "Code": "PS",
    "ID": 283,
    "Name": "Palestinian Territory"
  },
  {
    "Code": "PA",
    "ID": 170,
    "Name": "Panama"
  },
  {
    "Code": "PG",
    "ID": 171,
    "Name": "Papua New Guinea"
  },
  {
    "Code": "PY",
    "ID": 172,
    "Name": "Paraguay"
  },
  {
    "Code": "PE",
    "ID": 173,
    "Name": "Peru"
  },
  {
    "Code": "PH",
    "ID": 174,
    "Name": "Philippines"
  },
  {
    "Code": "PN",
    "ID": 175,
    "Name": "Pitcairn"
  },
  {
    "Code": "PL",
    "ID": 176,
    "Name": "Poland"
  },
  {
    "Code": "PO",
    "ID": 177,
    "Name": "Ponape"
  },
  {
    "Code": "PT",
    "ID": 178,
    "Name": "Portugal"
  },
  {
    "Code": "PR",
    "ID": 179,
    "Name": "Puerto Rico"
  },
  {
    "Code": "QA",
    "ID": 180,
    "Name": "Qatar"
  },
  {
    "Code": "RE",
    "ID": 181,
    "Name": "Reunion"
  },
  {
    "Code": "RO",
    "ID": 182,
    "Name": "Romania"
  },
  {
    "Code": "RT",
    "ID": 183,
    "Name": "Rota"
  },
  {
    "Code": "RU",
    "ID": 184,
    "Name": "Russian Federation"
  },
  {
    "Code": "RW",
    "ID": 185,
    "Name": "Rwanda"
  },
  {
    "Code": "KN",
    "ID": 187,
    "Name": "Saint Kitts and Nevis"
  },
  {
    "Code": "LC",
    "ID": 188,
    "Name": "Saint Lucia"
  },
  {
    "Code": "VC",
    "ID": 189,
    "Name": "Saint Vincent and the Grenadines"
  },
  {
    "Code": "SP",
    "ID": 190,
    "Name": "Saipan"
  },
  {
    "Code": "WS",
    "ID": 191,
    "Name": "Samoa"
  },
  {
    "Code": "SM",
    "ID": 192,
    "Name": "San Marino"
  },
  {
    "Code": "ST",
    "ID": 193,
    "Name": "Sao Tome and Principe"
  },
  {
    "Code": "SA",
    "ID": 194,
    "Name": "Saudi Arabia"
  },
  {
    "Code": "SN",
    "ID": 196,
    "Name": "Senegal"
  },
  {
    "Code": "RS",
    "ID": 272,
    "Name": "Serbia"
  },
  {
    "Code": "SC",
    "ID": 197,
    "Name": "Seychelles"
  },
  {
    "Code": "SL",
    "ID": 198,
    "Name": "Sierra Leone"
  },
  {
    "Code": "SG",
    "ID": 199,
    "Name": "Singapore"
  },
  {
    "Code": "SK",
    "ID": 200,
    "Name": "Slovak Republic"
  },
  {
    "Code": "SI",
    "ID": 201,
    "Name": "Slovenia"
  },
  {
    "Code": "SB",
    "ID": 202,
    "Name": "Solomon Islands"
  },
  {
    "Code": "SO",
    "ID": 203,
    "Name": "Somalia"
  },
  {
    "Code": "ZA",
    "ID": 204,
    "Name": "South Africa"
  },
  {
    "Code": "GS",
    "ID": 205,
    "Name": "South Georgia and South Sandwich Islands."
  },
  {
    "Code": "KR",
    "ID": 206,
    "Name": "South Korea"
  },
  {
    "Code": "SS",
    "ID": 186,
    "Name": "South Sudan"
  },
  {
    "Code": "ES",
    "ID": 207,
    "Name": "Spain"
  },
  {
    "Code": "LK",
    "ID": 208,
    "Name": "Sri Lanka"
  },
  {
    "Code": "NT",
    "ID": 209,
    "Name": "St. Barthelemy"
  },
  {
    "Code": "SW",
    "ID": 210,
    "Name": "St. Christopher"
  },
  {
    "Code": "EU",
    "ID": 212,
    "Name": "St. Eustatius"
  },
  {
    "Code": "SH",
    "ID": 213,
    "Name": "St. Helena"
  },
  {
    "Code": "SX",
    "ID": 217,
    "Name": "St. Maarten"
  },
  {
    "Code": "MF",
    "ID": 218,
    "Name": "St. Martin"
  },
  {
    "Code": "PM",
    "ID": 219,
    "Name": "St. Pierre and Miquelon"
  },
  {
    "Code": "SD",
    "ID": 222,
    "Name": "Sudan"
  },
  {
    "Code": "SR",
    "ID": 223,
    "Name": "Suriname"
  },
  {
    "Code": "SJ",
    "ID": 224,
    "Name": "Svalbard and Jan Mayen Islands"
  },
  {
    "Code": "SZ",
    "ID": 225,
    "Name": "Swaziland"
  },
  {
    "Code": "SE",
    "ID": 226,
    "Name": "Sweden"
  },
  {
    "Code": "CH",
    "ID": 227,
    "Name": "Switzerland"
  },
  {
    "Code": "SY",
    "ID": 228,
    "Name": "Syria"
  },
  {
    "Code": "TA",
    "ID": 229,
    "Name": "Tahiti"
  },
  {
    "Code": "TW",
    "ID": 230,
    "Name": "Taiwan"
  },
  {
    "Code": "TJ",
    "ID": 231,
    "Name": "Tajikistan"
  },
  {
    "Code": "TZ",
    "ID": 232,
    "Name": "Tanzania"
  },
  {
    "Code": "TH",
    "ID": 233,
    "Name": "Thailand"
  },
  {
    "Code": "TI",
    "ID": 234,
    "Name": "Tinian"
  },
  {
    "Code": "TG",
    "ID": 235,
    "Name": "Togo"
  },
  {
    "Code": "TK",
    "ID": 236,
    "Name": "Tokelau"
  },
  {
    "Code": "TO",
    "ID": 237,
    "Name": "Tonga"
  },
  {
    "Code": "TL",
    "ID": 238,
    "Name": "Tortola"
  },
  {
    "Code": "TT",
    "ID": 239,
    "Name": "Trinidad and Tobago"
  },
  {
    "Code": "TU",
    "ID": 240,
    "Name": "Truk"
  },
  {
    "Code": "TN",
    "ID": 241,
    "Name": "Tunisia"
  },
  {
    "Code": "TR",
    "ID": 242,
    "Name": "Turkey"
  },
  {
    "Code": "TM",
    "ID": 243,
    "Name": "Turkmenistan"
  },
  {
    "Code": "TC",
    "ID": 244,
    "Name": "Turks and Caicos Islands"
  },
  {
    "Code": "TV",
    "ID": 245,
    "Name": "Tuvalu"
  },
  {
    "Code": "UG",
    "ID": 246,
    "Name": "Uganda"
  },
  {
    "Code": "UA",
    "ID": 247,
    "Name": "Ukraine"
  },
  {
    "Code": "UI",
    "ID": 248,
    "Name": "Union Island"
  },
  {
    "Code": "AE",
    "ID": 249,
    "Name": "United Arab Emirates"
  },
  {
    "Code": "UY",
    "ID": 251,
    "Name": "Uruguay"
  },
  {
    "Code": "UM",
    "ID": 252,
    "Name": "US Minor Outlying Islands"
  },
  {
    "Code": "VI",
    "ID": 261,
    "Name": "US Virgin Islands"
  },
  {
    "Code": "SU",
    "ID": 253,
    "Name": "USSR (former)"
  },
  {
    "Code": "UZ",
    "ID": 254,
    "Name": "Uzbekistan"
  },
  {
    "Code": "VU",
    "ID": 255,
    "Name": "Vanuatu"
  },
  {
    "Code": "VA",
    "ID": 256,
    "Name": "Vatican City State"
  },
  {
    "Code": "VE",
    "ID": 257,
    "Name": "Venezuela"
  },
  {
    "Code": "VN",
    "ID": 258,
    "Name": "Vietnam"
  },
  {
    "Code": "VR",
    "ID": 259,
    "Name": "Virgin Gorda"
  },
  {
    "Code": "WF",
    "ID": 263,
    "Name": "Wallis and Futuna Islands"
  },
  {
    "Code": "EH",
    "ID": 278,
    "Name": "Western Sahara"
  },
  {
    "Code": "YA",
    "ID": 265,
    "Name": "Yap"
  },
  {
    "Code": "YE",
    "ID": 266,
    "Name": "Yemen"
  },
  {
    "Code": "YU",
    "ID": 267,
    "Name": "Yugoslavia"
  },
  {
    "Code": "ZM",
    "ID": 269,
    "Name": "Zambia"
  },
  {
    "Code": "ZW",
    "ID": 270,
    "Name": "Zimbabwe"
  }
]
 
Suggest Edits

GetTimeZones

This method will return the full list of all timezones currently in Bullseye.

Return Value: RestTimeZone

 
gethttps://ws.bullseyelocations.com/RestLocation.svc/GetTimeZones

Query Params

ClientId
int32
required
ApiKey
string
required
 
<?php
//1. Include Bullseye library
require_once '../../Bullseye.php';
//2. Create Bullseye object
$clientId = 5786;
$searchKey = null; //'cf623cdf-1090-43ba-8b0f-9fa67fcf9d57';
$adminKey = 'aa4c7e55-9d0b-4a97-b62e-c95efec4285e';
$useStagingServer = true;
$bullseye = new Bullseye\Bullseye($clientId, $searchKey, $adminKey, $useStagingServer);
//2.1 activate debug mode
//$bullseye->debug(true);
//3. Call method to get time zones
$location = $bullseye->getTimeZones();
//4. Check location
if(false !== $location)
  print_r($location);
else{
  //if location was not found
  print_r($bullseye->getLastError());
}
A binary file was returned

You couldn't be authenticated

[
  {
    "Description": "(GMT-12:00) International Date Line West",
    "GMTOffset": -12,
    "ID": 1,
    "Name": "International Date Line West"
  },
  {
    "Description": "(GMT-11:00) Midway Island, Samoa",
    "GMTOffset": -11,
    "ID": 2,
    "Name": "Midway Island, Samoa"
  },
  {
    "Description": "(GMT-10:00) Hawaii",
    "GMTOffset": -10,
    "ID": 3,
    "Name": "Hawaii"
  },
  {
    "Description": "(GMT-09:00) Alaska",
    "GMTOffset": -9,
    "ID": 4,
    "Name": "Alaska"
  },
  {
    "Description": "(GMT-08:00) Pacific Time (US & Canada)",
    "GMTOffset": -8,
    "ID": 5,
    "Name": "Pacific Time (US & Canada)"
  },
  {
    "Description": "(GMT-08:00) Tijuana, Baja California",
    "GMTOffset": -8,
    "ID": 6,
    "Name": "Tijuana, Baja California"
  },
  {
    "Description": "(GMT-07:00) Arizona",
    "GMTOffset": -7,
    "ID": 7,
    "Name": "Arizona"
  },
  {
    "Description": "(GMT-07:00) Chihuahua, La Paz, Mazatlan - New",
    "GMTOffset": -7,
    "ID": 8,
    "Name": "Chihuahua, La Paz, Mazatlan - New"
  },
  {
    "Description": "(GMT-07:00) Chihuahua, La Paz, Mazatlan - Old",
    "GMTOffset": -7,
    "ID": 9,
    "Name": "Chihuahua, La Paz, Mazatlan - Old"
  },
  {
    "Description": "(GMT-07:00) Mountain Time (US & Canada)",
    "GMTOffset": -7,
    "ID": 10,
    "Name": "Mountain Time (US & Canada)"
  },
  {
    "Description": "(GMT-06:00) Central America",
    "GMTOffset": -6,
    "ID": 11,
    "Name": "Central America"
  },
  {
    "Description": "(GMT-06:00) Central Time (US & Canada)",
    "GMTOffset": -6,
    "ID": 12,
    "Name": "Central Time (US & Canada)"
  },
  {
    "Description": "(GMT-06:00) Guadalajara, Mexico City, Monterrey",
    "GMTOffset": -6,
    "ID": 13,
    "Name": "Guadalajara, Mexico City, Monterrey"
  },
  {
    "Description": "(GMT-06:00) Guadalajara, Mexico City, Monterrey",
    "GMTOffset": -6,
    "ID": 14,
    "Name": "Guadalajara, Mexico City, Monterrey"
  },
  {
    "Description": "(GMT-06:00) Saskatchewan",
    "GMTOffset": -6,
    "ID": 15,
    "Name": "Saskatchewan"
  },
  {
    "Description": "(GMT-05:00) Bogota, Lima, Quito, Rio Branco",
    "GMTOffset": -5,
    "ID": 16,
    "Name": "Bogota, Lima, Quito, Rio Branco"
  },
  {
    "Description": "(GMT-05:00) Eastern Time (US & Canada)",
    "GMTOffset": -5,
    "ID": 17,
    "Name": "Eastern Time (US & Canada)"
  },
  {
    "Description": "(GMT-05:00) Indiana (East)",
    "GMTOffset": -5,
    "ID": 18,
    "Name": "Indiana (East)"
  },
  {
    "Description": "(GMT-04:00) Atlantic Time (Canada)",
    "GMTOffset": -4,
    "ID": 19,
    "Name": "Atlantic Time (Canada)"
  },
  {
    "Description": "(GMT-04:00) Caracas, La Paz",
    "GMTOffset": -4,
    "ID": 20,
    "Name": "Caracas, La Paz"
  },
  {
    "Description": "(GMT-04:00) Manaus",
    "GMTOffset": -4,
    "ID": 21,
    "Name": "Manaus"
  },
  {
    "Description": "(GMT-04:00) Santiago",
    "GMTOffset": -4,
    "ID": 22,
    "Name": "Santiago"
  },
  {
    "Description": "(GMT-03:30) Newfoundland",
    "GMTOffset": -3.5,
    "ID": 23,
    "Name": "Newfoundland"
  },
  {
    "Description": "(GMT-03:00) Brasilia",
    "GMTOffset": -3,
    "ID": 24,
    "Name": "Brasilia"
  },
  {
    "Description": "(GMT-03:00) Buenos Aires, Georgetown",
    "GMTOffset": -3,
    "ID": 25,
    "Name": "Buenos Aires, Georgetown"
  },
  {
    "Description": "(GMT-03:00) Greenland",
    "GMTOffset": -3,
    "ID": 26,
    "Name": "Greenland"
  },
  {
    "Description": "(GMT-03:00) Montevideo",
    "GMTOffset": -3,
    "ID": 27,
    "Name": "Montevideo"
  },
  {
    "Description": "(GMT-02:00) Mid-Atlantic",
    "GMTOffset": -2,
    "ID": 28,
    "Name": "Mid-Atlantic"
  },
  {
    "Description": "(GMT-01:00) Azores",
    "GMTOffset": -1,
    "ID": 29,
    "Name": "Azores"
  },
  {
    "Description": "(GMT-01:00) Cape Verde Is.",
    "GMTOffset": -1,
    "ID": 30,
    "Name": "Cape Verde Is."
  },
  {
    "Description": "(GMT) Casablanca, Monrovia, Reykjavik",
    "GMTOffset": 0,
    "ID": 31,
    "Name": "Casablanca, Monrovia, Reykjavik"
  },
  {
    "Description": "(GMT) Greenwich Mean Time : Dublin, Edinburgh, Lisbon, London",
    "GMTOffset": 0,
    "ID": 32,
    "Name": "Greenwich Mean Time : Dublin, Edinburgh, Lisbon, London"
  },
  {
    "Description": "(GMT+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna",
    "GMTOffset": 1,
    "ID": 33,
    "Name": "Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna"
  },
  {
    "Description": "(GMT+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague",
    "GMTOffset": 1,
    "ID": 34,
    "Name": "Belgrade, Bratislava, Budapest, Ljubljana, Prague"
  },
  {
    "Description": "(GMT+01:00) Brussels, Copenhagen, Madrid, Paris",
    "GMTOffset": 1,
    "ID": 35,
    "Name": "Brussels, Copenhagen, Madrid, Paris"
  },
  {
    "Description": "(GMT+01:00) Sarajevo, Skopje, Warsaw, Zagreb",
    "GMTOffset": 1,
    "ID": 36,
    "Name": "Sarajevo, Skopje, Warsaw, Zagreb"
  },
  {
    "Description": "(GMT+01:00) West Central Africa",
    "GMTOffset": 1,
    "ID": 37,
    "Name": "West Central Africa"
  },
  {
    "Description": "(GMT+02:00) Amman",
    "GMTOffset": 2,
    "ID": 38,
    "Name": "Amman"
  },
  {
    "Description": "(GMT+02:00) Athens, Bucharest, Istanbul",
    "GMTOffset": 2,
    "ID": 39,
    "Name": "Athens, Bucharest, Istanbul"
  },
  {
    "Description": "(GMT+02:00) Beirut",
    "GMTOffset": 2,
    "ID": 40,
    "Name": "Beirut"
  },
  {
    "Description": "(GMT+02:00) Cairo",
    "GMTOffset": 2,
    "ID": 41,
    "Name": "Cairo"
  },
  {
    "Description": "(GMT+02:00) Harare, Pretoria",
    "GMTOffset": 2,
    "ID": 42,
    "Name": "Harare, Pretoria"
  },
  {
    "Description": "(GMT+02:00) Helsinki, Kjiv, Riga, Sofia, Talinn, Vilnius",
    "GMTOffset": 2,
    "ID": 43,
    "Name": "Helsinki, Kjiv, Riga, Sofia, Talinn, Vilnius"
  },
  {
    "Description": "(GMT+02:00) Jerusalem",
    "GMTOffset": 2,
    "ID": 44,
    "Name": "Jerusalem"
  },
  {
    "Description": "(GMT+02:00) Minsk",
    "GMTOffset": 2,
    "ID": 45,
    "Name": "Minsk"
  },
  {
    "Description": "(GMT+02:00) Windhoek",
    "GMTOffset": 2,
    "ID": 46,
    "Name": "Windhoek"
  },
  {
    "Description": "(GMT+03:00) Baghdad",
    "GMTOffset": 3,
    "ID": 47,
    "Name": "Baghdad"
  },
  {
    "Description": "(GMT+03:00) Kuwait, Riyadh",
    "GMTOffset": 3,
    "ID": 48,
    "Name": "Kuwait, Riyadh"
  },
  {
    "Description": "(GMT+03:00) Moscow, St. Petersburg, Volgograd",
    "GMTOffset": 3,
    "ID": 49,
    "Name": "Moscow, St. Petersburg, Volgograd"
  },
  {
    "Description": "(GMT+03:00) Nairobi",
    "GMTOffset": 3,
    "ID": 50,
    "Name": "Nairobi"
  },
  {
    "Description": "(GMT+03:00) Tbilisi",
    "GMTOffset": 3,
    "ID": 51,
    "Name": "Tbilisi"
  },
  {
    "Description": "(GMT+03:30) Tehran",
    "GMTOffset": 3.5,
    "ID": 52,
    "Name": "Tehran"
  },
  {
    "Description": "(GMT+04:00) Abu Dhabi, Muscat",
    "GMTOffset": 4,
    "ID": 53,
    "Name": "Abu Dhabi, Muscat"
  },
  {
    "Description": "(GMT+04:00) Baku",
    "GMTOffset": 4,
    "ID": 54,
    "Name": "Baku"
  },
  {
    "Description": "(GMT+04:00) Caucasus Standard Time",
    "GMTOffset": 4,
    "ID": 55,
    "Name": "Caucasus Standard Time"
  },
  {
    "Description": "(GMT+04:00) Yerevan",
    "GMTOffset": 4,
    "ID": 56,
    "Name": "Yerevan"
  },
  {
    "Description": "(GMT+04:30) Kabul",
    "GMTOffset": 4.5,
    "ID": 57,
    "Name": "Kabul"
  },
  {
    "Description": "(GMT+05:00) Ekaterinburg",
    "GMTOffset": 5,
    "ID": 58,
    "Name": "Ekaterinburg"
  },
  {
    "Description": "(GMT+05:00) Islamabad, Karachi, Tashkent",
    "GMTOffset": 5,
    "ID": 59,
    "Name": "Islamabad, Karachi, Tashkent"
  },
  {
    "Description": "(GMT+05:30) Chennai, Kolkata, Mumbai, New Delhi",
    "GMTOffset": 5.5,
    "ID": 60,
    "Name": "Chennai, Kolkata, Mumbai, New Delhi"
  },
  {
    "Description": "(GMT+05:30) Sri Jayawardenepure",
    "GMTOffset": 5.5,
    "ID": 61,
    "Name": "Sri Jayawardenepure"
  },
  {
    "Description": "(GMT+05:45) Kathmandu",
    "GMTOffset": 5.75,
    "ID": 62,
    "Name": "Kathmandu"
  },
  {
    "Description": "(GMT+06:00) Almaty, Novosibirsk",
    "GMTOffset": 6,
    "ID": 63,
    "Name": "Almaty, Novosibirsk"
  },
  {
    "Description": "(GMT+06:00) Astana, Dhaka",
    "GMTOffset": 6,
    "ID": 64,
    "Name": "Astana, Dhaka"
  },
  {
    "Description": "(GMT+06:30) Yangon (Rangoon)",
    "GMTOffset": 6.5,
    "ID": 65,
    "Name": "Yangon (Rangoon)"
  },
  {
    "Description": "(GMT+07:00) Bangkok, Hanoi, Jakarta",
    "GMTOffset": 7,
    "ID": 66,
    "Name": "Bangkok, Hanoi, Jakarta"
  },
  {
    "Description": "(GMT+07:00) Krasnoyarsk",
    "GMTOffset": 7,
    "ID": 67,
    "Name": "Krasnoyarsk"
  },
  {
    "Description": "(GMT+08:00) Beijing, Chongqing, Hong Kong, Urumqi",
    "GMTOffset": 8,
    "ID": 68,
    "Name": "Beijing, Chongqing, Hong Kong, Urumqi"
  },
  {
    "Description": "(GMT+08:00) Irkutsk, Ulaan Bataar",
    "GMTOffset": 8,
    "ID": 69,
    "Name": "Irkutsk, Ulaan Bataar"
  },
  {
    "Description": "(GMT+08:00) Kuala Lumpur, Singapore",
    "GMTOffset": 8,
    "ID": 70,
    "Name": "Kuala Lumpur, Singapore"
  },
  {
    "Description": "(GMT+08:00) Perth",
    "GMTOffset": 8,
    "ID": 71,
    "Name": "Perth"
  },
  {
    "Description": "(GMT+08:00) Taipei",
    "GMTOffset": 8,
    "ID": 72,
    "Name": "Taipei"
  },
  {
    "Description": "(GMT+09:00) Osaka, Sapporo, Tokyo",
    "GMTOffset": 9,
    "ID": 73,
    "Name": "Osaka, Sapporo, Tokyo"
  },
  {
    "Description": "(GMT+09:00) Seoul",
    "GMTOffset": 9,
    "ID": 74,
    "Name": "Seoul"
  },
  {
    "Description": "(GMT+09:00) Yakutsk",
    "GMTOffset": 9,
    "ID": 75,
    "Name": "Yakutsk"
  },
  {
    "Description": "(GMT+09:30) Adelaide",
    "GMTOffset": 9.5,
    "ID": 76,
    "Name": "Adelaide"
  },
  {
    "Description": "(GMT+09:30) Darwin",
    "GMTOffset": 9.5,
    "ID": 77,
    "Name": "Darwin"
  },
  {
    "Description": "(GMT+10:00) Brisbane",
    "GMTOffset": 10,
    "ID": 78,
    "Name": "Brisbane"
  },
  {
    "Description": "(GMT+10:00) Canberra, Melbourne, Sydney",
    "GMTOffset": 10,
    "ID": 79,
    "Name": "Canberra, Melbourne, Sydney"
  },
  {
    "Description": "(GMT+10:00) Guam, Port Moresby",
    "GMTOffset": 10,
    "ID": 80,
    "Name": "Guam, Port Moresby"
  },
  {
    "Description": "(GMT+10:00) Hobart",
    "GMTOffset": 10,
    "ID": 81,
    "Name": "Hobart"
  },
  {
    "Description": "(GMT+10:00) Vladivostok",
    "GMTOffset": 10,
    "ID": 82,
    "Name": "Vladivostok"
  },
  {
    "Description": "(GMT+11:00) Magadan, Solomon Is., New Caledonia",
    "GMTOffset": 11,
    "ID": 83,
    "Name": "Magadan, Solomon Is., New Caledonia"
  },
  {
    "Description": "(GMT+12:00) Auchland, Wellington",
    "GMTOffset": 12,
    "ID": 84,
    "Name": "Auchland, Wellington"
  },
  {
    "Description": "(GMT+13:00) Fiji, Kamchatka, Marshall Is.",
    "GMTOffset": 13,
    "ID": 85,
    "Name": "Fiji, Kamchatka, Marshall Is."
  },
  {
    "Description": "(GMT+13:00) Nuku'alofa",
    "GMTOffset": 13,
    "ID": 86,
    "Name": "Nuku'alofa"
  }
]
 
Suggest Edits

GetLocation

This method retrieves information for a location, given a Bullseye location ID, or a third-party ID.

Return Value: LocationJson

 
gethttps://ws.bullseyelocations.com/RestLocation.svc/GetLocation

Query Params

ClientId
int32
required
ApiKey
string
required
LocationId
int32

Required if ThirdPartyId is not provided (Only one should be specified)

ThirdPartyId
string

Required if LocationId is not provided (Only one should be specified)

Notes:

In lieu of providing the Client Id and Api Key, a call may be made to AuthenticateClient with those credentials, and the resultant security token added to the Request Header under the key "ClientToken"

Condition
HTTP status code
Description

If both LocationId and ThirdPartyId are missing

400

Bad Request

If both LocationId and ThirdPartyId are present

400

Bad Request

If the location cannot be found

404

Not Found

An unexpected exception

500

Internal server error

//Json date returned from the API contains a 4 hour offset time
// offset needs to be included when converting a date to ASP.Net DateTime
private DateTime ConvertJsonStringToDateTime(string jsonTime)
        {
            if (!string.IsNullOrEmpty(jsonTime))
            {
                string milis = jsonTime;
                string sign = milis.IndexOf("+") > -1 ? "+" : "-";
                string hours = milis.Substring(milis.IndexOf(sign));
                milis = milis.Substring(0, milis.IndexOf(sign));
                return new DateTime(1970, 1, 1, 0, 0, 0, 0, DateTimeKind.Utc).AddMilliseconds(Convert.ToInt64(milis)).AddHours(Convert.ToInt64(hours) / 100);
            }
 
            return DateTime.Now;
        }
 
//usage
 var time1 = ConvertJsonStringToDateTime("1442926800000-0400");
 var time2 = ConvertJsonStringToDateTime("1442955600000-0400");
<?php
//1. Include Bullseye library
require_once '../../Bullseye.php';
//2. Create Bullseye object
$clientId = 5786;
$searchKey = null; //'cf623cdf-1090-43ba-8b0f-9fa67fcf9d57';
$adminKey = 'aa4c7e55-9d0b-4a97-b62e-c95efec4285e';
$useStagingServer = true;
$bullseye = new Bullseye\Bullseye($clientId, $searchKey, $adminKey, $useStagingServer);
//2.1 activate debug mode
$bullseye->debug(true);
//3. Call method to get the location
$locationId = '4885827';
$location = $bullseye->getLocation($locationId);
//4. Check location
if($location)
  print_r($location);
else{
  //if location was not found
  print_r($bullseye->getLastError());
}
A binary file was returned

You couldn't be authenticated

{
  "Active": true,
  "Address1": "Little Heath,Barley Lane",
  "Address2": "Essex",
  "Address3": null,
  "Address4": null,
  "Attributes": [
    {
      "AttributeId": 226,
      "AttributeName": "My Rates",
      "AttributeTypeID": 1,
      "BoolValue": null,
      "DateCreated": "/Date(1463046616567-0400)/",
      "DateDeleted": null,
      "DateLastModified": "/Date(1463046616567-040