+813-444-3589+44 118 328 3220+49-231-976765-0 | Contact us

REST API

License

The license resource represents licenses used for restricting access to content. Every piece of content is associated with at least one license. 

What can you do with License?

The FlickRocket API lets you do the following with the license resource. More detailed versions of these general actions may be available:

GET /api/licenses.json

Receive a list of all licenses defined for the company.

GET /api/licenses/#{token}.json

Receive a single license identified via token (License ID).

License Properties

allow_play

"allow_play": 1

 annual_concurrent_devices

 "annual_concurrent_devices": 1

The maximum number of concurrent devices allowed per year.

 annual_downloads

 "annual_downloads": 2

The maximum number of downloads per year.

 annual_export

 "annual_export": 0

The maximum number of allowed exports.

 assignment

 "assignment": 2

??????????

 burn_play

 "burn_play": 100

?????????? burn ????????

 company_id

 "company_id": 1000

The company_id of the company to which this license belongs.

 copp_aps

 "copp_aps": 0

Certified Output Protection Protocol - Analog Protection System

 copp_cgms

 "copp_cgms": 0

Certified Output Protection Protocol - Copy Generation Management System

 copp_hdcp

 "copp_hdcp": 0

Certified Output Protection Protocol - High Bandwidth Digital Copy Protection System

 copy_prot_level_analog

 "copy_prot_level_analog": 0

Analog copy protection level

????????

 copy_prot_level_digital

 "copy_prot_level_digital": 100

Digital copy protection level

????????

 created_at

 "created_at": "2009-01-28T14:18:39"

Date and time the license was created.

 created_by_user_id

 "created_by_user_id": 1004

User ID of the user who created the license.

 delete_on_clock_rollback

 "delete_on_clock_rollback": 0

0: ?????

1: ?????

 disable_on_clock_rollback  "disable_on_clock_rollback": 0
 drm  "drm": 1
 expiration_date "expiration_date": null
 expire_after_acquisition "expire_after_acquisition": 0
 expire_after_acquisition_mode "expire_after_acquisition_mode": 0
 expire_after_first_use "expire_after_first_use": 0
 expire_after_first_use_mode "expire_after_first_use_mode": 0
 export_epub "export_epub": 0
 export_mp3 "export_mp3": 0
 export_pdf_print "export_pdf_print": null
 id  "id": 27
 ??? locales ??? {
"description": ""
"id": 142,
"language_id": 1,
"name": "License for 100 protected DVD burns",
},
 name "name": "License for 100 protected DVD burns"
 physical "physical": -1
 physical_weight "physical_weight": null
 physical_weight_type "physical_weight_type": null
 play_prot_level_analog "play_prot_level_analog": 0
 play_prot_level_digital "play_prot_level_digital": 100
 restriction_country "restriction_country": []
 restriction_dvd_region "restriction_dvd_region": []
 ????  "restriction_video_norm": {
"id": 0,
"norm": 0
}
 tax_handling  "tax_handling": 1
 total_concurrent_devices "total_concurrent_devices": 1
 total_downloads "total_downloads": 2
 total_export "total_export": 1
 type "type": 1
 valid "valid": 1

Get all licenses

GET /api/licenses.json
View Response

Receive a single License identified by License ID token

GET /api/licenses/#{token}.json
View Response

Receive a count of all licenses

GET /api/licenses/count.json
View Response

ThemeSetting

ThemeSetting is used to get and set Theme related settings. A Theme defines a shop's design, domain(s), communication with the customer (e.g email) and various presentation related settings.

Each ThemeSetting relates to one Theme. Themes can be created from scratch, modified from existing themes or purchansed in the Theme Store.

A ThemeSetting is automatically created and can be modified and deleted. If a ThemeSetting is deleted, the corresponding shop cannot be accessed any longer. 

What can you do with ThemeSetting?

The FlickRocket API lets you do the following with the Product resource. More detailed versions of these general actions may be available:

GET /api/themesettings.json
Receive a list of all ThemeSettings

GET /api/themesettings/count.json
Receive a count of all ThemeSettings

GET /api/themesettings/#{id}.json?fields=theme_id,domain
Receive a single ThemeSetting

POST /api/themesettings.json
Create a new ThemeSetting

PUT /api/themesettings/#{id}.json
Modify an existing ThemeSetting

DELETE /api/themesettings/#{id}.json
Remove a ThemeSetting from the database

ThemeSetting Properties

