You'll be up and running in no time...

Seller Center allows a store keeper to manage the products and orders in their online store.

Accordingly, the Seller Center API enables the programmatic maintenance of products and orders.

E.g., you might use the API to import products, or to migrate orders into your accounting system.

Communication Format

Generally speaking, all requests originate with you; in other words, you contact the API. The API does not contact you.

More specifically, each request is an HTTP request directed to an endpoint. Depending on what you want to achieve, you will either perform an HTTP request with a GET or POST verb.

In most cases, the call involves only HTTP URL parameters, such as the call to GetProducts, which is as simple as this:

https://sellercenter-api.linio.com.mx/?Action=GetProducts&Filter=sold-out&Format=XML&Timestamp=2015-07-21T05%3A14%3A49%2B02%3A00&UserID=maintenance%40sellercenter.net&Version=1.0&Signature=dee80841b2aa0ad1fb517f196c56a5e5b9c78627c9256a11df11da76a3f84503

📘

Endpoint URL

Throughout this documentation, the example make calls against sellercenter-api.linio.com.mx. You must substitute it with the URL for your country instance of Seller Center:

Chile: https://sellercenter-api.linio.cl/
Colombia: https://sellercenter-api.linio.com.co/
Mexico: https://sellercenter-api.linio.com.mx/
Peru: https://sellercenter-api.linio.com.pe/

Please be sure to always test your code against a staging instance. Short of a database restore, there is no undo for an API call!

In looking at the above request, we see that all of the needed parameters are already included in the URL as parameters. The API then returns the information we seek, either in XML or JSON format, depending on what we asked for, for instance like so (there are tabs below that allow you to see either format):

<?xml version="1.0" encoding="UTF-8"?>
<SuccessResponse>
  <Head>
    <RequestId/>
    <RequestAction>GetProducts</RequestAction>
    <ResponseType>Products</ResponseType>
    <Timestamp>2015-07-01T11:11:11+0000</Timestamp>
  </Head>
  <Body>
    <Products>
      <Product>
        <SellerSku>BobKing</SellerSku>
        <ShopSku>KI995ELAAK2HNAFAMZ-53759</ShopSku>
        <Name>Bob the King</Name>
        <Variation>...</Variation>
        <ParentSku>BobKing</ParentSku>
        <Quantity>51</Quantity>
        <Available>51</Available>
        <Price>323.00</Price>
        <SalePrice/>
        <SaleStartDate/>
        <SaleEndDate/>
        <Status>active</Status>
        <ProductId>BobtheKing</ProductId>
        <Url>http://rocket:[email protected]/26009.html</Url>
        <MainImage>http://mycdn.net/p/26009-1497-90062-1-catalog.jpg</MainImage>
      </Product>
      <Product>
        <SellerSku>Bobqueen</SellerSku>
        <ShopSku>JE134FAAAK2INAFAMZ-53760</ShopSku>
        <Name>Bob the queen</Name>
        <Variation>42</Variation>
        <ParentSku>Bobqueen</ParentSku>
        <Quantity>5</Quantity>
        <Available>5</Available>
        <Price>343.00</Price>
        <SalePrice/>
        <SaleStartDate/>
        <SaleEndDate/>
        <Status>active</Status>
        <ProductId>Bobthequeen</ProductId>
        <Url>http://rocket:[email protected]/26010.html</Url>
        <MainImage>http://mycdn.net/p/26010-4018-01062-1-catalog.jpg</MainImage>
      </Product>
    </Products>
  </Body>
</SuccessResponse>
{
  "SuccessResponse": {
    "Head": {
      "RequestId": "",
      "RequestAction": "GetProducts",
      "ResponseType": "Products",
      "Timestamp": "2015-07-21T07:28:52+0200"
    },
    "Body": {
      "Products": {
        "Product": [
          {
            "SellerSku": "BobKing",
            "ShopSku": "KI995ELAAK2HNAFAMZ-53759",
            "Name": "Bob the King",
            "Variation": "...",
            "ParentSku": "BobKing",
            "Quantity": "51",
            "Available": "51",
            "Price": "323.00",
            "SalePrice": "",
            "SaleStartDate": "",
            "SaleEndDate": "",
            "Status": "active",
            "ProductId": "BobtheKing",
            "Url": "http://rocket:[email protected]/26009.html",
            "MainImage": "http://mycdn.net/p/26009-1497-90062-1-catalog.jpg"
          },
          {
            "SellerSku": "Bobqueen",
            "ShopSku": "JE134FAAAK2INAFAMZ-53760",
            "Name": "Bob the queen",
            "Variation": "42",
            "ParentSku": "Bobqueen",
            "Quantity": "5",
            "Available": "5",
            "Price": "343.00",
            "SalePrice": "",
            "SaleStartDate": "",
            "SaleEndDate": "",
            "Status": "active",
            "ProductId": "Bobthequeen",
            "Url": "http://rocket:[email protected]/26010.html",
            "MainImage": "http://mycdn.net/p/26010-4018-01062-1-catalog.jpg"
          }
        ]
      }
    }
  }
}

🚧

All JSON Values are Strings

A current limitation of the API is that in a JSON response all values are strings: e.g., booleans are returned as "true" and "false", not true and false. In the above JSON response, for instance, you would expect Quantity to be the integer 51, but it's returned as the string "51".

Call Velocity Limitations

There are limits to the number of calls you can make per second (this is sometimes referred to as throttling): if you make more than 30 requests per 3 seconds, you will get an “E429:Too many requests” error response.

See also the Feed Throttling topic on the Feeds page.