> ## 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 Sync History

> List a log of all batch sync jobs for the current connection.



## OpenAPI

````yaml GET /syncs
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:
  /syncs:
    parameters: []
    get:
      tags:
        - Data Management
      summary: List Sync History
      description: List a log of all batch sync jobs for the current connection.
      operationId: listSyncHistory
      parameters:
        - name: X-Application-Id
          in: header
          required: false
          description: >-
            Scopes the request to a Terminal application in the caller's
            organization. Required for multi-application organizations when
            using a user session or OAuth access token. API keys are already
            bound to a single application.
          schema:
            type: string
        - 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: limit
          in: query
          required: false
          schema:
            type: integer
          description: The maximum number of results to return in a page.
        - name: cursor
          in: query
          schema:
            type: string
            format: cursor
            example: cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw
          description: Pagination cursor to start requests from
        - schema:
            title: SyncStatus
            type: string
            description: The status of the sync
            example: completed
            enum:
              - requested
              - in_progress
              - completed
              - failed
          in: query
          name: status
        - schema:
            type: string
            enum:
              - issues
          in: query
          name: expand
          description: Expand related resources in the response to reduce requests.
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  results:
                    type: array
                    items:
                      title: Sync
                      type: object
                      x-model-category: platform
                      properties:
                        id:
                          title: SyncId
                          type: string
                          format: ulid
                          pattern: ^sync_[0-9A-HJKMNP-TV-Z]{26}$
                          example: sync_01GV12VR4DJP70GD1ZBK0SDWFH
                        status:
                          title: SyncStatus
                          type: string
                          description: The status of the sync
                          example: completed
                          enum:
                            - requested
                            - in_progress
                            - completed
                            - failed
                        failureReason:
                          type: string
                          description: If the sync failed, this will contain the reason
                          example: Reason for failure if sync status is 'failed'
                        progress:
                          title: Percentage
                          type: number
                          description: >-
                            Percentage value between 0 and 100, rounded to 2
                            decimal places.
                          example: 85
                          minimum: 0
                          maximum: 100
                        issues:
                          type: array
                          description: >-
                            Issues are problems encountered with a connection
                            that did not result in a failed sync but may require
                            manual intervention. You can see the issues for a
                            given sync by providing `issues` to the `expand`
                            parameter.
                          items:
                            title: ExpandableIssue
                            example: isu_01D8ZQFGHVJ858NBF2Q7DV9MNC
                            oneOf:
                              - title: IssueId
                                type: string
                                format: ulid
                                pattern: ^isu_[0-9A-HJKMNP-TV-Z]{26}$
                                example: isu_01D8ZQFGHVJ858NBF2Q7DV9MNC
                              - type: object
                                properties:
                                  id:
                                    title: IssueId
                                    type: string
                                    format: ulid
                                    pattern: ^isu_[0-9A-HJKMNP-TV-Z]{26}$
                                    example: isu_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.
                        startFrom:
                          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'
                        requestedAt:
                          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'
                        completedAt:
                          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'
                        attempts:
                          type: number
                          example: 1
                        providerRequests:
                          type: array
                          description: >-
                            Provider requests attached to this sync. When
                            non-empty, the sync is waiting on an out-of-band
                            step on the provider's side (e.g. the provider
                            manually delivering historical files, or credentials
                            being provisioned) and may legitimately stay in
                            progress for an extended period.
                          example:
                            - historical_files
                          items:
                            title: Sync Provider Request Type
                            type: string
                            enum:
                              - historical_files
                              - provision_credentials
                      required:
                        - id
                        - status
                        - requestedAt
                      x-description: >-
                        An object containing the state of a sync job. This can
                        be polled after connection linking to know when data is
                        available for ingestion.
                  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

````