steamgpt-net Batch API

The Batch API from steamgpt-net — 2 operation(s) for batch.

Operations 2

GET /batch/{ids} Use when checking several players at once. #
POST /batch Batch profiles via JSON body (same limits as GET /batch) #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/steamgpt-net:steamgpt-net-batch-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

steamgpt-net-batch-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: SteamGPT Batch API
  version: 1.3.0
  description: Structured Steam identity and gaming context API, designed for AI agents and search assistants that need factual public Steam player information. No auth, no cookies, no tracking. Append .md (markdown), .json (JSON) or .ai (deterministic plain text) to any data endpoint; default depends on Accept header. Errors carry a machine-readable `error` slug and follow the same format selection.
servers:
- url: https://steamgpt.net
- url: https://steamgpt.net/v1
security:
- {}
- boostToken:
  - rate-boost
tags:
- name: Batch
paths:
  /batch/{ids}:
    get:
      summary: Use when checking several players at once.
      parameters:
      - name: ids
        in: path
        required: true
        schema:
          type: string
        description: comma-separated ids, max 100, any SteamID format except vanity names, e.g. 76561197960287930,STEAM_1:1:39075162,[U:1:22202]
      - name: include
        in: query
        required: false
        schema:
          type: string
        description: 'comma list: faceit, bans - one query / one upstream call for the whole batch'
      responses:
        '200':
          description: players + not_found + invalid lists
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Batch'
            text/markdown:
              schema:
                type: string
            text/plain:
              schema:
                type: string
              description: .ai deterministic text
        '400':
          description: More than 100 ids
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '429':
          description: Rate limited, honor Retry-After
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      tags:
      - Batch
      operationId: getBatchByIds
      x-operation-id-source: derived
  /batch:
    post:
      summary: Batch profiles via JSON body (same limits as GET /batch)
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                ids:
                  type: array
                  maxItems: 100
                  items:
                    type: string
                  description: ids as STRINGS in any SteamID format except vanity names - never JSON numbers, a 17-digit number loses precision and points at another account
                include:
                  type: array
                  items:
                    type: string
                    enum:
                    - faceit
                    - bans
              required:
              - ids
      responses:
        '200':
          description: players + not_found + invalid lists
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Batch'
            text/markdown:
              schema:
                type: string
            text/plain:
              schema:
                type: string
              description: .ai deterministic text
        '400':
          description: More than 100 ids
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '413':
          description: Body over 16kb
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '429':
          description: Rate limited, honor Retry-After
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      tags:
      - Batch
      operationId: postBatch
      x-operation-id-source: derived
components:
  schemas:
    Error:
      type: object
      properties:
        result:
          type: string
          enum:
          - error
        code:
          type: integer
        error:
          type: string
          enum:
          - player_not_found
          - no_faceit_data
          - no_bans_data
          - batch_too_large
          - batch_no_valid_ids
          - bad_request
          - invalid_token
          - unknown_endpoint
          - rate_limited
          - internal
        message:
          type: string
      required:
      - result
      - code
      - error
    Ids:
      type: object
      description: All SteamID representations of the player
      properties:
        steamid64:
          type: string
          example: '76561197960287930'
        steamid:
          type:
          - string
          - 'null'
          example: STEAM_1:0:11101
        steamid3:
          type:
          - string
          - 'null'
          example: '[U:1:22202]'
    Batch:
      type: object
      properties:
        result:
          type: string
          enum:
          - success
        data:
          type: object
          properties:
            count:
              type: integer
            players:
              type: array
              items:
                type: object
                description: 'batch entry: no canonical/provenance; faceit and steam_bans appear only with include'
                properties:
                  steamid64:
                    type: string
                  ids:
                    $ref: '#/components/schemas/Ids'
                  steam:
                    $ref: '#/components/schemas/SteamPlayer'
                  faceit:
                    type:
                    - object
                    - 'null'
                    additionalProperties: true
                  faceit_bans:
                    type: array
                    items:
                      type: object
                      additionalProperties: true
                  steam_bans:
                    type:
                    - object
                    - 'null'
                    additionalProperties: true
            not_found:
              type: array
              items:
                type: string
              description: valid steamid64 not found in cache
            invalid:
              type: array
              items:
                type: string
              description: inputs that are not steamid64 (sanitized echo)
    SteamPlayer:
      type:
      - object
      - 'null'
      description: Raw Steam GetPlayerSummaries player object, unmodified field names
      properties:
        steamid:
          type: string
        personaname:
          type: string
        profileurl:
          type: string
        avatar:
          type: string
        avatarmedium:
          type: string
        avatarfull:
          type: string
        personastate:
          type: integer
          description: 0 offline, 1 online, 2 busy, 3 away, 4 snooze, 5 looking to trade, 6 looking to play
        communityvisibilitystate:
          type: integer
          description: 3 = public
        timecreated:
          type: integer
          description: unixtime
        lastlogoff:
          type: integer
          description: unixtime
        gameextrainfo:
          type: string
        loccountrycode:
          type: string
      additionalProperties: true
  securitySchemes:
    boostToken:
      type: oauth2
      description: 'OPTIONAL. Every endpoint works without any credential. A self-service token (no registration, no client_id) raises the per-IP rate limit from 120 to 600 requests/min. Send it as: Authorization: Bearer <access_token>. Details: https://steamgpt.net/auth.md'
      flows:
        clientCredentials:
          tokenUrl: https://steamgpt.net/oauth/token
          scopes:
            rate-boost: Higher per-IP rate limit (600/min instead of 120/min)