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

# Set nominal battery capacity

> Set the vehicle's nominal battery capacity, overriding the value Smartcar derives for it.
Must be one of the `availableCapacities` reported by the `tractionbattery-nominalcapacity` signal.
Simulated vehicles accept any capacity from 10 to 200 kWh.




## OpenAPI

````yaml /specs/full-vehicle.yaml post /vehicles/{vehicleId}/settings/tractionbattery-nominalcapacity
openapi: 3.0.3
info:
  title: Smartcar Vehicle API (Complete)
  version: 3.0.0
  description: API for vehicle data (signals) and operations (commands).
servers:
  - url: https://vehicle.api.smartcar.com/v3
security: []
tags:
  - name: Charging
    description: Commands for controlling vehicle charging behavior.
  - name: Security
    description: Commands for controlling vehicle door locks.
  - name: Navigation
    description: Commands for setting destinations in the vehicle navigation system.
  - name: Charge Schedules
    description: Create, retrieve, and delete recurring charge schedules on a vehicle.
  - name: Charge
    description: Signals and attributes for the Charge group.
  - name: Climate
    description: Signals and attributes for the Climate group.
  - name: Closure
    description: Signals and attributes for the Closure group.
  - name: ConnectivitySoftware
    description: Signals and attributes for the ConnectivitySoftware group.
  - name: ConnectivityStatus
    description: Signals and attributes for the ConnectivityStatus group.
  - name: Diagnostics
    description: Signals and attributes for the Diagnostics group.
  - name: HVAC
    description: Signals and attributes for the HVAC group.
  - name: InternalCombustionEngine
    description: Signals and attributes for the InternalCombustionEngine group.
  - name: Location
    description: Signals and attributes for the Location group.
  - name: LowVoltageBattery
    description: Signals and attributes for the LowVoltageBattery group.
  - name: Motion
    description: Signals and attributes for the Motion group.
  - name: Odometer
    description: Signals and attributes for the Odometer group.
  - name: Service
    description: Signals and attributes for the Service group.
  - name: Surveillance
    description: Signals and attributes for the Surveillance group.
  - name: TractionBattery
    description: Signals and attributes for the TractionBattery group.
  - name: Transmission
    description: Signals and attributes for the Transmission group.
  - name: VehicleIdentification
    description: Signals and attributes for the VehicleIdentification group.
  - name: VehicleUserAccount
    description: Signals and attributes for the VehicleUserAccount group.
  - name: Wheel
    description: Signals and attributes for the Wheel group.
paths:
  /vehicles/{vehicleId}/settings/tractionbattery-nominalcapacity:
    post:
      summary: Set nominal battery capacity
      description: >
        Set the vehicle's nominal battery capacity, overriding the value
        Smartcar derives for it.

        Must be one of the `availableCapacities` reported by the
        `tractionbattery-nominalcapacity` signal.

        Simulated vehicles accept any capacity from 10 to 200 kWh.
      operationId: setTractionBatteryNominalCapacity
      parameters:
        - in: path
          name: vehicleId
          description: The unique identifier for the vehicle.
          schema:
            type: string
          example: v_123abc456def
          required: true
        - in: header
          name: sc-user-id
          required: true
          description: >
            The identifier of the vehicle user on whose behalf the request is
            being made.

            These requests require both the `vehicleId` (path) and `sc-user-id`
            (header) to

            identify the specific vehicle and the user who has granted
            permission to act on it.

            The bearer token is a machine-to-machine token and does not carry
            per-user context,

            so this header must be provided explicitly for every request being
            made.
          schema:
            type: string
          example: user_789xyz
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NominalCapacitySettingRequest'
      responses:
        '201':
          description: The nominal battery capacity was set
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NominalCapacitySettingDataResource'
        '400':
          $ref: '#/components/responses/BadRequest1'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound1'
        '500':
          $ref: '#/components/responses/InternalError'
      security:
        - bearerAuth: []
