> ## Documentation Index
> Fetch the complete documentation index at: https://docs.slash.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Enable or disable a dimension value

> Turn a value on or off for coding, for example to hide a retired account. Entries already coded with it keep it.



## OpenAPI

````yaml /openapi-v2.json patch /v2/accounting/dimensions/{dimensionKey}/values/{valueId}
openapi: 3.1.0
info:
  title: Slash Public API V2
  description: >-
    Send money for a Slash legal entity. Every request uses an API key. Transfer
    creation returns a Transfer that links its resulting transactions.
  version: 0.0.1
servers:
  - url: https://api.slash.com
    description: production
security:
  - api_key: []
paths:
  /v2/accounting/dimensions/{dimensionKey}/values/{valueId}:
    parameters:
      - name: x-legal-entity
        in: header
        required: true
        description: >-
          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.
        schema:
          type: string
          pattern: ^le_[a-zA-Z0-9]+$
      - name: dimensionKey
        in: path
        required: true
        description: A `key` from `GET /v2/accounting/dimensions`.
        schema:
          type: string
      - name: valueId
        in: path
        required: true
        description: A value `id` on that dimension.
        schema:
          type: string
    patch:
      summary: Enable or disable a dimension value
      description: >-
        Turn a value on or off for coding, for example to hide a retired
        account. Entries already coded with it keep it.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                enabled:
                  type: boolean
                  description: Whether the value can be coded onto new entries.
              required:
                - enabled
              additionalProperties: false
      responses:
        '200':
          description: The value, with its new availability.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/accounting-dimension-value'
        '400':
          $ref: >-
            #/components/responses/PublicApiV2Error400AccountingDimensionsValuesUpdate
        '401':
          $ref: '#/components/responses/PublicApiV2Error401Unauthorized'
        '403':
          $ref: >-
            #/components/responses/PublicApiV2Error403ForbiddenForbiddenLegalEntityNotAvailableUserApiKeyRequired
        '404':
          $ref: >-
            #/components/responses/PublicApiV2Error404AccountingDimensionsValuesUpdate
        '409':
          $ref: >-
            #/components/responses/PublicApiV2Error409DimensionValuesUpdateInProgressLastEnabledDimensionValue
        '429':
          $ref: '#/components/responses/PublicApiV2RateLimited'
        '500':
          $ref: '#/components/responses/PublicApiV2Error500Internal'
      security:
        - api_key: []
