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

# How your games and blocks are doing

> Your projects' plays, views, likes, remixes and new followers day by day for the range, with the period before and your usual, every project that has come out with its own days, your newest project's first day, and your firsts. Counted as the public stats are: a game's plays, a block's views, views of every page.



## OpenAPI

````yaml /api-reference/openapi.json get /me/analytics
openapi: 3.1.0
info:
  title: Patch API
  version: 1.0.0
  description: >-
    The public API behind patch.gg, the desktop app and pch. Changes within v1
    are additive only. Errors are { error: { code, message, details } }; branch
    on code.
servers:
  - url: https://patch.gg/api/v1
security: []
paths:
  /me/analytics:
    get:
      tags:
        - Analytics
      summary: How your games and blocks are doing
      description: >-
        Your projects' plays, views, likes, remixes and new followers day by day
        for the range, with the period before and your usual, every project that
        has come out with its own days, your newest project's first day, and
        your firsts. Counted as the public stats are: a game's plays, a block's
        views, views of every page.
      parameters:
        - schema:
            type: string
            enum:
              - '7'
              - '28'
              - '90'
              - all
            default: '7'
            description: >-
              The last 7, 28 or 90 days, today included, or `all`: since your
              first release (for one project, since it came out).
          required: false
          description: >-
            The last 7, 28 or 90 days, today included, or `all`: since your
            first release (for one project, since it came out).
          name: range
          in: query
        - schema:
            type: string
            maxLength: 64
            description: >-
              Your time zone, IANA's name for it (e.g. `Europe/Berlin`): days
              start at its midnight. UTC when left out, unknown, an offset or an
              abbreviation.
            example: Europe/Berlin
          required: false
          description: >-
            Your time zone, IANA's name for it (e.g. `Europe/Berlin`): days
            start at its midnight. UTC when left out, unknown, an offset or an
            abbreviation.
          name: tz
          in: query
      responses:
        '200':
          description: Your analytics
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreatorAnalytics'
        '400':
          description: Invalid request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: Not signed in
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '403':
          description: Not allowed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      security:
        - bearer: []
components:
  schemas:
    CreatorAnalytics:
      type: object
      properties:
        range:
          type: string
          enum:
            - '7'
            - '28'
            - '90'
            - all
        tz:
          type: string
        today:
          type: string
          example: '2026-11-12'
          description: A day, YYYY-MM-DD
        days:
          type: array
          items:
            type: string
            example: '2026-11-12'
            description: A day, YYYY-MM-DD
          description: The period's days, oldest first
        first_release:
          type:
            - string
            - 'null'
          example: '2026-11-12'
          description: A day, YYYY-MM-DD
        person:
          type: object
          properties:
            handle:
              type:
                - string
                - 'null'
            image:
              type:
                - string
                - 'null'
            followers:
              type: integer
          required:
            - handle
            - image
            - followers
        totals:
          type: object
          properties:
            plays:
              type: integer
              description: Your games' plays, all time
            views:
              type: integer
              description: Views of all your projects' pages, all time
            likes:
              type: integer
            remixes:
              type: integer
            followers:
              type: integer
          required:
            - plays
            - views
            - likes
            - remixes
            - followers
        plays:
          $ref: '#/components/schemas/AnalyticsSeries'
        views:
          allOf:
            - $ref: '#/components/schemas/AnalyticsSeries'
            - description: Views of your projects' pages a day
        followers:
          allOf:
            - $ref: '#/components/schemas/AnalyticsSeries'
            - description: New followers a day
        likes:
          allOf:
            - $ref: '#/components/schemas/AnalyticsSeries'
            - description: >-
                Likes a day on your projects, by when each was given: only likes
                there are now, and none from before likes were saved
        remixes:
          allOf:
            - $ref: '#/components/schemas/AnalyticsSeries'
            - description: >-
                Remixes a day of your projects, by when each copy was made:
                every copy there is, private and unreleased ones included
        projects:
          type: array
          items:
            type: object
            properties:
              handle:
                type: string
                example: mira/lantern-run
              owner:
                type: string
              slug:
                type: string
              name:
                type: string
              kind:
                type: string
                enum:
                  - game
                  - block
                description: A game's public number is its plays; a block's, its views.
              category:
                type:
                  - string
                  - 'null'
              cover_url:
                type:
                  - string
                  - 'null'
              cover_levels:
                $ref: '#/components/schemas/MediaLevels'
              out_since:
                type: string
                example: '2026-11-12'
                description: The day its first release came out
              stats:
                type: object
                properties:
                  plays:
                    type: integer
                  views:
                    type: integer
                  likes:
                    type: integer
                  remixes:
                    type: integer
                required:
                  - plays
                  - views
                  - likes
                  - remixes
                description: Its public stats, all time
              plays:
                type: array
                items:
                  type: integer
                description: Plays a day (a block's are 0)
              views:
                type: array
                items:
                  type: integer
                description: Views a day
            required:
              - handle
              - owner
              - slug
              - name
              - kind
              - category
              - cover_url
              - cover_levels
              - out_since
              - stats
              - plays
              - views
        latest:
          type:
            - object
            - 'null'
          properties:
            handle:
              type: string
            first_day:
              type: integer
            rank:
              type: integer
            of:
              type: integer
          required:
            - handle
            - first_day
            - rank
            - of
          description: >-
            Your newest project with 50 plays or views, ranked by its first day
            against your others of its kind
        firsts:
          type: object
          properties:
            play:
              type:
                - string
                - 'null'
              example: '2026-11-12'
              description: A day, YYYY-MM-DD
            view:
              type:
                - string
                - 'null'
              example: '2026-11-12'
              description: A block's first view
            like:
              type:
                - string
                - 'null'
              example: '2026-11-12'
              description: A day, YYYY-MM-DD
            follower:
              type:
                - string
                - 'null'
              example: '2026-11-12'
              description: A day, YYYY-MM-DD
          required:
            - play
            - view
            - like
            - follower
      required:
        - range
        - tz
        - today
        - days
        - first_release
        - person
        - totals
        - plays
        - views
        - followers
        - likes
        - remixes
        - projects
        - latest
        - firsts
    Error:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: string
              example: version_exists
            message:
              type: string
            details: {}
          required:
            - code
            - message
      required:
        - error
    AnalyticsSeries:
      type: object
      properties:
        days:
          type: array
          items:
            type: integer
          description: One number a day, as `days` lists them
        before:
          type:
            - array
            - 'null'
          items:
            type: integer
          description: The period before, day by day; null for `all`
        usual:
          type:
            - number
            - 'null'
          description: >-
            The mean of up to six periods before this one, counting only whole
            periods: ones that start on or after your first release (for one
            project, the day it came out). Null when the period just before
            isn't whole: then don't compare.
      required:
        - days
        - before
        - usual
      description: Your games' plays a day
    MediaLevels:
      type: array
      items:
        type: object
        properties:
          width:
            type: integer
          url:
            type: string
        required:
          - width
          - url
      description: >-
        Smaller copies of a picture (WebP) or a clip (MP4, H.264, without
        sound), smallest first, each at its own address that never changes. Show
        the smallest that's sharp where it goes. Empty for animated pictures,
        for flat art and short clips with no smaller copy, and for media from
        before Patch made copies until theirs are made: then use the file
        itself.
  securitySchemes:
    bearer:
      type: http
      scheme: bearer
      description: An API key (pch_...) or the token from pch login.

````

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