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

# Monthly stats

> This endpoint retrieves monthly stats for a specific location and month.

- The `q[fetch_modified_since]` is used to capture the delta changes, pass the datetime in UTC. This parameter will help you identifying only those month goals which were changed since your last sync, so you won't need to load all the data over again.



## OpenAPI

````yaml https://app.teamcaredental.com/openapi-vendors.json get /locations/{location_id}/monthly/stats
openapi: 3.1.0
info:
  title: TeamCare Vendor API
  version: 1.0.0
  description: Vendor APIs for integrating dental office data. HIPAA-compliant and opt-in.
servers:
  - url: https://app.teamcaredental.com/api/v1/vendors
security:
  - bearerAuth: []
paths:
  /locations/{location_id}/monthly/stats:
    get:
      tags:
        - Monthly
      summary: Monthly stats
      description: >-
        This endpoint retrieves monthly stats for a specific location and month.


        - The `q[fetch_modified_since]` is used to capture the delta changes,
        pass the datetime in UTC. This parameter will help you identifying only
        those month goals which were changed since your last sync, so you won't
        need to load all the data over again.
      operationId: locations_resources_stats_monthly_stats
      parameters:
        - name: location_id
          in: path
          required: true
          description: The ID of the location for which patients are to be retrieved.
          schema:
            type: string
        - name: date
          in: query
          required: false
          description: >-
            A start of the month date parameter to specifiy the month and year
            to get data from, following the format **YYYY-MM-DD**.
          schema:
            type: string
            format: date
            example: '2023-05-01'
        - name: items
          in: query
          required: false
          description: A parameter to specify the number of items to be returned.
          schema:
            type: integer
            example: 6
        - name: daily_goals
          in: query
          required: false
          description: true Include this parameter to get all the daily stats within month.
          schema:
            type: boolean
            example: true
        - name: q
          in: query
          required: false
          style: deepObject
          explode: true
          schema:
            type: object
            properties:
              fetch_modified_since:
                type: string
                format: date-time
                example: '2025-06-26T01:58:00.164Z'
          example:
            fetch_modified_since: '2025-06-26T01:58:00.164Z'
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  tenant:
                    type: object
                    properties:
                      data:
                        type: object
                        properties:
                          id:
                            type: string
                          type:
                            type: string
                          attributes:
                            type: object
                            properties:
                              title:
                                type: string
                              third_party_id:
                                type: string
                              owner:
                                type: object
                                properties:
                                  data:
                                    type: object
                                    properties:
                                      id:
                                        type: string
                                      type:
                                        type: string
                                      attributes:
                                        type: object
                                        properties:
                                          name:
                                            type: string
                  month_goals:
                    type: object
                    properties:
                      data:
                        type: array
                        items:
                          type: object
                          properties:
                            id:
                              type: string
                            type:
                              type: string
                            attributes:
                              type: object
                              properties:
                                entityable_type:
                                  type: string
                                entityable_id:
                                  type: integer
                                year:
                                  type: integer
                                month:
                                  type: integer
                                title:
                                  type: string
                                role:
                                  type: string
                                days_worked:
                                  type: string
                                  example: integer array
                                kpis:
                                  type: object
                                  properties:
                                    data:
                                      type: array
                                      items:
                                        type: object
                                        properties:
                                          id:
                                            type: string
                                          type:
                                            type: string
                                          attributes:
                                            type: object
                                            properties:
                                              goal_type:
                                                type: string
                                              goal_value:
                                                type: integer
                                              actual_value:
                                                type: integer
                                              variance_value:
                                                type: integer
                                              variance_pct:
                                                type: string
                                                example: float
                  pagy:
                    type: object
                    properties:
                      items:
                        type: number
                      count:
                        type: number
                      page:
                        type: number
                      next:
                        type: number
                      prev:
                        type: number
              example:
                tenant:
                  data:
                    id: string
                    type: string
                    attributes:
                      title: string
                      third_party_id: string
                      owner:
                        data:
                          id: string
                          type: string
                          attributes:
                            name: string
                month_goals:
                  data:
                    - id: string
                      type: string
                      attributes:
                        entityable_type: string
                        entityable_id: 0
                        year: 0
                        month: 0
                        title: string
                        role: string
                        days_worked: integer array
                        kpis:
                          data:
                            - id: string
                              type: string
                              attributes:
                                goal_type: string
                                goal_value: 0
                                actual_value: 0
                                variance_value: 0
                                variance_pct: float
                pagy:
                  items: 0
                  count: 0
                  page: 0
                  next: 0
                  prev: 0
        '401':
          description: Missing, invalid or expired token.
          content:
            application/json:
              schema:
                type: object
                properties:
                  errors:
                    type: string
              example:
                errors: not authorized
        '403':
          description: The credential may not access this resource.
          content:
            application/json:
              schema:
                type: object
                properties:
                  errors:
                    type: string
              example:
                errors: access Denied
        '404':
          description: Resource not found.
          content:
            application/json:
              schema:
                type: object
                properties:
                  errors:
                    type: string
              example:
                errors: resource not found
        '422':
          description: The request could not be processed.
          content:
            application/json:
              schema:
                type: object
                properties:
                  errors:
                    type: string
              example:
                errors: ...
        '429':
          description: >-
            Concurrency limit exceeded. The request was not executed; retry is
            safe.
          headers:
            Retry-After:
              description: Seconds to wait before retrying.
              schema:
                type: integer
          content:
            application/json:
              schema:
                type: object
                properties:
                  errors:
                    type: string
                  sync_type:
                    type: string
                    enum:
                      - initial
                      - incremental
                  max_concurrent_locations:
                    type: integer
                  active_location_ids:
                    type: array
                    items:
                      type: integer
                  retry_after_seconds:
                    type: integer
              example:
                errors: >-
                  Too many locations syncing concurrently. At most 5 locations
                  may have initial sync requests in flight at a time.
                sync_type: initial
                max_concurrent_locations: 5
                active_location_ids:
                  - 101
                  - 102
                  - 103
                  - 104
                  - 105
                retry_after_seconds: 1
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: JWT returned by POST /auth/token. Valid for six hours.

````