---
title: "Search across projects"
method: POST
path: "/accounts/{account_id}/search"
tags: ["Search"]
---

# Search across projects

`POST /accounts/{account_id}/search`

Search for keys and translations in all account projects

*Note: Search is limited to 10000 results and may not include recently updated data depending on the project sizes.*

## Path parameters

- `account_id` string, required

## Headers

- `X-PhraseApp-OTP` string

## Request body

- object
  - `query` string — Search query
  - `locale_code` string — Locale code
  - `page` integer — Page
  - `per_page` integer — Number of results per page
  - `project_ids` string[] — Limit the search to the given project codes. When omitted, the search spans every project the user can access in this account.

## Response `200`

OK

- object
  - `query` string
  - `excerpt` string
  - `key` KeyPreview
    - `id` string
    - `name` string
    - `plural` boolean
    - `use_ordinal_rules` boolean
  - `locale` LocalePreview
    - `id` string
    - `name` string
    - `code` string
  - `project` Project
    - `id` string
    - `name` string
    - `slug` string
    - `main_format` string
    - `project_image_url` string
    - `media` string
    - `account` Account
      - `id` string
      - `name` string
      - `slug` string
      - `company` string
      - `created_at` string, date-time
      - `updated_at` string, date-time
      - `company_logo_url` string
    - `space` object
      - `id` string
      - `name` string
      - `created_at` string, date-time
      - `updated_at` string, date-time
      - `projects_count` integer
    - `point_of_contact` UserPreview
      - `id` string
      - `username` string
      - `name` string
      - `gravatar_uid` string
    - `created_at` string, date-time
    - `updated_at` string, date-time
  - `translation` Translation
    - `id` string
    - `content` string
    - `unverified` boolean
    - `excluded` boolean
    - `plural_suffix` string
    - `key` KeyPreview
      - `id` string
      - `name` string
      - `plural` boolean
      - `use_ordinal_rules` boolean
    - `locale` LocalePreview
      - `id` string
      - `name` string
      - `code` string
    - `placeholders` string[]
    - `state` string
    - `created_at` string, date-time
    - `updated_at` string, date-time
    - `linked_translation` object
      - `id` string
      - `content` string
  - `other_translations` Translation[]
    - `id` string
    - `content` string
    - `unverified` boolean
    - `excluded` boolean
    - `plural_suffix` string
    - `key` KeyPreview
      - `id` string
      - `name` string
      - `plural` boolean
      - `use_ordinal_rules` boolean
    - `locale` LocalePreview
      - `id` string
      - `name` string
      - `code` string
    - `placeholders` string[]
    - `state` string
    - `created_at` string, date-time
    - `updated_at` string, date-time
    - `linked_translation` object
      - `id` string
      - `content` string

## Other responses

- `400` — Bad request. The request could not be parsed or a parameter failed validation. Verify the request body, the content type, and the parameter types, then retry.
- `401` — Unauthorized. Authentication failed because the access token is missing, expired, or invalid. Supply a valid access token and retry.
- `403` — Forbidden. The credentials are valid but not permitted for this request: the access token may lack the required scope, the user may lack permission on the resource, or the account plan may not include the feature. Use a token with the required scope on an account and user that hold the necessary permissions.
- `404` — Not found. The requested resource does not exist or is not visible to the authenticated user. Verify the identifiers in the request path and that the token has access to them, then retry.
- `429` — Too many requests. The rate limit has been exceeded. Wait until the time indicated by the `X-Rate-Limit-Reset` response header before retrying.

---

[API](https://skmtc.net/phrase/apis/control-hub-service.md) · [All operations](https://skmtc.net/phrase/apis/control-hub-service/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/phrase/control-hub-service/revisions/98ecac7ba2bf/schema)
