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

# Get your API key's usage

> Returns the requests this API key made in the current billing period (or today), broken down by endpoint and MCP tool, with how many bill per call. Free. Counts come from the request log, which keeps 90 days. MCP calls made through an OAuth grant are not attributed to any key.



## OpenAPI

````yaml /openapi.json get /v1/me/usage
openapi: 3.1.0
info:
  contact:
    email: api@particle.pro
    name: Particle
    url: https://particle.pro
  description: >-
    Podcast API for transcripts, mentions and sponsorship data. 140,000+
    podcasts transcribed, diarized and speaker-identified within minutes of
    airing, about 28,000 episodes a day. Search transcripts by keyword or
    meaning, track brand and company mentions with alerts, pull sponsor and
    ad-read data and rankings. REST API plus an MCP server for AI agents. Also
    company, people and topic intelligence.
  summary: >-
    Podcast API: transcripts, mentions, sponsors and rankings for 140,000+
    podcasts.
  termsOfService: https://particle.pro/legal/tos-api
  title: Particle API
  version: 0.1.0
  x-guidance: >-
    Podcast, people, company and topic intelligence. Authenticate with a pp_ API
    key (X-API-Key header) or pay per request with x402: a keyless call to a
    billable endpoint returns 402 with the payment requirements in the
    PAYMENT-REQUIRED header; sign the USDC transfer and repeat the request with
    PAYMENT-SIGNATURE. Start with GET /v1/podcasts/search?q=<show name>; the
    slugs in responses are the inputs to the other endpoints. Docs:
    https://docs.particle.pro; setup playbook:
    https://api.particle.pro/agents.md; endpoint and tool map with prices:
    https://api.particle.pro/llms.txt; credential recipe:
    https://api.particle.pro/auth.md.
  x-logo:
    url: https://particle.pro/favicon.svg
servers:
  - url: https://api.particle.pro
security:
  - ApiKeyHeader: []
  - BearerAuth: []
externalDocs:
  url: https://docs.particle.pro
paths:
  /v1/me/usage:
    get:
      tags:
        - Account
        - tier:free
      summary: Get your API key's usage
      description: >-
        Returns the requests this API key made in the current billing period (or
        today), broken down by endpoint and MCP tool, with how many bill per
        call. Free. Counts come from the request log, which keeps 90 days. MCP
        calls made through an OAuth grant are not attributed to any key.
      operationId: get-my-usage
      parameters:
        - description: >-
            current: the organization's billing period (the UTC calendar month
            without a subscription). today: the current UTC day.
          explode: false
          in: query
          name: period
          schema:
            default: current
            description: >-
              current: the organization's billing period (the UTC calendar month
              without a subscription). today: the current UTC day.
            enum:
              - current
              - today
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/KeyUsage'
          description: OK
        default:
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/PlatformError'
          description: Error
      x-codeSamples:
        - label: cURL
          lang: curl
          source: |-
            curl -H "X-API-Key: $PARTICLE_API_KEY" \
              "https://api.particle.pro/v1/me/usage?period=current"
