Zoho: Create currencies
Zoho currencies.createCurrencies: arguments, response, policy and SDK examples.
← Currencies operations · Get started
Operation zoho.createcurrencies
Provider route: POST /crm/v8/org/currencies. Alter supplies the connection’s credentials and routing.
Call through Alter
Section titled “Call through Alter”Install @alter-ai/sdk @alter-ai/zoho with npm, or alter-sdk-zoho with pip. Supply your connected customer’s grant ID and the arguments described below.
import { App } from "@alter-ai/sdk";import { ZohoIntegration } from "@alter-ai/zoho";
async function execute(input: Parameters<ZohoIntegration["currencies"]["createCurrencies"]>[0]) { const app = new App({ apiKey: process.env.ALTER_API_KEY! }); try { const provider = new ZohoIntegration(app, { grantId: process.env.PROVIDER_GRANT_ID! }); const call = await provider.currencies.createCurrencies(input); const result = await call.wait(); return result.bodyJson(); } finally { await app.close(); }}import osfrom alter_sdk import Appfrom alter_sdk_zoho import ZohoIntegration
async def execute(arguments): async with App(api_key=os.environ["ALTER_API_KEY"]) as app: provider = ZohoIntegration(app, {"grant_id": os.environ["PROVIDER_GRANT_ID"]}) call = await provider.currencies.create_currencies(arguments) result = await call.wait() return result.body_json()| Field | Type | Presence | Description and constraints |
|---|---|---|---|
$ | object | Root | Additional keys: not allowed |
body | object | Required within parent | Request object containing a list of currencies to create. Additional keys: not allowed |
body.currencies | array | Required within parent | List of currencies to add to the organization. Supports up to 180 currencies per request. Maximum items: 180 |
body.currencies[] | object | Each item | Currency definition object. Additional keys: not allowed |
body.currencies[].exchange_rate | string | Required within parent | Represents the rate at which the currency has to be exchanged with home currency. Accepts positive decimal numbers up to nine digits and nine decimal places. Example: 123456789.123456789. Maximum length: 18 Pattern: ^[0-9]{1,9}(.[0-9]{1,9})?$ |
body.currencies[].exchange_rate_auto_update | boolean | Optional | Indicates whether the currency has the automated exchange rate option enabled or not. |
body.currencies[].format | object | Optional | Represents the format of the base currency with details like decimal_separator, thousand_separator, and decimal_places. Additional keys: not allowed |
body.currencies[].format.decimal_places | string | Optional | Represents the number of decimal places allowed for the currency. It can be 0, 2, and 3. One of: 0, 2, 3, 4, 5, 6 |
body.currencies[].format.decimal_separator | string | Optional | The decimal separator separates the integer part of the currency from its fractional part. It can be a Period or Comma, depending on the currency. One of: Comma, Period |
body.currencies[].format.numeral_system | string | Optional | Numbering system used for grouping digits. Default: International One of: Indian, International |
body.currencies[].format.thousand_separator | string | Optional | The thousand separator separates groups of thousands in a currency. It can be a Period, Comma, or Space, depending on the currency. One of: Comma, Period, Space |
body.currencies[].is_active | boolean | Optional | Indicates whether the currency is active. Possible Values: true - The currency is active. This is the default value. false - The currency is inactive. |
body.currencies[].iso_code | string | Required within parent | Represents the ISO code of the currency. You can get the currency code from the CRM UI at Setup > General > Company Settings > Currencies. Maximum length: 3 |
body.currencies[].name | string | Optional | Represents the name of the currency. You can get the available currencies from the CRM UI at Setup > General > Company Settings > Currencies. Maximum length: 255 |
body.currencies[].symbol | string | Optional | Indicates the currency symbol used for display. Maximum length: 50 |
Response
Section titled “Response”Response media type: application/json. The table describes the pinned successful response. Referenced models link to their complete fields.
| Field | Type | Presence | Description and constraints |
|---|---|---|---|
$ | JSON | Root | |
$ (anyOf 1) | object | Alternative | Successful creation response wrapper. Additional keys: not allowed |
$ (anyOf 1).currencies | array | Required within parent | List of results for each currency creation attempt. Returns one entry per submitted currency. Maximum items: 180 |
$ (anyOf 1).currencies[] | object | Each item | successfully created currency responses Additional keys: not allowed |
$ (anyOf 1).currencies[].code | string | Required within parent | The code representing success Known values: SUCCESS |
$ (anyOf 1).currencies[].details | object | Required within parent | Contains currency identifier. Additional keys: not allowed |
$ (anyOf 1).currencies[].details.id | string | Required within parent | The unique identifier for currency. Format: int64 Maximum length: 50 |
$ (anyOf 1).currencies[].message | string | Required within parent | Success message for the operation result. Maximum length: 255 |
$ (anyOf 1).currencies[].status | string | Required within parent | Indicates the status of the operation. Known values: success |
$ (anyOf 2) | object | Alternative | Bulk create response containing mixed success and error results. Additional keys: not allowed |
$ (anyOf 2).currencies | array | Required within parent | List of per-item results; each entry reflects one submitted currency. Maximum items: 180 |
$ (anyOf 2).currencies[] | JSON | Each item | |
$ (anyOf 2).currencies[] (anyOf 1) | object | Alternative | Successful currency creation result. Additional keys: not allowed |
$ (anyOf 2).currencies[] (anyOf 1).code | string | Required within parent | SUCCESS code for this item. Known values: SUCCESS |
$ (anyOf 2).currencies[] (anyOf 1).details | object | Required within parent | Contains the created currency identifier. Additional keys: not allowed |
$ (anyOf 2).currencies[] (anyOf 1).details.id | string | Required within parent | Unique identifier of the newly created currency. Format: int64 Maximum length: 50 |
$ (anyOf 2).currencies[] (anyOf 1).message | string | Required within parent | Result message for this item. Maximum length: 255 |
$ (anyOf 2).currencies[] (anyOf 1).status | string | Required within parent | Outcome of this item. Known values: success |
$ (anyOf 2).currencies[] (anyOf 2) | object | Alternative | Failed currency creation result. Additional keys: not allowed |
$ (anyOf 2).currencies[] (anyOf 2).code | string | Required within parent | Error code for this item. Maximum length: 100 |
$ (anyOf 2).currencies[] (anyOf 2).details | Model | Required within parent | Expand Create currencies — response body — currencies / currencies / item / status: error details |
$ (anyOf 2).currencies[] (anyOf 2).message | string | Required within parent | Result message for this item. Maximum length: 255 |
$ (anyOf 2).currencies[] (anyOf 2).status | string | Required within parent | Outcome of this item. Known values: error |
$ (anyOf 2).currencies (allOf 1) | JSON | All variants apply | Constraint requiring at least one success item in the result array. |
$ (anyOf 2).currencies (allOf 2) | JSON | All variants apply | Constraint requiring at least one error item in the result array. |
Referenced models: Create currencies — response body — currencies / currencies / item / status: error details
Schemas
Section titled “Schemas”Create currencies — response body — currencies / currencies / item / status: error details
| Field | Type | Presence | Description and constraints |
|---|---|---|---|
$ | object | Root | Additional details for this error item. Additional keys: not allowed |
api_name | string | Optional | Field or API parameter related to the error. Maximum length: 255 |
expected_data_type | string | Optional | Expected data type for the invalid field. Maximum length: 50 |
json_path | string | Optional | JSON path pointing to the error field. Maximum length: 255 |
limit | JSON | Optional | |
limit (anyOf 1) | number | Alternative | Maximum allowed count relevant to the error. |
limit (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
Policy, approvals and errors
Section titled “Policy, approvals and errors”SDK function policy ID: zoho.createcurrencies. Catalog operation: createCurrencies. Rules can name either ID; function rules distinguish managed calls and conservatively cover raw calls sharing the route. Existing grant permissions and policy rules apply. wait() returns an immediate result or waits for a required approval; it never approves the request itself. Persist the approval ID to resume after a restart.
Provider errors retain their response; JSON decoding raises ProviderAPIError for provider failures. ManagedOperationError identifies contract/input/retention errors. See error handling and provider-specific behavior. Sensitive input may be refused before approval storage. A decoding error never resubmits a write.