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

# Estimate a rate

> A typical sponsorship rate range for one piece of content, from the published rate snapshot. On-demand
content is priced per 1,000 views; live streams per average concurrent viewer. The range widens with the
snapshot's confidence in the country and industry (15%, 25% or 40% either side of the estimate) and is
rounded outward to two significant figures. Rates are for creators who sell their own sponsorships, and
exclude usage rights, exclusivity, agency fees and bundles.

Costs 0.01 credit. Available with a Streamforge API key only.




## OpenAPI

````yaml GET /rates/estimate
openapi: 3.0.3
info:
  title: Streamforge External API
  description: >
    Public-facing API for accessing normalized creator, content, and analysis
    data across Twitch, YouTube, Instagram, TikTok, and X (Twitter).


    ## Authentication

    All requests require an API key in the `x-api-key` header.


    ## Credits

    The API prices calls in credits. Each call costs its endpoint's tier once,
    whatever the number of IDs it

    names or results it returns. A bulk call for 25 profiles costs the same as a
    call for one.


    The `X-Credits-limit`, `X-Credits-used` and `X-Credits-request-cost`
    response headers are in credits, so a

    call that costs 0.01 credit shows `X-Credits-request-cost: 0.01`.


    - Standard, 0.01 credit per call: creator profiles, posts and videos, games,
    creator and brand search, rate estimates

    - Advanced, 0.1 credit per call: creator email, cross-platform social
    linking, brand profiles, industry data, rate benchmarks

    - Premium, 1 credit per call: AI-enriched creator data, audience
    demographics, creator requests


    ### Credits by endpoint:

    - Profile, profile list, bulk profiles, handle lookup and creator search:
    0.01 credit

    - Content, content lists and bulk content: 0.01 credit

    - Game, game content, bulk games and game search: 0.01 credit

    - Brand search and brand list: 0.01 credit

    - Rate dimensions and rate estimate: 0.01 credit

    - Email and socials endpoints: 0.1 credit

    - Brand profile endpoint: 0.1 credit

    - Industry list and industry ranking: 0.1 credit

    - Rate benchmarks: 0.1 credit

    - Analysis and audience endpoints: 1 credit

    - Creator request: 1 credit per accepted request, once, returned if it ends
    `not_found` or `failed`; reading a request costs nothing


    Brand, industry, rate and creator request endpoints are available with a
    Streamforge API key only.


    ## Items per call

    A call names or returns at most 25 items. Bulk calls take at most 25 IDs in
    `profile_ids`, `content_ids`,

    `game_ids` or `handles`; more returns a `400` validation error. A list page
    returns at most 25 items; a

    larger `limit` is lowered to 25.


    ## Rate Limiting

    Rate limit headers are included in all responses. Every call counts as one
    request, whatever it costs in credits:

    - `X-RateLimit-{window}-limit`: Maximum requests allowed

    - `X-RateLimit-{window}-remaining`: Remaining requests

    - `X-RateLimit-{window}-reset`: UNIX timestamp (seconds) when the limit
    resets


    ## Base URL

    Production: `https://external-api.streamforge.com`
  version: 1.0.0
  contact:
    name: Streamforge Support
    email: support@streamforge.com
servers:
  - url: https://external-api.streamforge.com
    description: Production
  - url: http://localhost:3000
    description: Local development (from .env)
    variables:
      base_url:
        default: http://localhost:3000
security:
  - ApiKeyAuth: []
tags:
  - name: Health
    description: Health check endpoint
  - name: Profiles
    description: Creator profile endpoints
  - name: Content
    description: Content (streams/videos) endpoints
  - name: Games
    description: Game metadata endpoints
  - name: Advanced
    description: Advanced insights and analysis
  - name: Brands
    description: Brand sponsorship activity from Streamforge Market Intelligence
  - name: Industries
    description: >-
      Industry sponsorship totals and brand rankings from Streamforge Market
      Intelligence
  - name: Rates
    description: Sponsorship rate ranges from Streamforge's published rate snapshot
  - name: Creator requests
    description: Ask Streamforge to prepare a creator, then check back for the result
