-
Notifications
You must be signed in to change notification settings - Fork 7
Home
clockworkgeek edited this page Apr 19, 2018
·
20 revisions
- Core / Stores (SOAP)
- Core / Magento info (SOAP)
- Core / Notification Inbox
- Core / Translations
- Core / URL Rewrites (incomplete)
- Catalog / Category (SOAP)
- Catalog / Category Tree (SOAP)
- Catalog / Category Products (SOAP,
REST but not for anchored categories) - Catalog / Products (SOAP,
REST) - Catalog / Product Images (SOAP, REST)
- Catalog / Product Attributes (SOAP)
- Catalog / Product Custom Options (SOAP)
- Catalog / Product Downloadable Links (SOAP)
- Catalog / Product Relations (SOAP)
- Catalog / Product Reviews
- Catalog / Product Tags (SOAP)
- Catalog / Products / Compare
- Catalog / Products / Wishlist
- Catalog / Search Terms
- Cart (SOAP, REST but incomplete?)
- Cart Coupons (SOAP)
- Checkout (SOAP)
- CMS Blocks
- CMS Pages
- Contact Us
- Customers (SOAP, REST)
- Customers / Address (SOAP, REST)
- Customers / Groups (SOAP)
- Directory of countries and regions (SOAP, tutorial)
- Inventory (SOAP, REST)
- Newsletters
- Reports
- Sales Orders (SOAP, REST)
- Sales Orders / Credit Memos (SOAP)
- Sales Orders / Invoice (SOAP)
- Sales Orders / Shipments (SOAP)
- Documentation
- Caching
At minimum there should be one ofETag
orLast-Modified
header. AlsoCache-Control: public
for not-so-dynamic shared resources such as Catalog data. Cart data is private and dynamic so definitely no caching there. Customer orders are private but mostly static so can be cached. Web server and client handle negotiation between them but Apache still calls PHP then possibly discards the body, we can save some processing by checking conditional headers too. - composer.json
-
Wrap Api resources as Api2 resources
Use SOAP code but not require SOAP permissions and get some validation for free. -
Multi-calls
Probably for admin only. -
Internationalisation
Mostly for admins' benefit but also for error messages. - Flat tables
Currently only for categories and products. Need to restrict attributes used. - Link header for pagination
RFC5988
Example -
Catalog search
Different from merely querying a product list, multiple fields are covered and there is a fulltext index involved. Searching creates statistics. - Customer ID
How does each customer know who they are? -
Split into more projects
Maybe there are too many resources. Maybe devs don't want to install all at once. - Sandbox mode
- Cache and Index Management
-
https://github.com/Vinai/VinaiKopp_Api2SessionAuthAdapter
Customer session acts as authentication -
https://github.com/ExtensionsStore/Restension
2-legged OAuth -
https://github.com/AOEpeople/Aoe_CartApi
Cart resource -
https://github.com/AOEpeople/Aoe_Api2
Customer login