Skip to main content
Feedback

Recovery and re-runs

Every migration command is safe to re-run. You do not need to clean up anything between runs. The following table describes what happens to each scenario when you re-run a command:

ScenarioWhat happens on re-run
Entity already MIGRATEDSkipped - not touched again.
Entity FAILEDRe-run the same command. Failed entities are retried automatically on the next run.
Entity stuck in MIGRATING (pod restarted)The entity is verified against the target. If it exists, it is marked as MIGRATED. If not, it is re-created.
New entity added to the source since the last runPicked up and migrated automatically.
Certificate renewed on APIM 5.x.x (trust/identity store)Always synced — trust and identity store re-runs always write the latest cert data.
New OAuth tokens issued on APIM 5.x.xNot picked up automatically. Re-run --export_tokens then --import_tokens to include them.

Migrate a single entity by UUID

To retry or migrate a single entity without running the full migration:

# ── No parent required ──────────────────────────────────────────────────────
migrate.py --organization --uuid <uuid>
migrate.py --role --uuid <uuid>
migrate.py --member --uuid <uuid>
migrate.py --https_client_profile --uuid <uuid>
migrate.py --domain --uuid <uuid>
migrate.py --api_definition --uuid <uuid>
migrate.py --package --uuid <uuid>
migrate.py --application --uuid <uuid>

# ── Child entities — parent flag required ───────────────────────────────────
migrate.py --error_set --api_definition_id <service_uuid> # all error sets for one service
migrate.py --error_set --api_definition_id <service_uuid> --uuid <error_set_uuid> # single error set

migrate.py --endpoint --api_definition_id <service_uuid> # all endpoints for one service
migrate.py --endpoint --api_definition_id <service_uuid> --uuid <endpoint_uuid> # single endpoint

migrate.py --plan --package_id <package_uuid> # all plans for one package
migrate.py --plan --package_id <package_uuid> --uuid <plan_uuid> # single plan

migrate.py --package_key --application_id <application_uuid> # all keys for one application
migrate.py --package_key --application_id <application_uuid> --uuid <key_uuid> # single key
note

--trust_store and --identity_store do not support --uuid. To retry, re-run the full command, so that failed and renewed certificates are picked up automatically.

On this Page