components:
  schemas:
    accounting-dimension-value:
      title: AccountingDimensionValue
      description: >-
        One selectable value of a dimension: a general-ledger account, a vendor
        record, a class, and so on. Use `id` when coding a line item.
      type: object
      properties:
        id:
          type: string
          description: >-
            Value id. The prefix depends on the dimension's `type`:
            `accounting_account_`, `accounting_vendor_`, and so on for
            `platform` dimensions; `acc_dim_val_` for `generic` dimensions. A
            `custom_field` option's id is the option value itself, the string
            `customFields` takes.
          example: accounting_account_2rj4l7hmrrrcv
        dimensionKey:
          type: string
          description: The dimension this value belongs to.
          example: account
        connectionId:
          type: string
          example: accounting_connection_2rj4l7hmrrrcv
        name:
          type: string
          description: Display name, as shown in the dashboard and the platform.
          example: 6100 Software Subscriptions
        externalId:
          type: string
          description: >-
            The accounting platform's own id for this value, or the id in the
            imported file on CSV connections. For the few values a platform
            reports no id for, a stable id assigned when the value was synced.
          example: '80'
        platformStatus:
          type: string
          description: >-
            The value's status on the accounting platform, when it reports one
            (for example `active` or `archived`). Whether Slash offers the value
            for coding is `enabled`.
          example: active
        parentId:
          type: string
          description: >-
            The value on the dimension named by the dimension's `parentKey` that
            this value belongs under. Only set on nested dimensions.
          example: acc_dim_val_2rj4l7hmrrrcv
        enabled:
          type: boolean
          description: >-
            Whether a user has switched this value on for coding. Disabled
            values are not offered in the dashboard but stay valid on existing
            entries.
        metadata:
          type: object
          description: >-
            Platform-specific details such as the account number, account type,
            or currency. Keys vary by platform and dimension; treat them as
            informational.
          additionalProperties: true
      required:
        - id
        - dimensionKey
        - connectionId
        - name
        - externalId
        - enabled
      additionalProperties: false
    PublicApiV2ErrorCustomFieldOptionsReadOnly:
      title: PublicApiV2ErrorCustomFieldOptionsReadOnly
      description: >-
        Custom field options are defined on the accounting platform, so they
        cannot be turned on or off or set as a default here. Change them there
        and resync the connection.
      allOf:
        - $ref: '#/components/schemas/Error'
        - type: object
          properties:
            code:
              type: string
              enum:
                - custom_field_options_read_only
            details:
              type: object
              properties:
                dimension:
                  type: string
                  description: The dimension’s name.
                  example: Cost Center
                field:
                  type: string
                  description: Dot path of the request field at fault.
                id:
                  type: string
                  description: The identifier that field carried, when it is one.
              required:
                - dimension
              additionalProperties: false
          required:
            - code
            - details
    PublicApiV2ErrorInvalidRequestShape:
      title: PublicApiV2ErrorInvalidRequestShape
      description: >-
        The body, query, or headers failed validation, or a required header is
        missing. `details` has one entry per failing location, keyed by JSON
        pointer or header name.
      allOf:
        - $ref: '#/components/schemas/Error'
        - type: object
          properties:
            code:
              type: string
              enum:
                - invalid_request
            details:
              type: object
              properties: {}
              additionalProperties:
                type: string
          required:
            - code
            - details
    PublicApiV2ErrorUnauthorized:
      title: PublicApiV2ErrorUnauthorized
      description: API key authentication is missing or invalid.
      allOf:
        - $ref: '#/components/schemas/Error'
        - type: object
          properties:
            code:
              type: string
              enum:
                - unauthorized
            details:
              type: object
              properties: {}
              additionalProperties: false
          required:
            - code
            - details
    PublicApiV2ErrorForbidden:
      title: PublicApiV2ErrorForbidden
      description: >-
        The credential is not permitted to perform this action on the resource.
        When the resource is a field of the request, `details` names that
        `field` and the `id` it received.
      allOf:
        - $ref: '#/components/schemas/Error'
        - type: object
          properties:
            code:
              type: string
              enum:
                - forbidden
            details:
              type: object
              properties:
                field:
                  type: string
                  description: Dot path of the request field at fault.
                id:
                  type: string
                  description: The identifier that field carried, when it is one.
              additionalProperties: false
          required:
            - code
            - details
    PublicApiV2ErrorForbiddenLegalEntity:
      title: PublicApiV2ErrorForbiddenLegalEntity
      description: The credential is not permitted to act for the selected legal entity.
      allOf:
        - $ref: '#/components/schemas/Error'
        - type: object
          properties:
            code:
              type: string
              enum:
                - forbidden
            details:
              type: object
              properties: {}
              additionalProperties: false
          required:
            - code
            - details
    PublicApiV2ErrorNotAvailable:
      title: PublicApiV2ErrorNotAvailable
      description: >-
        Public API v2 is not yet available. Use [Public API
        v1](https://docs.slash.com/introduction) in the meantime.
      allOf:
        - $ref: '#/components/schemas/Error'
        - type: object
          properties:
            code:
              type: string
              enum:
                - not_available
            details:
              type: object
              properties: {}
              additionalProperties: false
          required:
            - code
            - details
    PublicApiV2ErrorUserApiKeyRequired:
      title: PublicApiV2ErrorUserApiKeyRequired
      description: >-
        The API key is scoped to a legal entity rather than a user. Every v2
        request needs a user API key, created under Settings → API keys in the
        Slash dashboard, together with the `x-legal-entity` header.
      allOf:
        - $ref: '#/components/schemas/Error'
        - type: object
          properties:
            code:
              type: string
              enum:
                - user_api_key_required
            details:
              type: object
              properties: {}
              additionalProperties: false
          required:
            - code
            - details
    PublicApiV2ErrorNotFound:
      title: PublicApiV2ErrorNotFound
      description: >-
        No resource matches the identifier. When the identifier is a field of
        the request, `details` names that `field` and the `id` it received.
      allOf:
        - $ref: '#/components/schemas/Error'
        - type: object
          properties:
            code:
              type: string
              enum:
                - not_found
            details:
              type: object
              properties:
                field:
                  type: string
                  description: Dot path of the request field at fault.
                id:
                  type: string
                  description: The identifier that field carried, when it is one.
              additionalProperties: false
          required:
            - code
            - details
    PublicApiV2ErrorDimensionValuesUpdateInProgress:
      title: PublicApiV2ErrorDimensionValuesUpdateInProgress
      description: >-
        A bulk change to this dimension’s values, started in the Slash
        dashboard, is still running.
      allOf:
        - $ref: '#/components/schemas/Error'
        - type: object
          properties:
            code:
              type: string
              enum:
                - dimension_values_update_in_progress
            details:
              type: object
              properties: {}
              additionalProperties: false
          required:
            - code
            - details
    PublicApiV2ErrorLastEnabledDimensionValue:
      title: PublicApiV2ErrorLastEnabledDimensionValue
      description: >-
        Turning these values off would leave the dimension with nothing to code
        with.
      allOf:
        - $ref: '#/components/schemas/Error'
        - type: object
          properties:
            code:
              type: string
              enum:
                - last_enabled_dimension_value
            details:
              type: object
              properties: {}
              additionalProperties: false
          required:
            - code
            - details
    PublicApiV2ErrorInternal:
      title: PublicApiV2ErrorInternal
      description: >-
        Slash could not complete the request. Quote `referenceId` when
        contacting Slash support.
      allOf:
        - $ref: '#/components/schemas/Error'
        - type: object
          properties:
            code:
              type: string
              enum:
                - internal
            details:
              type: object
              properties: {}
              additionalProperties: false
          required:
            - code
            - details
    Error:
      type: object
      properties:
        code:
          type: string
          description: >-
            Machine-readable reason; branch on this, not on `message`. Every
            code an endpoint can return is listed on its reference page; the
            ones shared by all endpoints are explained in the Errors guide.
          example: invalid_request
        message:
          type: string
          description: >-
            Human-readable explanation, safe to show to an operator. Wording may
            change; use `code` and `details` programmatically.
        details:
          type: object
          description: >-
            The values behind `message`, keyed per `code`. For example
            `insufficient_funds` carries `available` and `requested`;
            `invalid_request` from contract validation carries one entry per
            failing field, keyed by JSON pointer. Empty when the code has no
            variable data.
          additionalProperties:
            type: string
          example:
            available: $120.00
            requested: $500.00
        referenceId:
          type: string
          description: Unique id of this failure. Quote it when contacting Slash support.
          example: 4001-2alj5if
      required:
        - code
        - message
        - details
        - referenceId
      additionalProperties: false
      title: Error
  responses:
    PublicApiV2Error400AccountingDimensionsValuesUpdate:
      description: >-
        - `custom_field_options_read_only` — Custom field options are defined on
        the accounting platform, so they cannot be turned on or off or set as a
        default here. Change them there and resync the connection.

        - `invalid_request (request shape)` — The body, query, or headers failed
        validation, or a required header is missing. `details` has one entry per
        failing location, keyed by JSON pointer or header name.
      content:
        application/json:
          schema:
            anyOf:
              - title: custom_field_options_read_only
                allOf:
                  - $ref: >-
                      #/components/schemas/PublicApiV2ErrorCustomFieldOptionsReadOnly
              - title: invalid_request (request shape)
                allOf:
                  - $ref: '#/components/schemas/PublicApiV2ErrorInvalidRequestShape'
          examples:
            custom_field_options_read_only_dimension_key:
              summary: custom_field_options_read_only (dimensionKey)
              value:
                code: custom_field_options_read_only
                message: >-
                  Cost Center is a custom field; its options come from the
                  accounting platform and cannot be changed here.
                details:
                  dimension: Cost Center
                  field: dimensionKey
                referenceId: 4001-2alj5if
            invalid_request_request_shape:
              summary: invalid_request (request shape)
              value:
                code: invalid_request
                message: >-
                  Invalid `enabled`: Invalid input: expected boolean, received
                  string
                details:
                  /enabled: 'Invalid input: expected boolean, received string'
                referenceId: 4001-2alj5if
    PublicApiV2Error401Unauthorized:
      description: '- `unauthorized` — API key authentication is missing or invalid.'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PublicApiV2ErrorUnauthorized'
          examples:
            unauthorized:
              summary: unauthorized
              value:
                code: unauthorized
                message: API key authentication is missing or invalid.
                details: {}
                referenceId: 4011-2alj5if
    PublicApiV2Error403ForbiddenForbiddenLegalEntityNotAvailableUserApiKeyRequired:
      description: >-
        - `forbidden` — The credential is not permitted to perform this action
        on the resource. When the resource is a field of the request, `details`
        names that `field` and the `id` it received.

        - `forbidden (legal entity)` — The credential is not permitted to act
        for the selected legal entity.

        - `not_available` — Public API v2 is not yet available. Use [Public API
        v1](https://docs.slash.com/introduction) in the meantime.

        - `user_api_key_required` — The API key is scoped to a legal entity
        rather than a user. Every v2 request needs a user API key, created under
        Settings → API keys in the Slash dashboard, together with the
        `x-legal-entity` header.
      content:
        application/json:
          schema:
            anyOf:
              - title: forbidden
                allOf:
                  - $ref: '#/components/schemas/PublicApiV2ErrorForbidden'
              - title: forbidden (legal entity)
                allOf:
                  - $ref: '#/components/schemas/PublicApiV2ErrorForbiddenLegalEntity'
              - title: not_available
                allOf:
                  - $ref: '#/components/schemas/PublicApiV2ErrorNotAvailable'
              - title: user_api_key_required
                allOf:
                  - $ref: '#/components/schemas/PublicApiV2ErrorUserApiKeyRequired'
          examples:
            forbidden:
              summary: forbidden
              value:
                code: forbidden
                message: This credential is not permitted to do that.
                details: {}
                referenceId: 4031-2alj5if
            forbidden_legal_entity:
              summary: forbidden (legal entity)
              value:
                code: forbidden
                message: This credential is not permitted to do that.
                details: {}
                referenceId: 4031-2alj5if
            not_available:
              summary: not_available
              value:
                code: not_available
                message: >-
                  Public API v2 is not yet available. Use Public API v1
                  (https://docs.slash.com/introduction) in the meantime.
                details: {}
                referenceId: 4031-2alj5if
            user_api_key_required:
              summary: user_api_key_required
              value:
                code: user_api_key_required
                message: >-
                  Public API v2 requires a user API key. Create one under
                  Settings → API keys in the Slash dashboard.
                details: {}
                referenceId: 4031-2alj5if
    PublicApiV2Error404AccountingDimensionsValuesUpdate:
      description: >-
        - `not_found` — No resource matches the identifier. When the identifier
        is a field of the request, `details` names that `field` and the `id` it
        received.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PublicApiV2ErrorNotFound'
          examples:
            not_found_dimension_key:
              summary: not_found (dimensionKey)
              value:
                code: not_found
                message: '`dimensionKey` was not found.'
                details:
                  field: dimensionKey
                referenceId: 4041-2alj5if
            not_found_value_id:
              summary: not_found (valueId)
              value:
                code: not_found
                message: '`valueId` was not found.'
                details:
                  field: valueId
                referenceId: 4041-2alj5if
    PublicApiV2Error409DimensionValuesUpdateInProgressLastEnabledDimensionValue:
      description: >-
        - `dimension_values_update_in_progress` — A bulk change to this
        dimension’s values, started in the Slash dashboard, is still running.

        - `last_enabled_dimension_value` — Turning these values off would leave
        the dimension with nothing to code with.
      content:
        application/json:
          schema:
            anyOf:
              - title: dimension_values_update_in_progress
                allOf:
                  - $ref: >-
                      #/components/schemas/PublicApiV2ErrorDimensionValuesUpdateInProgress
              - title: last_enabled_dimension_value
                allOf:
                  - $ref: >-
                      #/components/schemas/PublicApiV2ErrorLastEnabledDimensionValue
          examples:
            dimension_values_update_in_progress:
              summary: dimension_values_update_in_progress
              value:
                code: dimension_values_update_in_progress
                message: >-
                  A bulk update is already in progress for this dimension. Try
                  again once it finishes.
                details: {}
                referenceId: 4091-2alj5if
            last_enabled_dimension_value:
              summary: last_enabled_dimension_value
              value:
                code: last_enabled_dimension_value
                message: At least one value of the dimension must stay enabled.
                details: {}
                referenceId: 4091-2alj5if
    PublicApiV2RateLimited:
      description: >-
        The request exceeded the applicable rate limit. The response body is
        plain text, not the error object; clients must not depend on its
        wording.
      content:
        text/plain:
          schema:
            type: string
          example: You are rate limited
    PublicApiV2Error500Internal:
      description: >-
        - `internal` — Slash could not complete the request. Quote `referenceId`
        when contacting Slash support.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PublicApiV2ErrorInternal'
          examples:
            internal:
              summary: internal
              value:
                code: internal
                message: >-
                  An unexpected error occurred. If this keeps happening, contact
                  Slash support with the reference id below.
                details: {}
                referenceId: 5001-2alj5if
  securitySchemes:
    api_key:
      type: apiKey
      name: X-API-Key
      in: header
      description: >-
        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`.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.