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

# List Fault Code Events

> List all fault code events detected by the provider.



## OpenAPI

````yaml GET /fault-codes/events
openapi: 3.1.0
info:
  title: Terminal Telematics API
  description: >-
    Terminal is a unified API that makes it easy to integrate with the leading
    telematics service providers.
  version: '0.0'
  contact:
    name: Terminal
    email: connect@withterminal.com
    url: https://www.withterminal.com
servers:
  - url: https://api.withterminal.com/tsp/v1
    description: Production
  - url: https://api.sandbox.withterminal.com/tsp/v1
    description: Sandbox
security:
  - Authorization: []
tags:
  - name: Authentication
  - name: Connections
  - name: Data Management
  - name: Drivers
  - name: Groups
  - name: Hours of Service
  - name: IFTA
  - name: Issues
  - name: Link
  - name: Providers
  - name: Safety
  - name: Trailers
  - name: Vehicles
  - name: Vehicle Utilization
  - name: Webhook Events
paths:
  /fault-codes/events:
    parameters: []
    get:
      tags:
        - Fault Codes
      summary: List Fault Code Events
      description: List all fault code events detected by the provider.
      operationId: listFaultCodeEvents
      parameters:
        - name: Connection-Token
          in: header
          required: true
          schema:
            type: string
            example: con_tkn_22vUhkC6tgre4kwaYfUkCDA1rzn6eyb4
            pattern: ^con_tkn_\S+$
          description: >-
            The token returned when a user authenticated their account. This
            authorizes access to a specific account.
        - name: cursor
          in: query
          schema:
            type: string
            format: cursor
            example: cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw
          description: Pagination cursor to start requests from
        - name: limit
          in: query
          required: false
          schema:
            type: integer
          description: The maximum number of results to return in a page.
        - name: modifiedAfter
          in: query
          required: false
          schema:
            type: string
            format: date-time
            example: '2021-01-06T03:24:53.000Z'
          description: Only include records that were last modified after a provided date.
        - name: modifiedBefore
          in: query
          required: false
          schema:
            type: string
            format: date-time
            example: '2021-01-06T03:24:53.000Z'
          description: Only include records that were last modified before a provided date.
        - schema:
            title: ISODateTime
            type: string
            format: date-time
            example: '2021-01-06T03:24:53.000Z'
            description: '[ISO 8601](https://www.w3.org/TR/NOTE-datetime) date'
          in: query
          name: startAt
          description: Only include fault code events after a provided date.
        - schema:
            title: ISODateTime
            type: string
            format: date-time
            example: '2021-01-06T03:24:53.000Z'
            description: '[ISO 8601](https://www.w3.org/TR/NOTE-datetime) date'
          in: query
          name: endAt
          description: Only include fault code events before a provided date.
        - name: vehicleIds
          in: query
          required: false
          schema:
            type: string
            pattern: ^vcl_[0-9A-HJKMNP-TV-Z]{26}(\s*,\s*vcl_[0-9A-HJKMNP-TV-Z]{26})*$
          description: >-
            Comma separated list of vehicle IDs to filter for. Can filter up to
            50 vehicles at a time. Each ID must use the `vcl_` prefix.
        - schema:
            type: string
            enum:
              - vehicle
          in: query
          name: expand
          description: Expand resources in the returned response
        - name: raw
          in: query
          required: false
          schema:
            type: boolean
          description: >-
            Include raw responses used to normalize model. Used for debugging or
            accessing unique properties that are not unified.
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  results:
                    type: array
                    items:
                      title: Fault Code Event
                      x-model-category: historical
                      type: object
                      properties:
                        id:
                          title: FaultCodeEventId
                          type: string
                          format: ulid
                          example: fc_evt_01D8ZQFGHVJ858NBF2Q7DV9MNC
                        provider:
                          title: Provider Code
                          type: string
                          example: geotab
                          description: >-
                            Every provider has a unique code to identify it
                            across Terminal's system. You can find each
                            provider's code under [provider
                            details](/providers).
                        vehicle:
                          example: vcl_01D8ZQFGHVJ858NBF2Q7DV9MNC
                          oneOf:
                            - title: VehicleId
                              description: Unique identifier for the vehicle in Terminal.
                              type: string
                              format: ulid
                              pattern: ^vcl_[0-9A-HJKMNP-TV-Z]{26}$
                              example: vcl_01D8ZQFGHVJ858NBF2Q7DV9MNC
                            - title: Expanded Vehicle
                              type: object
                              properties:
                                id:
                                  title: VehicleId
                                  description: >-
                                    Unique identifier for the vehicle in
                                    Terminal.
                                  type: string
                                  format: ulid
                                  pattern: ^vcl_[0-9A-HJKMNP-TV-Z]{26}$
                                  example: vcl_01D8ZQFGHVJ858NBF2Q7DV9MNC
                              required:
                                - id
                          description: >-
                            Entities in Terminal are expandable. Using the
                            `expand` query parameter you can choose to ingest
                            just an ID or the full entity details.
                        protocol:
                          type: string
                          enum:
                            - j1939
                            - obdii
                          description: The diagnostic protocol used
                        status:
                          type: string
                          enum:
                            - open
                            - pending
                            - closed
                          description: >-
                            The status of the fault code at the time of the
                            event. Some providers do not report closed statuses.
                        code:
                          type: string
                          example: P0087
                          description: >-
                            The fault code identifier. For OBD-II systems:
                            alphanumeric DTC codes (P0087, U0046, C0123, B1234).
                            For J1939 systems: SPN-FMI format (SPN3031-FMI9) or
                            derived codes from SPN/FMI combinations.
                        description:
                          type: string
                          example: Fuel Rail/System Pressure - Too Low Bank 1
                          description: Human-readable description of the fault
                        observedAt:
                          title: ISODateTime
                          type: string
                          format: date-time
                          example: '2021-01-06T03:24:53.000Z'
                          description: '[ISO 8601](https://www.w3.org/TR/NOTE-datetime) date'
                        milStatus:
                          type: string
                          enum:
                            - 'on'
                            - 'off'
                          description: >-
                            The Malfunction Indicator Lamp (MIL) status of the
                            vehicle at the time the fault code was observed
                        obdii:
                          type: object
                          description: >-
                            OBD-II Diagnostic Trouble Code information for
                            light/medium duty vehicles. Contains standardized
                            alphanumeric codes like P0087, U0046, C0123, B1234.
                          properties:
                            code:
                              type: string
                              example: P0087
                              description: Alphanumeric DTC code (e.g., P0087, U0046)
                            description:
                              type: string
                              example: Fuel Rail/System Pressure - Too Low Bank 1
                              description: Human-readable description of the DTC
                          required:
                            - code
                        j1939:
                          type: object
                          description: >-
                            J1939 fault code information for heavy-duty
                            vehicles. FMI (Failure Mode Identifier) indicates
                            the specific nature of the fault (0-31 numeric
                            codes).
                          properties:
                            fmi:
                              type: integer
                              example: 9
                              description: >-
                                Failure Mode Identifier (FMI) - numeric code
                                (0-31) indicating the specific nature of the
                                fault
                            fmiDescription:
                              type: string
                              example: Voltage Below Normal
                              description: >-
                                Human-readable description of the FMI failure
                                mode
                            spn:
                              type: integer
                              example: 3031
                              description: >-
                                Suspect Parameter Number (SPN) - identifies the
                                specific parameter/system affected
                            spnDescription:
                              type: string
                              example: 'System Diagnostic Code #1'
                              description: >-
                                Human-readable description of the SPN
                                parameter/system
                            occurrenceCount:
                              type: integer
                              example: 15
                              description: >-
                                The occurrence count reported by the provider at
                                the time the fault code was observed
                            sourceAddress:
                              type: integer
                              example: 256
                              description: The source address of the fault code
                          required:
                            - spn
                        metadata:
                          title: EntityMetadata
                          type: object
                          description: Internal metadata about the record.
                          required:
                            - addedAt
                            - modifiedAt
                          properties:
                            addedAt:
                              title: AddedAt
                              type: string
                              format: date-time
                              description: >-
                                The date and time the record was ingested into
                                Terminal. Note: this is not the date and time
                                the record was created in the provider's system.
                            modifiedAt:
                              title: ModifiedAt
                              type: string
                              format: date-time
                              description: >-
                                The date and time the record was last updated in
                                Terminal. Note: this is not the date and time
                                the record was updated in the provider's system.
                        raw:
                          title: RawDataList
                          type: array
                          example: []
                          items:
                            title: RawData
                            type: object
                            properties:
                              provider:
                                type: string
                              schema:
                                type: string
                              extractedAt:
                                type: string
                              data:
                                type: object
                            required:
                              - provider
                              - schema
                              - extractedAt
                              - data
                      discriminator:
                        propertyName: protocol
                      oneOf:
                        - title: FaultCodeEventObdii
                          properties:
                            protocol:
                              const: obdii
                          required:
                            - protocol
                            - obdii
                        - title: FaultCodeEventJ1939
                          properties:
                            protocol:
                              const: j1939
                          required:
                            - protocol
                            - j1939
                      required:
                        - id
                        - provider
                        - vehicle
                        - code
                        - protocol
                        - observedAt
                        - status
                        - metadata
                      x-description: A fault code observed at a specific time
                  next:
                    title: Pagination Cursor
                    type: string
                    example: cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw
                    description: Cursor used for pagination.
                    format: cursor
                required:
                  - results
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    enum:
                      - bad_request
                  message:
                    type: string
                    example: Invalid request body
                  detail:
                    type: array
                    items:
                      title: ErrorPathDetail
                      type: object
                      properties:
                        message:
                          type: string
                          example: '''vehicleId'' property must be a valid ulid'
                        path:
                          type: string
                          example: '{requestQuery}.vehicleId'
                        suggestion:
                          type: string
                          example: >-
                            Please ensure you submit a valid 'vehicleId'
                            property
                        context:
                          type: object
                      required:
                        - message
                        - path
                required:
                  - code
                  - message
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    enum:
                      - unauthorized
                  message:
                    type: string
                    example: Unauthorized Request
                  detail:
                    type: string
                    example: Please ensure you have a valid API key
                required:
                  - code
                  - message
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    enum:
                      - forbidden
                  message:
                    type: string
                    example: Forbidden Request
                  detail:
                    type: string
                    example: >-
                      Please ensure the connection token matches the resource
                      you are attempting to access.
                required:
                  - code
                  - message
        '429':
          description: Too Many Requests
          content:
            application/json:
              schema:
                type: object
                additionalProperties: true
                properties:
                  code:
                    enum:
                      - too_many_requests
                  retryAfter:
                    description: The number of seconds to wait before retrying the request
                    type: integer
                    example: 60
                  message:
                    type: string
                    example: Too Many Requests
                  detail:
                    type: string
                    example: You have exceeded your rate limit. Please try again later.
                required:
                  - code
                  - message
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    enum:
                      - internal_server_error
                  message:
                    type: string
                    example: Internal Server Error
                  detail:
                    type: string
                    example: Something went wrong
                required:
                  - code
                  - message
        '504':
          description: Gateway Timeout Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    enum:
                      - gateway_timeout
                  message:
                    type: string
                    example: Gateway Timeout
                required:
                  - code
                  - message
components:
  securitySchemes:
    Authorization:
      type: http
      scheme: bearer

````