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

# FX Quote Time-Series

> bid/ask time-series data for a given FX trading pair and interval. Values are the closing bid/ask for the interval. Supports a range of datetime formats and timezone offsets. Datetime format in the response will try to match your request - unless specified explicitly.



## OpenAPI

````yaml get /fx/quote/time-series
openapi: 3.0.3
info:
  title: fastFOREX.io
  version: 2.3.2
  description: Foreign & cryptocurrency exchange rate API
  termsOfService: https://www.fastforex.io/terms-of-sale
  contact:
    email: support@fastforex.io
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0.html
servers:
  - url: https://api.fastforex.io
    description: Production
  - url: https://api.beta.fastforex.io
    description: Beta
security:
  - api_key: []
  - apiKeyHeader: []
  - bearerAuth: []
  - basicAuth: []
tags:
  - name: currency
    description: Physical currencies, rates and conversions
  - name: crypto
    description: Digital currencies, pairs & prices
  - name: fx
    description: Realtime FX trading pairs - instruments, prices and history
  - name: admin
    description: Account admin
  - name: plan-one
    description: Available on The One Plan
  - name: plan-extra
    description: Available on The Extra Plan
  - name: plan-premium
    description: Available on The Premium Plan
externalDocs:
  description: Find out more about fastFOREX.io
  url: https://www.fastforex.io
paths:
  /fx/quote/time-series:
    get:
      tags:
        - fx
        - plan-premium
      description: >-
        bid/ask time-series data for a given FX trading pair and interval.
        Values are the closing bid/ask for the interval. Supports a range of
        datetime formats and timezone offsets. Datetime format in the response
        will try to match your request - unless specified explicitly.
      parameters:
        - name: pair
          in: query
          description: Trading pair, such as EURUSD
          required: true
          schema:
            $ref: '#/components/schemas/TradingPair'
        - name: start
          in: query
          description: >-
            Time-series start. Supported formats: YYYY-MM-DD (UTC). YYYY-MM-DD
            HH:MM:SS (UTC), ISO8601 with timezone offset. Timestamp in
            milliseconds. Supply this or end.
          required: false
          schema:
            $ref: '#/components/schemas/DateOrDateTime'
        - name: end
          in: query
          description: >-
            Time-series end. Supported formats: YYYY-MM-DD (UTC). YYYY-MM-DD
            HH:MM:SS (UTC), ISO8601 with timezone offset. Timestamp in
            milliseconds. Supply this or start.
          required: false
          schema:
            $ref: '#/components/schemas/DateOrDateTime'
        - name: dtmfmt
          in: query
          description: >-
            Desired datetime response format. Defaults to match your request.
            Can be [ISO] ISO8601 datetime including timezone offset, [TSP] UNIX
            Timestamp in milliseconds, or [UTCYMD] 'YYYY-MM-DD HH:MM:SS' (UTC).
          required: false
          schema:
            $ref: '#/components/schemas/DateTimeFormat'
        - name: interval
          in: query
          description: >-
            ISO8601 duration, such as P1D (daily). Defaults to P1D. Options are
            P1D, PT1H, PT1M.
          required: false
          schema:
            $ref: '#/components/schemas/Duration'
        - name: limit
          in: query
          description: >-
            Maximum number of data points to return. Default varies upon
            duration.
          required: false
          schema:
            type: number
            format: int32
            minimum: 1
            maximum: 100
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: object
                properties:
                  pair:
                    $ref: '#/components/schemas/TradingPair'
                  interval:
                    $ref: '#/components/schemas/Duration'
                  limit:
                    type: number
                    format: int32
                  dtmfmt:
                    $ref: '#/components/schemas/DateTimeFormat'
                  start:
                    $ref: '#/components/schemas/DateTimes'
                  end:
                    $ref: '#/components/schemas/DateTimes'
                  tzOffset:
                    type: string
                    description: Timezone offset. e.g. +00:00 or -05:00
                  size:
                    $ref: '#/components/schemas/QuoteSize'
                  results:
                    type: array
                    items:
                      type: object
                      properties:
                        dtm:
                          $ref: '#/components/schemas/DateTimes'
                        bid:
                          type: number
                          format: float
                        ask:
                          type: number
                          format: float
                  ms:
                    $ref: '#/components/schemas/ResponseTime'
              example:
                pair: GBPUSD
                interval: PT1M
                limit: 10
                dtmfmt: ISO
                end: '2025-02-13T16:30:00Z'
                tzOffset: '+00:00'
                size: 1
                results:
                  - dtm: '2025-02-13T16:29:00Z'
                    bid: 1.25377
                    ask: 1.25379
                  - dtm: '2025-02-13T16:28:00Z'
                    bid: 1.2536
                    ask: 1.25371
                  - dtm: '2025-02-13T16:27:00Z'
                    bid: 1.25359
                    ask: 1.25366
                  - dtm: '2025-02-13T16:26:00Z'
                    bid: 1.25385
                    ask: 1.25396
                  - dtm: '2025-02-13T16:25:00Z'
                    bid: 1.25401
                    ask: 1.25402
                  - dtm: '2025-02-13T16:24:00Z'
                    bid: 1.25392
                    ask: 1.25397
                  - dtm: '2025-02-13T16:23:00Z'
                    bid: 1.25374
                    ask: 1.25379
                  - dtm: '2025-02-13T16:22:00Z'
                    bid: 1.2537
                    ask: 1.25387
                  - dtm: '2025-02-13T16:21:00Z'
                    bid: 1.25372
                    ask: 1.25389
                ms: 16
        '400':
          description: Bad Request
        '401':
          description: Not Authorized
        '403':
          description: Forbidden
        '429':
          description: Rate limit exceeded
