Explore Admin API v4 features and changes
Prerequisites
Before proceeding with the upgrade, ensure that the following prerequisites are met.- Notice to and approval by Voyado have been provided for the upgrade.
- There is a currently live integration in production using Admin API v3 for imports.
- Every unique product group, product, variant, and content key serves as a consistent identifier for the same item across different markets. That is, a single identifier must not be used for different products in two markets.
- Market identifiers and locales are kept identical to the ones used for v3 during the upgrade process.
Rollback and recovery
It is possible to downgrade to Admin v3 at any point during the upgrade process. When doing so, all v4 import endpoints will start returning405 response code errors, and all v3 import endpoints will start working as previously.
To downgrade to v3, perform a full v3 import admin/v3/import/data with the query parameter downgrade=true.
Upgrade process
There are two approaches to upgrading the data feed: one basic and one slightly more advanced. The one most suitable for you depends on the number of import sources and your import uptime requirements. The main difference is that the advanced upgrade will have a fully uninterrupted partial import flow during the upgrade process. The overview of the processes explains the main components of the upgrade process, and the step-by-step sections provide an example of how to roll it out safely, including the usage of a test environment and some utility features provided by Voyado. Depending on how fast rollouts are made and what levels of precautions are needed for your setup, not all steps are needed as long as the tasks in the overview are fulfilled.- No v4 configuration imports should be made during the upgrade process.
- For other Admin endpoints than those for the data feed, update the version in the request path.
Basic data feed upgrade
When
If only full imports are made, or all imports are made from a single system, or if temporary halts in the partial update flow are acceptable during the import process, the basic upgrade flow is recommended.Overview
The basic upgrade process fundamentally consists of these tasks:Migrate full imports
Migrate partial imports
Schedule only v4 updates
Step by step
The following steps are recommended to be performed in your test environment, before rolling out or making the equivalent changes to production.Export v3 data (optional)
admin/v3/export/data for immediate access in case of a need to roll back.Export a catalog draft (optional)
admin/v4/export/upgrade-catalog to get an example of how your data roughly should look in the new format for reference.Validate the catalog draft (optional)
admin/v4/import/catalog via PUT, and with the query parameter validationOnly=true.Resolve draft validation errors (optional)
Update import retry handling
405 response code errors. On 405, do not retry the import.Generate a catalog replacement import
Import the catalog
admin/v4/import/catalog via PUT. The cluster will now no longer accept v3 data imports.Resolve catalog import errors
Validate site behavior
Generate partial update imports
Import a partial update
admin/v4/import/catalog via POST.Resolve partial update errors
Update scheduled imports
Complete the upgrade
Advanced data feed upgrade
When
The advanced upgrade process is recommended when there are multiple import sources and either of the following conditions are true:- It is paramount that there are no interruptions of partial or modification imports during the upgrade process.
- Rolling out releases to your import systems is very time-consuming.
Overview
In the advanced upgrade process, your data sources will produce both v3 and v4 import formats simultaneously during a period of time, with some of the requests failing. It also differs from the basic flow in that sources for partial updates are rolled out prior to full imports, and that the steps for the test environment and production environment differ slightly. The advanced upgrade process fundamentally consists of these tasks:Test environment: migrate full imports
Test environment: migrate partial imports
Production environment: release dual-version partial imports
Production environment: release full imports
Schedule only v4 updates
Step by step
Test environment: validate the basic upgrade
Test environment: add v4 partial imports
Production environment: deploy v4 partial imports
Test environment: add v4 full imports
Production environment: deploy v4 full imports
Production environment: wait for the first v4 import
Test environment: remove v3 imports
Production environment: remove v3 imports
Complete the upgrade