Finance

Upsert currency

Create or update the addressed currency.

PUT/v1/currencies/{currencyId}

Path parameters

currencyId string required

An opaque currency resource identifier.

Example01JQ2T5Y5Q3R8W9N6M4K2H7P1F

Body parameters

application/json · required
name string required

Display name of the resource.

Minimum length: 1 character. · Maximum length: 255 characters.

ExampleUS Dollar
description string nullable

Human-readable description of the resource.

Maximum length: 10000 characters.

ExampleUS Dollar reporting conversion to Saudi Riyal
sourceCurrencyCode string required

ISO 4217 code of the source currency.

Maximum length: 32 characters.

ExampleUSD
targetCurrencyCode string required

ISO 4217 code of the target currency.

Maximum length: 32 characters.

ExampleSAR
conversionRate string required

Exact decimal rate from the source currency to the target currency.

Maximum length: 128 characters.

Example3.75

Headers

authorization string required

Bearer workspace API key.

ExampleBearer $NQD_API_KEY
workspace-id string required

Workspace scope for the request. Required for workspace operations and must belong to the authenticated identity.

Minimum length: 1 character. · Maximum length: 128 characters.

Example01JQ2T5Y5Q3R8W9N6M4K2H7P1A

Send the complete writable representation or change set. Use the latest updatedAt for If-Match.

Response

200Success

Response headers

x-request-id string

Correlation identifier returned with every response for support and request tracing.

Example550e8400-e29b-41d4-a716-446655440000
data object

Returned records. Collections and batches use an array; single records use an object.

ShowHide 6 properties
data.id string

Opaque identifier for this resource or reference.

Example01JQ2T5Y5Q3R8W9N6M4K2H7P1F
data.name string

Display name of the record.

ExampleUS Dollar
data.description string

Optional human-readable description of the record.

ExampleUS Dollar reporting conversion to Saudi Riyal
data.conversion object

Currency conversion quote used for reporting, including source, target, and rate.

ShowHide 3 properties
data.conversion.from string

ISO 4217 code of the source currency in this persisted quote.

ExampleUSD
data.conversion.to string

ISO 4217 code of the target reporting currency in this persisted quote.

ExampleSAR
data.conversion.rate string

Exact decimal conversion rate from the quote source currency to its target currency.

Maximum length: 128 characters.

Example3.75
data.createdAt string

ISO 8601 timestamp for the authored or payment event. Recurring records preserve their scheduled occurrence.

Example2026-01-15T12:00:00.000Z
data.updatedAt string

Timestamp used for stale-edit protection. Preserve the server value when updating.

Example2026-01-15T12:00:00.000Z

Possible errors

400 Invalid request

Response headers

x-request-id string

Correlation identifier returned with every response for support and request tracing.

Example550e8400-e29b-41d4-a716-446655440000
error object

Error details returned for a failed request.

ShowHide 4 properties
error.code string

ISO 4217 currency code, such as SAR or USD.

Exampleinvalid_input
error.message string

Human-readable explanation of the result or error.

ExampleThe request could not be validated.
error.requestId string

Correlation identifier for support and request tracing.

Example550e8400-e29b-41d4-a716-446655440000
error.details object nullable

Additional structured details about the result or error.

ShowHide 1 property
error.details.issues object[]

Structured field issues returned when request validation fails.

ShowHide 3 properties
error.details.issues[].path string | number[]

Field path where the validation issue occurred.

One of: string alternative 1, number alternative 2

Example0 items
error.details.issues[].reason string

Machine-readable reason for the validation issue.

Allowed values: "expected_type", "required", "unexpected_property", "invalid_value", "invalid_json", "invalid_query", "unsupported_media_type", "body_too_large", "body_timeout", "conflicting_scope", "missing_header", "concurrency_required", "invalid_resource_id", "invalid_request"

Exampleinvalid_request
error.details.issues[].code string nullable

ISO 4217 currency code, such as SAR or USD.

Exampleinvalid_input
Example 400 response
{
  "error": {
    "code": "invalid_input",
    "message": "The request could not be validated.",
    "requestId": "550e8400-e29b-41d4-a716-446655440000",
    "details": {
      "issues": [
        {
          "path": [],
          "reason": "invalid_request"
        }
      ]
    }
  }
}
View raw OpenAPI operation

Use the machine-readable contract for client generation and payload validation.

Open OpenAPI contract ↗