access_domain
{"access_domain": ""}

Separate option domain under wich the "My Content" section can be operated, e.g. using dedicated resources for large enterprise environments.

affiliates_enabled
{"affiliates_enabled": true}

Set to true if the Affiliate Management system is active.

affiliate_percentage
{"affiliate_percentage": 10}

The revenue percentage paid to affilates which sign up via the theme.

allow_anonymous_reviews
{"allow_anonymous_reviews": false}

Set to true if the theme allows anonymous product reviews. If set to false, customers are required to log in before beign able to review products.

allow_reviews
{"allow_reviews": false}

Set to true is the product review system is enabled. Customers are able to write reviews for all products in the shop.

company_id
{"company_id": 1202}

The Company ID to which this ThemeSetting belongs. 

domain
{"domain": "http://ms.flickrocket.com"}

The recommended domain under which the shop is operated. There may be additional active numeric or vanity domains which are operated for compatibility reasons. Read-only.

enabled
{"enabled": true}

Is set to true if the theme is enabled. Read-only.

facebook_url
{"facebook_url": "https://www.facebook.com/Flickrocket"}

The Faceboook account being used by the social components of the theme. 

google_ecommerce_enabled
{"google_ecommerce_enabled": false}

Set to true if Google E-Commerce tracking is enabled. See Google E-Commerce tracking for more information. 

google_shopping_account_id
{"google_shopping_account_id": ""}

The Google Shopping account associated to this theme. This is used to sync product data with Google Shopping if the Google Shopping App is installed.

google_tracking_id
{"google_tracking_id": ""}

The Google Analytics Tracking ID. this is used to embed Google Tracking code into themes.

google_url
{"google_url": "https://plus.google.com/117580611146736637872"}

The Google Plus link being used by the social components of the theme. 

html_tag
{"html_tag": "<script> ........ </script>"}

HTML code placed into each page of the shop. Often used for analytics, etc.

homepage_url
{"homepage_url": "http://www.flickrocket.com"}

The homepage URL of the web presence. This can be the shop but can also be some other page which is interlinked with the shop.

id
{"id": 1001}

Unique ID referencing this ThemeSetting.

locales

locales: []

This are the parameters which can be localized in different languages. If no localization for a certain language exists, the shop uses English.

{"id": 3167}

Unique ID referencing this locale.

{"language_id": "de"}

The two byte langauge code of this locale.

{"offline_message": ""}

The message displayed if the shop is in offline mode.

{"seo_description": ""}

Description used by the theme to dynamically generate the individual shop pages HTML description tags.

{"seo_keywords": ""}

Comma separated keywords used by the theme to dynamically generate the individual shop pages HTML keyword tags.

{"seo_title": ""}

Title used by the theme to dynamically generate the individual shop pages HTML title tags.

{"shop_description": "FlickRocket Sample Shop"}

Description for this shop theme used to display this theme (shop) in the players.

{"shop_name": "Sample Shop"}

Name of this shop theme used to display this shop (theme) in the players. 

meta_tag
{
"meta_tag": <meta name="msvalidate.01" content="4B10BA85204DB" />
<meta name="google-site-verification" content="LApwz0vxKamtnnmfo5" />
}

Meta tag used for the theme's HTML meta tag. It can for example be used to authenticate a theme against Googleand Bing search engines. 

mobile_domain_available
{"mobile_domain_available": true}

 Set to true if the theme gas a separate mobile domain. Read-only. 

need_approval_of_reviews
{"need_approval_of_reviews": false}

 Set to true if reviews require shop owner approval before being published. The approval is done via the admin interface.

name
{"name": "Neutral Gray (1001)"}

The name of the theme. Read only. 

newsletter_enabled
{"newsletter_enabled": true}

Set to true if the newsletter feature is enabled. In this case the theme allows emial signup to the newsletter feature. 

sample_product_id
{"sample_product_id": 13235}

The Product ID of the product used as sample product in this shop.

sample_product_license_id
{"sample_product_license_id": 19}

The License ID  of the license used for the sample product offered in this shop theme. 

send_email_on_new_review
{"send_email_on_new_review": false}

If set to true, the shop owner will receive an email for every new product review. 

shop_domain
{"shop_domain": ""}

The custom domain of the shop (if available)

shop_icon
{"shop_icon": "http://admin.flickrocket.com/GetImage/ShopIcon/MTAwMQ%3d%3d"}

Used as icon for this shop theme as fav icon and in the players.