paths:
  /rates/estimate:
    get:
      tags:
        - Rates
      summary: Estimate a sponsorship rate
      description: >
        A typical sponsorship rate range for one piece of content, from the
        published rate snapshot. On-demand

        content is priced per 1,000 views; live streams per average concurrent
        viewer. The range widens with the

        snapshot's confidence in the country and industry (15%, 25% or 40%
        either side of the estimate) and is

        rounded outward to two significant figures. Rates are for creators who
        sell their own sponsorships, and

        exclude usage rights, exclusivity, agency fees and bundles.


        Costs 0.01 credit. Available with a Streamforge API key only.
      operationId: estimateRate
      parameters:
        - name: platform
          in: query
          required: true
          schema:
            type: string
            enum:
              - youtube
              - twitch
              - tiktok
              - instagram
              - twitter
        - name: content_type
          in: query
          required: true
          description: A format the platform is priced for (see `GET /rates/dimensions`)
          schema:
            type: string
            enum:
              - video
              - short
              - stream
              - post
              - story
        - name: average_views
          in: query
          required: true
          description: Average views per upload, or average concurrent viewers for a stream
          schema:
            type: integer
            minimum: 1
            example: 25000
        - name: industry
          in: query
          required: true
          description: Industry id from `GET /rates/dimensions`
          schema:
            type: string
            example: gaming
        - name: country
          in: query
          required: true
          description: Two-letter country code from `GET /rates/dimensions`
          schema:
            type: string
            example: US
      responses:
        '200':
          description: The estimated range
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RateEstimateResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '429':
          $ref: '#/components/responses/TooManyRequests'
        '503':
          $ref: '#/components/responses/ServiceUnavailable'
components:
  schemas:
    RateEstimateResponse:
      type: object
      properties:
        payload:
          type: object
          properties:
            platform:
              type: string
            content_type:
              type: string
            average_views:
              type: integer
            industry:
              $ref: '#/components/schemas/IndustryRef'
            country:
              type: object
              properties:
                code:
                  type: string
                name:
                  type: string
            unit:
              type: string
              enum:
                - per_1000_views
                - per_average_concurrent_viewer
            rate:
              $ref: '#/components/schemas/UsdRange'
            total:
              $ref: '#/components/schemas/UsdRange'
            confidence:
              type: string
              enum:
                - high
                - medium
                - low
        meta:
          allOf:
            - $ref: '#/components/schemas/Meta'
            - type: object
              properties:
                snapshot:
                  $ref: '#/components/schemas/RateSnapshot'
    IndustryRef:
      type: object
      properties:
        id:
          type: string
          example: beauty-personal-care
        name:
          type: string
          example: Beauty & Personal Care
    UsdRange:
      type: object
      properties:
        low_usd:
          type: number
        high_usd:
          type: number
    Meta:
      type: object
      properties:
        source:
          type: string
        received_at:
          type: string
          format: date-time
        request_id:
          type: string
          format: uuid
    RateSnapshot:
      type: object
      properties:
        year:
          type: integer
        revision:
          type: integer
        published_at:
          type: string
          format: date-time
          nullable: true
    Error:
      type: object
      properties:
        error:
          type: object
          properties:
            status:
              type: integer
            message:
              type: string
        meta:
          type: object
          properties:
            request_id:
              type: string
              format: uuid
  responses:
    BadRequest:
      description: Bad request - validation error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error:
              status: 400
              message: Invalid platform or missing required parameter
            meta:
              request_id: 5e7c0137-1ed3-4b4b-8e5f-3d9cf00f7ac4
    Unauthorized:
      description: Missing API key
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error:
              status: 401
              message: API key is required
            meta:
              request_id: 5e7c0137-1ed3-4b4b-8e5f-3d9cf00f7ac4
    Forbidden:
      description: Invalid or revoked API key
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error:
              status: 403
              message: Invalid API key
            meta:
              request_id: 5e7c0137-1ed3-4b4b-8e5f-3d9cf00f7ac4
    NotFound:
      description: Resource not found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error:
              status: 404
              message: Profile not found
            meta:
              request_id: 5e7c0137-1ed3-4b4b-8e5f-3d9cf00f7ac4
    TooManyRequests:
      description: Rate limit exceeded
      headers:
        Retry-After:
          schema:
            type: integer
          description: Seconds until retry is safe
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error:
              status: 429
              message: Rate limit exceeded
            meta:
              request_id: 5e7c0137-1ed3-4b4b-8e5f-3d9cf00f7ac4
    ServiceUnavailable:
      description: >-
        The data behind this endpoint is not configured on this deployment, or
        is being refreshed
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error:
              status: 503
              message: >-
                Market intelligence data is being refreshed. Try again in a few
                minutes.
              code: intel_unavailable
            meta:
              request_id: 5e7c0137-1ed3-4b4b-8e5f-3d9cf00f7ac4
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: |
        Your API key. Include it in the `x-api-key` header for all requests.

````

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