CurlShip Stats API

Live site counters.

GitHub OpenAPI

Operations 3

3 of 3 operations are conformant: apis.io called them with no credentials and the responses matched this contract. Checked 2026-11-12. how this works · status file

GET /api/stats Live site stats conformant #
GET /api/stats/daily Listings added per UTC day conformant #
GET /api/stats/dr Domain Rating history conformant #

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/curlship-com:curlship-com-stats-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

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

curlship-com-stats-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Curlship Com Stats API
  version: 1.0.0
  contact:
    name: CurlShip Support
    email: support@curlship.com
    url: https://curlship.com
  license:
    name: Proprietary
  description: 'Operations tagged Stats across 2 of this provider''s published API definitions: curlship-com-openapi.json, curlship-com-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://curlship.com
  description: Production
tags:
- name: Stats
  description: Live site counters.
paths:
  /api/stats:
    get:
      tags:
      - Stats
      summary: Live site stats
      description: 'Site-wide counters, refreshed about once a minute: listings created in the last rolling 24 hours, total active listings, and the site''s Domain Rating by Ahrefs (`domain_rating` is `null` until one is set — refreshed daily from the free Ahrefs API, with set_dr.py as the manual fallback). The same numbers sit in the cmd-bar at the bottom of every page.'
      operationId: getStats
      responses:
        '200':
          description: The stats
          content:
            application/json:
              schema:
                type: object
                properties:
                  ok:
                    type: boolean
                    example: true
                  domain_rating:
                    oneOf:
                    - type: object
                      properties:
                        value:
                          type: integer
                          minimum: 0
                          maximum: 100
                          example: 37
                        checked_at:
                          type: string
                          format: date
                          example: '2026-09-20'
                          description: The day the DR was read off Ahrefs.
                        source:
                          type: string
                          example: Domain Rating by Ahrefs
                        license:
                          type: string
                          format: uri
                          example: http://ahrefs.com/legal/domain-rating-license
                    - type: 'null'
                    description: The site's Ahrefs DR, or null while unset.
                  new_24h:
                    type: integer
                    example: 12
                    description: Active listings created in the last rolling 24h.
                  total:
                    type: integer
                    example: 2044
              example:
                ok: true
                domain_rating:
                  value: 37
                  checked_at: '2026-09-20'
                  source: Domain Rating by Ahrefs
                  license: http://ahrefs.com/legal/domain-rating-license
                new_24h: 12
                total: 2044
    servers:
    - url: https://curlship.com
      description: Production
  /api/stats/daily:
    get:
      tags:
      - Stats
      summary: Listings added per UTC day
      description: 'The zero-filled daily series behind the public /stats page: one entry per calendar day from the first listing to today (UTC), each with `added` and the `cumulative` running total since day one. `range` selects the window — `all` (default) or an integer 1-3650 for the last N days; a window''s last `cumulative` is always the site total. Anything else gets a 400.'
      operationId: getDailyStats
      parameters:
      - name: range
        in: query
        required: false
        description: '`"all"` (default) for the whole series, or an integer 1-3650 for the last N days.'
        schema:
          type: string
          example: all
      responses:
        '200':
          description: The daily series
          content:
            application/json:
              schema:
                type: object
                properties:
                  ok:
                    type: boolean
                    example: true
                  timezone:
                    type: string
                    example: UTC
                  range:
                    oneOf:
                    - type: string
                      example: all
                    - type: integer
                      example: 30
                    description: The window that was applied.
                  first_day:
                    type:
                    - string
                    - 'null'
                    format: date
                    example: '2026-03-20'
                    description: First day of the returned series.
                  last_day:
                    type: string
                    format: date
                    example: '2026-10-13'
                    description: Always today, UTC.
                  total:
                    type: integer
                    example: 2044
                    description: Total active listings counted in the series — the same number /api/stats reports, minus rows whose created_at cannot be parsed or predates the 2026-01-01 floor; those are skipped.
                  days:
                    type: array
                    items:
                      type: object
                      properties:
                        date:
                          type: string
                          format: date
                          example: '2026-10-12'
                        added:
                          type: integer
                          example: 118
                          description: Listings created on that UTC day.
                        cumulative:
                          type: integer
                          example: 2044
                          description: Running total since the very first listing.
              example:
                ok: true
                timezone: UTC
                range: all
                first_day: '2026-03-20'
                last_day: '2026-10-13'
                total: 2044
                days:
                - date: '2026-10-12'
                  added: 118
                  cumulative: 2043
                - date: '2026-10-13'
                  added: 1
                  cumulative: 2044
        '400':
          description: range is neither "all" nor an integer 1-3650
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
    servers:
    - url: https://curlship.com
      description: Production
  /api/stats/dr:
    get:
      tags:
      - Stats
      summary: Domain Rating history
      description: Every recorded Ahrefs Domain Rating, one per UTC day, ascending — the series behind the /stats chart. `current` is the latest reading (null until one is set). `change` compares the latest reading to the most recent one with a different value — the last actual step — and is null while fewer than two exist or every reading is equal. `growth` compares the latest reading to the very first and is null with fewer than two. History starts at the first recorded reading and grows by one row per day the DR is checked.
      operationId: getDrHistory
      responses:
        '200':
          description: The DR series
          content:
            application/json:
              schema:
                type: object
                properties:
                  ok:
                    type: boolean
                    example: true
                  current:
                    oneOf:
                    - type: object
                      properties:
                        value:
                          type: integer
                          minimum: 0
                          maximum: 100
                          example: 46
                        checked_at:
                          type: string
                          format: date
                          example: '2026-10-03'
                          description: The day the DR was read off Ahrefs.
                    - type: 'null'
                    description: The site's Ahrefs DR, or null while unset.
                  history:
                    type: array
                    items:
                      type: object
                      properties:
                        date:
                          type: string
                          format: date
                          example: '2026-10-02'
                        value:
                          type: integer
                          minimum: 0
                          maximum: 100
                          example: 37
                  change:
                    oneOf:
                    - type: object
                      properties:
                        delta:
                          type: integer
                          example: 9
                          description: Latest minus the last differing value — signed.
                        since:
                          type: string
                          format: date
                          example: '2026-10-02'
                          description: The last differing reading's day.
                        from:
                          type: integer
                          example: 37
                          description: The last differing reading's value.
                    - type: 'null'
                    description: Latest vs the most recent reading with a different value — the last step. Null with fewer than two readings, or when every reading is equal.
                  growth:
                    oneOf:
                    - type: object
                      properties:
                        delta:
                          type: integer
                          example: 9
                          description: Latest minus first value — signed.
                        since:
                          type: string
                          format: date
                          example: '2026-10-02'
                          description: The first reading's day.
                        from:
                          type: integer
                          example: 37
                          description: The first reading's value.
                    - type: 'null'
                    description: Latest vs first reading, or null with fewer than two.
              example:
                ok: true
                current:
                  value: 46
                  checked_at: '2026-10-03'
                history:
                - date: '2026-10-02'
                  value: 37
                - date: '2026-10-03'
                  value: 46
                change:
                  delta: 9
                  since: '2026-10-02'
                  from: 37
                growth:
                  delta: 9
                  since: '2026-10-02'
                  from: 37
    servers:
    - url: https://curlship.com
      description: Production
components:
  schemas:
    Error:
      type: object
      properties:
        ok:
          type: boolean
          example: false
        error:
          type: string
          example: url is required and must start with http
      required:
      - ok
      - error
externalDocs:
  description: Badge guide & instant verify
  url: https://curlship.com/badge
x-refined-from:
- curlship-com-openapi.json
- curlship-com-openapi.yml