Install
POST/api/magento2/install
Provisions a new Magento 2 IntegrationInstance after re-validating the supplied credentials server-side. The probe runs again here — clients cannot skip validation by calling /install directly.
The returned instance includes the access token in masked form only (last 4 chars). The full token is encrypted at rest and never echoed back.
Body parameters:
name(required, string, max 255): Human-readable instance name. Must be unique within your tenant.base_url(required, URL): Magento storefront base URL.access_token(required, string, min 8 chars): The integration access token from Magento Admin.country(optional, nullable, ISO 3166-1 alpha-2): Two-letter country code, e.g.US.
Behavior:
- Server probes Magento for store views + MSI sources and persists the discovery into
integration_settings.discoveryso downstream phases can read them without re-fetching. - Default
integration_settingsare seeded: orders auto-download disabled, email_customers enabled.
Error responses:
422— name already taken OR Magento rejected the credentials.401— caller is not authenticated to SKU.io.
Request
Responses
- 201
- 401
- 403
- 422
- 429
Created
Response Headers
Unauthenticated — the bearer token is missing, revoked, expired, or malformed. Never retry automatically; fix the credential. See the Errors guide.
Forbidden — the token lacks a required scope, the endpoint is not available to API tokens, or the user behind the token lacks the permission. A human must adjust the token scopes or user permissions; do not retry.
Unprocessable Entity
Response Headers
Rate limited — platform limit is 1,000 requests/min; individual tokens may carry lower limits. Honor the Retry-After header before retrying. See the Rate Limits guide.