Update an accounting dimension
Turn a dimension on or off, rename it, or set the default value new entries are coded with. Required dimensions can’t be turned off, and neither they nor account can be renamed.
Authorizations
User API key authentication. Create a key under Settings → API keys in the Slash dashboard (https://app.slash.com/global-settings/api-keys) and send the x-legal-entity header naming the legal entity to act on with every request. Keys scoped to a legal entity are rejected with 403 user_api_key_required.
Headers
The legal entity to act on. Required on every request; a user API key can act on any legal entity its user has access to.
^le_[a-zA-Z0-9]+$Path Parameters
A dimension key from GET /v2/accounting/dimensions.
Body
Switch a dimension on or off for coding, rename it, or set the value new entries are coded with. Provide any combination of enabled, name and defaultValueId; omitted fields keep their current value.
The connection the dimension belongs to. Optional when the legal entity has exactly one connection; required when it has several.
"accounting_connection_2rj4l7hmrrrcv"
Whether line items can be coded on this dimension. required dimensions cannot be disabled.
New display name, shown in the dashboard. required dimensions and account cannot be renamed, and Account is reserved as a name.
1 - 100"Cost Center"
The value entries are coded with when nothing else applies, or null to stop defaulting. Must be an enabled value of this dimension; disabling that value later clears the default. custom_field dimensions take no default.
1 - 255"accounting_class_2rj4l7hmrrrcv"
Response
The dimension as updated.
One axis a line item can be coded on: the general-ledger account, a vendor, a class, a custom field, and so on. Which dimensions exist depends on the connection's platform and settings. Every dimension has values, listed at GET /v2/accounting/dimensions/{dimensionKey}/values.
Stable identifier used in every other accounting endpoint. Platform dimensions use fixed keys (account, vendor, customer, class, department, location, project, subsidiary); custom fields use customField: followed by the field's key; generic dimensions use the key defined on the connection.
"account"
The connection this dimension belongs to.
"accounting_connection_2rj4l7hmrrrcv"
Display name shown in the dashboard.
"Account"
platform dimensions are the platform's own objects and their values carry that object's id prefix (accounting_account_, accounting_vendor_, ...). generic dimensions are stored on the connection itself and their values use the acc_dim_val_ prefix. custom_field dimensions are platform custom fields exposed through the same interface; their values are the field's options, each identified by the option value itself.
platform, generic, custom_field Every editable line item must carry a value for this dimension before the entry can sync.
Whether accounting rules can set this dimension automatically.
Whether the dimension is switched on for coding. Disabled dimensions are still listed so you can recognize keys that appear on older entries.
Key of the dimension whose value narrows this one, when the platform nests dimensions (for example cost_code under project on Procore). Values can then be filtered by parentValueId. Hierarchies inside a single dimension, such as sub-accounts or sub-classes, are not nesting: those values report their parent in metadata.parentExternalId.
"project"
The value new line items receive when none is provided.
"accounting_account_2rj4l7hmrrrcv"
Present on custom_field dimensions. Custom fields are not coded with value ids: their raw values live in customFields on the entry (for entry level fields) or on each line item (for line_item level fields), keyed by fieldKey. select and multiselect fields list their allowed options as this dimension's values.