components:
  schemas:
    KeyUsage:
      additionalProperties: false
      properties:
        api_key:
          $ref: '#/components/schemas/APIKey'
          description: >-
            The key the request authenticated with. Only its prefix is returned,
            never the full key.
        billable_requests:
          description: >-
            Requests this key made that bill per call: successful calls to
            priced endpoints, and calls to paid MCP tools, which are metered
            when the call starts and so count even when the tool then fails or
            is denied. Free endpoints such as /v1/me are never counted, nor are
            endpoints and MCP tools billed through plan features rather than per
            call (alerts, the episode archive and stream), nor a retried write
            answered from its first response under an Idempotency-Key.
          format: int64
          type: integer
        endpoints:
          description: Usage by endpoint and MCP tool, busiest first, at most 100 rows.
          items:
            $ref: '#/components/schemas/KeyUsageEndpoint'
          type:
            - array
            - 'null'
        endpoints_truncated:
          description: >-
            True when the key called more endpoints than endpoints lists. The
            totals above still cover all of them unless totals_partial is set.
          type: boolean
        errors:
          description: Requests that returned an HTTP status of 400 or above.
          format: int64
          type: integer
        period:
          $ref: '#/components/schemas/UsagePeriod'
          description: The window the usage covers.
        requests:
          description: >-
            Requests this key made in the period, including failed and free
            ones.
          format: int64
          type: integer
        totals_partial:
          description: >-
            True in the rare case a key called more distinct endpoints, tools
            and unrouted paths than one report reads (5,000). requests still
            counts every request, but billable_requests and errors then cover
            only the busiest 5,000 of them.
          type: boolean
      required:
        - period
        - api_key
        - requests
        - billable_requests
        - errors
        - endpoints
        - endpoints_truncated
        - totals_partial
      type: object
    PlatformError:
      additionalProperties: false
      properties:
        detail:
          description: >-
            A human-readable explanation specific to this occurrence of the
            problem.
          examples:
            - Property foo is required but is missing.
          type: string
        error_code:
          type: string
        errors:
          description: Optional list of individual error details
          items:
            $ref: '#/components/schemas/ErrorDetail'
          type:
            - array
            - 'null'
        instance:
          description: >-
            A URI reference that identifies the specific occurrence of the
            problem.
          examples:
            - https://example.com/error-log/abc123
          format: uri
          type: string
        resolve:
          $ref: '#/components/schemas/ErrorResolve'
        status:
          description: HTTP status code
          examples:
            - 400
          format: int64
          type: integer
        title:
          description: >-
            A short, human-readable summary of the problem type. This value
            should not change between occurrences of the error.
          examples:
            - Bad Request
          type: string
        type:
          default: about:blank
          description: A URI reference to human-readable documentation for the error.
          examples:
            - https://example.com/errors/example
          format: uri
          type: string
      type: object
    APIKey:
      additionalProperties: false
      properties:
        created_at:
          description: When the key was created
          format: date-time
          type: string
        created_by:
          $ref: '#/components/schemas/Creator'
          description: User who created the key
        expires_at:
          description: When the key expires, if set
          format: date-time
          type: string
        id:
          description: Unique identifier
          type: string
        key_prefix:
          description: Masked key prefix for identification (e.g. pp_abc12345...)
          type: string
        last_used_at:
          description: When the key was last used to authenticate a request
          format: date-time
          type: string
        name:
          description: Human-readable key name
          type: string
      required:
        - id
        - name
        - key_prefix
        - created_at
      type: object
    KeyUsageEndpoint:
      additionalProperties: false
      properties:
        billable_requests:
          description: Requests in the period that bill per call.
          format: int64
          type: integer
        endpoint:
          description: >-
            The route template, e.g. /v1/podcasts/{id}, or /mcp for MCP tool
            calls.
          type: string
        errors:
          description: Requests that returned 400 or above.
          format: int64
          type: integer
        mcp_tool:
          description: >-
            The MCP tool the requests ran. Calls made through particle_call are
            credited to the tool they dispatched.
          type: string
        method:
          description: HTTP method.
          type: string
        requests:
          description: Requests in the period.
          format: int64
          type: integer
      required:
        - method
        - endpoint
        - requests
        - billable_requests
        - errors
      type: object
    UsagePeriod:
      additionalProperties: false
      properties:
        counts_since:
          description: >-
            Present when the period starts more than 90 days ago, the request
            log's retention. Request counts cover only counts_since to now.
          format: date-time
          type: string
        end:
          description: End of the period (exclusive).
          format: date-time
          type: string
        name:
          description: The period asked for.
          enum:
            - current
            - today
          type: string
        source:
          description: >-
            Where start and end came from. billing_period: the organization's
            current billing period. calendar_month: the UTC calendar month, for
            an organization without an active subscription.
            calendar_month_fallback: the UTC calendar month because billing data
            could not be reached, so the billing period may differ. utc_day: the
            current UTC day.
          enum:
            - billing_period
            - calendar_month
            - calendar_month_fallback
            - utc_day
          type: string
        start:
          description: Start of the period.
          format: date-time
          type: string
      required:
        - name
        - source
        - start
        - end
      type: object
    ErrorDetail:
      additionalProperties: false
      properties:
        location:
          description: >-
            Where the error occurred, e.g. 'body.items[3].tags' or
            'path.thing-id'
          type: string
        message:
          description: Error message text
          type: string
        value:
          description: The value at the given location
      type: object
    ErrorResolve:
      additionalProperties: false
      properties:
        action:
          type: string
        endpoint:
          type: string
        message:
          type: string
        method:
          type: string
        url:
          type: string
      required:
        - message
      type: object
    Creator:
      additionalProperties: false
      properties:
        id:
          description: Creator's user ID
          type: string
        name:
          description: Creator's display name
          type: string
      required:
        - id
        - name
      type: object
  securitySchemes:
    ApiKeyHeader:
      description: Pass your API key in the X-API-Key header (recommended).
      in: header
      name: X-API-Key
      type: apiKey
    BearerAuth:
      description: Pass your API key as a Bearer token in the Authorization header.
      scheme: bearer
      type: http

````

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