Common API Characteristics

Untitled Document Supported HTTP Headers

All v1, v2, and v3 calls must supply required HTTP headers. The following HTTP headers are supported:

Header Name Value Format
Type Example


The API key received when registering the application


x-macys-webservice-client-id: xmj9js4j4ykdpe6xfmwu98gh


Integer number


x-macys-webservice-client-revision: 8617
x-macys-webservice-client-deviceid Arbitrary string


x-macys-webservice-client-deviceid: 2b6f0cc904d137be2e1730235f5664094b831186
Accept MIME type


Accept: application/json
Content-Type MIME type


Content-Type: application/xml

x-macys-webservice-client-id Header 

This header contains the API key received when registering the application on the portal. The purpose of the field is to verify the client/application has registered and has been granted access to the service.

x-macys-webservice-client-revision Header

This optional HTTP header may be included to track revision number of the client code in terms of some version control system, such as SVN.

x-macys-webservice-client-deviceid Header

This optional HTTP header may be included to track device-specific unique identifier built into some devices. For example, iShop may submit iPhone UDID, which is a 40-character-long alphanumeric string.

Request and Response Data Representation Headers

WSSG supports two representations of the request and response data: XML and JSON. Clients may use Accept HTTP header to indicate the preferred representation. In case the Accept header is not specified or is malformed, the default representation will be XML. When service requires input entity in the HTTP request body, client must specify the correct Content-Type HTTP header to indicate whether the request body is XML or JSON.

URL Encoding

All service requests should be HTTP URL encoded. URL encoding converts characters into a format that can be transmitted over the Internet.  More about URL encoding.

Testing the Services

WSSG exposes REST-style services, which require full control of HTTP method and HTTP headers to be fully tested. Regular web browsers do not provide this control. However there are a number of modern tools for accessing RESTful services:

Docs Navigation