For Agents
List discovered servers, databases, and web apps inside an Azure Migrate project, register migration solutions, and inspect migration progress events for workloads moving to Azure.
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the Azure Migrate Hub, or any other public or private API you need. You set the rules, the agent never sees your credentials, and every call is logged.
# On the machine that will host your Jentic One instance:
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | sh# On the machine where your agent runs (keep this separate from the instance):
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | sh
jentic register # connects your agent to your Jentic One instanceJentic One is in public beta. The setup above keeps your agent separate from the instance, which is what you want before using real credentials: an agent running as the same OS user as Jentic One can read its stored keys directly. Just evaluating? A single local install is fine to start. See the secure deployment guide for the tiers.
What an agent can do with Azure Migrate Hub API.
Create or update Azure Migrate projects in a resource group and configure their discovered asset summaries
List the machines, databases, database instances, and web applications discovered against a migrate project
Register and configure migration solutions on a migrate project and retrieve their configuration with shared keys
Read migrate event records to investigate why a discovered asset failed assessment or migration
GET STARTED
Use for: List all servers discovered inside an Azure Migrate project, I want to create a new Azure Migrate project in a specific resource group, Retrieve the database instances that an Azure Migrate appliance has discovered, Register a migration solution against an existing migrate project
Not supported: Does not handle assessment scoring, post-migration resource provisioning, or billing reconciliation — use for Azure Migrate project, discovered asset, solution, and event operations only.
Jentic publishes the only available OpenAPI document for Azure Migrate Hub, keeping it validated and agent-ready.
Jentic publishes the only available OpenAPI specification for Azure Migrate Hub, keeping it validated and agent-ready. Azure Migrate Hub is the Microsoft.Migrate resource provider for tracking and orchestrating workload migrations to Azure. It exposes 23 endpoints for managing migrate projects and the discovered assets inside them, including servers, databases, database instances, web applications, and migrate events. Agents can register solutions against a project, refresh discovered inventory summaries, and inspect machine and database details that have been collected by Azure Migrate appliances.
Refresh the inventory summary for a migrate project so that downstream tooling sees the latest discovered counts
Delete a migrate project and clean up its associated discovery and assessment data
Patterns agents use Azure Migrate Hub API for, with concrete tasks.
★ Migration Discovery Inventory Review
Pull a consolidated view of every server, database, and web application discovered inside an Azure Migrate project so a cloud architect can plan migration waves. The API returns paginated lists of machines, databases, database instances, and web applications scoped to a single migrateProject, each with the discovery metadata captured by the on-premises appliance. This replaces manual portal browsing across hundreds of assets and runs in seconds against the Microsoft.Migrate resource provider.
List all machines and databases discovered against the migrate project named 'prod-datacenter-move' in resource group 'migration-rg' and return a summary count per asset type
Register a Migration Solution
Programmatically register a partner or first-party migration solution against an existing Azure Migrate project and retrieve its shared key so an automation pipeline can post discovery data. Solutions are managed under the migrateProjects/{name}/solutions path and support PUT for create-or-update, GET for configuration retrieval, and a getConfig action that returns the credentials needed by an agent or appliance to send telemetry. This is the entry point for wiring custom discovery tooling into Azure Migrate.
Register a custom solution named 'inventory-bot' on the migrate project 'prod-datacenter-move' and call getConfig to retrieve its shared key
Audit Migrate Events for Failed Discoveries
Surface the migrate event log on a project to identify discovery or assessment failures and feed them into a remediation workflow. The events endpoint returns a paged list keyed by machine, database, or web application, with a status code and message explaining why an asset could not be assessed. An agent can poll this list after each discovery cycle and open a ticket per failure rather than waiting for an operator to scan the portal.
Retrieve all migrate events for project 'prod-datacenter-move' where the status indicates a discovery error and emit one summary line per event
Agent-Driven Migration Triage via Jentic
An AI agent retrieves the Azure Migrate Hub spec through Jentic and chains discovery, event, and solution operations to triage a migration wave end-to-end. The agent searches Jentic for 'list discovered servers in an Azure Migrate project', loads the matching operation schema, and then walks machines, databaseInstances, and events under the same project to produce a readiness report. Credentials are supplied as a scoped Azure AD bearer token from the Jentic vault, never inlined in the agent's prompt.
Call the Jentic search for 'list discovered servers in an Azure Migrate project', execute against the migrate project 'prod-datacenter-move', then list its events and emit a triage report grouping assets by readiness state
23 endpoints — jentic publishes the only available openapi specification for azure migrate hub, keeping it validated and agent-ready.
METHOD
PATH
DESCRIPTION
/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/migrateProjects/{migrateProjectName}
Get a migrate project
/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/migrateProjects/{migrateProjectName}
Create or update a migrate project
/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/migrateProjects/{migrateProjectName}/machines
List discovered machines on a project
/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/migrateProjects/{migrateProjectName}/databases
List discovered databases on a project
/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/migrateProjects/{migrateProjectName}/solutions
List migration solutions registered on a project
/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/migrateProjects/{migrateProjectName}/migrateEvents
List migrate event records for a project
/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/migrateProjects/{migrateProjectName}
Get a migrate project
/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/migrateProjects/{migrateProjectName}
Create or update a migrate project
/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/migrateProjects/{migrateProjectName}/machines
List discovered machines on a project
/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/migrateProjects/{migrateProjectName}/databases
List discovered databases on a project
/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/migrateProjects/{migrateProjectName}/solutions
Three things that make agents converge on Jentic-routed access.
Credential isolation
Azure AD client credentials and refresh tokens are stored encrypted in the Jentic vault. The agent receives a short-lived bearer token scoped to https://management.azure.com/ at call time; raw secrets never reach the agent context.
Intent-based discovery
Agents search Jentic by intent (e.g., 'list discovered servers in an Azure Migrate project'), and Jentic returns the matching Microsoft.Migrate operation with its full input schema so the agent can call the right endpoint without browsing the ARM reference.
Time to first call
Direct integration with Microsoft.Migrate: 1-3 days to wire ARM auth, polling, and pagination. Through Jentic: under an hour to search, load, and execute the first call.
Alternatives and complements available in the Jentic catalogue.
Azure Migrate
Adjacent Microsoft.Migrate API covering project assessment artefacts and groups.
Choose this when you need assessment, group, or project artefact operations rather than discovery inventory and events.
Azure Resource Graph
Run KQL queries across all Azure resources, including post-migration workloads.
Use after migration when an agent needs to query the actual provisioned resources rather than the discovery inventory.
Azure SQL Database
Manage the Azure SQL targets that databases are migrated into.
Pair with Migrate Hub when the agent needs to provision or inspect the SQL targets of a database migration wave.
Specific to using Azure Migrate Hub API through Jentic.
Why is there no official OpenAPI spec for Azure Migrate Hub?
Microsoft Azure does not publish an OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call Azure Migrate Hub via structured tooling. It is validated against the live API and kept up to date. Get started at https://app.jentic.com/sign-up.
What authentication does the Azure Migrate Hub API use?
The API uses Azure Active Directory OAuth 2.0 (the azure_auth scheme defined in the spec) with the user_impersonation scope on https://management.azure.com/. Through Jentic, the bearer token is fetched from the Jentic vault and injected at call time so the agent never sees the raw client secret or refresh token.
Can I list every server discovered by Azure Migrate using this API?
Yes. Send GET to /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/migrateProjects/{migrateProjectName}/machines to page through every discovered machine in a single migrate project. Equivalent endpoints exist for /databases, /databaseInstances, and /webApplications under the same project.
What are the rate limits for the Azure Migrate Hub API?
The spec does not declare rate limits; calls are governed by Azure Resource Manager throttling, which applies a per-subscription budget for read and write operations on Microsoft.Migrate. If you receive HTTP 429, honour the Retry-After header before resending the request.
How do I refresh the discovered asset summary on a migrate project through Jentic?
Search Jentic for 'refresh azure migrate project summary', load the schema for the refreshSummary action under /migrateProjects/{migrateProjectName}/refreshSummary, and execute it with the subscriptionId, resourceGroupName, and migrateProjectName. Jentic injects the Azure AD token automatically.
Is the Azure Migrate Hub API free?
There is no separate fee for control plane calls to Microsoft.Migrate; Azure Migrate itself is free for discovery and assessment, and you only pay for the underlying Azure resources you provision after migration. Outbound bandwidth and assessment-driven log storage may incur standard Azure charges.
List migration solutions registered on a project
/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/migrateProjects/{migrateProjectName}/migrateEvents
List migrate event records for a project