---
title: "Get work location metadata"
method: POST
path: "/employers/work-locations/metadata/search"
tags: ["Work locations"]
---

# Get work location metadata

`POST /employers/work-locations/metadata/search`

Discover the readable work-location field catalog, including custom fields.

## Request body

- SearchWorkLocationsMetadataInput — Request body for a work-location metadata search. All members are optional — send an empty body (`{}`) to return the object with its default properties.
  - `objectProperties` string[], nullable — Object properties to fetch. When empty, only `id` is returned.
  - `fields` MetadataFieldsSelector — Field-selection options for a metadata search.
    - `properties` string[], nullable — Field properties to fetch. When empty, only the default `id` and `type` are returned. Additional supported properties: `isRequired`, `status`, `displayName`, `description`, `validations`.
    - `filters` MetadataFilter[], nullable — Filters over fields. When empty, all active fields are returned. Supported filter properties: `status` and `id`.
      - `property` string, required — Field property to filter on. Supported: `status` and `id`.
      - `operator` string, required — Comparison operator. Commonly `equals`.
      - `values` string[], required — Values to compare against, as JSON strings.

## Response `200`

Metadata-search response. Follows the OOTB-object metadata-search guideline:
a list of object-metadata entries, each with its properties and (optionally)
its field definitions.

- SearchMetadataOutput — Metadata-search response. Follows the OOTB-object metadata-search guideline: a list of object-metadata entries, each with its properties and (optionally) its field definitions.
  - `items` ObjectMetadata[], required — Object-metadata entries. One entry per matching object type.
    - `id` string, required — Unique identifier of the object type (for example `employer` or `workLocation`).
    - `displayName` string, nullable — Human-readable name of the object.
    - `fields` FieldMetadata[], nullable — Field definitions. Present only when `fields` was requested.
      - `id` string, required — Path-style field ID (for example `/employer/legalName`). Use this value in the `fields` and `filters` of the matching search endpoint.
      - `type` FieldDataType, required — Data-type wrapper for a field, per the metadata guideline.
        - `dataType` string, required — Field data type. One of the basic types `text`, `date`, `short-date`, `boolean`, `number`, `time`, `currency`, or the reference types `objectReference`, `employee-reference`, `document`, `list`, `multi-list`, `hierarchy-list`.
        - `referenceId` string, nullable — Reference target. Present only when `dataType` is `objectReference` (the referenced object type) or `list` / `multi-list` / `hierarchy-list` (the referenced list ID, for example `countries`).
      - `displayName` string, nullable — Human-readable display name of the field.
      - `description` string, nullable — Field description / help text.
      - `isRequired` boolean, nullable — Whether the field must be supplied when creating the object. Reads in this API are read-only regardless of this flag.
      - `status` string, nullable — Field status — `active` or `archived`.
      - `validations` Validation[], nullable — Validation rules that apply to the field.
        - `type` string, nullable — Validation type (for example `regex`).
        - `value` string, nullable — Validation value (for example a regular-expression pattern).

## Other responses

- `400` — Bad request — the request was malformed, missing required parameters, or referenced an unknown field ID or unsupported filter operator
- `401` — Unauthorized — authentication credentials are missing or invalid
- `403` — Forbidden — the caller lacks the required permission, the `employers:read` scope, or its source IP is not on the company IP trust list
- `429` — Too many requests — rate limit exceeded, retry after the indicated delay
- `500` — Internal server error — an unexpected error occurred on the server

---

[API](https://skmtc.net/hibob/apis/employee-data-api.md) · [All operations](https://skmtc.net/hibob/apis/employee-data-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/hibob/employee-data-api/revisions/0781ebbdda91/schema)