components:
  schemas:
    TradingPair:
      type: string
      pattern: '[A-Z0-9]{3,6}/?[A-Z0-9]{3,6}'
      description: A single FX trading pair, with or without a slash
    DateOrDateTime:
      description: >-
        A datetime value. If no timezone offset supplied, UTC/GMT is assumed. If
        only a date is supplied, time is assumed to be 00:00:00 UTC.
      oneOf:
        - $ref: '#/components/schemas/Date'
        - $ref: '#/components/schemas/DateTime'
        - $ref: '#/components/schemas/IsoDateTimeZone'
        - $ref: '#/components/schemas/TimestampMillis'
    DateTimeFormat:
      description: >-
        Can be [ISO] ISO8601 datetime including timezone offset, [TSP] UNIX
        Timestamp in milliseconds, or [UTCYMD] 'YYYY-MM-DD HH:MM:SS' (UTC).
      type: string
      enum:
        - ISO
        - TSP
        - UTCYMD
    Duration:
      type: string
      description: ISO8601 Duration. https://en.wikipedia.org/wiki/ISO_8601#Durations
    DateTimes:
      description: A datetime value. If no timezone offset supplied, UTC/GMT is assumed.
      oneOf:
        - $ref: '#/components/schemas/DateTime'
        - $ref: '#/components/schemas/IsoDateTimeZone'
        - $ref: '#/components/schemas/TimestampMillis'
    QuoteSize:
      type: number
      format: int32
      description: Size of the quote is units of the base currency/symbol. Usually 1.
    ResponseTime:
      type: number
      format: int32
      description: Server response time in milliseconds
    Date:
      type: string
      pattern: '[0-9]{4}-[0-9]{2}-[0-9]{2}'
      description: UTC/GMT date YYYY-MM-DD
    DateTime:
      type: string
      pattern: '[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}:[0-9]{2}'
      description: UTC/GMT datetime YYYY-MM-DD HH:MM:SS
    IsoDateTimeZone:
      type: string
      pattern: >-
        [0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}(Z?|[+-][0-9]{2}:00)
      description: ISO8601 Datetime with optional timezone offset YYYY-MM-DDTHH:MM:SS±HH:00
      example: '2021-01-26T15:30:00-05:00'
    TimestampMillis:
      type: number
      format: int64
      description: >-
        Milliseconds since Jan 1 1970 (unix timestamp with millisecond
        precision)
      example: 1739305030072
  securitySchemes:
    api_key:
      type: apiKey
      name: api_key
      in: query
    apiKeyHeader:
      type: apiKey
      name: X-API-KEY
      in: header
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: api_key
    basicAuth:
      type: http
      scheme: basic

````