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

# Get admin dashboard data

> Returns aggregated dashboard statistics for the authenticated admin's client (organization): commitment and donation counts, per-program breakdowns, billing plan, last payment, and Stripe gateway health. Results are cached for one week. On a cache miss the endpoint dispatches a background reload job and returns a partial payload (data.org plus a 'reloaded' flag); subsequent calls return the fully populated dashboard once the job finishes.



## OpenAPI

````yaml get /dashboard
openapi: 3.0.0
info:
  title: Gratona API
  description: >-
    REST API for the Gratona fundraising platform, including donor, donation,
    sponsorship, program, event, and integration workflows. Endpoints are
    organized by tag. Most endpoints require either a Passport bearer token or
    an issued API key — see the Security Schemes section.
  contact:
    name: Gratona Engineering
    url: https://gratona.com
    email: devs@gratona.com
  version: 1.0.0
servers:
  - url: https://api.gratona.com/v1
    description: Server Version 1.0.0
security: []
tags:
  - name: Auth
    description: >-
      Login, signup, logout, password reset, and email verification for admin
      users and donors.
  - name: Donors
    description: >-
      Donor records: CRUD, profile fields, household linkage, search, filters,
      merge, and duplicate detection.
  - name: Donations
    description: >-
      Individual donation records, recurring commitments, soft credits, refunds,
      designations, and exports.
  - name: Sponsorships
    description: >-
      Donor-to-entity sponsorship relationships, lifecycle transitions, and
      sponsorship-specific filters.
  - name: Entities
    description: >-
      Recipient records (children, families, projects, animals, etc.), their
      status, and entity-level fields.
  - name: Programs
    description: >-
      Program / campaign configuration: hierarchy, settings, and program-level
      metadata.
  - name: Forms
    description: >-
      Custom form builder (HysForm), form fields, standardized donor fields, and
      field migrations.
  - name: Trips
    description: >-
      Mission-trip management: trips, participants, budgets, tasks,
      e-signatures, fundraising milestones, and background checks.
  - name: Communications
    description: >-
      Email templates, SMS, newsletters, donor email manager, and per-donor
      notes.
  - name: Payments
    description: >-
      Payment-gateway management (Stripe, PayPal, Flutterwave, QuickBooks).
      Excludes inbound webhooks — see the Webhooks tag.
  - name: Reports
    description: Dashboards, analytics, scheduled reports, and exports.
  - name: Admin
    description: >-
      Client-account administration: users, groups/permissions, settings,
      integrations, and account lifecycle.
  - name: Donor Portal
    description: >-
      Endpoints consumed by the donor-facing portal (donor login, dashboard,
      donation history, messages).
  - name: Recipient Portal
    description: Endpoints consumed by the recipient-facing portal.
  - name: Public
    description: >-
      Unauthenticated public endpoints: donor signup, public trip pages,
      peer-to-peer campaigns, public checkout.
  - name: Webhooks
    description: >-
      Inbound webhooks from third parties (Stripe, PayPal, Flutterwave, Checkr,
      DropboxSign). Annotated minimally for reference; payload shapes are owned
      by the upstream provider.
  - name: Client
    description: Client
  - name: Email Settings
    description: Email Settings
  - name: Admin Dashboard
    description: Admin Dashboard
  - name: Historical Archived Updates
    description: Historical Archived Updates
  - name: Team & access
    description: Team & access
  - name: Files
    description: Files
  - name: Wrapped
    description: Wrapped
  - name: Donor SignUp
    description: Donor SignUp
  - name: Frontend
    description: Frontend
  - name: User
    description: User
