Http Method | Resource | Description |
---|---|---|
GET | /stores | This resource retrieves a list of stores, for the given site, that are within a configured distance of a location on the earth. The stores and their distance from the specified location are returned as a result set of Store objects. The distance is interpreted either in miles or kilometers depending on the distance_unit input parameter. The location can be specified by either directly providing a latitude/longitude coordinate pair or by providing a country and a postal code:
|
GET | /stores/({id},...,{id}) | To access multiple stores, you construct a URL using the template shown below. This template requires you to specify a store id. In the response, the server returns a corresponding store document. |
GET | /stores/{id} | To access a store, you construct a URL using the template shown below. This template requires you to specify a store id. In the response, the server returns a corresponding store document. |
This resource retrieves a list of stores, for the given site, that are within a configured distance of a location on the earth. The stores and their distance from the specified location are returned as a result set of Store objects. The distance is interpreted either in miles or kilometers depending on the distance_unit input parameter.
The location can be specified by either directly providing a latitude/longitude coordinate pair or by providing a country and a postal code:
Url
GET http://hostname:port/dw/shop/v23_2/stores?latitude={Decimal}&longitude={Decimal}&country_code={String}&postal_code={String}&distance_unit={String}&max_distance={Decimal}&start={Integer}&count={Integer}
Formats
json, xml
Authentication
Name | Description |
---|---|
JWT | Authentication via Customer JWT. |
None | No authentication. |
Response Document
Query Parameters
Parameter | Type | Description | Constraints |
---|---|---|---|
count | Integer | The maximum number of instances per request. Default value is 25. | maxIntegerValue=200, minIntegerValue=1 |
country_code | String | The two letter ISO country code e.g. \"US\". | maxLength=2, minLength=2 |
distance_unit | String | The distance unit. Supported values are \"mi\" and \"km\" (for miles and kilometers respectively, default is \"km\"). | |
latitude | Decimal | The geo coordinate latitude to search for stores (value range -90.00 .. 90.00). | maxNumberValue=90.0, minNumberValue=-90.0 |
longitude | Decimal | The geo coordinate longitude to search for stores (value range -180.00 .. 180.00). | maxNumberValue=180.0, minNumberValue=-180.0 |
max_distance | Decimal | The area (radius) in distancUnit where stores will be searched for (default is half of the earth's perimeter). | maxNumberValue=20012.0, minNumberValue=0.0 |
postal_code | String | The postal code e.g. \"01801\". | maxLength=10, minLength=3 |
start | Integer | The result set index to return the first instance for. Default value is 0. | minIntegerValue=0 |
In case of a failure Fault Document is returned.
Faults
Status | Type | Arguments | Description |
---|---|---|---|
400 | MissingCountryCodeException |
Thrown if no coordinates (latitude and longitude) are provided and in addition no country code is given. | |
400 | MissingPostalCodeException |
Thrown if no coordinates (latitude and longitude) are provided and in addition no postal code is given.. | |
400 | MissingCoordinatesException |
Thrown if only one of latitude or longitude are provided. | |
400 | MalformedDistanceUnitException |
Invalid distance_unit given. |
Customization
This Resource supports server-side customization.
Extension Point | Method Detail |
---|---|
dw.ocapi.shop.stores.modifyGETResponse | modifyGETResponse (doc : StoreResult ) : Status The function is called after the request has been processed.
|
dw.ocapi.shop.stores.beforeGET | beforeGET (latitude : Double , longitude : Double , countryCode : String , postalCode : String ) : Status The function is called before the request will be processed.
|
Sample
REQUEST:
GET /dw/shop/v23_2/stores?country_code=US&postal_code=02108&distance_unit=mi&max_distance=10.00&start=0&count=4 HTTP/1.1
Host: example.com
Accept: application/json
RESPONSE:
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Cache-Control: max-age=900,must-revalidate
Content-Length: 1328
{
"_v" : "23.2",
"_type" : "store_result",
"count" : 4,
"data" : [ {
"address1" : "333 Washington St",
"city" : "Boston",
"country_code" : "US",
"distance" : 0.0,
"distance_unit" : "mi",
"email" : "[email protected]",
"id" : "store10",
"name" : "Downtown TV Shop",
"phone" : "+1-617-695-1565",
"postal_code" : "02108",
"state_code" : "MA",
"store_locator_enabled": true,
"pos_enabled": false
}, {
"address1" : "1001 Cambridge St",
"city" : "Cambridge",
"country_code" : "US",
"distance" : 1.41,
"distance_unit" : "mi",
"email" : "[email protected]",
"id" : "store4",
"name" : "Champaign Electronic Shop",
"phone" : "+1-617-714-2640",
"postal_code" : "02141",
"state_code" : "MA",
"store_locator_enabled": true,
"pos_enabled": false
}, {
"address1" : "584 Columbus Ave",
"city" : "Boston",
"country_code" : "US",
"distance" : 1.94,
"distance_unit" : "mi",
"id" : "store5",
"name" : "Short Electro",
"phone" : "+1-617-888-7276",
"postal_code" : "02118",
"state_code" : "MA",
"store_locator_enabled": true,
"pos_enabled": false
}, {
"address1" : "363 Hancock St",
"city" : "North Quincy",
"country_code" : "US",
"distance" : 6.56,
"distance_unit" : "mi",
"email" : "[email protected]",
"id" : "store3",
"name" : "Wire-Wire",
"phone" : "+1-617-318-2860",
"postal_code" : "02171",
"state_code" : "MA",
"store_locator_enabled": true,
"pos_enabled": false
} ],
"next" : "http://example.com/dw/shop/v23_2/stores?count=4&start=4&country_code=US&postal_code=02108&distance_unit=mi&max_distance=10.00",
"start" : 0,
"total" : 8
}
Url
GET http://hostname:port/dw/shop/v23_2/stores/({id},...,{id})
Formats
json, xml
Authentication
Name | Description |
---|---|
JWT | Authentication via Customer JWT. |
None | No authentication. |
Response Document
Path Parameters
Parameter | Type | Description | Constraints |
---|---|---|---|
ids | [String] | The ids of the requested stores. | mandatory=true, maxItems=50, maxLength=256, nullable=false |
Customization
This Resource supports server-side customization.
Extension Point | Method Detail |
---|---|
dw.ocapi.shop.store.modifyGETResponse | modifyGETResponse (scriptStore : Store , doc : Store ) : Status The function is called after the request has been processed.
|
Sample
REQUEST:
GET /dw/shop/v23_2/stores/(02108-21,03104-3) HTTP/1.1
Host: example.com
Accept: application/json
RESPONSE:
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Cache-Control: max-age=900,must-revalidate
Content-Length: 431
{
"_v" : "23.2",
"_type" : "store_result",
"count":2,
"total":2,
"data":
[
{
"address1" : "333 Washington St",
"city" : "Boston",
"country_code" : "US",
"email" : "[email protected]",
"id" : "02108-21",
"name" : "Downtown TV Shop",
"phone" : "+1-617-695-1565",
"postal_code" : "02108",
"state_code" : "MA",
"store_locator_enabled": true,
"pos_enabled": false
},
{
"address1" : "239 Bridge St",
"city" : "Manchester",
"country_code" : "US",
"id" : "03104-3",
"name" : "Gardena Mart",
"phone" : "+1-603-715-9773",
"postal_code" : "03104",
"state_code" : "NH",
"store_locator_enabled": true,
"pos_enabled": false
}
]
}
Url
GET http://hostname:port/dw/shop/v23_2/stores/{id}
Formats
json, xml
Authentication
Name | Description |
---|---|
JWT | Authentication via Customer JWT. |
None | No authentication. |
Response Document
Path Parameters
Parameter | Type | Description | Constraints |
---|---|---|---|
id | String | The id of the requested store. | mandatory=true, maxLength=256, nullable=false |
In case of a failure Fault Document is returned.
Faults
Status | Type | Arguments | Description |
---|---|---|---|
404 | StoreNotFoundException |
storeId (String) siteId (String) |
Thrown if the requested store was not found |
Customization
This Resource supports server-side customization.
Extension Point | Method Detail |
---|---|
dw.ocapi.shop.store.modifyGETResponse | modifyGETResponse (scriptStore : Store , doc : Store ) : Status The function is called after the request has been processed.
|
dw.ocapi.shop.store.beforeGET | beforeGET (id : String , siteId : String ) : Status The function is called before the request will be processed.
|
Sample
REQUEST:
GET /dw/shop/v23_2/stores/ma-bos-dt HTTP/1.1
Host: example.com
Accept: application/json
RESPONSE:
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Cache-Control: max-age=900,must-revalidate
Content-Length: 275
{
"_v" : "23.2",
"_type" : "store",
"address1" : "333 Washington St",
"city" : "Boston",
"country_code" : "US",
"email" : "[email protected]",
"id" : "ma-bos-dt",
"name" : "Downtown TV Shop",
"phone" : "+1-617-695-1565",
"postal_code" : "02108",
"state_code" : "MA",
"store_locator_enabled": true,
"pos_enabled": false
}