---
title: "Get Migration Overview"
method: GET
path: "/internal/migration/overview"
tags: ["internal"]
---

# Get Migration Overview

`GET /internal/migration/overview`

## Request

- Base URL: `https://api.kobaltlabs.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.kobaltlabs.com/internal/migration/overview`
- Auth: none declared

Per-company migration status: from shared global roles to company-scoped archetype roles.

A company is ``migrated`` once it has ≥1 company-scoped role, **every** company-scoped
role is archetype-tagged, and no user still holds a global role — the same precondition
that unlocks the tenant-facing per-module role editor.

## Response `200`

Successful Response

- MigrationOverviewResponse
  - `companies` MigrationCompanyRow[], required
    - `company_id` string, required
    - `company_name` string, required
    - `user_count` integer, required
    - `users_on_global_roles` integer, required
    - `global_roles_in_use` string[], required
    - `unmapped_global_roles` string[], required
    - `company_role_count` integer, required
    - `company_roles_tagged` integer, required
    - `module_coverage` ModuleArchetypeCoverage[], required
      - `module` string, required
      - `archetypes_present` integer, required
      - `archetypes_total` integer, required
      - `complete` boolean, required
    - `has_partial_module` boolean, required
    - `multi_module_roles` MultiModuleRole[], required
      - `role_id` string, required
      - `role_name` string, required
      - `scope` string, required
      - `modules` string[], required
    - `status` string, required

---

[API](https://skmtc.dev/kobaltlabs/apis/kobaltlabs-api.md) - [All operations](https://skmtc.dev/kobaltlabs/apis/kobaltlabs-api/llms.txt) - [OpenAPI document](https://skmtc.dev/kobaltlabs/apis/kobaltlabs-api/revisions/8587332d5e43?raw)
