@lunch-money/developer-docs 2.11.0 → 2.11.1-docs.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/docs/README.md CHANGED
@@ -5,6 +5,7 @@ This directory contains documentation that applies across all API versions.
5
5
  ## Current Documents
6
6
 
7
7
  - `pagination.md` - Pagination guidelines
8
+ - `branding-your-app.md` - Brand assets and usage guidelines for apps built on Lunch Money
8
9
  - (To be added) Other version-independent documentation
9
10
 
10
11
  ## Version-Specific Documentation
@@ -0,0 +1,88 @@
1
+ # Documentation style guide
2
+
3
+ Use this guide for hand-written Markdown in `docs/` and `v2/docs/`. Preserve
4
+ intentional conventions in generated pages, the v1 Slate reference, and version
5
+ history entries.
6
+
7
+ ## Voice and structure
8
+
9
+ - Address the reader as “you” and use direct, practical language.
10
+ - Start with the reader's goal before introducing protocol or API details.
11
+ - Use one H1 per page and keep heading levels in logical order.
12
+ - Use sentence case for prose headings. Preserve official names, initialisms,
13
+ endpoint paths, property names, and exact UI labels.
14
+ - Add a next step when a guide belongs to a longer reader journey. Use
15
+ `## Need help?` only when the page provides support options.
16
+
17
+ ## Terminology
18
+
19
+ - Use “Lunch Money” for the product and “Lunchbag Labs, Inc.” only when the
20
+ legal company name is required.
21
+ - Use “Developer Portal,” “Developers page,” and “API reference” consistently.
22
+ Preserve different capitalization only for an exact UI label.
23
+ - Use “budget account” for the Lunch Money data container that holds a budget,
24
+ transactions, categories, and financial accounts. Use “account” only when the
25
+ context is unambiguous, and preserve exact UI labels such as “Create a New
26
+ Budget Account.”
27
+ - Write “v1” and “v2” in prose. Use “V2 API” only where it is an established
28
+ proper label, such as the rendered reference title.
29
+ - Distinguish authentication from authorization, personal access tokens from
30
+ OAuth access tokens, and applications from their registered OAuth clients.
31
+
32
+ ## Code and placeholders
33
+
34
+ - Format endpoints, properties, headers, status codes, commands, filenames,
35
+ scope names, and literal values as code.
36
+ - Use `YOUR_ACCESS_TOKEN` as the generic access-token placeholder. Environment
37
+ variable examples may use `LUNCH_MONEY_ACCESS_TOKEN`.
38
+ - For equivalent multi-language examples, order tabs as JavaScript/Node.js,
39
+ Python, then cURL. Comparison tabs may follow the order that best teaches the
40
+ difference.
41
+ - Keep examples fictional and never include or request real credentials.
42
+
43
+ ## Callouts
44
+
45
+ Use the supported blockquote form:
46
+
47
+ ```markdown
48
+ > [!NOTE] Optional title
49
+ > Supporting content.
50
+ ```
51
+
52
+ - Use `NOTE` for context that affects understanding.
53
+ - Use `TIP` for optional advice or a more effective workflow.
54
+ - Use `WARNING` for credible security, privacy, data-loss, breaking-change, or
55
+ operational risk.
56
+ - Use sentence case for optional callout titles. Do not use HTML line breaks to
57
+ separate callout paragraphs.
58
+
59
+ ## Tabs
60
+
61
+ Use tabs when equivalent examples in multiple languages or a focused comparison
62
+ are easier to understand together:
63
+
64
+ ```markdown
65
+ :::tabs
66
+ @tab JavaScript/Node.js
67
+ JavaScript example
68
+
69
+ @tab Python
70
+ Python example
71
+ :::
72
+ ```
73
+
74
+ Use an `@tab` label for each panel and close the container with `:::`. For
75
+ equivalent language examples, order tabs as JavaScript/Node.js, Python, then
76
+ cURL. Comparison tabs may use the order that best teaches the difference.
77
+
78
+ ## Links and presentation
79
+
80
+ - Use canonical documentation paths from `manifest.json`. Keep aliases only for
81
+ compatibility; do not introduce new links to aliases.
82
+ - Use normal Markdown links for internal navigation. Keep HTML only when it adds
83
+ behavior Markdown cannot express, such as opening an external link in a new
84
+ tab.
85
+ - Avoid deeply nested headings, very wide tables, and long unbroken text that is
86
+ difficult to use in the constrained content column.
87
+ - Remove trailing whitespace and use blank lines, not `<br>`, for Markdown
88
+ structure unless a verified rendering requirement needs HTML.
@@ -1,4 +1,4 @@
1
- # Amounts & Balances
1
+ # Amounts & balances
2
2
 
