Switch branches/tags
Nothing to show
Clone or download

README.md

ecwid-api-docs

Ecwid REST API documentation (https://developers.ecwid.com/api-documentation)

The docs use Markdown syntax. Syntax reference: Slate markdown

Changelog

July 6, 2018

Added new type of view_mode field for native apps – INLINE. This mode is used when app interface is added to the page inside an existing element where other elements are present as well. Learn more

June 29, 2018

Added new application type for discount coupons – new customers only. It allows merchants to send out coupons that only work for new customers.

With this change we are deprecating the repeatCustomerOnly field for discount coupons, replacing it with applicationLimit with these possible values: "UNLIMITED", "NEW_CUSTOMER_ONLY", "REPEAT_CUSTOMER_ONLY".

If you are creating or updating a discount coupon, make sure to use the old repeatCustomerOnly field or the new applicationLimit field only.

In a situation where both these fields are sent, the priority will be given to the new field – applicationLimit.

Discount coupons in the Ecwid REST API

June 26, 2018

Added defaultProductSortOrder field to the store information endpoint of Ecwid REST API.

Now you can get the default sort order the merchant has set in their checkout settings. Learn more

June 18, 2018

Added defaultDisplayedPriceFormatted and compareToPriceFormatted fields to products endpoint in Ecwid REST API.

Now you can get the default displayed price and compare to price in a format merchant has set in store settings when getting info about products. Learn more

June 15, 2018

  1. Added Store Front page description to the Ecwid REST API – storeDescription. Now it is possible to read and update the description of the main store page. Learn more

  2. Updated sort order for search products (/products) endpoint in the Ecwid REST API:

  • If keyword parameter is passed but sortBy is not, sort order will be "RELEVANCE". No changes here
  • If both keyword and sorBy parameters are not passed, sort order will be defined by the store owner

June 11, 2018

  1. Added information about product's taxes in Ecwid REST API.

Get and update all enabled manual taxes for product, or learn the default tax rate that Ecwid includes in product price for default store location. Learn more

  1. Updated behaviour of the launchDate and expirationDate fields for discount coupons endpoint in Ecwid REST API. Now the date will be automatically converted to UTC

June 5, 2018

Added optional parameter to Storefront JS API method Ecwid.openPage - 'page'. It allows you to open any page in the results for category and search page types. Learn more

June 1, 2018

  • Added control for favorites feature in storefront – favoritesEnabled field in store profile endpoint.

  • Added toggle for "Ask for company name" field at checkout - askCompanyName field in store profile endpoint.

Learn more

May 31, 2018

Updated Ecwid CSS Framework version to 1.3.2

Get it here:

  • https://djqizrxa6f10j.cloudfront.net/ecwid-sdk/css/1.3.2/ecwid-app-ui.css
  • https://djqizrxa6f10j.cloudfront.net/ecwid-sdk/css/1.3.2/ecwid-app-ui.min.js

Changelog:

  • OpenSans font was removed. Now the font-family is: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Ubuntu, sans-serif
  • Updated the colors
  • Fixed sizes and icon positioning in StatusCard, CTACard
  • FeatureCard component now only shows the icon in mobile mode. Image will be hidden
  • Removed pointer events for buttons with loading animation
  • Added styles for Columned, EditableData, EditableOptionList, CountableBlock, CustomContentCard, DateTimePicker, FlexTableBlock, InputCard, InlineAlert components
  • Limited the width of EditableData and Columned inside ACard components to 600px
  • Added styles for Subtitle and Footer elements in the FlexTable component
  • Added states for NamedArea component: FixedVerticalLayout, WithDescriptionInFooter, WithFooterInMobile, HeadlessMobile
  • Added styles for prefixes and suffixes for Input elements

May 30, 2018

Added option to get and update store design settings in store profile endpoint. The design settings and possible values are available in appearance customization section.

May 24, 2018

Added a reference spreadsheet for static information in Ecwid stores – currencies, weight units and country codes. Learn more

May 22, 2018

Added support for order extra fields in invoice and email notification templates. Learn more

May 4, 2018

Added option to use custom scrolling handler when navigating the Ecwid storefront. Set your custom function to scroll to a custom position on a page with window.ec.config.custom_scroller config and "CUSTOM" value for window.ec.config.navigation_scrolling config. Learn more

April 17, 2018

  • Added option to disable force scrolling to Ecwid storefront on store navigation. Learn more

  • Updated the name for main storefront URL configuration from ecwid_ProductBrowserURL to: window.ec.config.store_main_page_url. The old value is still supported. If both are used on a page – the new one has more priority. Learn more

March 30, 2018

Added feature to open specific product variation in storefront via query parameter in URL.

You can use either variation ID or selection index in drop down or radio button product options. Learn more

March 26, 2018

Updated version of Ecwid CSS Framework – 1.3.1:

https://djqizrxa6f10j.cloudfront.net/ecwid-sdk/css/1.3.1/ecwid-app-ui.css

Changelog:

  • fixes for some colors
  • updated fonts for custom-checkbox
  • added prefixes for components fieldsets-batch, cta-block, iconable-block, status-block
  • added disabled state for radio buttons
  • added styles for draggable-item, settings-area components
  • fixed paddings for settings-page
  • fixed display of long titles for titled-value
  • fixed display of buttons for FeatureCard

March 13, 2018

Added customer selection of product options in order item details. Now you can know how each option influences the price of a purchased product. Learn more

March 7, 2018

  1. Added enable/disable controls for "ON SALE" and "SOLD OUT" labels in product listing.

If enabled, "ON SALE" label will display on all products with "compare to" price set. If enabled, "SOLD OUT" label will display on all products that are out of stock.

Only one label can be shown on a product at a time. "SOLD OUT" label has priority over "ON SALE" label, meaning if both labels apply to a product and are enabled, Ecwid will only show "SOLD OUT" label.

Learn more

  1. Updated Ecwid JS SDK for Native Apps to version 1.2.5: https://djqizrxa6f10j.cloudfront.net/ecwid-sdk/js/1.2.5/ecwid-app.js

Changelog:

  • Added EcwidApp.getAppPublicConfig() function to Ecwid JS SDK. Now you can read the value of public application config easier. Learn more

March 6, 2018

Added information about enabled or disabled new features of a store and their visibility status in featureToggles object in /profile endpoint. Learn more

March 5, 2018

Added ability to get all store shipping options via Ecwid REST API in read-only mode. If accessed via public token, Ecwid will respond with enabled shipping options only. Learn more

March 2, 2018

Updated Ecwid CSS Framework and Sample Native App to use the latest improvements and changes to design of pages in Ecwid Control Panel.

New CSS Framework version is 1.3.0: https://developers.ecwid.com/api-documentation/ecwid-css-framework

Sample Native App has been improved to utilize vertical page structure and cards for various settings and stats.

February 28, 2018

Added defaultDisplayedPrice field to /products endpoint of Ecwid REST API.

It provides default price of a product that is displayed in storefront. It includes product combinations, product options as well as taxes applied to products. Learn more

February 26, 2018

Added store information updated webhook event. Learn more

February 22, 2018

  • Added ability to get all set up payment methods of a store via Ecwid REST API in read-only mode. If accessed via public token, Ecwid will respond with enabled payment methods only. Learn more

  • Added options to customize product details pages with Ecwid JS API. Learn more

January 29, 2018

January 8, 2018

Added an example for creating new elements for each product block in category pages (new product listing) in storefront. Learn more

December 26, 2017

Added taxOnShipping field to orders, abandoned carts and calculation of order details endpoints in Ecwid REST API.

Now you can know how much tax total was applied to shipping charge, only if tax is applied to both subtotal and shipping.

The values apply 'as is', meaning if an order is changed manually in the future, they will not be automatically recalculated.

December 18, 2017

Added couponAmount and discounts for order and abandoned cart items. Now you can know how much discount or discount coupon amount was applied to a specific item.

The values apply as is, meaning if an order is changed manually in the future, they will not be automatically recalculated.

November 7, 2017

  • Added EcwidApp.sendUserToUpgrade() function to Ecwid JavaScript SDK for Native applications. Now you are able to send a user to upgrade to a higher Ecwid plan specifying only the target feature needed for your app. Learn more

To use it, make sure you are loading the latest version of Ecwid JS SDK: https://djqizrxa6f10j.cloudfront.net/ecwid-sdk/js/1.2.4/ecwid-app.js

November 1, 2017

  • Added legal pages support in the Ecwid REST API. Now you can read and modify legal pages information on merchant's behalf. Learn more

October 31, 2017

  • Added category-related events to webhooks functionality. Now you can subscribe to events like: category.created, category.updated and category.deleted. Learn more

October 18, 2017

  • We extended information provided from Ecwid for Custom Shipping and Discount requests to 3rd party applications. Now apps get more information about order items, selected payment method, customer email, handling fee and extra fields.

October 16, 2017

  • Added a way to open any page in storefront from within your application – Ecwid.openPage. Now you can open any custom page in storefront for your users on demand. Learn more
  • Added a way to dynamically set storefront base URL for SEO-friendly URLs – Ecwid.setStorefrontBaseUrl. It can be useful when your solution updates query parameters of a page URL dynamically and you need to preserve them. Learn more
  • Added pickupTime field to order details in Ecwid REST API. Now you can know the order pickup time customer selected at checkout after order was placed or change / set it when updating / creating new orders. Learn more

September 27, 2017

  • Added new function to Ecwid JS API in storefront: Ecwid.getFeatureToggles(). It returns enabled or disabled new storefront features, like new product listing (category pages with products). Learn more

September 21, 2017

  • Product Combinations are now renamed to Product Variations. All the product combinations-related labels in the Ecwid Control Panel, Help Center and API Documentation have been renamed to product variations. However, all API endpoints and entities still refer to combinations so that apps continue working as expected.

  • Product dimensions (productDimensions) are now referred to as dimensions in the Ecwid REST API endpoints, other dimensions-related tools as well as in the API documentation.

September 15, 2017

September 12, 2017

September 6, 2017

  • Added order extra fields feature to store extra information in orders from storefront. Order extra fields can save hidden data to an order from storefront (like cookies, referrer, etc.), as well as customer input to new input fields (text, drop down, date picker) added to store checkout by your app. Learn more

August 25, 2017

  • Lots of additions for customer-related information in API:
  1. new sorting and filtering options when searching for customers
  2. new updated field when searching and getting customer details
  3. all customer fields are now returned when searching for customers
  4. password field is no longer required when creating a new customer
  5. customer latest update date is now available in the latest stats endpoint
  6. added webhooks for creating, updating, deleting customer with email field as part of data

August 22, 2017

  • update_store_profile access scope is no longer required to use the Application Storage features. If your app has the read_store_profile scope (all apps have it), you can use the application storage in your app.

July 20, 2017

  • We created a sample native application code for developers to get started with native apps easily. It has some basic elements to display the app as a part of the Ecwid Control Panel and tools to access the Ecwid API. Check it out here

July 14, 2017

July 7, 2017

  • Added Ecwid.resizeProductBrowser() function to adapt Ecwid storefront layout to changes in parent container's width. Learn more

June 20, 2017

  • Added controls to hide certain storefront elements, like 'In stock' label, 'Sign in' link and others with JavaScript code. It needs to be placed anywhere on a page with Ecwid integration code. Learn more

June 9, 2017

  • Added query-based clean URLs support for Ecwid storefronts to improve SEO. This is a solution for the store owners who wanted to enable the SEO-friendly URLs, but can't access the server rewrite rules to change them. Learn more

June 5, 2017

  • Added account email field to the request for access token in the OAuth process. Now you can know the store owner's account email right when you request access token from Ecwid after app installation. Learn more

May 30, 2017

  • Added ability to upload files via a public URL as a request parameter to Ecwid REST API. Now you can just provide a link to an image or a file in optional externalUrl parameter and Ecwid will download it from there. Previous functionality of uploading files as a binary data is still available.

This change is available for all file upload endpoints:

May 12, 2017

  • Updates to Ecwid JS SDK and Ecwid CSS Framework.

New version links:

Changes to JS SDK: Added EcwidApp.closeAppPopup() function. Apps displayed in a popup can close it using this function

Changes to CSS Framework: Fixed issue with invisible option elements of a <select> increasing the height of an app in Firefox

April 25, 2017

  • We updated the installation flow and now it has only one option - web application. Earlier there was two options: web application and app installed on a device.

With this change all existing apps continue to work the same way. However, for the new applications installed on a device we recommend using the Deep linking functionality for getting the access token (as a redirect_uri)

  • Added examples on how to enable the new SEO-friendly URL format for Ecwid stores. Learn more

  • Added a way to get not hidden abandoned sales in an Ecwid store using the showHidden filter when searching for abandoned sales. Learn more

March 31, 2017

  • NEW Added new REST API endpoints for working with abandoned carts in Ecwid and the date of the latest changes to them in latest-stats endpoint. Learn more

March 28, 2017

  • NEW We added an option to enable canonical URLs for Ecwid stores in storefront. To enable them, you can add a couple of lines of JavaScript code to the page where the Ecwid store is located. Learn more

March 23, 2017

  • We added an option to get order details of multiple specific orders if you know their order number. To do that, use the search orders endpoint with the orderNumber filer - that's where you will need to specify your order numbers separated by a comma.

March 21, 2017

  • We updated the priceInProductList field for products endpoint. Now it will take into account the default product options when returning the value as well as the combinations. This way, this field is now returning the price as it is displayed in the storefront (without taxes applied).

February 16, 2017

  • NEW Added showOnFrontpage field to products endpoint in the Ecwid REST API. Now when you search/get/update/create products, you can control whether that product will be shown on the store front page.

February 10, 2017

Now you can get/update/delete a discount coupon using either its internal id (new) or coupon code itself. The id field is now returned when getting coupon(s) details or creating it. Also, you can filter coupons by creation/update dates when getting their details. The latest stats endpoint now also returns latest update date of discount coupons. The discount_coupons/deleted endpoint now returns unique coupon id instead of the coupon code field.

January 18, 2017

  • Added support for SEO-friendly URLs for Ecwid storefronts. Learn more
  • SEO-friendly URLs can be retrieved from Ecwid REST API for products and categories URLs in URL field using cleanUrls request parameter. Also, it's possible to change the base storefront URL for such URLs using baseUrl request parameter.

January 17, 2017

  • NEW Added Ecwid.OnOrderPlaced() event for Ecwid JavaScript API. It allows to get order details in storefront right after it's placed by customer. Learn more

January 16, 2017

  • NEW You can now get public_token value in a native app interface by using EcwidApp.getPayload() or decrypting payload on server (for enhanced security authentication apps). Learn more
  • To keep the digital goods of our merchants protected, we removed access token from adminUrl field when getting product details. To download a file, just add the token parameter with the token as a value: ?token=abcde1234

January 5, 2017

  • NEW Added support for product dimensions feature. Now each product and shipping itself can be calculated according to the product dimensions specified for products.

December 27, 2016

  • NEW Added support for passing custom application state for Native applications. You can use this to initiate a custom action performed when loading the application tab in Ecwid Control Panel. Learn more

December 26, 2016

  • NEW Added READY_FOR_PICKUP fulfillment status for orders and pickup fields support for selected shipping options in order. Learn more

December 8, 2016

  • NEW Added Custom Promo API to apply discounts to orders when customer is at checkout. Learn more

December 1, 2016

  • NEW Added new order payment status: Partially Refunded. Learn more
  • NEW Added support for tax exempt customers in the Ecwid REST API. Learn more

November 15, 2016

  • NEW Added ability to get product details using multiple product IDs separated by a comma. Learn more
  • NEW Added latest category update date to store update stats. Learn more

November 4, 2016

  • NEW Added more ways to contact store for the new Starter site: Whatsapp, Viber, Telegram and more. Learn more

October 27, 2016

  • NEW Added new REST API endpoint for getting up-to-date HTML invoice of a specific order. Learn more

October 26, 2016

  • NEW Added hideOutOfStockProductsInStorefront field to control the visibility of out of stock products in storefront. Learn more

October 17, 2016

  • NEW Added support for custom HTTP headers when using webhooks. Learn more
  • Added Python examples for file upload methods

August 23, 2016

  • NEW Added methods to change colors and font of a storefront. Learn more

August 16,2016

  • NEW Added methods to get and update starter site content details. Learn more

August 15, 2016

  • NEW Added new JavaScript API functions to set various customer details in storefront. Learn more
  • Improved 'Generate cart with products' method with new fields, like customer address, customer email and order comments. Learn more

July 26, 2016

  • New Added Javascript API Method for getting public token in storefront. Learn more
  • Public tokens can now create orders. Learn more
  • Added webhooks for application changes (install/uninstall, status change). Learn more

July 14, 2016

  • NEW added public access tokens support. It allows to get public information of a store from anywhere with Ecwid REST API. Learn more

July 8, 2016

  • NEW added Ecwid.Cart.gotoCheckout() function to start checkout process for a customer in a storefront. Learn more

July 5, 2016

  • Added hdThumbnailUrl for products, categories and combinations. This field provides URL to a resized to fit 650x650px image of an entity.

June 30, 2016

  • Added start and end subscription timestamps for application subscription status. Learn more

June 27, 2016

  • Added instructions for generating custom customer's cart using a link. Learn more
  • Added instruction for centering popup windows in Ecwid storefronts and Control panels, working in an iframe containers. Learn more

June 23, 2016

  • Added JS method to remove specific products from customer's cart. Learn more

##June 21, 2016

  • Added SEO title and description fields for each product. Now you can control how products are presented in search engine results.

##June 15, 2016

  • New version of Ecwid JS SDK: 1.2.1. In this version we fixed height issues with fixed positioned elements.

June 14, 2016

  • App public config now can store up to 64Kb of data. Learn more

June 2, 2016

  • NEW Single Sign On feature now works via Ecwid APIv3 credentials. While old implementations of SSO are still functional, we encourage you to update to the latest specifications. Learn more

May 30, 2016

  • New feature: private admin notes for orders. See orders endpoint for privateAdminNotes field

May 26, 2016

  • Added new fields describing order details when sending request for a custom shipping methods.

May 24, 2016

  • Added fields to control manual/automatic tax calculation. To manage taxes, use taxSettings field

May 23, 2016

  • New version of Ecwid JS SDK: 1.2.0. Changelog includes a fix for the issues with page height when autoheight: true was specified.
  • Added Ecwid.getStorefrontLang() function to get the language of the storefront as soon as it starts loading.

May 20, 2016

  • Added a new sort type to search for products: UPDATED_TIME_ASC and UPDATED_TIME_DESC
  • Added product and category image details, see originalImage field

May 12, 2016

  • Added support to control Order Comments functionality in the store profile section

May 4, 2016

  • Added endpoint for creating Ecwid stores and checking if store exists

April 27, 2016

  • NEW Added Custom Payment API to add new payment methods for Ecwid stores

March 23, 2016

  • New minor version 1.1.1 of Ecwid Javascript SDK is out. It includes a fix for using cyrillic characters in the Application storage.

##March 19, 2016

  • Added small example for using jQuery library when customizing Ecwid Storefront

March 18, 2016

  • NEW Added Custom Shipping API to add new shipping methods for Ecwid stores

February 25, 2016

  • NEW Added endpoint for calculating order details on demand for custom checkouts
  • NEW Added SKU and Product ID filters to ’Search Products’ endpoint

February 18, 2016

  • 'Search products' method will now return all available product fields

February 16, 2016

  • Updated Storefront JS API section

February 8, 2016

  • Updated wording of Authentication section
  • Added new content to Overview section

January 18, 2016

  • Added PHP examples for uploading binary data (images)

January 15, 2016

  • Added TRIAL status for Application endpoint
  • Updates to the structure of Authentication section
  • Added 'isShippingRequired' field for Products endpoint
  • Added support for Google Analytics in Store profile endpoint
  • Updated structure of Storefront JS API
  • New Storefront JS API function: getInitializedWidgets()

December 14, 2015

  • Added unfinished order event types for webhooks
  • Added order status changes details for webhooks

December 2, 2015

  • NEW Enhanced application storage with easy access from JS APIs. Use this to store, manage and access your users preferences and other app data
  • NEW Customer groups (membserhips) can now be managed over the REST API. Need an idea on how to use that in an application? Here is one: track customer sales and automatically provide them with a membership based on the money they have spent in your store.

November 19, 2015

  • Moved JS API documentation from Ecwid Help Center to api.ecwid.com

November 17, 2015

  • Added "Application" endpoint

November 3, 2015

  • Added a PHP code example to the webhooks documentation
  • New minor version of Ecwid JS SDK is released (v 1.0.2). It contains a fix for the layout issues of embedded apps in some browsers.

September 22, 2015

  • Updated description text for adjustProductInventory and adjustCombinationInventory
  • Updated text for compareToPrice field description
  • Added webhooks documentation

September 14, 2015

  • New minor version of Ecwid JS SDK is released (v 1.0.1). It contains a fix for the bug that caused layout issues in embedded apps (glitchy footer)

September 5, 2015

  • Updated discountType field. Added mixed type of coupon (absolute discount AND free shipping, percentage discount AND free shipping)

August 26, 2015

  • Added tax details to order items (taxOnDiscountedSubtotal and taxOnShipping fields)

August 13, 2015

  • Added Single Sign On code examples

July 27, 2015

  • Added a tip on how to search products for exact match using a keyword in quotes, e.g. "keyword". This is useful, for example, to get a product by SKU
  • Added emailLogoUrl and availableFeatures fields description in the Store profile endpoint section

July 25, 2015

  • Added two code examples to the Library (A simple Ecwid oAuth client on PHP and a Laravel app template)

July 8, 2015

  • Added description of how to use Ecwid oAuth in self hosted web apps, e.g. CMS plugins.
  • Introduced hosted app details pages in Ecwid Control Panel.

June 14, 2015

  • Added handling fee options to the "Store profile" and "Orders" endpoints
  • Improved behavior of hidden product attributes in responses from "Products" endpoints

June 7, 2015

  • All dates are returned in UTC now
  • Timestamp is now returned for orders and products
  • Options are now automatically created when you create a combination
  • Added a short usage policy text

May 5, 2015

  • Added description of how to define date and time ranges in the "Search products" and "Search orders filters (http://api.ecwid.com/#search-products)
  • Fixed an error in the "Update product" endpoint spec: to update UPC and Brand product attributes, it's possible to use the 'alias' field in the AttributeValue object.

April 27, 2015

April 3, 2015

April 2, 2015

  • Added ability to get the user language in embedded applications ("lang" parameter in the payload)
  • Added a link to the new Developers site (http://developers.ecwid.com)

March 2, 2015

  • Added troubleshooting section to the "Embedding apps" section

March 2, 2015

  • Added the "API availability on Ecwid plans" paragraph to the Overview section to explain which merchants are allowed to use the API
  • Added clarifications to the access scopes list in the Authentication section

February 19, 2015

  • Added PHP example of Ecwid payload decryption in embedded apps

February 16, 2015

  • Added mailNotifications field in the store settings. Now you can get and update the mail notifications settings over API
  • Added Legacy API links in the Overview section
  • The default items limit in the products search response is changed from 10 to 100

January 15, 2015

  • Added Single Sign-on API description

January 7, 2015

  • Added static links for CSS SDK and JS SDK

December 30, 2014

  • Added "Update product file description" endpoint

December 11, 2014

  • Categories requests/response now supports batch requests parameters (limit/offset/total/count)
  • Search products now supports ADDED_TIME_ASC sort order
  • Upload image requests now respond with 422 error when the uploaded file does not seem to be an image
  • "Get categories" request didn’t return category product IDs. Fixed.

December 2, 2014

  • Added "Embedded applications" specification