components:
  schemas:
    NominalCapacitySettingRequest:
      type: object
      required:
        - data
      properties:
        data:
          type: object
          required:
            - attributes
          properties:
            attributes:
              type: object
              required:
                - capacity
              properties:
                capacity:
                  type: number
                  description: >
                    The nominal battery capacity in kWh. Must be one of the
                    vehicle's available capacities.
      example:
        data:
          attributes:
            capacity: 75
    NominalCapacitySettingDataResource:
      type: object
      required:
        - data
      properties:
        data:
          $ref: '#/components/schemas/NominalCapacitySettingResource'
      example:
        data:
          id: tractionbattery-nominalcapacity
          type: vehicle-setting
          attributes:
            value:
              capacity: 75
              unit: kWh
            source: APPLICATION
          meta:
            updatedAt: '2026-10-15T20:00:00Z'
          links:
            affectedSignals:
              - >-
                https://vehicle.api.smartcar.com/v3/vehicles/vehicle123/signals/tractionbattery-nominalcapacity
    NominalCapacitySettingResource:
      type: object
      required:
        - id
        - type
        - attributes
        - meta
        - links
      properties:
        id:
          type: string
          enum:
            - tractionbattery-nominalcapacity
        type:
          type: string
          enum:
            - vehicle-setting
        attributes:
          type: object
          required:
            - value
            - source
          properties:
            value:
              $ref: '#/components/schemas/NominalCapacitySettingValue'
            source:
              type: string
              description: Who set the value.
              enum:
                - APPLICATION
        meta:
          type: object
          required:
            - updatedAt
          properties:
            updatedAt:
              type: string
              format: date-time
              description: |
                ISO 8601 UTC date string of when the setting was updated
        links:
          type: object
          required:
            - affectedSignals
          properties:
            affectedSignals:
              type: array
              description: The signals whose values change with this setting.
              items:
                type: string
    ErrorResponse:
      type: object
      required:
        - errors
      properties:
        errors:
          type: array
          minItems: 1
          items:
            type: object
            required:
              - status
              - type
              - code
              - title
              - detail
            properties:
              status:
                type: string
              type:
                type: string
                enum:
                  - AUTHENTICATION
                  - BILLING
                  - COMPATIBILITY
                  - CONNECTED_SERVICES_ACCOUNT
                  - RATE_LIMIT
                  - RESOURCE_NOT_FOUND
                  - SERVER
                  - UPSTREAM
                  - VALIDATION
                  - VEHICLE_STATE
              code:
                type: string
              title:
                type: string
              detail:
                type: string
              resolution:
                type: object
                description: >-
                  Optional field providing guidance on how to resolve the error,
                  if applicable. The structure of this object can vary based on
                  the error type and is intended to provide actionable
                  information to clients.
                properties:
                  type:
                    type: string
                    description: >-
                      The type of resolution recommended (e.g., "RETRY_LATER",
                      "CONTACT_SUPPORT", etc.)
              suggestedUserMessage:
                type: string
                description: >-
                  Optional field providing a user-friendly message that can be
                  displayed to end-users, if applicable. This message is
                  intended to be easily understandable and actionable for users
                  who encounter the error.
              links:
                type: object
                properties:
                  about:
                    type: string
                    format: uri
              meta:
                type: object
                properties:
                  debug:
                    type: object
                    description: >-
                      Debug information for internal use, not intended for
                      clients
                    properties:
                      applicationId:
                        type: string
                        description: The unique identifier for the application
                      requestId:
                        type: string
                        description: The unique identifier for the request
                      origin:
                        type: string
                        description: The origin of the error
                    example:
                      applicationId: app_123abc
                      requestId: req_456def
                      origin: internal.com/path
    NominalCapacitySettingValue:
      type: object
      required:
        - capacity
        - unit
      properties:
        capacity:
          type: number
          description: The nominal battery capacity.
        unit:
          type: string
          enum:
            - kWh
  responses:
    BadRequest1:
      description: 400 Bad Request
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          example:
            errors:
              - status: '400'
                type: VALIDATION
                code: BAD_REQUEST
                title: Bad Request
                detail: >-
                  The request could not be understood by the server due to
                  malformed syntax.
                links:
                  about: >-
                    https://smartcar.com/docs/errors/api-errors/v3/validation-errors
    Unauthorized:
      description: 401 Unauthorized
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          example:
            errors:
              - status: '401'
                type: AUTHENTICATION
                code: UNAUTHORIZED
                title: Unauthorized
                detail: The Authorization token is missing or invalid.
                links:
                  about: >-
                    https://smartcar.com/docs/errors/api-errors/v3/authentication-errors#authentication
    Forbidden:
      description: 403 Forbidden
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          example:
            errors:
              - status: '403'
                type: AUTHENTICATION
                code: FORBIDDEN
                title: Forbidden
                detail: You do not have permission to access this resource.
                links:
                  about: >-
                    https://smartcar.com/docs/errors/api-errors/v3/authentication-errors
    NotFound1:
      description: 404 Not Found
      content:
        application/json:
          schema:
            type: object
            required:
              - errors
            properties:
              errors:
                type: array
                minItems: 1
                items:
                  type: object
                  required:
                    - status
                    - type
                    - code
                    - title
                    - detail
                  properties:
                    status:
                      type: string
                    type:
                      type: string
                      enum:
                        - AUTHENTICATION
                        - BILLING
                        - COMPATIBILITY
                        - CONNECTED_SERVICES_ACCOUNT
                        - RATE_LIMIT
                        - RESOURCE_NOT_FOUND
                        - SERVER
                        - UPSTREAM
                        - VALIDATION
                        - VEHICLE_STATE
                    code:
                      type: string
                    title:
                      type: string
                    detail:
                      type: string
                    resolution:
                      type: object
                      description: >-
                        Optional field providing guidance on how to resolve the
                        error, if applicable. The structure of this object can
                        vary based on the error type and is intended to provide
                        actionable information to clients.
                      properties:
                        type:
                          type: string
                          description: >-
                            The type of resolution recommended (e.g.,
                            "RETRY_LATER", "CONTACT_SUPPORT", etc.)
                    suggestedUserMessage:
                      type: string
                      description: >-
                        Optional field providing a user-friendly message that
                        can be displayed to end-users, if applicable. This
                        message is intended to be easily understandable and
                        actionable for users who encounter the error.
                    links:
                      type: object
                      properties:
                        about:
                          type: string
                          format: uri
                    meta:
                      type: object
                      properties:
                        debug:
                          type: object
                          description: >-
                            Debug information for internal use, not intended for
                            clients
                          properties:
                            applicationId:
                              type: string
                              description: The unique identifier for the application
                            requestId:
                              type: string
                              description: The unique identifier for the request
                            origin:
                              type: string
                              description: The origin of the error
                          example:
                            applicationId: app_123abc
                            requestId: req_456def
                            origin: internal.com/path
          example:
            errors:
              - status: '404'
                type: RESOURCE_NOT_FOUND
                code: NOT_FOUND
                title: Not Found
                detail: The requested resource could not be found.
                links:
                  about: >-
                    https://smartcar.com/docs/errors/api-errors/v3/resource-not-found-errors
    InternalError:
      description: 500 Internal Server Error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          example:
            errors:
              - status: '500'
                type: SERVER
                code: INTERNAL
                title: Internal Server Error
                detail: An unexpected error occurred on the server.
                links:
                  about: https://smartcar.com/docs/errors/api-errors/v3/server-errors
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT or opaque
      description: |
        The Authorization header must be provided with a valid bearer token.
        Example: `Authorization: Bearer {token}`

````