---
title: "Search Projects"
method: GET
path: "/v1/project/"
tags: ["Projects"]
---

# Search Projects

`GET /v1/project/`

Search for sites that match the provided search terms.

Keywords are searched for in the _project name_, _project address_ and _project city_ fields, along with all user defined fields (_udf1_, _udf2_ and _udf3_).

Additional explicit filters are also supported

## Query parameters

- `query` string, nullable
- `skip` integer, nullable
- `limit` integer, nullable
- `sort_direction` 'asc' | 'desc' — Direction to sort the `sort_column` - ascending or descending.
- `date_start` string, date-time, nullable
- `date_cut_off` string, date-time, nullable
- `sort_column` 'updated_at' | 'created_at' | 'id' — Which column to sort on
- `external_ids` string, nullable
- `is_archived` boolean, nullable
- `city` string, nullable
- `country` string, nullable
- `is_private` boolean, nullable
- `prime_id` integer, nullable
- `user_id` integer, nullable

## Response `200`

Successful Response

- ApiGenericListResponseUnifiedProjectShortModel
  - `error` boolean — A boolean error indicator.
  - `message` string, nullable — Optional message.
  - `data` UnifiedProjectShortModel[], nullable — The response data for any given request.
    - `id` integer, nullable — Unique internal project identifier.
    - `name` string, nullable — The project name.
    - `address` string, nullable — The address of the project site.
    - `city` string, nullable — The city of the project site.
    - `country` string, nullable — The country of the project site.
    - `timezone` string, nullable — The timezone associated with the project site.
    - `phone` string, nullable — The main phone number associated with the project site.
    - `siteCode` integer, nullable — Unique 5 digit site code generated by the system.
    - `isPrivate` boolean, nullable — Indicates that a project is private.
    - `primeId` integer, nullable — The prime contractor company ID.
    - `updatedAt` string, date-time, nullable — The time stamp of the last time the field was updated.
    - `createdAt` string, date-time, nullable — The time stamp when the record was created.
    - `companyProject` ProjectCompanyShortModel — Short version of company-specific project details
      - `externalId` string, nullable, required — The unique identifier used by an external system, can be used to support integration.
      - `externalSystemName` string, nullable, required — The name of the external system that the external_id field belongs to.
      - `isArchived` boolean, required — Indicates that a project has been archived for this company.
      - `udf1` string, nullable — Field for storing customer-defined metadata about the site
      - `udf2` string, nullable — Field for storing customer-defined metadata about the site
      - `udf3` string, nullable — Field for storing customer-defined metadata about the site

## Other responses

- `400` — Business Logic Error
- `403` — Permission Error
- `404` — Records Not Found
- `409` — Integrity Error or Data Conflict
- `422` — Validation Error

---

[API](https://skmtc.dev/salussafety/apis/salus-developer-api.md) · [All operations](https://skmtc.dev/salussafety/apis/salus-developer-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/salussafety/salus-developer-api/revisions/ef065f44da25/schema)
