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

# Get business overview

> Account-wide business pulse in one call: revenue, orders, leads, new customers, and live-site traffic over a date range, each compared against the immediately preceding period of equal length. Defaults to the last 7 days; the range cannot exceed 366 days. Use this as the starting point for any business review — drill into a specific site with GET /sites/{id}/analytics, and into records with the orders/customers list endpoints.



## OpenAPI

````yaml /developer/api-reference/openapi.json get /analytics
openapi: 3.1.1
info:
  title: Crevio API V1
  version: 1.0.0
  description: >
    API for the Crevio creator platform — a multi-tenant SaaS for digital
    product sales.

    Uses snake_case keys following Stripe conventions. All resource IDs are
    string IDs (e.g., "prod_abc123").


    Authentication is a bearer token: `Authorization: Bearer $CREVIO_API_KEY`.

    List endpoints are cursor-paginated with `limit` and `starting_after`.

    Writes accept an `Idempotency-Key` header and are safe to retry.


    Every response carries IETF RateLimit headers (`RateLimit`,
    `RateLimit-Policy`) so a client can

    self-throttle, and `Retry-After` on a 429. The quota is 600 requests per
    minute per credential.


    The API is versioned in the URL path (`/v1`). Nothing is removed without
    in-band warning: a

    deprecated operation is marked `"deprecated": true` here and serves
    `Deprecation` (RFC 9745),

    `Sunset` (RFC 8594) and `Link; rel="deprecation"` headers for at least six
    months before it

    stops answering. See https://crevio.co/docs/developer/guides/versioning.
  contact:
    email: support@crevio.co
    name: Crevio Support
    url: https://crevio.co/docs
  license:
    name: Apache 2.0
    url: http://www.apache.org/licenses/LICENSE-2.0.html
  termsOfService: https://crevio.co/legal/terms-of-service
servers:
  - url: https://api.crevio.co/v1
    description: Production
security:
  - ApiKey: []
tags:
  - name: Account
    description: Current account information
  - name: Bots
    description: >-
      Named bot identities (persona, skills, toolsets) chats and tasks can run
      as
  - name: Analytics
    description: Account-wide business analytics
  - name: BlogCategories
    description: Blog post categories
  - name: BlogPosts
    description: Blog content management
  - name: Broadcasts
    description: One-to-many email sending
  - name: CheckoutLinks
    description: Shareable checkout links
  - name: CheckoutConfiguration
    description: Account-wide checkout settings
  - name: Checkouts
    description: Checkout session management
  - name: Customers
    description: Customer relationship management
  - name: Discounts
    description: Discount code management
  - name: Experiences
    description: Digital experiences (courses, communities, downloads)
  - name: Files
    description: File uploads and external media management
  - name: FormSubmissions
    description: Form submission management
  - name: FormationDocuments
    description: Documents generated for a formation
  - name: Formations
    description: Whitelabel business formation via doola Partner API
  - name: Forms
    description: Hosted forms that capture leads and submissions
  - name: Invoices
    description: Invoice creation, payment, and lifecycle management
  - name: LegalPages
    description: Terms, privacy and refund pages for the storefront
  - name: Me
    description: Current user profile
  - name: OrderItems
    description: Order line items
  - name: Orders
    description: Order history and details
  - name: PriceVariants
    description: Product pricing tiers
  - name: Products
    description: Digital product catalog
  - name: Refunds
    description: Refund management
  - name: Reviews
    description: Product reviews
  - name: Socials
    description: Social media management (accounts, posts, media).
  - name: Subscriptions
    description: Subscription lifecycle management (cancel, pause, resume)
  - name: Tags
    description: Customer tags
  - name: TaskRuns
    description: Individual execution records for AI tasks.
  - name: Tasks
    description: >-
      AI tasks — scheduled or event-triggered agentic work (cron, interval,
      once, immediate, event).
  - name: WebhookEndpoints
    description: Webhook endpoint management
  - name: WebhookEvents
    description: Webhook event delivery history
  - name: Leads
    description: Find, verify and enrich business leads (Hunter.io-backed).
  - name: Ads
    description: >-
      Paid advertising — campaigns, ad groups, ads, audiences, targeting, leads,
      conversions, and reports across Meta, Google, TikTok, LinkedIn, Pinterest,
      and X.
  - name: Domains
    description: Custom web domains for your sites.
  - name: Web
    description: >-
      Web search & scraping (search, read, map, crawl, extract, research),
      backed by Firecrawl.
  - name: Skills
    description: >-
      AI skills marketplace — search the catalog and install or uninstall skills
      for your account's agent.
  - name: Schedules
    description: Reusable availability schedules that back event types.
  - name: EventTypes
    x-displayName: Event Types
    description: Bookable services customers can schedule time on.
  - name: Bookings
    description: Reservations made against event types.
  - name: Connections
    description: Third-party app connections (connect, list, execute)
  - name: Approvals
    description: Human-in-the-loop approvals for gated actions
  - name: Logs
    description: Account activity log
  - name: Access
    description: Per-user access checks for gated resources
  - name: ApiKeys
    description: API key management
  - name: Audio
    description: AI audio generation
  - name: Calls
    description: Outbound phone calls placed by the account's agent
  - name: Chapters
    description: Course chapters
  - name: Deployments
    description: Site deployments and build logs
  - name: Email
    description: Inboxes, threads, messages, drafts and delivery events
  - name: Email Suppressions
    description: Addresses no send path will deliver to
  - name: EventSessions
    description: Scheduled sessions of an event experience
  - name: EventSources
    description: Third-party event sources that trigger tasks
  - name: Events
    description: Events an account can subscribe to
  - name: ForumPosts
    description: Posts inside a forum experience
  - name: Images
    description: AI image generation, editing and stock search
  - name: Jobs
    description: Long-running asynchronous jobs
  - name: Lessons
    description: Lessons inside a course chapter
  - name: LinkItems
    description: Links inside a link-in-bio experience
  - name: Phone Consents
    description: Recorded consent to place calls to a number
  - name: Phone Numbers
    description: Phone numbers provisioned for the account
  - name: Phone Suppressions
    description: Do-not-call entries
  - name: Sites
    description: AI-built sites — storefronts and web apps
  - name: Status
    description: API and account status
  - name: Topics
    description: Discussion topics inside a forum experience
  - name: Usage
    description: Credit usage and transaction history
  - name: Users
    description: Users of the account
  - name: Video
    description: AI video generation
  - name: Secrets
    description: Account-level environment variables shared across the account's sites