shop_offline
{"shop_offline": false}

If set to true, the shop displays the offline message (see locales) and is only accessible to the shop owner.

sub_domain
{"sub_domain": "3266749"}

The numerical sub domain of the shop under which it was created initially.

theme_id
{"theme_id": 8249}

The id of the theme. 

twitter_url
{twitter_url": "https://twitter.com/Flickrocket"}

The Twitter account being used by the social components of the theme. 

updated_at
{updated_at": "2014-05-16T12:26:57"}

GMT date and time of the last update to this ThemeSetting. 

vanity_domain
{"vanity_domain": "ms"}

The vanity sub domain of the shop (if exists). For example, if this it set to "ms", the final shop domain would be ms.flickrocket.com.

youtube_url
{"youtube_url": "https://www.youtube.com/Flickrocket"}

The Twitter account being used by the social components of the theme.

Endpoints

Receive a list of all ThemeSettings

GET /api/themesettings.json
View Response

Receive a count of all ThemeSettings

GET /api/themesettings/count.json
View Response

Receive a single ThemeSetting

GET /api/themesettings/#{id}.json?fields=theme_id,domain
View Response

Create a new ThemeSetting

POST /api/themesettings.json
View Response

Modify an existing ThemeSetting

PUT /api/themesettings/#{id}.json
View Response

Remove a ThemeSetting from the database

DELETE /api/themesettings/6100.json
View Response

CustomerAddress

A customer address resource instance represents one of the many addresses a customer may have.

For more information about Customers, see the Customer API Documentation

What can you do with CustomerAddress?

The FlickRocket API lets you do the following with the CustomerAddress resource. More detailed versions of these general actions may be available:

GET /api/customers/#{token}/addresses.json

Receive a list of all CustomerAddresses

GET /api/customers/#{token}/addresses/#{token}.json

Receive a single CustomerAddress

POST /api/customers/#{token}/addresses.json

Create a new CustomerAddress

PUT /api/customers/#{token}/addresses/#{token}.json

Modify an existing CustomerAddress

DELETE /api/customers/#{token}/addresses/#{token}.json

Remove a CustomerAddress from the database

PUT /api/customers/#{token}/addresses/#{token}/default.json

Sets default address for a customer

CustomerAddress Properties

address1

{"address1": "Heinrich-Hertz-Str. 2"}

address2

{"address2": ""}

city

{"city": "Dortmund"}

company

{"company": ""}

country

{"country": "Germany"}

country_name

{"country_name": "Germany"}

country_code

{"country_code": "DE"}

default

{"default": true} 

first_name

{"first_name": "John"}

id

{"id": 159501}

last_name

{"last_name": "Doe"}

name

{"name": "Test"}

phone

{"phone": "0231-12345678"}

province

{"province": ""}

province_code

{"province_code": ""}

token

{"token": "TCMJEOTSBEVTDLFU"}

zip

{"zip": "44227"}

Endpoints

Receive a list of all CustomerAddresses

GET /api/customers/#{token}/addresses.json
View Response

Receive a single CustomerAddress

GET /api/customers/#{token}/addresses/#{token}.json
View Response

Create a new CustomerAddress

POST /api/customers/#{token}/addresses.json
POST /api/customers/YLQCIUSBHVCTQUVN/addresses.json
{
    "address": {
        "first_name": "Test_first_name",
        "last_name": "Test_last_name",
        "address1": "Markgrafenstr 92",
        "address2": "",
        "zip": "44139",
        "city": "Dortmund",
        "phone": "+49 231 976765 0",
        "language": "en",
        "country": "Germany",
        "country_name": "Germany",
        "country_code": "DE",
        "province_code": "NRW",
        "province": "NRW",
        "name": "Test_first_name Test_last_name"
    }
}
View Response

Modify an existing CustomerAddress

PUT /api/customers/#{token}/addresses/#{token}.json
{
    "address": {
        "first_name": "First",
        "last_name": "Last",
        "address1": "Markgrafenstr 92",
        "address2": "",
        "zip": "44139",
        "city": "Dortmund",
        "token": "RSEDJYBITFASLWHP",
        "country": "Germany",
        "country_name": "Germany",
        "country_code": "DE",
        "default": false,
        "province_code": "",
        "province": ""
    }
}
View Response

Remove a CustomerAddress from the database

DELETE /api/customers/#{token}/addresses/#{token}.json
View Response

Sets default address for a customer

PUT /api/customers/#{token}/addresses/#{token}/default.json
View Response

Category

Categories are used by the shop to categorize products to make it easier to navigate. Each product can be associated to no, one or multiple categories.

Categories can have a hierarchical structure in which certain categories can be sub categories of others.

What can you do with Category?

The FlickRocket API lets you do the following with the Category resource. More detailed versions of these general actions may be available:

GET /api/categories.json

Receive a list of all categories.

GET /api/categories/count.json

Receive a a count of all categories.

GET /api/categories/#{id}.json

Receive a single Category

POST /api/categories.json

Create a new Category

PUT /api/categories/#{id}.json

Modify an existing Category

DELETE /api/categories/#{id}.json

Remove a Category from the database

Category Properties

comment
"comment": ""

Comment about a category. It is not used by the shop but displayed in the admin interface.

created_at
"created_at": "2008-06-27T09:40:40"

GMT date and tiem the category was created.

enabled
"enabled": false

Is set to true if the catgory is active.

id
"id": 198

Unique identifier for this category.

locales

locales: []

Localized data for this category.

"id": 1525

Unique identifier for this locale.

"title": "Great Films"

The title of this category. It is displayed in the shop. If no locale for a certain lanaguge is defined, the fallback is to english.

"seo_title": "Great Films"

The HTML title tag used for the category overview page. If not specified, it is dynamically created from the shop data.

"seo_description": "Greatest content of all times"

The HTML description tag used for the category overview page. If not specified, it is dynamically created from the shop data.

"seo_keywords": "Films, Video, Audio"

The HTML keywords tag used for the category overview page. 

"description": "Description - Sci-Fi EN"

Description fot this category. Typically this is displayed by the theme on the category overview page.

"src": ""

the URL of an image associated with this category. Can be used for download and upload.

"language": "en"

The two byte language code for this locale.

parent_id
"parent_id": 0

ID of the parent category (if exists)

position
"position": 0

The position of this category element relative to other elements of the same level. "0" is the top position.

entries

"entries": []

Array of elements for each product which are included in this category.

"created_at": "2016-04-15T09:28:44"

GMT date and time when the product was added to the category.

"id": 49043

Unique ID for referencing this element.

"product_id": "0000-E59B-5CAC-9CB2"

Product_id defining the product for this element.

title
"title": "Sci-Fi"

The title of the Category as displayed in the admin interface.

Endpoints

GET /api/categories.json

GET /api/categories.json
View Response

GET /api/categories/count.json

GET /api/categories/count.json
View Response

GET /api/categories/#id.json

GET /api/categories/1062.json
View Response

POST /api/categories.json

POST /api/categories.json
{
    "category": {
        "title": "New Category",
        "enabled": true
    }
}
View Response

POST /api/categories/#id.json

POST /api/categories/2280.json
{
	"category": {
		"id": 2280,
		"created_at": null,
		"title": "New Category",
		"parent_id": 0,
		"position": 0,
		"enabled": true,
		"comment": "",
		"locales": [{
			"language": "de",
			"title": "Neue Kategorie"
		}],
		"entries": []
	}
}
View Response

DELETE /api/categories/#id.json

DELETE /api/categories/2280.json
View Response

Customer

A customer resource instance represents a customer account with the shop. Customer accounts store contact information for the customer, saving logged-in customers the trouble of having to provide it at every checkout. For security reasons, the customer resource instance does not store credit card information. Customers will always have to provide this information at checkout.

The customer resource instance also stores some additional information about the customer for the benefit of the shop owner, including: the number of orders, the amount of money s/he has spent and number of orders s/he has made throughout his/her history with the shop as well as the shop owner's notes and tags for the customer.

Validating customers

Before creating a new customer (either separately or as part of an order) it needs to be checked if the customer already exists within Flickrocket as follows:

GET /api/customers.json?email=This email address is being protected from spambots. You need JavaScript enabled to view it.&password=MyClearTextPassword

The GET returns the customer if the email and password match and the customer exists. If the customer exists but the password doesn't match, the following error is returned:

{

"error" : "Customer found but password does not match."

String of error message.

"error_code" : -1

Code of error message. 

"companies" : ["Master Video","Big foot planet"]

List of companies from which the customer has ordered. Only returned for error code -1.

}

If the customer doesn't exist, the returned data is empty: 

{}

Note: Make sure to use always HTTPS when transferring passwords and tokens.

Keeping customer email and password in sync

Due to the customer access via the central player instance and the fact that a customer might have purchased content from multiple shops, it is extremely important that any email and password changes are synchonized at any time. This is done by sending a PUT identifying the user by his token and updating the email and/or password (don't forget password_confirmation) data.

Pre-authenticated login

Let's say you are the owner of a successful website forum. All of your users must log in to the forum to contribute. Members of your forum can then purchase content through your FlickRocket store. Unfortunately, your users have to log in to the forum first and then log in to your FlickRocket store before they can purchase.

Pre-authenticated login is for store owners who have a separate website and a FlickRocket store. It redirects users from the website to the FlickRocket store and seamlessly logs them in with the same email address they used to sign up for the original website. If no account with that email address exists yet, one is created. There is no need to synchronize any customer databases.

Step 1: Encode your customer information using JSON

The customer information is represented as a hash which must contain at least (A) the email address of the customer and his password or (B) the customer_token. You can also include the customer's first name, last name or several shipping addresses. Optionally, you can include an IP address of the customer's current browser session.

A minimal example, containing all required fields, might look like this:

{
email: "This email address is being protected from spambots. You need JavaScript enabled to view it.",
password: "SuperSecretPassword"
}

or 

{
cusomter_token: "TCMJEOTSBEVTDLFU"
}

An example containing some optional fields might look like this:

{
email: "This email address is being protected from spambots. You need JavaScript enabled to view it.",
password: "SuperSecretPassword",

first_name: "Bob",
last_name: "Bobsen",

identifier: "bob123",
remote_ip: "107.20.160.121",
return_to: "http://shop.yourstore.com/some_specific_page",

addresses: [{
address1: "123 Oak St",
city: "Ottawa",
country: "Canada",
first_name: "Bob",
last_name: "Bobsen",
phone: "555-1212",
province: "Ontario",
zip: "123 ABC",
province_code: "ON",
country_code: "CA",
default: true
}]
}

By default, the shop's player page is presented. If you want your users to see a specific page of your FlickRocket store, you can use the "return_to" field for this.

Step 2. Encrypt the JSON data using AES

To generate a valid pre-authenticated login token, you need the secret given to you in your FlickRocket admin. The secret is used to derive two cryptographic keys — one for encryption and one for signing. This key derivation is done through the use of the SHA-256 hash function (the first 128 bit are used as encryption key and the last 128 bit are used as signature key).

The encryption provides confidentiality. It makes sure that no one can read the customer data. As encryption cipher, we use the AES algorithm (128 bit key length, CBC mode of operation, random initialization vector).

Step 3. Sign the encrypted data using HMAC

The signature (also called message authentication code) provides authenticity. It makes sure that the pre-authenticated login token is authentic and hasn't been tampered with. We use the HMAC algorithm with a SHA-256 hash function and we sign the encrypted JSON data from step 2 (not the plaintext JSON data from step 1).

Step 4. Base64 encode the binary data

The pre-authenticated loginlogin token now consists of the 128 bit initialization vector, a variable length ciphertext, and a 256 bit signature (in this order). This data is encoded using base64 (URL-safe variant, RFC 4648).

Step 5. Redirect your customer to your FlickRocket store

Once you have the token, you should trigger a HTTP GET request to your FlickRocket store.

GET /api/customers/login/{themesettings_id}/{login_token}

When the request is successful (e.g. the token is valid and not expired), the customer will be created under the themesettings_id and gets logged in to the FlickRocket store.

The pre-authenticated login token is only valid within a short timeframe and each token can only be used once. For those reasons, you should not generate tokens in advance for rendering them into your HTML sites. You should create a redirect URL which generates tokens on-the-fly when needed and then automatically redirects the browser.

Security considerations

We highly encourage you to always set the "remote_ip" field in the customer data hash, so that only the intended browser can use the token. We also encourage you to send tokens to the browser using secure HTTPS connections.

You should make sure that registering new accounts at your main website requires validation of the email address which is used. Otherwise, someone could sign up to your main site using somebody elses email address, thus getting access to his customer account in your FlickRocket store.

What can you do with Customer?

The FlickRocket API lets you do the following with the Customer resource. More detailed versions of these general actions may be available:

GET /api/customers.json?updated_at_min=2016-03-16%2021:03:29

Receive a list of all Customers

GET /api/customers/search.json?query=email:This email address is being protected from spambots. You need JavaScript enabled to view it.

Search for customers matching supplied query

GET /api/customers/#{token}.json

Receive a single Customer identified via token

POST /api/customers.json

Create a new Customer

PUT /api/customers/#{token}.json

Modify an existing Customer identified via token.

DELETE /api/customers/#{token}.json

Remove a Customer identified by a token from the database

GET /api/customers/count.json

Receive a count of all Customers

GET /api/orders.json?customer_token=207119551

Find orders belonging to customer identified by his token.

Customer Properties

addresses

"addresses": []

One or more addresses of the customer.

{"address1": "Heinrich-Hertz-Str. 2"}
{"address2": ""}
{"city": "Dortmund"}
{"company": ""}
{"country": "Germany"}
{"country_name": "Germany"}
{"country_code": "DE"}
{"default": true} 
{"first_name": "John"}
{"id": 159501}
{"last_name": "doe"}
{"name": "Test"}
{"phone": "0231-12345678"}
 
{"province": ""}
{"province_code": ""}
{"token": "TCMJEOTSBEVTDLFU"}
{"zip": "44227"}
created_at
{"created_at": "2016-04-07T16:12:24"}

GMT date and time when the customer was initially created.

default_address

"default_address":

The default address of the user unless a different address was selected.

{"address1": "Heinrich-Hertz-Str. 2"}
{"address2": ""}
{"city": "Dortmund"}
{"company": ""}
{"country": "Germany"}
{"country_name": "Germany"}
{"country_code": "DE"}
{"default": true} 
{"first_name": "John"}
{"id": 159501}
{"last_name": "Doe"}
{"name": "Test"}
{"phone": "0231-12345678"}
 
{"province": ""}
{"province_code": ""}
{"token": "TCMJEOTSBEVTDLFU"}
{"zip": "44227"} 
email
{"email": "This email address is being protected from spambots. You need JavaScript enabled to view it."}

The customers email address. This email address must be used by the customer to log in to the shop and players.

first_name
{"first_name": "John"}

The customer's first (given) name.

id
{id": 159501}

Unique ID for this customer.

language
{"language": "de"} 

Two byte language code.

last_name
{"last_name": "Doe"}

The customer's last (family) name.

last_order_id
{"last_order_id": 206897}

The last order_id of the customer. 

last_order_name
{"last_order_name": "#206897"}

The name of the last order. 

note
{"note": ""}

Notes about this customer.

orders_count
{"orders_count": 3}

The number of times the cutomer has ordered.

password
{"password": null}

The customer's password if customer is not identified via customer_token 

password_confirmation
{"password_confirmation": null}

Same as password (used for confirmation) 

state
{"state": "enabled"}

The ste of the order. supported values are "enabled" and "disabled". Read-only. 

token
{"token": "TCMJEOTSBEVTDLFU"}

The token can be used to reference this customer.

total_spent
{"total_spent": 0.0}

The total amount the customer has spent.

updated_at
{"updated_at": "2016-04-07T16:12:24"}

GMT date and time of the last update to the customer information 

verified_email
{"verified_email": false}

Is set to true when the email has been verified. 

Receive a list of all Customers

GET /api/customers.json?updated_at_min=2016-03-16%2021:03:29
View Response

Search for customers matching supplied query

GET /api/customers/search.json?query=email:This email address is being protected from spambots. You need JavaScript enabled to view it.
View Response

Receive a single Customer identified via token

GET /api/customers/#{token}.json
View Response

Create a new Customer

POST /api/customers.json
{
    "customer": {
        "first_name": "Steve",
        "last_name": "Lastnameson",
        "email": "This email address is being protected from spambots. You need JavaScript enabled to view it.",
        "addresses": [{
            "address1": "123 Oak St",
            "city": "Ottawa",
            "province": "ON",
            "phone": "555-1212",
            "zip": "123 ABC",
            "last_name": "Lastnameson",
            "first_name": "Mother",
            "country": "CA"
        }],
        "password": "newpass",
        "password_confirmation": "newpass"
    }
}
View Response

Modify an existing Customer identified via token.

PUT /api/customers/#{token}.json
/api/customers/YLQCIUSBHVCTQUVN.json
{
    "customer": {
    "first_name": "Test_first_name",
    "last_name": "Test_last_name"
    }
 }
View Response

Remove a Customer identified by a token from the database

DELETE /api/customers/#{token}.json
View Response

Receive a count of all Customers

GET /api/customers/count.json
View Response

Find orders belonging to customer identified by his token.

GET /api/orders.json?customer_token={token}
View Response