Every API here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for apis
7 MCP tools reach this
find_apisBrowse and filter every API in the catalog.
get_api_artifactsOne API's artifacts, grouped by type.
get_openapiThe primary OpenAPI for this API.
find_similar_apisAPIs that look like this one.
apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
resolveTurn a domain, URL or GitHub org into the provider it belongs to.
find_cohortsEvery scored population of providers in the catalog.
All 92 tools →
Call it yourself
curl for this page
This API
curl "https://apis.io/api/v1/apis/drata-personnel-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we
store it to create your key and to recognise you if you sign in with another
provider. See our Privacy Policy and
Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Drata Personnel API
version: V2
contact: {}
description: 'Operations tagged Personnel across 2 of this provider''s published API definitions: drata-api-v2-openapi.json, drata-api-v2-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://public-api.drata.com/public/v2
- url: https://public-api.eu.drata.com/public/v2
- url: https://public-api.apac.drata.com/public/v2
tags:
- name: Personnel
description: Personnel are people who work for your organization. The [help docs](https://help.drata.com/en/collections/2653981) have more information.
paths:
/personnel:
get:
description: 'Get a paginated list of Personnel records.
🔒 Requires **Personnel: List Personnel** permission.'
operationId: PersonnelPublicV2Controller_listPersonnel
parameters:
- name: cursor
required: false
in: query
description: This parameter is used to paginate through results. No value is needed for the first request. If there are additional results, the response will contain a `pagination.cursor` value that can be used in the subsequent request to retrieve the next page of results
schema:
type: string
- name: size
required: false
in: query
description: Number of results to return
schema:
minimum: 1
maximum: 500
default: 50
type: number
- name: sort
required: false
in: query
description: Which field to sort by
schema:
$ref: '#/components/schemas/SortTypeLimitedEnum'
- name: sortDir
required: false
in: query
description: The direction to sort the data
schema:
$ref: '#/components/schemas/SortDirectionEnum'
- name: includeTotalCount
required: false
in: query
description: Include total count of all matching records in response. Only honored on first page (when cursor is null).
schema:
default: false
example: false
type: boolean
- name: expand[]
required: false
in: query
description: List of subcollections and sub-objects to expand
schema:
type: array
items:
$ref: '#/components/schemas/PersonnelExpandEnum'
- name: employmentStatus[]
required: false
in: query
description: Personnel by employment statuses
schema:
type: array
items:
$ref: '#/components/schemas/EmploymentStatusEnum'
- name: complianceStatus[]
required: false
in: query
description: Filter Personnel by overall compliance status
schema:
type: array
items:
$ref: '#/components/schemas/ComplianceCheckStatusEnum'
responses:
'200':
description: Successful
content:
application/json:
schema:
$ref: '#/components/schemas/PersonnelResponsePublicV2Dto'
'400':
description: Malformed data and/or validation errors
content:
application/json:
schema:
$ref: '#/components/schemas/ExceptionResponsePublicV2Dto'
'401':
description: Invalid Authorization
content:
application/json:
schema:
$ref: '#/components/schemas/ExceptionResponseDto'
'403':
description: You are not allowed to perform this action
content:
application/json:
schema:
$ref: '#/components/schemas/ExceptionResponseDto'
'412':
description: You must accept the Drata terms and conditions to use the API
content:
application/json:
schema:
$ref: '#/components/schemas/ExceptionResponseDto'
'500':
description: Internal server error
content:
application/json:
schema:
$ref: '#/components/schemas/ExceptionResponseDto'
security:
- bearer: []
summary: List Personnel
tags:
- Personnel
x-drata-permissions:
- personnel-get
x-product-area:
- PERSONNEL_PAGE
servers:
- url: https://public-api.drata.com/public/v2
- url: https://public-api.eu.drata.com/public/v2
- url: https://public-api.apac.drata.com/public/v2
/personnel-search:
get:
description: 'Personnel listing across all accessible workspaces, backed by OpenSearch. Supports full-text search via `q`, prefix matching on `firstName`/`lastName`, and a richer filter / sort surface than `GET /personnel`. Results are eventually consistent: use `GET /personnel` if read-your-writes freshness is required.
🔒 Requires **Personnel: List Personnel** permission.'
operationId: PersonnelPublicV2Controller_searchPersonnelAcrossWorkspaces
parameters:
- name: cursor
required: false
in: query
description: This parameter is used to paginate through results. No value is needed for the first request. If there are additional results, the response will contain a `pagination.cursor` value that can be used in the subsequent request to retrieve the next page of results
schema:
type: string
- name: size
required: false
in: query
description: Number of results to return
schema:
minimum: 1
maximum: 500
default: 50
type: number
- name: sort
required: false
in: query
description: Which field to sort by
schema:
$ref: '#/components/schemas/PersonnelSortEnum'
- name: sortDir
required: false
in: query
description: The direction to sort the data
schema:
$ref: '#/components/schemas/SortDirectionEnum'
- name: includeTotalCount
required: false
in: query
description: Include total count of all matching records in response. Only honored on first page (when cursor is null).
schema:
default: false
example: false
type: boolean
- name: expand[]
required: false
in: query
description: List of subcollections and sub-objects to expand
schema:
type: array
items:
$ref: '#/components/schemas/PersonnelSearchExpandEnum'
- name: facets[]
required: false
in: query
description: Filter dimensions for which to return value counts in the response. Only honored on the first page (when `cursor` is null). Each requested facet adds one terms aggregation to the OpenSearch query. Bounded enum facets are enriched with zero-count entries; unbounded facets (like `groupIds`) return only values present in the result set.
schema:
type: array
items:
$ref: '#/components/schemas/PersonnelSearchFacetEnum'
- name: q
required: false
in: query
description: Free-text search across `firstName`, `lastName`, `fullName`, `email`, and `jobTitle`. Fuzzy, prefix-aware, and relevance-ranked.
schema:
maxLength: 191
example: Smith
type: string
- name: firstName
required: false
in: query
description: Filter Personnel whose first name starts with the provided value (prefix match, case-insensitive). For example, `firstName=John` matches Personnel named John, Johnathan, Johnny, etc.
schema:
maxLength: 191
example: John
type: string
- name: lastName
required: false
in: query
description: Filter Personnel whose last name starts with the provided value (prefix match, case-insensitive). For example, `lastName=Sm` matches Personnel named Smith, Smithson, etc.
schema:
maxLength: 191
example: Sm
type: string
- name: employmentStatus[]
required: false
in: query
description: Filter Personnel by one or more employment statuses.
schema:
type: array
items:
$ref: '#/components/schemas/EmploymentStatusEnum'
- name: complianceStatus[]
required: false
in: query
description: Filter Personnel by overall compliance status. `OUT_OF_SCOPE` matches personnel whose compliance status is suppressed (out-of-scope contractors, future hires, etc.).
schema:
type: array
items:
$ref: '#/components/schemas/ComplianceCheckStatusPublicV2Enum'
- name: acceptedPoliciesStatus[]
required: false
in: query
description: Filter Personnel by accepted-policies compliance status.
schema:
type: array
items:
$ref: '#/components/schemas/ComplianceCheckStatusPublicV2Enum'
- name: bgCheckStatus[]
required: false
in: query
description: Filter Personnel by background-check compliance status.
schema:
type: array
items:
$ref: '#/components/schemas/ComplianceCheckStatusPublicV2Enum'
- name: identityMfaStatus[]
required: false
in: query
description: Filter Personnel by identity MFA compliance status.
schema:
type: array
items:
$ref: '#/components/schemas/ComplianceCheckStatusPublicV2Enum'
- name: securityTrainingStatus[]
required: false
in: query
description: Filter Personnel by security training compliance status.
schema:
type: array
items:
$ref: '#/components/schemas/ComplianceCheckStatusPublicV2Enum'
- name: hipaaTrainingStatus[]
required: false
in: query
description: Filter Personnel by HIPAA training compliance status.
schema:
type: array
items:
$ref: '#/components/schemas/ComplianceCheckStatusPublicV2Enum'
- name: aiAwarenessTrainingStatus[]
required: false
in: query
description: Filter Personnel by AI awareness training compliance status.
schema:
type: array
items:
$ref: '#/components/schemas/ComplianceCheckStatusPublicV2Enum'
- name: offboardingStatus[]
required: false
in: query
description: Filter Personnel by offboarding compliance status. Only matches personnel who have started or completed offboarding (i.e. have a separation date); currently-active personnel are not in scope for this filter.
schema:
type: array
items:
$ref: '#/components/schemas/ComplianceCheckStatusPublicV2Enum'
- name: agentInstalledStatus[]
required: false
in: query
description: Filter Personnel by whether the Drata Agent compliance check passes on their devices.
schema:
type: array
items:
$ref: '#/components/schemas/ComplianceCheckStatusPublicV2Enum'
- name: passwordManagerStatus[]
required: false
in: query
description: 'Filter Personnel by the device-rollup password-manager compliance status (worst-of-N across their devices). ⚠️ Coverage limitation: this filter excludes personnel without applicable device compliance data. This includes out-of-scope employment statuses, personnel with no devices, and personnel whose only device has an unknown management source. Filtering by `OUT_OF_SCOPE` returns no results for this filter.'
schema:
type: array
items:
$ref: '#/components/schemas/ComplianceCheckStatusPublicV2Enum'
- name: diskEncryptionStatus[]
required: false
in: query
description: 'Filter Personnel by the device-rollup disk-encryption compliance status (worst-of-N across their devices). ⚠️ Coverage limitation: this filter excludes personnel without applicable device compliance data. This includes out-of-scope employment statuses, personnel with no devices, and personnel whose only device has an unknown management source. Filtering by `OUT_OF_SCOPE` returns no results for this filter.'
schema:
type: array
items:
$ref: '#/components/schemas/ComplianceCheckStatusPublicV2Enum'
- name: antivirusStatus[]
required: false
in: query
description: 'Filter Personnel by the device-rollup antivirus compliance status (worst-of-N across their devices). ⚠️ Coverage limitation: this filter excludes personnel without applicable device compliance data. This includes out-of-scope employment statuses, personnel with no devices, and personnel whose only device has an unknown management source. Filtering by `OUT_OF_SCOPE` returns no results for this filter.'
schema:
type: array
items:
$ref: '#/components/schemas/ComplianceCheckStatusPublicV2Enum'
- name: autoUpdatesStatus[]
required: false
in: query
description: 'Filter Personnel by the device-rollup auto-updates compliance status (worst-of-N across their devices). ⚠️ Coverage limitation: this filter excludes personnel without applicable device compliance data. This includes out-of-scope employment statuses, personnel with no devices, and personnel whose only device has an unknown management source. Filtering by `OUT_OF_SCOPE` returns no results for this filter.'
schema:
type: array
items:
$ref: '#/components/schemas/ComplianceCheckStatusPublicV2Enum'
- name: lockScreenStatus[]
required: false
in: query
description: 'Filter Personnel by the device-rollup lock-screen compliance status (worst-of-N across their devices). ⚠️ Coverage limitation: this filter excludes personnel without applicable device compliance data. This includes out-of-scope employment statuses, personnel with no devices, and personnel whose only device has an unknown management source. Filtering by `OUT_OF_SCOPE` returns no results for this filter.'
schema:
type: array
items:
$ref: '#/components/schemas/ComplianceCheckStatusPublicV2Enum'
- name: groupIds[]
required: false
in: query
description: Filter Personnel by membership in any of the supplied group IDs.
schema:
type: array
items:
type: number
minimum: 1
- name: syncStatus
required: false
in: query
description: Filter Personnel by whether they have any identity (HRIS/IDP) connection. `SYNCED` returns Personnel with at least one identity connection; `NOT_SYNCED` returns Personnel with none.
schema:
$ref: '#/components/schemas/PersonnelSyncStatusPublicV2Enum'
- name: idpConnectionIds[]
required: false
in: query
description: Filter Personnel by their identity provider connection IDs.
schema:
type: array
items:
type: number
minimum: 1
- name: hrisConnectionIds[]
required: false
in: query
description: Filter Personnel by their HRIS provider connection IDs.
schema:
type: array
items:
type: number
minimum: 1
- name: customFields
required: false
in: query
description: Filter Personnel by Custom Field equality. Repeat the parameter with bracketed indices, e.g. `customFields[0][customFieldId]=42&customFields[0][value]=Engineering` (or `customFields[0][name]=Department` in place of `customFieldId`). Multiple entries are AND-ed.
schema:
type: array
items:
$ref: '#/components/schemas/CustomFieldFilterPublicV2Dto'
- name: customRangeFields
required: false
in: query
description: Filter Personnel by Custom Field range. Repeat the parameter with bracketed indices, e.g. `customRangeFields[0][customFieldId]=99&customRangeFields[0][gte]=5&customRangeFields[0][lte]=10` (or `customRangeFields[0][name]=Score` in place of `customFieldId`). At least one of `gte` / `lte` must be supplied per entry. Multiple entries are AND-ed.
schema:
type: array
items:
$ref: '#/components/schemas/CustomRangeFieldFilterPublicV2Dto'
responses:
'200':
description: Successful
content:
application/json:
schema:
$ref: '#/components/schemas/PersonnelSearchResponsePublicV2Dto'
'400':
description: Malformed data and/or validation errors
content:
application/json:
schema:
$ref: '#/components/schemas/ExceptionResponsePublicV2Dto'
'401':
description: Invalid Authorization
content:
application/json:
schema:
$ref: '#/components/schemas/ExceptionResponseDto'
'403':
description: You are not allowed to perform this action
content:
application/json:
schema:
$ref: '#/components/schemas/ExceptionResponseDto'
'412':
description: You must accept the Drata terms and conditions to use the API
content:
application/json:
schema:
$ref: '#/components/schemas/ExceptionResponseDto'
'500':
description: Internal server error
content:
application/json:
schema:
$ref: '#/components/schemas/ExceptionResponseDto'
security:
- bearer: []
summary: Search Personnel across all workspaces
tags:
- Personnel
x-drata-permissions:
- personnel-get
x-product-area:
- PERSONNEL_PAGE
servers:
- url: https://public-api.drata.com/public/v2
- url: https://public-api.eu.drata.com/public/v2
- url: https://public-api.apac.drata.com/public/v2
/workspaces/{workspaceId}/personnel-search:
get:
description: 'Workspace-scoped Personnel listing backed by OpenSearch. Supports full-text search via `q`, prefix matching on `firstName`/`lastName`, and a richer filter / sort surface than `GET /personnel`. Results are eventually consistent; use `GET /personnel` if read-your-writes freshness is required.
🔒 Requires **Personnel: List Personnel** permission.'
operationId: PersonnelPublicV2Controller_searchPersonnel
parameters:
- name: workspaceId
required: true
in: path
description: The Workspace ID associated to the Account
schema:
type: number
- name: cursor
required: false
in: query
description: This parameter is used to paginate through results. No value is needed for the first request. If there are additional results, the response will contain a `pagination.cursor` value that can be used in the subsequent request to retrieve the next page of results
schema:
type: string
- name: size
required: false
in: query
description: Number of results to return
schema:
minimum: 1
maximum: 500
default: 50
type: number
- name: sort
required: false
in: query
description: Which field to sort by
schema:
$ref: '#/components/schemas/PersonnelSortEnum'
- name: sortDir
required: false
in: query
description: The direction to sort the data
schema:
$ref: '#/components/schemas/SortDirectionEnum'
- name: includeTotalCount
required: false
in: query
description: Include total count of all matching records in response. Only honored on first page (when cursor is null).
schema:
default: false
example: false
type: boolean
- name: expand[]
required: false
in: query
description: List of subcollections and sub-objects to expand
schema:
type: array
items:
$ref: '#/components/schemas/PersonnelSearchExpandEnum'
- name: facets[]
required: false
in: query
description: Filter dimensions for which to return value counts in the response. Only honored on the first page (when `cursor` is null). Each requested facet adds one terms aggregation to the OpenSearch query. Bounded enum facets are enriched with zero-count entries; unbounded facets (like `groupIds`) return only values present in the result set.
schema:
type: array
items:
$ref: '#/components/schemas/PersonnelSearchFacetEnum'
- name: q
required: false
in: query
description: Free-text search across `firstName`, `lastName`, `fullName`, `email`, and `jobTitle`. Fuzzy, prefix-aware, and relevance-ranked.
schema:
maxLength: 191
example: Smith
type: string
- name: firstName
required: false
in: query
description: Filter Personnel whose first name starts with the provided value (prefix match, case-insensitive). For example, `firstName=John` matches Personnel named John, Johnathan, Johnny, etc.
schema:
maxLength: 191
example: John
type: string
- name: lastName
required: false
in: query
description: Filter Personnel whose last name starts with the provided value (prefix match, case-insensitive). For example, `lastName=Sm` matches Personnel named Smith, Smithson, etc.
schema:
maxLength: 191
example: Sm
type: string
- name: employmentStatus[]
required: false
in: query
description: Filter Personnel by one or more employment statuses.
schema:
type: array
items:
$ref: '#/components/schemas/EmploymentStatusEnum'
- name: complianceStatus[]
required: false
in: query
description: Filter Personnel by overall compliance status. `OUT_OF_SCOPE` matches personnel whose compliance status is suppressed (out-of-scope contractors, future hires, etc.).
schema:
type: array
items:
$ref: '#/components/schemas/ComplianceCheckStatusPublicV2Enum'
- name: acceptedPoliciesStatus[]
required: false
in: query
description: Filter Personnel by accepted-policies compliance status.
schema:
type: array
items:
$ref: '#/components/schemas/ComplianceCheckStatusPublicV2Enum'
- name: bgCheckStatus[]
required: false
in: query
description: Filter Personnel by background-check compliance status.
schema:
type: array
items:
$ref: '#/components/schemas/ComplianceCheckStatusPublicV2Enum'
- name: identityMfaStatus[]
required: false
in: query
description: Filter Personnel by identity MFA compliance status.
schema:
type: array
items:
$ref: '#/components/schemas/ComplianceCheckStatusPublicV2Enum'
- name: securityTrainingStatus[]
required: false
in: query
description: Filter Personnel by security training compliance status.
schema:
type: array
items:
$ref: '#/components/schemas/ComplianceCheckStatusPublicV2Enum'
- name: hipaaTrainingStatus[]
required: false
in: query
description: Filter Personnel by HIPAA training compliance status.
schema:
type: array
items:
$ref: '#/components/schemas/ComplianceCheckStatusPublicV2Enum'
- name: aiAwarenessTrainingStatus[]
required: false
in: query
description: Filter Personnel by AI awareness training compliance status.
schema:
type: array
items:
$ref: '#/components/schemas/ComplianceCheckStatusPublicV2Enum'
- name: offboardingStatus[]
required: false
in: query
description: Filter Personnel by offboarding compliance status. Only matches personnel who have started or completed offboarding (i.e. have a separation date); currently-active personnel are not in scope for this filter.
schema:
type: array
items:
$ref: '#/components/schemas/ComplianceCheckStatusPublicV2Enum'
- name: agentInstalledStatus[]
required: false
in: query
description: Filter Personnel by whether the Drata Agent compliance check passes on their devices.
schema:
type: array
items:
$ref: '#/components/schemas/ComplianceCheckStatusPublicV2Enum'
- name: passwordManagerStatus[]
required: false
in: query
description: 'Filter Personnel by the device-rollup password-manager compliance status (worst-of-N across their devices). ⚠️ Coverage limitation: this filter excludes personnel without applicable device compliance data. This includes out-of-scope employment statuses, personnel with no devices, and personnel whose only device has an unknown management source. Filtering by `OUT_OF_SCOPE` returns no results for this filter.'
schema:
type: array
items:
$ref: '#/components/schemas/ComplianceCheckStatusPublicV2Enum'
- name: diskEncryptionStatus[]
required: false
in: query
description: 'Filter Personnel by the device-rollup disk-encryption compliance status (worst-of-N across their devices). ⚠️ Coverage limitation: this filter excludes personnel without applicable device compliance data. This includes out-of-scope employment statuses, personnel with no devices, and personnel whose only device has an unknown management source. Filtering by `OUT_OF_SCOPE` returns no results for this filter.'
schema:
type: array
items:
$ref: '#/components/schemas/ComplianceCheckStatusPublicV2Enum'
- name: antivirusStatus[]
required: false
in: query
description: 'Filter Personnel by the device-rollup antivirus compliance status (worst-of-N across their devices). ⚠️ Coverage limitation: this filter excludes personnel without applicable device compliance data. This includes out-of-scope employment statuses, personnel with no devices, and personnel whose only device has an unknown management source. Filtering by `OUT_OF_SCOPE` returns no results for this filter.'
schema:
type: array
items:
$ref: '#/components/schemas/ComplianceCheckStatusPublicV2Enum'
- name: autoUpdatesStatus[]
required: false
in: query
description: 'Filter Personnel by the device-rollup auto-updates compliance status (worst-of-N across their devices). ⚠️ Coverage limitation: this filter excludes personnel without applicable device compliance data. This includes out-of-scope employment statuses, personnel with no devices, and personnel whose only device has an unknown management source. Filtering by `OUT_OF_SCOPE` returns no results for this filter.'
schema:
type: array
items:
$ref: '#/components/schemas/ComplianceCheckStatusPublicV2Enum'
- name: lockScreenStatus[]
required: false
in: query
description: 'Filter Personnel by the device-rollup lock-screen compliance status (worst-of-N across their devices). ⚠️ Coverage limitation: this filter excludes personnel without applicable device compliance data. This includes out-of-scope employment statuses, personnel with no devices, and personnel whose only device has an unknown management source. Filtering by `OUT_OF_SCOPE` returns no results for this filter.'
schema:
type: array
items:
$ref: '#/components/schemas/ComplianceCheckStatusPublicV2Enum'
- name: groupIds[]
required: false
in: query
description: Filter Personnel by membership in any of the supplied group IDs.
schema:
type: array
items:
type: number
minimum: 1
- name: syncStatus
required: false
in: query
description: Filter Personnel by whether they have any identity (HRIS/IDP) connection. `SYNCED` returns Personnel with at least one identity connection; `NOT_SYNCED` returns Personnel with none.
schema:
$ref: '#/components/schemas/PersonnelSyncStatusPublicV2Enum'
- name: idpConnectionIds[]
required: false
in: query
description: Filter Personnel by their identity provider connection IDs.
schema:
type: array
items:
type: number
minimum: 1
- name: hrisConnectionIds[]
required: false
in: query
description: Filter Personnel by their HRIS provider connection IDs.
schema:
type: array
items:
type: number
minimum: 1
- name: customFields
required: false
in: query
description: Filter Personnel by Custom Field equality. Repeat the parameter with bracketed indices, e.g. `customFields[0][customFieldId]=42&customFields[0][value]=Engineering` (or `customFields[0][name]=Department` in place of `customFieldId`). Multiple entries are AND-ed.
schema:
type: array
items:
$ref: '#/components/schemas/CustomFieldFilterPublicV2Dto'
- name: customRangeFields
required: false
in: query
description: Filter Personnel by Custom Field range. Repeat the parameter with bracketed indices, e.g. `customRangeFields[0][customFieldId]=99&customRangeFields[0][gte]=5&customRangeFields[0][lte]=10` (or `customRangeFields[0][name]=Score` in place of `customFieldId`). At least one of `gte` / `lte` must be supplied per entry. Multiple entries are AND-ed.
schema:
type: array
items:
$ref: '#/components/schemas/CustomRangeFieldFilterPublicV2Dto'
responses:
'200':
description: Successful
content:
application/json:
schema:
$ref: '#/components/schemas/PersonnelSearchResponsePublicV2Dto'
'400':
description: Malformed data and/or validation errors
content:
application/json:
schema:
$ref: '#/components/schemas/ExceptionResponsePublicV2Dto'
'401':
description: Invalid Authorization
content:
application/json:
schema:
$ref: '#/components/schemas/ExceptionResponseDto'
'403':
description: You are not allowed to perform this action
content:
application/json:
schema:
$ref: '#/components/schemas/ExceptionResponseDto'
'412':
description: You must accept the Drata terms and conditions to use the API
content:
application/json:
schema:
$ref: '#/components/schemas/ExceptionResponseDto'
'500':
description: Internal server error
content:
application/json:
schema:
$ref: '#/components/schemas/ExceptionResponseDto'
security:
- bearer: []
summary: Search Personnel within a workspace
tags:
- Personnel
x-drata-permissions:
- personnel-get
x-product-area:
- PERSONNEL_PAGE
servers:
- url: https://public-api.drata.com/public/v2
- url: https://public-api.eu.drata.com/public/v2
- url: https://public-api.apac.drata.com/public/v2
/personnel/{personnelId}:
get:
description: 'Get a single Personnel record.
🔒 Requires **Personnel: Get Personnel** permission.'
operationId: PersonnelPublicV2Controller_getPerson
parameters:
- name: expand[]
required: false
in: query
description: List of subcollections and sub-objects to expand
schema:
type: array
items:
$ref: '#/components/schemas/PersonnelExpandEnum'
- name: personnelId
required: true
in: path
descr
# --- truncated at 32 KB (96 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/drata/refs/heads/main/openapi/drata-personnel-api-openapi.yml