3
3
  The Lunch Money API uses four properties — `amount`, `balance`, `currency`, and `to_base` — consistently across all objects that deal with money. Understanding how they work will help you build accurate, multi-currency-aware integrations.
4
4
 
@@ -24,7 +24,7 @@ Like `amount`, `balance` is always in the `currency` of the same object and foll
24
24
 
25
25
  ## `currency`
26
26
 
27
- `currency` is an ISO 4217 currency code (e.g., `"usd"`, `"eur"`, `"gbp"`). It is present on every object that carries an `amount` or `balance` and tells you what currency those values are in. See the [Supported Currencies guide](/v2/currencies) for the full list.
27
+ `currency` is an ISO 4217 currency code (e.g., `"usd"`, `"eur"`, `"gbp"`). It is present on every object that carries an `amount` or `balance` and tells you what currency those values are in. See the [Supported currencies guide](/currencies) for the full list.
28
28
 
29
29
  ## `to_base`
30
30
 
@@ -42,7 +42,7 @@ Like `amount`, `balance` is always in the `currency` of the same object and foll
42
42
  - Display amounts and balances in a single consistent currency across a multi-currency account
43
43
  - Perform arithmetic across transactions or accounts in different currencies
44
44
 
45
- ## Sign Convention
45
+ ## Sign convention
46
46
 
47
47
  ### Transaction amounts
48
48
 
@@ -70,10 +70,10 @@ A negative balance indicates the reversed state for that account type:
70
70
  - A savings account in overdraft has a negative `balance`
71
71
  - A credit card where the issuer owes you money (e.g., after a refund or overpayment) has a negative `balance`
72
72
 
73
- > [!NOTE] App Display Setting
73
+ > [!NOTE] App display setting
74
74
  > The Lunch Money app has a setting — **"Show Debits as Negative, Credits as Positive"** — that can flip how amounts are displayed in the UI. This setting is exposed in the API as `debits_as_negative` on the User object. **It has no effect on the API.** The API always returns positive values for debits and negative values for credits regardless of this setting. Apps may read `debits_as_negative` to match the user's preferred display format when showing amounts in their own UI.
75
75
 
76
- ## Exception: Budget and Summary Amounts
76
+ ## Exception: budget and summary amounts
77
77
 
78
78
  Budget objects and summary response objects don't use the transaction sign convention. Direction is conveyed by the **structure of the response** rather than the sign of the value — amounts are always positive magnitudes, and the object type or category flag tells you whether that activity is income or expense.
79
79
 
@@ -1,9 +1,9 @@
1
1
  **Beta Preview Portal** — This developer portal previews planned changes including:
2
- - V2 API Mock Service no longer requires authentication
3
2
  - Beta versions of new [v2 API](/v2/docs) endpoints:
