Version 55.1 by Shop Team on 2019/08/01 14:59

Show last authors
1 = Preface =
2
3 Spreadshirt provides several ways to offer an online shop experience to your customers and earn money through commission:
4
5 1. The standalone Spreadshop ([[this>>url:https://shop.spreadshirt.com/SpreadShop||rel="nofollow" shape="rect" class="external-link"]], for example). This application is officially developed, hosted and maintained by Spreadshirt. Running a Spreadshop requires zero technical skills and is always the recommended approach.
6 1. JavaScript integration (described [[here>>url:https://help.spreadshirt.com/hc/en-us/articles/207487815-Website-Integration-with-JavaScript||rel="nofollow" shape="rect" class="external-link"]]). If you have an existing website, you can embed a piece of JavaScript into it that manipulates your website in order to embed the Spreadshop into your site. This requires a decent understanding of HTML and CSS in order to resolve any conflicts between your site and the Spreadshop that may arise.
7 1. CMS plugins for [[WordPress>>url:https://wordpress.org/plugins/spreadshop/#developers||rel="nofollow" shape="rect" class="external-link"]] and others (currently just [[Joomla>>url:https://extensions.joomla.org/extension/spreadshop/||rel="nofollow" shape="rect" class="external-link"]]) that embed the JavaScript snippet mentioned in (2.) for you. If you run a website based on such CMS, these plugins can make your life a bit easier. An understanding of HTML and CSS is nonetheless important.
8 1. An independent, custom built web application based on the **Public Shop API** described in this document. This interface is for web developers only (or people who can afford to hire one). Going for this approach is only feasible for people who have a solid understanding of server side & client side programming, HTTP, HTML and CSS.
9
10 = Prerequisites =
11
12 Spreadshirt runs a European and a North American platform that are independent from another. First, you need to register a Spreadshop on [[eu>>url:https://www.spreadshirt.net/start-selling-C5780||shape="rect"]] or [[na>>url:https://www.spreadshirt.com/start-selling-shirts-C3598||shape="rect"]]. Then, in order to use the API, you need to register an API Key on [[eu>>url:https://www.spreadshirt.net/userarea/-C7120||shape="rect"]] or [[na>>url:https://www.spreadshirt.com/userarea/-C6840||shape="rect"]].
13
14 = Basics =
15
16 * The API described here is loosely based on [[REST>>url:https://en.wikipedia.org/wiki/Representational_state_transfer||shape="rect"]] principles. This means among other things that all endpoints can be accessed via HTTPS and HTTP clients like [[curl>>url:https://curl.haxx.se/||shape="rect"]] or [[postman>>url:https://www.getpostman.com/||shape="rect"]] can be used directly to explore the API.
17 * The base url for all requests is [[https:~~/~~/api.spreadshirt.net>>url:https://api.spreadshirt.net||shape="rect"]] for eu or [[https:~~/~~/api.spreadshirt.com>>url:https://api.spreadshirt.com||shape="rect"]] for na. (This only applies to REST resources, images are retrieved from [[https:~~/~~/image.spreadshirtmedia.net>>url:https://image.spreadshirtmedia.net||shape="rect"]] or [[https:~~/~~/image.spreadshirtmedia.com>>url:https://image.spreadshirtmedia.com||shape="rect"]].)
18 * (((
19 (% class="auto-cursor-target" %)
20 All requests have to be made with HTTP headers "Authorization" and "User-Agent". The authorization header must include your API key and the user agent header must include the name of your application, then its version, followed by a domain and a contact email address:
21
22 |=(((
23 Header Key
24 )))|=(((
25 Header Value Format
26 )))|=(((
27 Example Header Value
28 )))
29 |(((
30 Authorization
31 )))|(((
32 SprdAuth apiKey="<apikey>"
33 )))|(((
34 SprdAuth apiKey="dd30b4db-8cd6-4fb8-86b3-e680984b9e18"
35 )))
36 |(((
37 User-Agent
38 )))|(((
39 <YourApplication>/<YourApplicationVersion> ([[https:~~/~~/www.yourdomain.com>>url:https://www.yourdomain.com/||shape="rect"]]; [[yourname@yourdomain.com>>mailto:yourname@yourdomain.com||shape="rect"]])
40 )))|(((
41 WordPress-Plugin/1.0 ([[https:~~/~~/www.deinblog.com>>url:https://www.deinblog.com/||shape="rect"]]; [[admin@deinblog.com>>mailto:admin@deinblog.com||shape="rect"]])
42 )))
43
44 (% class="auto-cursor-target" %)
45 Failing to provide this information may result in your requests getting blocked at any point in time because traffic of unknown source can be considered illegitimate.
46 )))
47 * All requests should be performed with a ?mediaType=json query parameter to get the responses in the recommended JSON format. Leaving the parameter out may or may not result in a response in XML format which is harder to work with.
48 * All REST resources return HTTP status code 200 or 201 in case of successful requests. Status codes from the 4xx range indicate a mistake on your side while errors from the 5xx range indicate an error on ours.
49 * Timestamps are returned in ISO8601 format.
50
51 = Next Steps =
52
53 There is a [[tutorial>>doc:Build your own shop system]] available showing the use of this API in order to **implement an own shop system**.
54
55 Another [[tutorial>>doc:Migration Tutorial]] explains how to adjust your existing implementation to the upcoming **partner area migration**.
56
57 \\
58
59 = [[doc:Legal Information]] =
60
61 (% class="auto-cursor-target" %)
62 \\