externalDocs:
  description: Crevio developer documentation
  url: https://crevio.co/docs/developer
paths:
  /analytics:
    get:
      tags:
        - Analytics
      summary: Get business overview
      description: >-
        Account-wide business pulse in one call: revenue, orders, leads, new
        customers, and live-site traffic over a date range, each compared
        against the immediately preceding period of equal length. Defaults to
        the last 7 days; the range cannot exceed 366 days. Use this as the
        starting point for any business review — drill into a specific site with
        GET /sites/{id}/analytics, and into records with the orders/customers
        list endpoints.
      operationId: getBusinessOverview
      parameters:
        - name: start_date
          in: query
          description: >-
            Start of the date range (inclusive), as an ISO-8601 date
            (YYYY-MM-DD). Defaults to 7 days before end_date.
          schema:
            type: string
            format: date
        - name: end_date
          in: query
          description: >-
            End of the date range (inclusive), as an ISO-8601 date (YYYY-MM-DD).
            Defaults to today.
          schema:
            type: string
            format: date
      responses:
        '200':
          description: Business overview for the requested period
          content:
            application/json:
              schema:
                type: object
                properties:
                  object:
                    type: string
                    enum:
                      - business_overview
                  period:
                    type: object
                    description: The resolved date range the metrics cover.
                    properties:
                      start_date:
                        type: string
                        format: date
                      end_date:
                        type: string
                        format: date
                      days:
                        type: integer
                    required:
                      - start_date
                      - end_date
                      - days
                  previous_period:
                    type: object
                    description: >-
                      The comparison period: the range of equal length
                      immediately before period.start_date.
                    properties:
                      start_date:
                        type: string
                        format: date
                      end_date:
                        type: string
                        format: date
                    required:
                      - start_date
                      - end_date
                  currency:
                    type: string
                    description: >-
                      Lowercase ISO currency code all monetary amounts are
                      expressed in (the account's display currency).
                  lifetime_revenue:
                    type: number
                    description: >-
                      All-time revenue in the account currency, in major units
                      (e.g. dollars, not cents) — same units as the revenue
                      series.
                  revenue:
                    type: object
                    description: >-
                      Period totals with the preceding period of equal length
                      for comparison and a per-day time series.
                    properties:
                      total:
                        type: number
                      previous_total:
                        type: number
                      change_pct:
                        type:
                          - number
                          - 'null'
                        description: >-
                          Percent change vs. the previous period; null when the
                          previous period was zero (no baseline).
                      by_day:
                        type: array
                        items:
                          type: object
                          properties:
                            date:
                              type: string
                              format: date
                            amount:
                              type: number
                              description: >-
                                Revenue for the day in the account currency
                                (major units).
                          required:
                            - date
                            - amount
                        description: >-
                          Per-day series with one entry per day in the period;
                          days with no activity are zero-filled.
                    required:
                      - total
                      - previous_total
                  orders:
                    type: object
                    description: >-
                      Period totals with the preceding period of equal length
                      for comparison and a per-day time series.
                    properties:
                      total:
                        type: number
                      previous_total:
                        type: number
                      change_pct:
                        type:
                          - number
                          - 'null'
                        description: >-
                          Percent change vs. the previous period; null when the
                          previous period was zero (no baseline).
                      by_day:
                        type: array
                        items:
                          type: object
                          properties:
                            date:
                              type: string
                              format: date
                            count:
                              type: number
                              description: >-
                                Orders created that day (excluding pending and
                                failed).
                          required:
                            - date
                            - count
                        description: >-
                          Per-day series with one entry per day in the period;
                          days with no activity are zero-filled.
                    required:
                      - total
                      - previous_total
                  leads:
                    type: object
                    description: >-
                      Period totals with the preceding period of equal length
                      for comparison and a per-day time series.
                    properties:
                      total:
                        type: number
                      previous_total:
                        type: number
                      change_pct:
                        type:
                          - number
                          - 'null'
                        description: >-
                          Percent change vs. the previous period; null when the
                          previous period was zero (no baseline).
                      by_day:
                        type: array
                        items:
                          type: object
                          properties:
                            date:
                              type: string
                              format: date
                            count:
                              type: number
                              description: Leads captured that day.
                          required:
                            - date
                            - count
                        description: >-
                          Per-day series with one entry per day in the period;
                          days with no activity are zero-filled.
                    required:
                      - total
                      - previous_total
                  new_customers:
                    type: object
                    description: >-
                      Period totals with the preceding period of equal length
                      for comparison.
                    properties:
                      total:
                        type: number
                      previous_total:
                        type: number
                      change_pct:
                        type:
                          - number
                          - 'null'
                        description: >-
                          Percent change vs. the previous period; null when the
                          previous period was zero (no baseline).
                    required:
                      - total
                      - previous_total
                  refunds:
                    type: object
                    description: >-
                      Orders created in the period that have since been refunded
                      or partially refunded. Attribution is by order date
                      (refund timestamps are not tracked); amounts are in the
                      account currency (major units).
                    properties:
                      count:
                        type: integer
                      previous_count:
                        type: integer
                      amount:
                        type: number
                      previous_amount:
                        type: number
                    required:
                      - count
                      - previous_count
                      - amount
                      - previous_amount
                  top_products:
                    type: array
                    description: >-
                      Top products by units sold over the period (units, not
                      revenue — per-item revenue attribution is not tracked).
                      Empty when nothing sold.
                    items:
                      type: object
                      properties:
                        id:
                          type:
                            - string
                            - 'null'
                          description: Prefix id of the product (e.g. prod_abc123).
                        name:
                          type: string
                        units:
                          type: integer
                        orders:
                          type: integer
                          description: Distinct orders containing the product.
                      required:
                        - name
                        - units
                        - orders
                  traffic:
                    type:
                      - object
                      - 'null'
                    description: >-
                      Traffic for the account's live site; null when no site is
                      deployed. Zeros may also mean analytics collection is
                      temporarily degraded.
                    properties:
                      site_id:
                        type: string
                        description: Prefix id of the live site (e.g. site_abc123).
                      visitors:
                        type: object
                        description: >-
                          Period totals with the preceding period of equal
                          length for comparison and a per-day time series.
                        properties:
                          total:
                            type: number
                          previous_total:
                            type: number
                          change_pct:
                            type:
                              - number
                              - 'null'
                            description: >-
                              Percent change vs. the previous period; null when
                              the previous period was zero (no baseline).
                          by_day:
                            type: array
                            items:
                              type: object
                              properties:
                                date:
                                  type: string
                                  format: date
                                count:
                                  type: number
                                  description: Unique visitors that day.
                              required:
                                - date
                                - count
                            description: >-
                              Per-day series with one entry per day in the
                              period; days with no activity are zero-filled.
                        required:
                          - total
                          - previous_total
                      pageviews:
                        type: object
                        description: >-
                          Period totals with the preceding period of equal
                          length for comparison.
                        properties:
                          total:
                            type: number
                          previous_total:
                            type: number
                          change_pct:
                            type:
                              - number
                              - 'null'
                            description: >-
                              Percent change vs. the previous period; null when
                              the previous period was zero (no baseline).
                        required:
                          - total
                          - previous_total
                      top_sources:
                        type: array
                        description: >-
                          Top traffic sources by unique visitors over the
                          period.
                        items:
                          type: object
                          properties:
                            source:
                              type: string
                            count:
                              type: integer
                          required:
                            - source
                            - count
                      top_pages:
                        type: array
                        description: Top pages by unique visitors over the period.
                        items:
                          type: object
                          properties:
                            path:
                              type: string
                            count:
                              type: integer
                          required:
                            - path
                            - count
                required:
                  - object
                  - period
                  - previous_period
                  - currency
                  - lifetime_revenue
                  - revenue
                  - orders
                  - leads
                  - new_customers
                  - refunds
                  - top_products
                  - traffic
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '429':
          $ref: '#/components/responses/TooManyRequests'
      security:
        - ApiKey: []
components:
  responses:
    BadRequest:
      description: Bad request
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error:
              type: invalid_request_error
              code: bad_request
              message: The request was malformed or contained invalid parameters
      headers:
        RateLimit:
          $ref: '#/components/headers/RateLimit'
        RateLimit-Policy:
          $ref: '#/components/headers/RateLimitPolicy'
        Request-Id:
          $ref: '#/components/headers/RequestId'
        Deprecation:
          $ref: '#/components/headers/Deprecation'
        Sunset:
          $ref: '#/components/headers/Sunset'
        Link:
          $ref: '#/components/headers/DeprecationLink'
    Unauthorized:
      description: Authentication required
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error:
              type: invalid_request_error
              code: authentication_required
              message: You did not provide an API key.
      headers:
        RateLimit:
          $ref: '#/components/headers/RateLimit'
        RateLimit-Policy:
          $ref: '#/components/headers/RateLimitPolicy'
        Request-Id:
          $ref: '#/components/headers/RequestId'
        Deprecation:
          $ref: '#/components/headers/Deprecation'
        Sunset:
          $ref: '#/components/headers/Sunset'
        Link:
          $ref: '#/components/headers/DeprecationLink'
    TooManyRequests:
      description: >-
        Rate limit exceeded — 600 requests per minute per credential. Retry
        after the number of seconds in `Retry-After`.
      headers:
        Retry-After:
          $ref: '#/components/headers/RetryAfter'
        RateLimit:
          $ref: '#/components/headers/RateLimit'
        RateLimit-Policy:
          $ref: '#/components/headers/RateLimitPolicy'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error:
              type: invalid_request_error
              code: rate_limit_exceeded
              message: Too many requests. Please retry later.
  schemas:
    Error:
      type: object
      properties:
        error:
          type: object
          properties:
            type:
              type: string
              enum:
                - api_error
                - invalid_request_error
                - validation_error
            code:
              type: string
            message:
              type: string
            param:
              type: string
            errors:
              type: object
          required:
            - type
            - message
      required:
        - error
  headers:
    RateLimit:
      description: >-
        Remaining quota for the current window, as an IETF structured field:
        `"default";r=<remaining>;t=<seconds until reset>`.
      schema:
        type: string
        examples:
          - '"default";r=596;t=11'
    RateLimitPolicy:
      description: >-
        The quota this credential is subject to:
        `"default";q=<requests>;w=<window seconds>`.
      schema:
        type: string
        examples:
          - '"default";q=600;w=60'
    RequestId:
      description: Unique id for this request. Quote it when reporting a problem.
      schema:
        type: string
        examples:
          - 8fe045fe-cb8a-4407-a44d-5df60385e522
    Deprecation:
      description: >-
        Present only on a deprecated operation. Structured-field date (RFC 9745)
        — `@` followed by the Unix timestamp at which the operation became
        deprecated.
      schema:
        type: string
        examples:
          - '@1775001600'
    Sunset:
      description: >-
        Present only on a deprecated operation. HTTP-date (RFC 8594) after which
        the operation stops responding. Always at least six months after
        `Deprecation`.
      schema:
        type: string
        examples:
          - Thu, 01 Oct 2026 00:00:00 GMT
    DeprecationLink:
      description: >-
        Present only on a deprecated operation. `<url>; rel="deprecation"`
        pointing at the migration notes.
      schema:
        type: string
        examples:
          - >-
            <https://crevio.co/docs/developer/guides/versioning>;
            rel="deprecation"
    RetryAfter:
      description: Seconds to wait before retrying.
      schema:
        type: integer
        examples:
          - 11
  securitySchemes:
    ApiKey:
      type: apiKey
      in: header
      name: Authorization
      description: 'API key in the format: Bearer {api_token}'

````