4
- - [/crypto/manual](v2/docs#tag/crypto-manual)
5
- - [/crypto/synced](v2/docs#tag/crypto-synced)
6
- - [/balance/history](v2/docs#tag/balance-history)
3
+ - [GET /me/account/settings](v2/docs#tag/me/GET/me/account/settings)
4
+ - [PUT /me/account/settings](v2/docs#tag/me/PUT/me/account/settings)
5
+ - [GET /me/user/settings](v2/docs#tag/me/GET/me/user/settings)
6
+ - [PUT /me/user/settings](v2/docs#tag/me/PUT/me/user/settings)
7
7
 
8
8
 
9
- Feedback is welcome. [Email dev-support@lunchmoney.app](mailto:dev-support@lunchmoney.app) or join us in the [developers channel](https://discord.com/channels/842337014556262411/1134594318414389258) on the [Lunch Money Discord](https://lunchmoney.app/discord).
9
+ Feedback is welcome. [Email dev-support@lunchmoney.app](mailto:dev-support@lunchmoney.app) or join us in the [developers channel](https://discord.com/channels/842337014556262411/1134594318414389258) on the [Lunch Money Discord](https://lunchmoney.app/discord).
@@ -0,0 +1,59 @@
1
+ # Branding your app
2
+
3
+ Building a tool, plugin, or integration on top of Lunch Money? Use the official **Powered by Lunch Money** badge to credit the connection clearly — without implying that your app *is* Lunch Money.
4
+
5
+ <a href="https://lunchmoney.app/assets/images/media-kit/powered-by-lunch-money-badge.png" download="powered-by-lunch-money-badge.png" target="_blank" rel="noopener noreferrer" title="Download Powered by Lunch Money badge">
6
+ <img src="/v2/images/powered-by-lunch-money-badge.png" alt="Powered by Lunch Money badge" width="320" />
7
+ </a>
8
+
9
+ > [!TIP]
10
+ > Click the badge to download it (or open the PNG in a new tab).
11
+ >
12
+ > Link it to <a href="https://lunchmoney.app/" target="_blank" rel="noopener noreferrer">lunchmoney.app</a> when you place it in a README, docs page, or app footer.
13
+
14
+ For additional logos, colors, typography, screenshots, and full brand usage guidelines, see the <a href="https://lunchmoney.app/media-kit/" target="_blank" rel="noopener noreferrer">Lunch Money Media Kit</a>.
15
+ ## Naming
16
+
17
+ - Refer to the product as **Lunch Money**
18
+ - Refer to the company as **Lunchbag Labs, Inc.** when a legal or company name is needed
19
+ - Link to <a href="https://lunchmoney.app/" target="_blank" rel="noopener noreferrer">lunchmoney.app</a> when you mention the product
20
+
21
+ Avoid nicknames, abbreviations, or stylized spellings of the product name in user-facing copy.
22
+
23
+ ## Usage guidelines
24
+
25
+ ### Do
26
+
27
+ - Use official logos without alteration
28
+ - Use the **Powered by** badge when acknowledging Lunch Money
29
+ - Keep enough clear space around logos so they stay readable
30
+ - Download assets from the media kit rather than cropping screenshots of the logo
31
+
32
+ ### Don't
33
+
34
+ - Stretch, rotate, or recolor logos
35
+ - Add effects, shadows, or outlines to the logo
36
+ - Modify the smiling coin mascot character
37
+ - Imply endorsement, partnership, or official status without permission
38
+
39
+ > [!NOTE]
40
+ > The Lunch Money name, logo, and mascot character are trademarks of Lunchbag Labs, Inc. All rights reserved.
41
+
42
+ ## Suggested placements
43
+
44
+ A few common, low-friction ways to brand an integration:
45
+
46
+ 1. **README or docs** — a short "Built with Lunch Money" line plus the Powered by badge linking to <a href="https://lunchmoney.app/" target="_blank" rel="noopener noreferrer">lunchmoney.app</a>
47
+ 2. **App footer or about screen** — the Powered by badge next to your own branding
48
+ 3. **Onboarding or connect flow** — official logo when prompting users to authorize or paste an access token
49
+ 4. **Community listings** — consistent naming ("My Tool for Lunch Money") so users can find and trust your project
50
+
51
+ Keep your own product name primary. Lunch Money branding should signal the connection, not compete with your identity.
52
+
53
+ ## Need help?
54
+
55
+ If you're unsure whether a use is appropriate, or you need a format that isn't listed here:
56
+
57
+ - Start with the <a href="https://lunchmoney.app/media-kit/" target="_blank" rel="noopener noreferrer">Media Kit</a>
58
+ - Ask in the <a href="https://lunchmoney.app/discord" target="_blank" rel="noopener noreferrer">Lunch Money Discord</a> **#developer-api** channel
59
+ - [Email our developer advocate](mailto:jp@lunchmoney.app)
@@ -1,15 +1,15 @@
1
- # Supported Currencies
1
+ # Supported currencies
2
2
 
3
3
  Lunch Money supports a wide range of currencies for transactions and accounts. All currency values in the API use three-letter lowercase currency codes in ISO 4217 format.
4
4
 
5
- ## Currency Code Format
5
+ ## Currency code format
6
6
 
7
7
  Currency codes must be:
8
8
  - Three letters
9
9
  - Lowercase
10
10
  - Valid ISO 4217 currency codes
11
11
 
12
- ## Supported Currencies
12
+ ## Supported currencies
13
13
 
14
14
  The following currencies are currently supported in Lunch Money:
15
15
 
@@ -183,7 +183,7 @@ The following currencies are currently supported in Lunch Money:
183
183
  | `zmw` | Zambian Kwacha |
184
184
  | `zwl` | Zimbabwean Dollar |
185
185
 
186
- ## Using Currencies in the API
186
+ ## Using currencies in the API
187
187
 
188
188
  When creating or updating transactions, accounts, or other resources that include currency information, use the three-letter lowercase currency code:
189
189
 
@@ -247,11 +247,11 @@ curl -X POST 'https://api.lunchmoney.dev/v2/transactions' \
247
247
  ```
248
248
  :::
249
249
 
250
- ## Default Currency
250
+ ## Default currency
251
251
 
252
252
  If you don't specify a currency when creating a transaction or account, Lunch Money will default to your account's primary currency. You can check your primary currency by calling the `GET /v2/me` endpoint.
253
253
 
254
- ## Currency Validation
254
+ ## Currency validation
255
255
 
256
256
  The API validates that currency codes match the supported list. If you provide an unsupported currency code, you'll receive a validation error:
257
257
 
@@ -268,10 +268,9 @@ The API validates that currency codes match the supported list. If you provide a
268
268
  }
269
269
  ```
270
270
 
271
- ## Requesting New Currencies
271
+ ## Requesting new currencies
272
272
 
273
273
  If your currency is missing from the supported list, please let us know via email at [support@lunchmoney.app](mailto:support@lunchmoney.app) and we'll work on getting it added.
274
274
 
275
- > [!NOTE] Currency Support
275
+ > [!NOTE] Currency support
276
276
  > Currency support is continuously expanding. If you need a currency that's not currently listed, reach out to our support team and we'll prioritize adding it.
277
-
@@ -1,16 +1,16 @@
1
- # Getting Started with the API
1
+ # Getting started with the API
2
2
 
3
3
  Welcome to the Lunch Money developer API! This API has enabled the Lunch Money user community to build a broad set of tools and plug-ins to complement their Lunch Money experience and help other users. This guide will help you get started using the Lunch Money API.
4
4
 
5
5
  Most users interact with their Lunch Money data using the official web or mobile app. Making API calls is another way to interact with your Lunch Money data. You can make API calls that **get** your data for you, allowing you to do other things with it, like generating your own charts or simply archiving your data. You can also make API calls that **change** or **delete** your data. Any changes you make are permanent, just like they would be if you made changes using the web or mobile app.
6
6
 
7
7
  > [!WARNING]
8
- > Changes made via the API are permanent and cannot be undone!<br> Always use a test budget when getting started.
8
+ > Changes made via the API are permanent and cannot be undone. Always use a test budget when getting started.
9
9
 
10
10
 
11
- ## Create a Test Budgeting Account
11
+ ## Create a test budget account
12
12
 
13
- Since changes to your data made by the API are permanent, the best way to begin interacting with the API is to <a href="https://support.lunchmoney.app/miscellaneous/unlimited-budgeting-accounts" target="_blank" rel="noopener noreferrer">create a new test budgeting account</a> in your existing Lunch Money account. As you start using the API, you can interact with this test account and ensure that your real data is not modified.
13
+ Since changes to your data made by the API are permanent, the best way to begin interacting with the API is to <a href="https://support.lunchmoney.app/miscellaneous/unlimited-budgeting-accounts" target="_blank" rel="noopener noreferrer">create a new test budget account</a> in your existing Lunch Money account. As you start using the API, you can interact with this test account and ensure that your real data is not modified.
14
14
 
15
15
  :::tabs
16
16
 
@@ -29,13 +29,13 @@ Choose the option to "Set up Demo". This will add categories, accounts, tags and
29
29
 
30
30
  ## Getting an access token
31
31
 
32
- Lunch Money API requests are authenticated using the Bearer Token authentication method. In plain English, this means that you will pass a token associated with your budgeting account to Lunch Money. This is so we know which account to operate on and that the request came from someone who can access that account.
32
+ Lunch Money API requests are authenticated using the Bearer Token authentication method. In plain English, this means that you will pass a token associated with your budget account to Lunch Money. This is so we know which account to operate on and that the request came from someone who can access that account.
33
33
 
34
34
  :::tabs
35
35
 
36
36
  @tab 1. Go to the Developers Page
37
37
 
38
- Navigate to <a href="https://my.lunchmoney.app/developers" target="_blank" rel="noopener noreferrer">the developers page in the Lunch Money web app</a>. Look at the green circle in the upper right hand corner and make sure that it is showing the test account that you just created. If you aren't sure which account is active, you can click on the green circle to bring up the "Switch Accounts" dialog. This will show you the full names of all the accounts associated with your account. Select the test budgeting account you created.
38
+ Navigate to <a href="https://my.lunchmoney.app/developers" target="_blank" rel="noopener noreferrer">the developers page in the Lunch Money web app</a>. Look at the green circle in the upper right hand corner and make sure that it is showing the test account that you just created. If you aren't sure which account is active, you can click on the green circle to bring up the "Switch Accounts" dialog. This will show you the full names of all the accounts associated with your account. Select the test budget account you created.
39
39
  ![Green Budgets Icon](/images/green_budget.png)
40
40
 
41
41
  @tab 2. Request Access Token
@@ -49,7 +49,7 @@ After you do this, the web page will show you a long alphanumeric string. This i
49
49
  Congratulations! You've got an access token and are ready to make an API request! Later, when you are more comfortable with the API, you can repeat this process to create a new access token associated with your real budget.
50
50
 
51
51
  > [!WARNING]
52
- > Treat your access tokens like passwords.<br>Don't share them with anyone that you don't trust.
52
+ > Treat your access tokens like passwords. Don't share them with anyone you don't trust.
53
53
 
54
54
  If you ever worry that your access token has been compromised, you can always come back to the Developers page and hit the Revoke button.
55
55
 
@@ -63,21 +63,21 @@ When you start to write code that makes API calls, you will need to include this
63
63
 
64
64
  ```bash
65
65
  curl --location 'https://api.lunchmoney.dev/v2/me' \
66
- --header 'Authorization: Bearer <YOUR_ACCESS_TOKEN>'
66
+ --header 'Authorization: Bearer YOUR_ACCESS_TOKEN'
67
67
  ```
68
68
 
69
- If this doesn't make sense yet, that's OK!
69
+ If this doesn't make sense yet, that's OK!
70
70
 
71
- There is an easier way to use your access token to make requests. Head over to the [API Reference Documentation](/v2/docs).
71
+ There is an easier way to use your access token to make requests. Head over to the [API Reference Documentation](/v2/docs).
72
72
 
73
73
  :::tabs
74
74
 
75
75
  @tab 1. Supply Your Token
76
- Paste your new token into the box that says "Bearer Token" in the server configuration in the upper right hand corner.
76
+ Paste your new token into the box that says "Bearer Token" in the server configuration in the upper right hand corner.
77
77
  ![Bearer Token](/images/PasteBearer.png)
78
78
 
79
79
  @tab 2. Make a Test Request
80
- Scroll down to the section called "Get Current User" and hit the "Test Request" button.
80
+ Scroll down to the section called "Get Current User" and hit the "Test Request" button.
81
81
  ![TestRequest.png](/images/TestRequest.png)
82
82
  :::
83
83
 
@@ -85,14 +85,14 @@ This will pop up a dialog box that you can use to send an API request. This is a
85
85
 
86
86
  From here, you can explore the rest of the Lunch Money API and start thinking about what you might do with it.
87
87
 
88
- ## What Can You Build?
88
+ ## What can you build?
89
89
 
90
90
  The Lunch Money community has already built a wide variety of tools — automations, importers, dashboards, and more. Check out the <a href="https://lunchmoney.app/developers#community-projects" target="_blank" rel="noopener noreferrer">Developer Tools & Community Projects</a> list for inspiration, or drop by the <a href="https://discord.com/channels/842337014556262411/1134597088504729780" target="_blank" rel="noopener noreferrer">Show and Tell channel</a> on Discord to see what others are sharing.
91
91
 
92
92
  > [!NOTE]
93
93
  > Built something with the API? Let us know and we'll add it to the list!
94
94
 
95
- ## I still need help!
95
+ ## Need help?
96
96
 
97
97
  If you still aren't sure how to get started, we have other resources to help.
98
98
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  Welcome to the Lunch Money developer documentation. This site covers the **v2 API** — the current generation of the Lunch Money API — along with guides, a reference for the legacy v1 API, and tools for exploring the API without touching real data.
4
4
 
5
- ## Getting Started
5
+ ## Getting started
6
6
 
7
7
  The v2 API is available at:
8
8
 
@@ -16,9 +16,9 @@ Get your access token from the <a href="https://my.lunchmoney.app/developers" ta
16
16
  Authorization: Bearer YOUR_ACCESS_TOKEN
17
17
  ```
18
18
 
19
- See the [Getting Started guide](/v2/getting-started) for a full walkthrough, including how to create a test budget and make your first request.
19
+ See the [Getting started guide](/getting-started) for a full walkthrough, including how to create a test budget and make your first request.
20
20
 
21
- ## Trying the API Without Real Data
21
+ ## Trying the API without real data
22
22
 
23
23
  The <a href="/v2/docs">interactive API reference</a> lets you make live API requests directly from the documentation — including a **static mock server** you can use to explore the API without an access token or any risk to real data.
24
24
 
@@ -34,7 +34,7 @@ Set your Bearer Token to any string of **11 or more characters** — no real tok
34
34
 
35
35
  :::
36
36
 
37
- ## Client Libraries & SDKs
37
+ ## Client libraries & SDKs
38
38
 
39
39
  An official **TypeScript SDK** is available:
40
40
  - NPM: <a href="https://www.npmjs.com/package/@lunch-money/v2-api-spec" target="_blank" rel="noopener noreferrer">`@lunch-money/v2-api-spec`</a>
@@ -58,6 +58,6 @@ Join the conversation in the <a href="https://lunchmoney.app/discord" target="_b
58
58
 
59
59
  **Useful links:**
60
60
  - <a href="/v2/docs">Interactive API Reference</a>
61
- - [Getting Started Guide](/v2/getting-started)
61
+ - [Getting started guide](/getting-started)
62
62
  - <a href="https://github.com/lunch-money/awesome-lunchmoney" target="_blank" rel="noopener noreferrer">Awesome Lunch Money Projects</a>
63
63
  - [Contact: devsupport@lunchmoney.app](mailto:devsupport@lunchmoney.app)
@@ -0,0 +1,124 @@
1
+ # Supported locales
2
+
3
+ Lunch Money uses locale tags to format numbers and currency amounts in the web
4
+ and mobile apps. Date presentation is controlled separately by the user-level
5
+ date-format settings. See
6
+ [GET /me/user/settings](/v2/docs#tag/me/GET/me/user/settings) for those settings.
7
+ Set the `locale` account setting to one of the supported tags below. The locale
8
+ controls presentation details such as decimal separators, digit grouping, and
9
+ currency symbol or code placement and rendering. It does not change the
10
+ account's selected currency, numeric values, or the representation of dates,
11
+ numbers, and amounts in API responses.
12
+
13
+ ## Locale tag format
14
+
15
+ Each supported value combines a language code and a region code, separated by a
16
+ hyphen. For example, `en-US` selects English formatting conventions for the
17
+ United States, while `en-GB` selects English formatting conventions for the
18
+ United Kingdom.
19
+
20
+ ## Supported locales
21
+
22
+ The examples format `123456789` as USD. An account's primary currency determines
23
+ the currency symbol and number of fraction digits. Exact spacing and symbol
24
+ rendering may vary slightly by platform and its internationalization
25
+ implementation.
26
+
27
+ | Tag | Language | Region | USD `123456789` example |
28
+ |-----|----------|--------|-------------------------|
29
+ | `sq-AL` | Albanian | Albania | `123 456 789,00 US$` |
30
+ | `be-BY` | Belarusian | Belarus | `123 456 789,00 $` |
31
+ | `bg-BG` | Bulgarian | Bulgaria | `123 456 789,00 щ.д.` |
32
+ | `ca-ES` | Catalan | Spain | `123.456.789,00 USD` |
33
+ | `zh-CN` | Chinese (Simplified) | China | `US$123,456,789.00` |
34
+ | `zh-HK` | Chinese (Traditional) | Hong Kong | `US$123,456,789.00` |
35
+ | `zh-TW` | Chinese (Traditional) | Taiwan | `US$123,456,789.00` |
36
+ | `hr-HR` | Croatian | Croatia | `123.456.789,00 USD` |
37
+ | `cs-CZ` | Czech | Czech Republic | `123 456 789,00 US$` |
38
+ | `da-DK` | Danish | Denmark | `123.456.789,00 US$` |
39
+ | `nl-BE` | Dutch | Belgium | `US$ 123.456.789,00` |
40
+ | `nl-NL` | Dutch | Netherlands | `US$ 123.456.789,00` |
41
+ | `en-AU` | English | Australia | `USD 123,456,789.00` |
42
+ | `en-CA` | English | Canada | `US$123,456,789.00` |
43
+ | `en-IN` | English | India | `$12,34,56,789.00` |
44
+ | `en-IE` | English | Ireland | `US$123,456,789.00` |
45
+ | `en-MT` | English | Malta | `US$123,456,789.00` |
46
+ | `en-NZ` | English | New Zealand | `US$123,456,789.00` |
47
+ | `en-PH` | English | Philippines | `$123,456,789.00` |
48
+ | `en-SG` | English | Singapore | `US$123,456,789.00` |
49
+ | `en-ZA` | English | South Africa | `US$123 456 789,00` |
50
+ | `en-GB` | English | United Kingdom | `US$123,456,789.00` |
51
+ | `en-US` | English | United States | `$123,456,789.00` |
52
+ | `et-EE` | Estonian | Estonia | `123 456 789,00 $` |
53
+ | `fi-FI` | Finnish | Finland | `123 456 789,00 $` |
54
+ | `fr-BE` | French | Belgium | `123 456 789,00 $US` |
55
+ | `fr-CA` | French | Canada | `123 456 789,00 $ US` |
56
+ | `fr-FR` | French | France | `123 456 789,00 $US` |
57
+ | `fr-LU` | French | Luxembourg | `123.456.789,00 $US` |
58
+ | `fr-CH` | French | Switzerland | `123'456'789.00 $US` |
59
+ | `de-AT` | German | Austria | `$ 123.456.789,00` |
60
+ | `de-DE` | German | Germany | `123.456.789,00 $` |
61
+ | `de-LU` | German | Luxembourg | `123.456.789,00 $` |
62
+ | `de-CH` | German | Switzerland | `$ 123'456'789.00` |
63
+ | `el-CY` | Greek | Cyprus | `123.456.789,00 $` |
64
+ | `el-GR` | Greek | Greece | `123.456.789,00 $` |
65
+ | `iw-IL` | Hebrew | Israel | `‏123,456,789.00 ‏$` |
66
+ | `hi-IN` | Hindi | India | `$12,34,56,789.00` |
67
+ | `hu-HU` | Hungarian | Hungary | `123 456 789,00 USD` |
68
+ | `is-IS` | Icelandic | Iceland | `123.456.789,00 USD` |
69
+ | `in-ID` | Indonesian | Indonesia | `US$123.456.789,00` |
70
+ | `ga-IE` | Irish | Ireland | `$123,456,789.00` |
71
+ | `it-IT` | Italian | Italy | `123.456.789,00 USD` |
72
+ | `it-CH` | Italian | Switzerland | `USD 123'456'789.00` |
73
+ | `ja-JP` | Japanese | Japan | `$123,456,789.00` |
74
+ | `ko-KR` | Korean | South Korea | `US$123,456,789.00` |
75
+ | `lv-LV` | Latvian | Latvia | `123 456 789,00 $` |
76
+ | `lt-LT` | Lithuanian | Lithuania | `123 456 789,00 USD` |
77
+ | `mk-MK` | Macedonian | Macedonia | `123.456.789,00 US$` |
78
+ | `ms-MY` | Malay | Malaysia | `USD 123,456,789.00` |
79
+ | `mt-MT` | Maltese | Malta | `US$123,456,789.00` |
80
+ | `no-NO` | Norwegian | Norway | `123 456 789,00 USD` |
81
+ | `pl-PL` | Polish | Poland | `123 456 789,00 USD` |
82
+ | `pt-BR` | Portuguese | Brazil | `US$ 123.456.789,00` |
83
+ | `pt-PT` | Portuguese | Portugal | `123 456 789,00 US$` |
84
+ | `ro-RO` | Romanian | Romania | `123.456.789,00 USD` |
85
+ | `ru-RU` | Russian | Russia | `123 456 789,00 $` |
86
+ | `sk-SK` | Slovak | Slovakia | `123 456 789,00 USD` |
87
+ | `sl-SI` | Slovenian | Slovenia | `123.456.789,00 $` |
88
+ | `es-AR` | Spanish | Argentina | `US$ 123.456.789,00` |
89
+ | `es-BO` | Spanish | Bolivia | `USD 123.456.789,00` |
90
+ | `es-CL` | Spanish | Chile | `US$123.456.789,00` |
91
+ | `es-CO` | Spanish | Colombia | `US$ 123.456.789,00` |
92
+ | `es-CR` | Spanish | Costa Rica | `USD 123 456 789,00` |
93
+ | `es-DO` | Spanish | Dominican Republic | `US$123,456,789.00` |
94
+ | `es-EC` | Spanish | Ecuador | `$123.456.789,00` |
95
+ | `es-SV` | Spanish | El Salvador | `$123,456,789.00` |
96
+ | `es-GT` | Spanish | Guatemala | `USD 123,456,789.00` |
97
+ | `es-HN` | Spanish | Honduras | `USD 123,456,789.00` |
98
+ | `es-MX` | Spanish | Mexico | `USD 123,456,789.00` |
99
+ | `es-NI` | Spanish | Nicaragua | `USD 123,456,789.00` |
100
+ | `es-PA` | Spanish | Panama | `USD 123,456,789.00` |
101
+ | `es-PY` | Spanish | Paraguay | `USD 123.456.789,00` |
102
+ | `es-PE` | Spanish | Peru | `USD 123,456,789.00` |
103
+ | `es-PR` | Spanish | Puerto Rico | `$123,456,789.00` |
104
+ | `es-ES` | Spanish | Spain | `123.456.789,00 US$` |
105
+ | `es-US` | Spanish | United States | `$123,456,789.00` |
106
+ | `es-UY` | Spanish | Uruguay | `US$ 123.456.789,00` |
107
+ | `es-VE` | Spanish | Venezuela | `USD 123.456.789,00` |
108
+ | `sv-SE` | Swedish | Sweden | `123 456 789,00 US$` |
109
+ | `th-TH` | Thai | Thailand | `US$123,456,789.00` |
110
+ | `tr-TR` | Turkish | Turkey | `$123.456.789,00` |
111
+ | `uk-UA` | Ukrainian | Ukraine | `123 456 789,00 USD` |
112
+ | `vi-VN` | Vietnamese | Vietnam | `123.456.789,00 US$` |
113
+
114
+ ## Legacy locale tags
115
+
116
+ The supported list retains two legacy language codes for compatibility:
117
+
118
+ - Use `iw-IL` for Hebrew (Israel). The modern language code is `he`, but
119
+ `he-IL` is not currently accepted by the API.
120
+ - Use `in-ID` for Indonesian (Indonesia). The modern language code is `id`, but
121
+ `id-ID` is not currently accepted by the API.
122
+
123
+ Use the values listed in the table when reading or updating `locale` through the
124
+ API.