> ## Documentation Index
> Fetch the complete documentation index at: https://docs.qobra.co/llms.txt
> Use this file to discover all available pages before exploring further.

# get_user

Return the full profile of a single user in your company.

Beyond identity (name, email, role, currencies, status), the result joins in the
user's integrations (with the connector's human name), managers, group
attributions, compensation-plan attributions and custom user attributes.
Membership windows (manager / group / plan) are `YYYY-MM` month strings; a
null end / departure date means the assignment is still ongoing. Each attribute
is rendered human-readable — amounts carry their currency, dates are
`YYYY-MM-DD`, picklists and user references resolve to labels and emails
rather than ids — and an unset attribute surfaces as null.

## Parameters

<Accordion title="Body" defaultOpen>
  <ParamField body="identifier" type="string" required>
    The user to look up. Either the user's ObjectId, or a free-text search
    matched against the user's normalized name+email field (same matching as
    list\_users). The search must resolve to exactly one user — a name or email
    fragment is fine; an ambiguous term that matches several users is rejected
    with a clear error.
  </ParamField>
</Accordion>

## Response

<Accordion title="Body" defaultOpen>
  <ResponseField name="id" type="string" />

  <ResponseField name="resource_url" type="string">
    Deep link to open this user in the Qobra web app.
  </ResponseField>

  <ResponseField name="name" type="string" />

  <ResponseField name="email" type="string" />

  <ResponseField name="status" type="string">
    User lifecycle state: pending (invited, not logged in yet), active, inactive
    (deactivated), archived (has left the company; hidden by default in
    list\_users). One of: `inactive`, `pending`, `active`, `archived`.
  </ResponseField>

  <ResponseField name="role" type="string">
    Name of the user's permission role (not their status).
  </ResponseField>

  <ResponseField name="payment_currency" type="string">
    Currency the user is actually paid in. One of: `AED`, `AFN`, `ALL`, `AMD`,
    `ANG`, `AOA`, `ARS`, `AUD`, `AWG`, `AZN`, `BAM`, `BBD`, `BDT`, `BGN`, `BHD`,
    `BIF`, `BMD`, `BND`, `BOB`, `BOV`, `BRL`, `BSD`, `BTN`, `BWP`, `BYR`, `BZD`,
    `CAD`, `CDF`, `CHF`, `CLF`, `CLP`, `CNY`, `COP`, `COU`, `CRC`, `CUC`, `CUP`,
    `CVE`, `CZK`, `DJF`, `DKK`, `DOP`, `DZD`, `EGP`, `ERN`, `ETB`, `EUR`, `FJD`,
    `FKP`, `GBP`, `GEL`, `GHS`, `GIP`, `GMD`, `GNF`, `GTQ`, `GYD`, `HKD`, `HNL`,
    `HRK`, `HTG`, `HUF`, `IDR`, `ILS`, `INR`, `IQD`, `IRR`, `ISK`, `JMD`, `JOD`,
    `JPY`, `KES`, `KGS`, `KHR`, `KMF`, `KPW`, `KRW`, `KWD`, `KYD`, `KZT`, `LAK`,
    `LBP`, `LKR`, `LRD`, `LSL`, `LTL`, `LVL`, `LYD`, `MAD`, `MDL`, `MGA`, `MKD`,
    `MMK`, `MNT`, `MOP`, `MRO`, `MUR`, `MVR`, `MWK`, `MXN`, `MYR`, `MZN`, `NAD`,
    `NGN`, `NIO`, `NOK`, `NPR`, `NZD`, `OMR`, `PAB`, `PEN`, `PGK`, `PHP`, `PKR`,
    `PLN`, `PYG`, `QAR`, `RMB`, `RON`, `RSD`, `RUB`, `RWF`, `SAR`, `SBD`, `SCR`,
    `SDG`, `SEK`, `SGD`, `SHP`, `SLL`, `SOS`, `SRD`, `STD`, `SVC`, `SYP`, `SZL`,
    `THB`, `TJS`, `TMT`, `TND`, `TOP`, `TRY`, `TTD`, `TWD`, `TZS`, `UAH`, `UGX`,
    `USD`, `UYI`, `UYU`, `UZS`, `VEF`, `VND`, `VUV`, `WON`, `WST`, `XAF`, `XAG`,
    `XAU`, `XCD`, `XOF`, `XPD`, `XPF`, `XPT`, `XSU`, `YER`, `ZAR`, `ZMK`, `ZWL`.
  </ResponseField>

  <ResponseField name="calculation_currency" type="string">
    Currency the user's commissions are computed in. One of: `AED`, `AFN`,
    `ALL`, `AMD`, `ANG`, `AOA`, `ARS`, `AUD`, `AWG`, `AZN`, `BAM`, `BBD`, `BDT`,
    `BGN`, `BHD`, `BIF`, `BMD`, `BND`, `BOB`, `BOV`, `BRL`, `BSD`, `BTN`, `BWP`,
    `BYR`, `BZD`, `CAD`, `CDF`, `CHF`, `CLF`, `CLP`, `CNY`, `COP`, `COU`, `CRC`,
    `CUC`, `CUP`, `CVE`, `CZK`, `DJF`, `DKK`, `DOP`, `DZD`, `EGP`, `ERN`, `ETB`,
    `EUR`, `FJD`, `FKP`, `GBP`, `GEL`, `GHS`, `GIP`, `GMD`, `GNF`, `GTQ`, `GYD`,
    `HKD`, `HNL`, `HRK`, `HTG`, `HUF`, `IDR`, `ILS`, `INR`, `IQD`, `IRR`, `ISK`,
    `JMD`, `JOD`, `JPY`, `KES`, `KGS`, `KHR`, `KMF`, `KPW`, `KRW`, `KWD`, `KYD`,
    `KZT`, `LAK`, `LBP`, `LKR`, `LRD`, `LSL`, `LTL`, `LVL`, `LYD`, `MAD`, `MDL`,
    `MGA`, `MKD`, `MMK`, `MNT`, `MOP`, `MRO`, `MUR`, `MVR`, `MWK`, `MXN`, `MYR`,
    `MZN`, `NAD`, `NGN`, `NIO`, `NOK`, `NPR`, `NZD`, `OMR`, `PAB`, `PEN`, `PGK`,
    `PHP`, `PKR`, `PLN`, `PYG`, `QAR`, `RMB`, `RON`, `RSD`, `RUB`, `RWF`, `SAR`,
    `SBD`, `SCR`, `SDG`, `SEK`, `SGD`, `SHP`, `SLL`, `SOS`, `SRD`, `STD`, `SVC`,
    `SYP`, `SZL`, `THB`, `TJS`, `TMT`, `TND`, `TOP`, `TRY`, `TTD`, `TWD`, `TZS`,
    `UAH`, `UGX`, `USD`, `UYI`, `UYU`, `UZS`, `VEF`, `VND`, `VUV`, `WON`, `WST`,
    `XAF`, `XAG`, `XAU`, `XCD`, `XOF`, `XPD`, `XPF`, `XPT`, `XSU`, `YER`, `ZAR`,
    `ZMK`, `ZWL`.
  </ResponseField>

  <ResponseField name="licensed" type="boolean">
    Whether the user holds a paid Qobra license (a seat). Only licensed users
    have their compensations calculated and a statement to view — an unlicensed
    user's statement is never computed, which is the usual reason someone 'can't
    see X's statement'. A newly-arrived user typically needs a license added; a
    departed user who no longer appears in the data is a candidate for archiving
    to free their seat.
  </ResponseField>

  <ResponseField name="license_missing" type="boolean">
    True when the user is NOT licensed yet has compensations that would
    otherwise be calculated — the statement can't be computed for lack of a
    seat. This is what raises the red warning banner at the top of a statement;
    resolve it by assigning the user a license.
  </ResponseField>

  <ResponseField name="integrations" type="object[]">
    <Expandable title="object properties">
      <ResponseField name="integration_name" type="string" />

      <ResponseField name="external_id" type="string" />

      <ResponseField name="secondary_ids" type="string[]" />
    </Expandable>
  </ResponseField>

  <ResponseField name="managers" type="object[]">
    <Expandable title="object properties">
      <ResponseField name="email" type="string" />

      <ResponseField name="start_date" type="string">
        YYYY-MM; the month the management started.
      </ResponseField>

      <ResponseField name="end_date" type="string">
        YYYY-MM; null while the management is still ongoing.
      </ResponseField>
    </Expandable>
  </ResponseField>

  <ResponseField name="groups" type="object[]">
    <Expandable title="object properties">
      <ResponseField name="name" type="string" />

      <ResponseField name="dimension" type="string" />

      <ResponseField name="arrival_date" type="string">
        YYYY-MM; the month the user joined the group.
      </ResponseField>

      <ResponseField name="departure_date" type="string">
        YYYY-MM; null while the membership is still ongoing.
      </ResponseField>
    </Expandable>
  </ResponseField>

  <ResponseField name="plans" type="object[]">
    <Expandable title="object properties">
      <ResponseField name="name" type="string" />

      <ResponseField name="arrival_date" type="string">
        YYYY-MM; the month the user joined the plan.
      </ResponseField>

      <ResponseField name="departure_date" type="string">
        YYYY-MM; null while the attribution is still ongoing.
      </ResponseField>
    </Expandable>
  </ResponseField>

  <ResponseField name="attributes" type="object[]">
    <Expandable title="object properties">
      <ResponseField name="name" type="string" />

      <ResponseField name="value" type="any" />

      <ResponseField name="currency" type="string">
        One of: `AED`, `AFN`, `ALL`, `AMD`, `ANG`, `AOA`, `ARS`, `AUD`, `AWG`,
        `AZN`, `BAM`, `BBD`, `BDT`, `BGN`, `BHD`, `BIF`, `BMD`, `BND`, `BOB`,
        `BOV`, `BRL`, `BSD`, `BTN`, `BWP`, `BYR`, `BZD`, `CAD`, `CDF`, `CHF`,
        `CLF`, `CLP`, `CNY`, `COP`, `COU`, `CRC`, `CUC`, `CUP`, `CVE`, `CZK`,
        `DJF`, `DKK`, `DOP`, `DZD`, `EGP`, `ERN`, `ETB`, `EUR`, `FJD`, `FKP`,
        `GBP`, `GEL`, `GHS`, `GIP`, `GMD`, `GNF`, `GTQ`, `GYD`, `HKD`, `HNL`,
        `HRK`, `HTG`, `HUF`, `IDR`, `ILS`, `INR`, `IQD`, `IRR`, `ISK`, `JMD`,
        `JOD`, `JPY`, `KES`, `KGS`, `KHR`, `KMF`, `KPW`, `KRW`, `KWD`, `KYD`,
        `KZT`, `LAK`, `LBP`, `LKR`, `LRD`, `LSL`, `LTL`, `LVL`, `LYD`, `MAD`,
        `MDL`, `MGA`, `MKD`, `MMK`, `MNT`, `MOP`, `MRO`, `MUR`, `MVR`, `MWK`,
        `MXN`, `MYR`, `MZN`, `NAD`, `NGN`, `NIO`, `NOK`, `NPR`, `NZD`, `OMR`,
        `PAB`, `PEN`, `PGK`, `PHP`, `PKR`, `PLN`, `PYG`, `QAR`, `RMB`, `RON`,
        `RSD`, `RUB`, `RWF`, `SAR`, `SBD`, `SCR`, `SDG`, `SEK`, `SGD`, `SHP`,
        `SLL`, `SOS`, `SRD`, `STD`, `SVC`, `SYP`, `SZL`, `THB`, `TJS`, `TMT`,
        `TND`, `TOP`, `TRY`, `TTD`, `TWD`, `TZS`, `UAH`, `UGX`, `USD`, `UYI`,
        `UYU`, `UZS`, `VEF`, `VND`, `VUV`, `WON`, `WST`, `XAF`, `XAG`, `XAU`,
        `XCD`, `XOF`, `XPD`, `XPF`, `XPT`, `XSU`, `YER`, `ZAR`, `ZMK`, `ZWL`.
      </ResponseField>
    </Expandable>
  </ResponseField>
</Accordion>
