# Patch snippet

> PATCH /v1/snippets/{id} · Settings and configurations API

Source: https://developer.kustomer.com/api/settings-and-configurations/patch-snippet

```http
PATCH https://{orgname}.api.kustomerapp.com/v1/snippets/{id}
Authorization: Bearer <API key>
```

## Authorization

Requires any one of these roles: `org.permission.snippet.update`; or legacy `org.admin.content.snippet.write`, `org.admin.snippet.write`. The API key or user must hold at least one of them. Legacy roles predate permission sets and still work.

Partially updates the requested snippet.

## About Snippets

A snippet is a piece of text stored once with a translation for each language, such as a greeting or a policy sentence. Shortcuts, chat settings and other customer-facing text reference it by key, and Kustomer fills in the right language when the text is shown.

Snippets are how Kustomer translates text that your team writes. Rather than putting a sentence directly into a shortcut or the chat widget's greeting, you create a snippet with one value per language and reference it by key, in double square brackets: `[[sn.org.chat.greeting]]`. When the text is shown, Kustomer replaces the reference with the snippet's value in the requested language, and falls back to the snippet's source language if there's no translation. Editing the snippet updates every place that uses it. Admins manage snippets on the snippets page of the Kustomer admin settings, and Kustomer also provides built-in snippets with keys starting `sn.kustomer.`, such as the default text of knowledge base themes.

#### Snippets and shortcuts

