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

# List category totals between two dates

> Returns a list of categories that have transactions dated within the provided date range, and the total of all transactions that belong to each category. A single account GUID can be specified by providing an `account_guid` parameter. An array of account GUIDs can be specified by providing a series of `account_guid[]` parameters. Dates should be in ISO 8601 format (2013-10-25).



## OpenAPI

````yaml openapi/nexus/v1.yaml GET /date_range_category_totals/from/{start_date}/to/{end_date}
openapi: 3.0.0
info:
  contact:
    name: Nexus API
    url: https://www.mx.com
  version: 1.0.0
  title: Nexus API
  description: >-
    Legacy clients can use Nexus API for all their connectivity needs. If you
    are a new client refer to our Platform API. Review our [Nexus API
    Guides](/nexus) for more information.
servers:
  - url: https://int-data.moneydesktop.com/
  - url: https://data.moneydesktop.com/
security:
  - sessionToken: []
tags:
  - name: accounts
  - name: beats
  - name: budgets
  - name: categories
  - name: extended transaction history
  - name: goals
  - name: holdings
  - name: identity
  - name: insights
  - name: institutions
  - name: jobs
  - name: member credentials
  - name: members
  - name: merchants
  - name: microdeposits
  - name: monthly cash flow profile
  - name: notifications
  - name: scheduled payments
  - name: sessions
  - name: spending plan
  - name: taggings
  - name: tags
  - name: transaction rules
  - name: transactions
  - name: user
  - name: verification
paths:
  /date_range_category_totals/from/{start_date}/to/{end_date}:
    get:
      tags:
        - categories
      summary: List category totals between two dates
      description: >-
        Returns a list of categories that have transactions dated within the
        provided date range, and the total of all transactions that belong to
        each category. A single account GUID can be specified by providing an
        `account_guid` parameter. An array of account GUIDs can be specified by
        providing a series of `account_guid[]` parameters. Dates should be in
        ISO 8601 format (2013-10-25).
      operationId: listCategoryTotalsByDateRange
      parameters:
        - name: start_date
          description: >-
            The start date of the window for which transactions will be
            returned. Given in ISO 8106 format without a timestamp, e.g.,
            2013-10-25.
          required: true
          in: path
          schema:
            type: string
        - name: end_date
          description: >-
            The end date of the window for which transactions will be returned.
            Given in ISO 8106 format without a timestamp, e.g., 2013-10-25.
          required: true
          in: path
          schema:
            type: string
        - name: account_guid
          description: >-
            Return totals for transactions belonging only to the specified
            account GUID.
          required: false
          in: query
          schema:
            type: string
        - name: account_guid[]
          description: >-
            Return totals for transactions that belong to any of the specified
            array of account GUID.
          required: false
          in: query
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/CategoryDateRangeResponseBody'
components:
  schemas:
    CategoryDateRangeResponseBody:
      properties:
        date_range_category_totals:
          items:
            $ref: '#/components/schemas/CategoryDateRangeResponse'
          type: array
      type: object
    CategoryDateRangeResponse:
      properties:
        category_guid:
          example: CAT-bf9f3294-4c40-1677-d269-54fbc189faf3
          type: string
        end_date:
          example: 1466056800
          type: integer
        start_date:
          example: 1459490400
          type: integer
        total:
          example: 155.72
          type: number
        user_guid:
          example: USR-d8843e3e-7153-ce05-db54-fb3241c15d94
          type: string
  securitySchemes:
    sessionToken:
      description: >
        ### MX Session Token 

        - Request an API token using the read API token endpoint in the MX SSO
        API.

        - Exchange an API token for a session token. 
          - A session token is obtained by sending a POST request to /sessions
          - The session token will be used in each request made for the user. It should be passed in an `MD-SESSION-TOKEN` HTTP header as shown below.
          - This session token is valid for 30 minutes from the time it was created. The 30 minute expiration counter is refreshed with each call.
          - If you send a request with an expired session token you'll receive an error code of `4011`.

        ```

        curl -i https://int-data.moneydesktop.com/accounts \

        -H 'MD-SESSION-TOKEN:
        CWforZl1Vn2vC_v6H4rnQRT1DoWpDouJAV-_5TBmiQRAtA8rsOG_BoajTiOSsL0A3bd-bmHXlA-eQzc9ywItKg'
        \

        -H 'Content-Type: application/vnd.mx.nexus.v1+json' \

        -H 'Accept: application/vnd.mx.nexus.v1+json'

        ```


        In documentation code examples, replace `<API_KEY_VALUE>` with the
        session token.
      type: apiKey
      name: MD-SESSION-TOKEN
      in: header

````