paths:
  /dashboard:
    get:
      tags:
        - Admin Dashboard
      summary: Get admin dashboard data
      description: >-
        Returns aggregated dashboard statistics for the authenticated admin's
        client (organization): commitment and donation counts, per-program
        breakdowns, billing plan, last payment, and Stripe gateway health.
        Results are cached for one week. On a cache miss the endpoint dispatches
        a background reload job and returns a partial payload (data.org plus a
        'reloaded' flag); subsequent calls return the fully populated dashboard
        once the job finishes.
      operationId: dadeb26b7092dd8fdd92d30d2fc641bb
      responses:
        '200':
          description: >-
            Dashboard payload for the authenticated client. Shape depends on
            cache state — fields outside `data.org`, `stripe_msg`, and `status`
            are only present once the cached stats are fully built.
          content:
            application/json:
              schema:
                properties:
                  data:
                    properties:
                      reloaded:
                        description: >-
                          Reload state. Set to 'Reloading Stats... Please Wait.'
                          while a background refresh is in flight, empty string
                          immediately after completion, or null when no reload
                          is active.
                        type: string
                        example: Reloading Stats... Please Wait.
                        nullable: true
                      date:
                        description: UTC instant when the cached statistics were generated.
                        type: string
                        format: date-time
                        example: '2024-12-31T23:59:00Z'
                      timezone:
                        description: IANA timezone used to present the generated timestamp.
                        type: string
                        example: America/New_York
                      stats:
                        description: Headline counters used by the dashboard tiles.
                        properties:
                          number_of_active_programs:
                            type: integer
                            example: 12
                          total_number_of_commitments:
                            type: integer
                            example: 148
                          total_credit_card_commitments:
                            description: >-
                              Subset of commitments using payment method id 3
                              (credit card).
                            type: integer
                            example: 92
                          total_commitments_today:
                            type: integer
                            example: 3
                          new_commitments_in_last_7_days:
                            type: integer
                            example: 11
                          new_commitments_in_last_30_days:
                            type: integer
                            example: 37
                          total_donations_made_in_last_30_days:
                            type: number
                            format: float
                            example: 4825.5
                          total_donations_ever:
                            type: number
                            format: float
                            example: 125330.75
                          number_of_donations_in_last_30_days:
                            type: integer
                            example: 58
                        type: object
                      commitments_by_program:
                        description: Per-program commitment counts.
                        type: array
                        items:
                          type: object
                      remainders_by_program:
                        description: Outstanding remainders grouped by program.
                        type: array
                        items:
                          type: object
                      commitment_graph_data:
                        description: >-
                          Time-series points for the commitments chart
                          (currently returned as an empty array).
                        type: array
                        items:
                          type: object
                      donation_graph_data:
                        description: >-
                          Time-series points for the donations chart (currently
                          returned as an empty array).
                        type: array
                        items:
                          type: object
                      funding_by_program:
                        description: Funding totals broken out by program.
                        type: array
                        items:
                          type: object
                      org:
                        description: >-
                          Client (organization) record for the authenticated
                          user. Populated on every response shape.
                        type: object
                      plan:
                        description: >-
                          Billing plan derived from the shared client billing
                          snapshot.
                        type: string
                        enum:
                          - free
                          - pro
                          - growth
                          - enterprise
                          - custom
                          - discounted
                        example: pro
                      pricing_tier:
                        description: Pricing model used for the billing snapshot.
                        type: string
                        enum:
                          - legacy
                          - new
                          - custom
                        example: legacy
                      amount:
                        description: >-
                          Billing amount in USD after discounts and credits are
                          applied; never negative.
                        type: number
                        format: float
                        example: 39
                      last_payment_date:
                        description: >-
                          Timestamp of the most recent client_payments row, or
                          null when no payments exist.
                        type: string
                        format: date-time
                        example: '2024-12-31 12:00:00'
                        nullable: true
                      last_payment_amount:
                        description: >-
                          Amount of the most recent client payment, or null when
                          no payments exist.
                        type: number
                        format: float
                        example: 39
                        nullable: true
                      client_status:
                        description: >-
                          Legacy organization-billing classification from the
                          clients table. This is not lifecycle state and may
                          include values such as lead, due, delinquent, or
                          closed.
                        type: string
                        example: active
                    type: object
                  stripe_msg:
                    description: >-
                      Stripe gateway health for the client. Empty string when
                      Stripe is configured and reachable; otherwise a
                      human-readable diagnostic such as 'No Payment Gateway
                      Setup', 'No Stripe Publishable Key Setup', or the Stripe
                      API error message. Omitted while the dashboard is in the
                      initial 'reloading' state.
                    type: string
                    example: No Payment Gateway Setup
                  status:
                    type: string
                    example: success
                type: object
        '401':
          description: >-
            Authentication failed — API key or bearer token missing, invalid, or
            expired.
          content:
            application/json:
              schema:
                properties:
                  message:
                    type: string
                    example: Unauthenticated.
                type: object
      security:
        - apiKeyAuth: []
        - bearerAuth: []
components:
  securitySchemes:
    apiKeyAuth:
      type: apiKey
      description: Gratona API key sent with the compatibility header X-HYS-API-Key.
      name: X-HYS-API-Key
      in: header
    bearerAuth:
      type: http
      description: Passport bearer token authentication for legacy admin sessions.
      scheme: bearer
      bearerFormat: JWT

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.