The two work together but do different jobs. A [shortcut](https://developer.kustomer.com/api/settings-and-configurations#shortcuts) is a whole reply an agent inserts into a conversation, with placeholders for customer and conversation data and optional actions on the conversation. A snippet is a single translated string with no logic, which shortcuts, chat settings and other text can include. Use a snippet when the same words must appear in several places or in several languages, and a shortcut when an agent needs a ready-made reply.

#### Key fields

| Field | Meaning |
| --- | --- |
| `key` | The identifier used in `[[...]]` references. Kustomer generates it from `category` and `name` when you create the snippet, as `sn.org.<category>.<name>` in snake case, adding a number if that key is taken. It doesn't change when you rename the snippet. |
| `name`, `description` | Labels for the people managing snippets. `name` is required. |
| `category` | A label for grouping snippets, which also becomes part of the key. |
| `source` | The language the snippet was written in, such as `en_us`. It must be one of the org's languages and defaults to the org's default language. |
| `langs` | The text, keyed by language code: `{ "en_us": { "value": "Go back", "outdated": false }, "es": { "value": "Volver", "outdated": false } }`. Each entry needs both `value` and `outdated`. |

#### Which endpoint to use

| To | Call |
| --- | --- |
| List the org's snippets | [`GET /v1/snippets`](https://developer.kustomer.com/api/settings-and-configurations/get-snippets) |
| Create a snippet | [`POST /v1/snippets`](https://developer.kustomer.com/api/settings-and-configurations/create-snippet) |
| Read a snippet by ID or by key | [`GET /v1/snippets/{id}`](https://developer.kustomer.com/api/settings-and-configurations/get-snippet-by-id-or-key) |
| Replace a snippet's fields, or delete it with `deleted: true` | [`PUT /v1/snippets/{id}`](https://developer.kustomer.com/api/settings-and-configurations/update-snippet) |
| Add or change some translations, keeping the rest | [`PATCH /v1/snippets/{id}`](https://developer.kustomer.com/api/settings-and-configurations/patch-snippet) |

The difference between the two updates is `langs`: `PUT` replaces the whole `langs` object, so any language you leave out is removed, while `PATCH` merges the languages you send into the existing ones. There is no `DELETE` endpoint; `PUT` with `deleted: true` marks the snippet deleted, and the list endpoint still returns snippets deleted this way. Pass `lang` (one code or a comma-separated list) to return only those languages, which keeps responses small, and `fields` on the single-snippet endpoint to choose attributes. Agents with snippet read access can read snippets, but creating or changing them requires an admin role with permission to manage snippets.

Related: [Shortcuts](https://developer.kustomer.com/api/settings-and-configurations#shortcuts), [Chat settings](https://developer.kustomer.com/api/settings-and-configurations#chat-settings), [App internationalization](https://developer.kustomer.com/docs/apps/i18n)

### Recipes

#### 1. Create a translated snippet and use it in a shortcut

Write a reply once in several languages and have each customer get the version in their language.

**Step 1.** [`POST /v1/snippets`](https://developer.kustomer.com/api/settings-and-configurations/create-snippet.md). Create the snippet with every translation you have. Each entry in `langs` needs both `value` and `outdated`. `source` is the language Kustomer falls back to when a customer's language has no translation; leave it out to use the org's default language.

```bash title="cURL"
curl --request POST "https://api.kustomerapp.com/v1/snippets" \
  --header "Authorization: Bearer $KUSTOMER_API_KEY" \
  --header "Content-Type: application/json" \
  --data '{
    "name": "Refund policy",
    "category": "Billing",
    "source": "en_us",
    "langs": {
      "en_us": {"value": "Refunds arrive within 5 business days.", "outdated": false},
      "es": {"value": "Los reembolsos llegan en 5 días hábiles.", "outdated": false}
    }
  }'
```

```bash title="kusty"
KEY=$(kusty api POST /v1/snippets --data @refund-policy.json | jq -r '.data.attributes.key')
```

**Step 2.** [`POST /v1/shortcuts`](https://developer.kustomer.com/api/settings-and-configurations/create-a-shortcut.md). Read the generated `key` from the response, such as `sn.org.billing.refund_policy`. Kustomer builds it from `category` and `name`, adds a number if that key is taken, and keeps it if you rename the snippet later. Reference the key in double square brackets wherever the text should appear, here in a [shortcut](https://developer.kustomer.com/api/settings-and-configurations#shortcuts) reply. Kustomer fills it in with the translation for the conversation's language.

```bash title="cURL"
curl --request POST "https://api.kustomerapp.com/v1/shortcuts" \
  --header "Authorization: Bearer $KUSTOMER_API_KEY" \
  --header "Content-Type: application/json" \
  --data '{"name": "Refund timing", "draft": {"text": "Hi {{customer.firstName}}, [[sn.org.billing.refund_policy]]"}}'
```

```bash title="kusty"
kusty api POST /v1/shortcuts \
  --field "name=Refund timing" \
  --field "draft.text=Hi {{customer.firstName}}, [[$KEY]]"
```

#### 2. Add or fix one translation

Change a single language of a snippet without rewriting the others.

**Step 1.** [`GET /v1/snippets/{id}`](https://developer.kustomer.com/api/settings-and-configurations/get-snippet-by-id-or-key.md). If you only have the key, read the snippet by key to get its ID. Pass `lang` to return just the languages you care about.

```bash title="cURL"
curl "https://api.kustomerapp.com/v1/snippets/sn.org.billing.refund_policy?lang=en_us,fr" \
  --header "Authorization: Bearer $KUSTOMER_API_KEY"
```

```bash title="kusty"
kusty api GET /v1/snippets/sn.org.billing.refund_policy --query lang=en_us,fr --fields id,attributes.langs
```

**Step 2.** [`PATCH /v1/snippets/{id}`](https://developer.kustomer.com/api/settings-and-configurations/patch-snippet.md). `PATCH` merges `langs`, so send only the language you're adding or changing. With `PUT`, `langs` replaces the whole object and any language you leave out is removed.

```bash title="cURL"
curl --request PATCH "https://api.kustomerapp.com/v1/snippets/$SNIPPET_ID" \
  --header "Authorization: Bearer $KUSTOMER_API_KEY" \
  --header "Content-Type: application/json" \
  --data '{"langs": {"fr": {"value": "Les remboursements arrivent sous 5 jours ouvrés.", "outdated": false}}}'
```

```bash title="kusty"
kusty api PATCH /v1/snippets/$SNIPPET_ID \
  --field langs.fr.value="Les remboursements arrivent sous 5 jours ouvrés." \
  --field langs.fr.outdated:=false
```

#### 3. Send outdated translations for review

After the source text of some snippets changes, collect the translations flagged as outdated, hand them to translators, and clear the flag when they're done.

**Step 1.** [`GET /v1/snippets`](https://developer.kustomer.com/api/settings-and-configurations/get-snippets.md). Page through every snippet and keep the languages whose `outdated` flag is `true`. Kustomer doesn't set the flag; it's whatever your team or tooling sent, usually after editing the source text.

```bash title="cURL"
curl "https://api.kustomerapp.com/v1/snippets?page=1&pageSize=100" \
  --header "Authorization: Bearer $KUSTOMER_API_KEY"
```

```bash title="kusty"
kusty api GET /v1/snippets --all \
  | jq -r '.data as $s | $s.attributes.langs // {} | to_entries[]
      | select(.value.outdated == true)
      | [$s.id, $s.attributes.key, .key, $s.attributes.langs[$s.attributes.source].value] | @tsv' \
  > outdated.tsv
```

**Step 2.** [`PATCH /v1/snippets/{id}`](https://developer.kustomer.com/api/settings-and-configurations/patch-snippet.md). For each reviewed translation, send the new text with `outdated: false`. Other languages on the snippet are left as they are.

```bash title="cURL"
curl --request PATCH "https://api.kustomerapp.com/v1/snippets/$SNIPPET_ID" \
  --header "Authorization: Bearer $KUSTOMER_API_KEY" \
  --header "Content-Type: application/json" \
  --data '{"langs": {"es": {"value": "Los reembolsos llegan en 5 días hábiles.", "outdated": false}}}'
```

```bash title="kusty"
kusty api PATCH /v1/snippets/$SNIPPET_ID \
  --field "langs.$LANG.value=$TRANSLATION" \
  --field "langs.$LANG.outdated:=false"
```

> The list also includes Kustomer's built-in snippets, whose keys start with `sn.kustomer.`, and snippets deleted with `PUT`. Filter on `attributes.key` if you only want your own.

### Example object

A real record from [`GET /v1/snippets/{id}`](https://developer.kustomer.com/api/settings-and-configurations/get-snippet-by-id-or-key.md):

```json
{
  "id": "5abd89e8fd266e4225494c5b",
  "type": "snippet",
  "attributes": {
    "name": "404 text part 1",
    "app": "kustomer",
    "description": "Missing page text",
    "source": "en_us",
    "key": "sn.kustomer.404_part1",
    "langs": {
      "en_us": {
        "value": "Sorry, but we couldn’t find that page you were looking for.",
        "outdated": false
      },
      "en_ca": {
        "value": "Sorry, but we couldn’t find that page you were looking for.",
        "outdated": false
      },
      "en_gb": {
        "value": "Sorry, but we couldn’t find that page you were looking for.",
        "outdated": false
      },
      "af": {
        "value": "Jammer, maar ons kon nie die bladsy vind waarna u soek nie.",
        "outdated": false
      },
      "bg": {
        "value": "За съжаление не можахме да намерим тази страница, която търсите.",
        "outdated": false
      },
      "bs": {
        "value": "Žao nam je, ali nismo mogli naći tu stranicu koju ste tražili.",
        "outdated": false
      },
      "ca": {
        "value": "Ho sentim, però no hem pogut trobar la pàgina que buscaves.",
        "outdated": false
      },
      "cs": {
        "value": "Je nám líto, ale nemohli jsme najít tu stránku, kterou jste hledali.",
        "outdated": false
      },
      "da": {
        "value": "Beklager, men vi kunne ikke finde den side, du ledte efter.",
        "outdated": false
      },
      "de": {
        "value": "Entschuldigung, aber wir konnten die von Ihnen gesuchte Seite nicht finden.",
        "outdated": false
      },
      "nl": {
        "value": "Sorry, maar we konden die pagina die u zocht niet vinden.",
        "outdated": false
      },
      "el": {
        "value": "Λυπούμαστε, αλλά δεν μπορούσαμε να βρούμε τη σελίδα που αναζητούσατε.",
        "outdated": false
      },
      "es": {
        "value": "Lo sentimos, pero no pudimos encontrar esa página que estabas buscando.",
        "outdated": false
      },
      "es_es": {
        "value": "Lo sentimos, pero no pudimos encontrar esa página que estabas buscando.",
        "outdated": false
      },
      "et": {
        "value": "Vabandust, aga me ei leia seda lehte, mida otsisite.",
        "outdated": false
      },
      "fi": {
        "value": "Anteeksi, mutta emme löytäneet etsimääsi sivua.",
        "outdated": false
      },
      "fil": {
        "value": "Paumanhin, ngunit hindi namin mahanap ang pahinang iyon na iyong hinahanap.",
        "outdated": false
      },
      "fr": {
        "value": "Désolé, mais nous n'avons pas trouvé cette page que vous cherchiez.",
        "outdated": false
      },
      "fr_ca": {
        "value": "Désolé, mais nous n'avons pas trouvé cette page que vous cherchiez.",
        "outdated": false
      },
      "hi": {
        "value": "क्षमा करें, लेकिन उस पृष्ठ को नहीं मिल सका जिसके लिए आप खोज रहे थे।",
        "outdated": false
      },
      "hr": {
        "value": "Žao nam je, ali nismo uspjeli pronaći tu stranicu koju ste tražili.",
        "outdated": false
      },
      "hu": {
        "value": "Sajnáljuk, de nem találtuk azt az oldalt, amelyet keresett.",
        "outdated": false
      },
      "id": {
        "value": "Maaf, tetapi kami tidak dapat menemukan halaman yang Anda cari.",
        "outdated": false
      },
      "is": {
        "value": "Því miður, en við gátum ekki fundið þann síðu sem þú varst að leita að.",
        "outdated": false
      },
      "it": {
        "value": "Ci dispiace, ma non siamo riusciti a trovare quella pagina che stavi cercando.",
        "outdated": false
      },
      "ja": {
        "value": "申し訳ありませんが、探していたページが見つかりませんでした。",
        "outdated": false
      },
      "ka": {
        "value": "უკაცრავად, მაგრამ ვერ იპოვა ის გვერდი, რომელსაც ეძებდით.",
        "outdated": false
      },
      "ko": {
        "value": "죄송합니다. 찾으시는 페이지를 찾을 수 없습니다.",
        "outdated": false
      },
      "lt": {
        "value": "Deja, mes negalėjome rasti to puslapio, kurį ieškojote.",
        "outdated": false
      },
      "lv": {
        "value": "Atvainojiet, bet mēs nevarējām atrast lapu, kuru meklējāt.",
        "outdated": false
      },
      "no": {
        "value": "Beklager, men vi kunne ikke finne den siden du leter etter.",
        "outdated": false
      },
      "pl": {
        "value": "Przepraszamy, ale nie mogliśmy znaleźć tej strony, której szukasz.",
        "outdated": false
      },
      "pt": {
        "value": "Desculpe, mas não conseguimos encontrar a página que você estava procurando.",
        "outdated": false
      },
      "pt_br": {
        "value": "Desculpe, mas não conseguimos encontrar a página que você estava procurando.",
        "outdated": false
      },
      "ro": {
        "value": "Ne pare rău, însă nu am putut găsi pagina pe care o căutați.",
        "outdated": false
      },
      "ru": {
        "value": "Извините, но мы не смогли найти ту страницу, которую вы искали.",
        "outdated": false
      },
      "sk": {
        "value": "Je nám ľúto, ale nepodarilo sa nám nájsť tú stránku, ktorú ste hľadali.",
        "outdated": false
      },
      "sl": {
        "value": "Oprostite, vendar nismo našli te strani, ki ste jo iskali.",
        "outdated": false
      },
      "sq": {
        "value": "Na vjen keq, por nuk mund ta gjejmë atë faqe që kërkonit.",
        "outdated": false
      },
      "sr": {
        "value": "Жао ми је, али нисмо могли наћи ту страницу коју сте тражили.",
        "outdated": false
      },
      "sr_me": {
        "value": "Жао ми је, али нисмо могли наћи ту страницу коју сте тражили.",
        "outdated": false
      },
      "sv": {
        "value": "Tyvärr, men vi kunde inte hitta den sidan du letade efter.",
        "outdated": false
      },
      "th": {
        "value": "ขออภัยเราไม่พบหน้าเว็บที่คุณต้องการ",
        "outdated": false
      },
      "tr": {
        "value": "Üzgünüz, ama aradığınız sayfayı bulamadık.",
        "outdated": false
      },
      "uk": {
        "value": "Вибачте, але ми не змогли знайти ту сторінку, яку шукали.",
        "outdated": false
      },
      "vi": {
        "value": "Rất tiếc, chúng tôi không thể tìm thấy trang bạn đang tìm kiếm.",
        "outdated": false
      },
      "zh_cn": {
        "value": "对不起，但我们无法找到您要查找的那个网页。",
        "outdated": false
      },
      "zh_tw": {
        "value": "對不起，但我們無法找到您要查找的那個網頁。",
        "outdated": false
      },
      "tw": {
        "value": "Kafra, Na mmom yԑanhunu krataafa a worehwehwԑ no.",
        "outdated": false
      },
      "sw": {
        "value": "Samahani, lakini hatukuweza kupata ukurasa huo unayotaka.",
        "outdated": false
      },
      "kk": {
        "value": "Кешіріңіз, бірақ сіз іздеген парақты таба алмадық.",
        "outdated": false
      },
      "be": {
        "value": "Выбачайце, але мы не змаглі знайсці гэтую старонку, якую вы шукалі.",
        "outdated": false
      },
      "ar_ma": {
        "value": "آسف ، لكن لم نتمكن من العثور على تلك الصفحة التي كنت تبحث عنها.",
        "outdated": false
      },
      "ar_eg": {
        "value": "آسف ، لكن لم نتمكن من العثور على تلك الصفحة التي كنت تبحث عنها.",
        "outdated": false
      },
      "fr_ma": {
        "value": "Désolé, nous n'avons pas trouvé la page que vous recherchez.",
        "outdated": false
      },
      "es_ar": {
        "value": "Lo sentimos, pero no pudimos encontrar la página que buscabas.",
        "outdated": false
      },
      "es_pa": {
        "value": "Lo sentimos, pero no pudimos encontrar la página que buscabas.",
        "outdated": false
      },
      "es_pe": {
        "value": "Lo sentimos, pero no pudimos encontrar la página que buscabas.",
        "outdated": false
      },
      "pa": {
        "value": "ਮੁਆਫ ਕਰਨਾ, ਪਰ ਅਸੀਂ ਉਹ ਪੰਨਾ ਨਹੀਂ ਲੱਭ ਸਕੇ ਜਿਸ ਦੀ ਤੁਸੀਂ ਭਾਲ ਕਰ ਰਹੇ ਸੀ.",
        "outdated": false
      },
      "ur": {
        "value": "معذرت ، لیکن ہم وہ صفحہ نہیں ڈھونڈ سکے جس کی آپ تلاش کر رہے تھے۔",
        "outdated": false
      }
    },
    "createdAt": "2019-12-10T11:56:38.510Z",
    "updatedAt": "2019-09-09T18:37:44.124Z"
  },
  "links": {
    "self": "/v1/snippets/5abd89e8fd266e4225494c5b"
  },
  "relationships": {
    "org": {
      "data": {
        "type": "org",
        "id": "57504f64d76808100089eb44"
      }
    }
  }
}
```

Fields:

- `attributes.name` (string): A label for the people managing snippets. It's required on create, and together with `category` it generates the `key`.
- `attributes.app` (string): The app that owns the snippet. Kustomer's built-in snippets have `kustomer`.
- `attributes.description` (string): Notes for the people managing snippets, up to 1,024 characters. Customers never see it.
- `attributes.source` (string): The language the snippet was written in, and the one Kustomer falls back to when the requested language has no translation. It defaults to the org's default language.
- `attributes.key` (string): The identifier used in `[[...]]` references, and accepted by `GET /v1/snippets/{id}` in place of the ID. Kustomer generates it on create as `sn.org.<category>.<name>` and keeps it when you rename the snippet; keys starting `sn.kustomer.` are built in.
- `attributes.langs` (object): The text, keyed by language code. `PUT` replaces the whole object, so languages you leave out are removed, while `PATCH` merges the ones you send. Pass `lang` on reads to get only the languages you need.
- `attributes.langs.en_us` (object): One translation. Every entry you write needs both `value` and `outdated`, or the request fails validation.
- `attributes.langs.en_us.value` (string): The text shown for this language.
- `attributes.langs.en_us.outdated` (boolean): Your flag that this translation needs review, for example after the source text changed. Kustomer stores what you send without setting it itself, and the admin settings list snippets with any outdated translation as out of date.

### Permissions

Fewest roles for a read-only integration: `org.permission.snippet.read`. For every endpoint: `org.permission.snippet.read`, `org.permission.snippet.update`, `org.permission.snippet.create`.

## Path parameters

| Name | Type | Required | Description |
| --- | --- | --- | --- |
| `id` | string | yes | Snippet ID. |

## Request body

Content type: `application/json` (required)

- `name` (string): (min length 1; max length 256)
- `app` (string): (min length 1; max length 256)
- `category` (string): (min length 1; max length 256)
- `description` (string): (max length 1024)
- `langs` (object)

Example:

```json
{
  "name": "example_name",
  "app": "string",
  "category": "string",
  "description": "Example text",
  "langs": {}
}
```

## Responses

### 200

OK

- `data` (object, required)
  - `id` (string, required)
  - `type` (string, required)
  - `attributes` (object, required)
    - `name` (string, required)
    - `app` (string, required)
    - `description` (string, required)
    - `source` (string, required)
    - `key` (string, required)
    - `langs` (object, required)
    - `createdAt` (string, required)
    - `updatedAt` (string, required)
    - `modifiedAt` (string, required)
  - `links` (object, required)
    - `self` (string, required)
  - `relationships` (object, required)
    - `org` (object, required)
    - `modifiedBy` (object, required)

```json
{
  "data": {
    "id": "5abd89e8fd266e4225494c5b",
    "type": "snippet",
    "attributes": {
      "name": "404 text part 3",
      "app": "kustomer",
      "description": "Missing page text",
      "source": "en_us",
      "key": "sn.kustomer.404_part1",
      "langs": {
        "en_us": {
          "value": "Sorry, but we couldn’t find that page you were looking for.",
          "outdated": false
        },
        "en_ca": {
          "value": "Sorry, but we couldn’t find that page you were looking for.",
          "outdated": false
        },
        "en_gb": {
          "value": "Sorry, but we couldn’t find that page you were looking for.",
          "outdated": false
        },
        "af": {
          "value": "Jammer, maar ons kon nie die bladsy vind waarna u soek nie.",
          "outdated": false
        },
        "bg": {
          "value": "За съжаление не можахме да намерим тази страница, която търсите.",
          "outdated": false
        },
        "bs": {
          "value": "Žao nam je, ali nismo mogli naći tu stranicu koju ste tražili.",
          "outdated": false
        },
        "ca": {
          "value": "Ho sentim, però no hem pogut trobar la pàgina que buscaves.",
          "outdated": false
        },
        "cs": {
          "value": "Je nám líto, ale nemohli jsme najít tu stránku, kterou jste hledali.",
          "outdated": false
        },
        "da": {
          "value": "Beklager, men vi kunne ikke finde den side, du ledte efter.",
          "outdated": false
        },
        "de": {
          "value": "Entschuldigung, aber wir konnten die von Ihnen gesuchte Seite nicht finden.",
          "outdated": false
        },
        "nl": {
          "value": "Sorry, maar we konden die pagina die u zocht niet vinden.",
          "outdated": false
        },
        "el": {
          "value": "Λυπούμαστε, αλλά δεν μπορούσαμε να βρούμε τη σελίδα που αναζητούσατε.",
          "outdated": false
        },
        "es": {
          "value": "Lo sentimos, pero no pudimos encontrar esa página que estabas buscando.",
          "outdated": false
        },
        "es_es": {
          "value": "Lo sentimos, pero no pudimos encontrar esa página que estabas buscando.",
          "outdated": false
        },
        "et": {
          "value": "Vabandust, aga me ei leia seda lehte, mida otsisite.",
          "outdated": false
        },
        "fi": {
          "value": "Anteeksi, mutta emme löytäneet etsimääsi sivua.",
          "outdated": false
        },
        "fil": {
          "value": "Paumanhin, ngunit hindi namin mahanap ang pahinang iyon na iyong hinahanap.",
          "outdated": false
        },
        "fr": {
          "value": "Désolé, mais nous n'avons pas trouvé cette page que vous cherchiez.",
          "outdated": false
        },
        "fr_ca": {
          "value": "Désolé, mais nous n'avons pas trouvé cette page que vous cherchiez.",
          "outdated": false
        },
        "hi": {
          "value": "क्षमा करें, लेकिन उस पृष्ठ को नहीं मिल सका जिसके लिए आप खोज रहे थे।",
          "outdated": false
        },
        "hr": {
          "value": "Žao nam je, ali nismo uspjeli pronaći tu stranicu koju ste tražili.",
          "outdated": false
        },
        "hu": {
          "value": "Sajnáljuk, de nem találtuk azt az oldalt, amelyet keresett.",
          "outdated": false
        },
        "id": {
          "value": "Maaf, tetapi kami tidak dapat menemukan halaman yang Anda cari.",
          "outdated": false
        },
        "is": {
          "value": "Því miður, en við gátum ekki fundið þann síðu sem þú varst að leita að.",
          "outdated": false
        },
        "it": {
          "value": "Ci dispiace, ma non siamo riusciti a trovare quella pagina che stavi cercando.",
          "outdated": false
        },
        "ja": {
          "value": "申し訳ありませんが、探していたページが見つかりませんでした。",
          "outdated": false
        },
        "ka": {
          "value": "უკაცრავად, მაგრამ ვერ იპოვა ის გვერდი, რომელსაც ეძებდით.",
          "outdated": false
        },
        "ko": {
          "value": "죄송합니다. 찾으시는 페이지를 찾을 수 없습니다.",
          "outdated": false
        },
        "lt": {
          "value": "Deja, mes negalėjome rasti to puslapio, kurį ieškojote.",
          "outdated": false
        },
        "lv": {
          "value": "Atvainojiet, bet mēs nevarējām atrast lapu, kuru meklējāt.",
          "outdated": false
        },
        "no": {
          "value": "Beklager, men vi kunne ikke finne den siden du leter etter.",
          "outdated": false
        },
        "pl": {
          "value": "Przepraszamy, ale nie mogliśmy znaleźć tej strony, której szukasz.",
          "outdated": false
        },
        "pt": {
          "value": "Desculpe, mas não conseguimos encontrar a página que você estava procurando.",
          "outdated": false
        },
        "pt_br": {
          "value": "Desculpe, mas não conseguimos encontrar a página que você estava procurando.",
          "outdated": false
        },
        "ro": {
          "value": "Ne pare rău, însă nu am putut găsi pagina pe care o căutați.",
          "outdated": false
        },
        "ru": {
          "value": "Извините, но мы не смогли найти ту страницу, которую вы искали.",
          "outdated": false
        },
        "sk": {
          "value": "Je nám ľúto, ale nepodarilo sa nám nájsť tú stránku, ktorú ste hľadali.",
          "outdated": false
        },
        "sl": {
          "value": "Oprostite, vendar nismo našli te strani, ki ste jo iskali.",
          "outdated": false
        },
        "sq": {
          "value": "Na vjen keq, por nuk mund ta gjejmë atë faqe që kërkonit.",
          "outdated": false
        },
        "sr": {
          "value": "Жао ми је, али нисмо могли наћи ту страницу коју сте тражили.",
          "outdated": false
        },
        "sr_me": {
          "value": "Жао ми је, али нисмо могли наћи ту страницу коју сте тражили.",
          "outdated": false
        },
        "sv": {
          "value": "Tyvärr, men vi kunde inte hitta den sidan du letade efter.",
          "outdated": false
        },
        "th": {
          "value": "ขออภัยเราไม่พบหน้าเว็บที่คุณต้องการ",
          "outdated": false
        },
        "tr": {
          "value": "Üzgünüz, ama aradığınız sayfayı bulamadık.",
          "outdated": false
        },
        "uk": {
          "value": "Вибачте, але ми не змогли знайти ту сторінку, яку шукали.",
          "outdated": false
        },
        "vi": {
          "value": "Rất tiếc, chúng tôi không thể tìm thấy trang bạn đang tìm kiếm.",
          "outdated": false
        },
        "zh_cn": {
          "value": "对不起，但我们无法找到您要查找的那个网页。",
          "outdated": false
        },
        "zh_tw": {
          "value": "對不起，但我們無法找到您要查找的那個網頁。",
          "outdated": false
        },
        "tw": {
          "value": "Kafra, Na mmom yԑanhunu krataafa a worehwehwԑ no.",
          "outdated": false
        },
        "sw": {
          "value": "Samahani, lakini hatukuweza kupata ukurasa huo unayotaka.",
          "outdated": false
        },
        "kk": {
          "value": "Кешіріңіз, бірақ сіз іздеген парақты таба алмадық.",
          "outdated": false
        },
        "be": {
          "value": "Выбачайце, але мы не змаглі знайсці гэтую старонку, якую вы шукалі.",
          "outdated": false
        },
        "ar_ma": {
          "value": "آسف ، لكن لم نتمكن من العثور على تلك الصفحة التي كنت تبحث عنها.",
          "outdated": false
        },
        "ar_eg": {
          "value": "آسف ، لكن لم نتمكن من العثور على تلك الصفحة التي كنت تبحث عنها.",
          "outdated": false
        },
        "fr_ma": {
          "value": "Désolé, nous n'avons pas trouvé la page que vous recherchez.",
          "outdated": false
        },
        "es_ar": {
          "value": "Lo sentimos, pero no pudimos encontrar la página que buscabas.",
          "outdated": false
        },
        "es_pa": {
          "value": "Lo sentimos, pero no pudimos encontrar la página que buscabas.",
          "outdated": false
        },
        "es_pe": {
          "value": "Lo sentimos, pero no pudimos encontrar la página que buscabas.",
          "outdated": false
        },
        "pa": {
          "value": "ਮੁਆਫ ਕਰਨਾ, ਪਰ ਅਸੀਂ ਉਹ ਪੰਨਾ ਨਹੀਂ ਲੱਭ ਸਕੇ ਜਿਸ ਦੀ ਤੁਸੀਂ ਭਾਲ ਕਰ ਰਹੇ ਸੀ.",
          "outdated": false
        },
        "ur": {
          "value": "معذرت ، لیکن ہم وہ صفحہ نہیں ڈھونڈ سکے جس کی آپ تلاش کر رہے تھے۔",
          "outdated": false
        }
      },
      "createdAt": "2019-12-10T13:04:47.670Z",
      "updatedAt": "2019-12-10T13:04:47.665Z",
      "modifiedAt": "2019-12-10T13:04:47.665Z"
    },
    "links": {
      "self": "/v1/snippets/5abd89e8fd266e4225494c5b"
    },
    "relationships": {
      "org": {
        "data": {
          "type": "org",
          "id": "57504f64d76808100089eb44"
        }
      },
      "modifiedBy": {
        "links": {
          "self": "/v1/users/57504f644c80120f00f3c378"
        },
        "data": {
          "type": "user",
          "id": "57504f644c80120f00f3c378"
        }
      }
    }
  }
}
```

### 400

Bad Request

### 401

Unauthorized

### 403

Forbidden

### 404

Not Found

## Example request

```bash
curl --request PATCH \
  --url 'https://api.kustomerapp.com/v1/snippets/6026aba3fcca5f03e5541cda' \
  --header "Authorization: Bearer $KUSTOMER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data '{
  "name": "example_name",
  "app": "string",
  "category": "string",
  "description": "Example text",
  "langs": {}
}'
```
