---
title: "Get a user by id, merged with their primary company (admin only)"
method: GET
path: "/api/admin/users/{id}"
tags: ["Administration/Users"]
---

# Get a user by id, merged with their primary company (admin only)

`GET /api/admin/users/{id}`

## Path parameters

- `id` string, required

## Response `200`

Default Response

- object
  - `id` string, required
  - `firstName` string, nullable, required
  - `lastName` string, nullable, required
  - `email` string, nullable, required
  - `primaryCompanyId` string, nullable, required
  - `isRetracedStaff` boolean, required
  - `roleKeys` string[]
  - `companyId` string, nullable, required
  - `company` object, nullable, required
    - `id` string, required
    - `officialName` string, required
    - `name` string, required
    - `transliteratedName` string, nullable
    - `transliteratedOfficialName` string, nullable
    - `description` string, nullable
    - `country` string, required
    - `countryName` string, nullable
    - `county` string, nullable
    - `city` string, nullable
    - `zipCode` string, nullable
    - `addressLine1` string, nullable
    - `addressLine2` string, nullable
    - `phone` string, nullable
    - `website` string, nullable
    - `companySize` string, nullable
    - `companyType` string, nullable
    - `featuredImageFileId` string, nullable
    - `featuredImageFileUrl` string, nullable
    - `originalFeaturedImageFileUrl` string, nullable
    - `videoFileId` string, nullable
    - `videoFileUrl` string, nullable
    - `originalVideoFileUrl` string, nullable
    - `numOfPermanentEmployees` number, nullable
    - `numOfMaleEmployees` number, nullable
    - `numOfFemaleEmployees` number, nullable
    - `facilityProcesses` string, nullable
    - `geojson` string, nullable
    - `imageList` object[], nullable
    - `workosOrganizationId` string, nullable
    - `higgId` string, nullable
    - `globalLocationNumber` string, nullable
    - `vatId` string, nullable
    - `dunsNumber` string, nullable
    - `commercialRegisterNumber` string, nullable
    - `osHubId` string, nullable
    - `annualProductionCapacity` number, nullable
    - `annualProductionCapacityUnit` string, nullable
    - `minimumOrderQuantity` number, nullable
    - `minimumOrderQuantityPerStyle` number, nullable
    - `standardLeadTime` number, nullable
    - `shopId` string, nullable
    - `isDemoCompany` number, nullable
    - `isClientCompany` number, nullable
    - `enabledFeatures` object[], required
      - `id` string, required
      - `name` string, required
      - `description` string, nullable, required
  - `userCompanies` object[], required
    - `id` string, required
    - `companyId` string, required
    - `userId` string, required
    - `isPrimary` boolean, required
    - `hasAgreedWithTerms` boolean, required
    - `hasAgreedWithTermsAt` string, nullable, required
    - `userActivationLastNotifiedAt` string, nullable, required
    - `name` string, nullable, required
    - `officialName` string, nullable, required
    - `facilityProcesses` string, nullable, required
    - `isActiveCompany` number, required
  - `appFeatures` unknown[], required
    - unknown
  - `preferences` object, required
  - `enabledDevelopmentTags` object[], required
    - `featureId` string, required
    - `tag` string, required
    - `name` string, required
    - `description` string, nullable, required
    - `isEnabled` number, required

## Other responses

- `401` — Default Response
- `403` — Default Response
- `404` — Default Response

## Changes

> 43 revisions in range; 1 not diffed.

- **2026-09-17** `b45b2427a621` — 4 breaking
  - removed the required property `role` from the response with the `200` status
  - removed the required property `roleName` from the response with the `200` status
  - removed the required property `userCompanies/items/role` from the response with the `200` status
  - removed the required property `userCompanies/items/roleName` from the response with the `200` status
- **2026-09-15** `5605195a7af2` — 1 breaking, 2 info
  - removed the required property `primaryRole` from the response with the `200` status
  - added the optional property `roleKeys` to the response with the `200` status
  - added the required property `isRetracedStaff` to the response with the `200` status
- **2026-09-14** `3d3a05fa3548` — 1 breaking
  - the response property `userCompanies/items/role` became nullable for the status `200`
- **2026-09-13** `8049f7c86213` — 2 info
  - added the required property `roleName` to the response with the `200` status
  - added the required property `userCompanies/items/roleName` to the response with the `200` status
- …earlier changes not shown

[Full history](https://skmtc.dev/retraced/apis/api-reference/changes/api/admin/users/:id/get.md)

---

[API](https://skmtc.dev/retraced/apis/api-reference.md) · [All operations](https://skmtc.dev/retraced/apis/api-reference/llms.txt) · [OpenAPI document](https://skmtc.dev/retraced/apis/api-reference/revisions/a8932a002646?raw)
