search_keys
Find a term across a project's translation strings in every language at once (read-only, free, 0 credits). Returns each matching key with a matched_in array telling you WHERE it hit: which language, whether that is the source language, which field (value, plural:<category>, or key_name/description when include_key_name is set), the full field value, and the character offsets of the first match. Cursor-paginated in keys. Scope: Searches base translation values (source + translations, incl. plural forms) and optionally key name/description; a11y surface overrides (aria/alt/screen-reader/plain-language) are NOT included. query is a literal substring (not a regex). Find-only: there is no search-and-replace tool.
Paramètres
Section intitulée « Paramètres »| Nom | Type | Description | |
|---|---|---|---|
query | string | requis | The term to find. A literal substring (case-insensitive by default); NOT a regular expression. |
namespace | string | optionnel | Optional namespace slug to restrict the search to one namespace. |
languages | array | optionnel | Optional BCP-47 codes to restrict which languages are searched, e.g. ['fr','en-CA']. Default: ALL (source + every translation language). |
case_sensitive | boolean | optionnel | Match case-sensitively. Default false. |
whole_word | boolean | optionnel | Match on word boundaries only (so 'log' does not match 'login'). Default false. |
include_key_name | boolean | optionnel | Also search the key NAME and DESCRIPTION (they appear as matched_in entries with language_code:null). Default false. |
limit | integer | optionnel | Page size in KEYS (1-100). Default 25. |
cursor | string | optionnel | Opaque pagination cursor: pass back the cursor_next from the previous page. Cursor-based, not offset. |
project_uuid | string | optionnel | Target project UUID. Optional when exactly one project is configured (SONENTA_PROJECTS); required to disambiguate when several are. |
{ "tool": "search_keys", "arguments": { "query": "<query>" }}