Storm MCP Credential Census API

The CredentialCensus API from Storm MCP — 1 operation(s) for credentialcensus.

Operations 1

GET /api/v1/admin/credential-census Lists one page of the caller tenant's credential census #

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/stormmcp:stormmcp-credentialcensus-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

stormmcp-credentialcensus-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: MCP Gateway Credential Census API
  description: API for MCP Gateway operations
  version: v1
servers:
- url: https://dev.stormmcp.ai/
tags:
- name: CredentialCensus
paths:
  /api/v1/admin/credential-census:
    get:
      tags:
      - CredentialCensus
      summary: Lists one page of the caller tenant's credential census
      parameters:
      - name: pageNumber
        in: query
        description: The page number (1-based, default 1).
        schema:
          pattern: ^-?(?:0|[1-9]\d*)$
          type:
          - integer
          - string
          format: int32
          default: 1
      - name: pageSize
        in: query
        description: The page size (default 20, max 1000).
        schema:
          pattern: ^-?(?:0|[1-9]\d*)$
          type:
          - integer
          - string
          format: int32
          default: 20
      - name: kind
        in: query
        description: 'Optional family: provider_row, custom_server, gateway_app, or dashboard_preference.'
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/CredentialCensusPage'
            application/json:
              schema:
                $ref: '#/components/schemas/CredentialCensusPage'
            text/json:
              schema:
                $ref: '#/components/schemas/CredentialCensusPage'
            text/csv:
              schema:
                $ref: '#/components/schemas/CredentialCensusPage'
            application/csv:
              schema:
                $ref: '#/components/schemas/CredentialCensusPage'
        '400':
          description: Bad Request
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
            text/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
            text/csv:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
            application/csv:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '401':
          description: Unauthorized
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
            text/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
            text/csv:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
            application/csv:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '403':
          description: Forbidden
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
            text/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
            text/csv:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
            application/csv:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
      operationId: getApiV1AdminCredentialCensus
      x-operation-id-source: derived
components:
  schemas:
    ProblemDetails:
      type: object
      properties:
        type:
          type:
          - 'null'
          - string
        title:
          type:
          - 'null'
          - string
        status:
          pattern: ^-?(?:0|[1-9]\d*)$
          type:
          - 'null'
          - integer
          - string
          format: int32
        detail:
          type:
          - 'null'
          - string
        instance:
          type:
          - 'null'
          - string
    CredentialCensusRow:
      type: object
      properties:
        kind:
          type: string
          description: 'Gets the family: provider_row, custom_server, gateway_app, or dashboard_preference.'
        rowId:
          type: string
          description: Gets the stored row id. For a gateway app this is the gateway id.
          format: uuid
        libraryId:
          type:
          - 'null'
          - string
          description: Gets the library id, when the row has one.
          format: uuid
        binderId:
          type:
          - 'null'
          - string
          description: 'Gets the binder id when the handle resolved to that binder, including a legacy

            credential id that resolved to a different binder. Null is none.'
          format: uuid
        level:
          type:
          - 'null'
          - string
          description: 'Gets the resolved binder level, Personal or Tenant, or the row level when the handle

            did not resolve. Null when the row has no level or the binder level is unknown.'
        resolvable:
          type:
          - 'null'
          - boolean
          description: 'Gets whether the handle resolved to a live binder. Null means a Personal row owned

            by another user was omitted by the store, so the census does not call it missing.'
        eligible:
          type: boolean
          description: 'Gets a value indicating whether a later fill may store this binder id.

            A Personal binder and a Tenant authorization-code binder are never eligible.'
        cutoverClass:
          type:
          - 'null'
          - string
          description: 'Gets the cutover class for a consumer row: legitimate, unconfigured, or unmigrated.'
        shape:
          type:
          - 'null'
          - string
          description: 'Gets the shared-credential shape: personal_pointer, custom_server_key, deleted,

            tenant_authorization_code, v1_credential_id, or level_mismatch.'
        reason:
          type:
          - 'null'
          - string
          description: Gets connection_failed when the store did not answer for this handle.
      description: 'One census row. A binder id names a UCS binder. It is not a credential and it does not

        authorize the caller to read or serve that credential.'
    CredentialCensusCounts:
      type: object
      properties:
        providerRows:
          pattern: ^-?(?:0|[1-9]\d*)$
          type:
          - integer
          - string
          description: Gets the number of provider-configuration rows in the caller tenant.
          format: int32
        customServers:
          pattern: ^-?(?:0|[1-9]\d*)$
          type:
          - integer
          - string
          description: Gets the number of custom servers in the caller tenant.
          format: int32
        gatewayApps:
          pattern: ^-?(?:0|[1-9]\d*)$
          type:
          - integer
          - string
          description: Gets the number of shared-credential entries on live gateways in the caller tenant.
          format: int32
        dashboardPreferences:
          pattern: ^-?(?:0|[1-9]\d*)$
          type:
          - integer
          - string
          description: Gets the number of dashboard library preferences in the caller tenant.
          format: int32
        legitimate:
          pattern: ^-?(?:0|[1-9]\d*)$
          type:
          - integer
          - string
          description: 'Gets the legitimate-null count: credentialless provider rows, credentialless custom

            servers, and every dashboard preference.'
          format: int32
        unconfigured:
          pattern: ^-?(?:0|[1-9]\d*)$
          type:
          - integer
          - string
          description: 'Gets the unconfigured-null count: credential-requiring provider rows and custom servers

            that store no credential handle, plus a gateway library with no entry that links no

            eligible Tenant binder and no anchored Personal binder. Reported by count. Does not

            block cutover. An omitted or faulted handle is not counted here.'
          format: int32
        unmigrated:
          pattern: ^-?(?:0|[1-9]\d*)$
          type:
          - integer
          - string
          description: 'Gets the unmigrated count: shared-credential values that are still row ids, personal

            pointers, or deleted ids, plus a gateway library with no entry that already has an

            eligible Tenant binder or an anchored Personal binder, or whose handle could not be

            classified. A value that is already a binder id is not included.'
          format: int32
        absentEntries:
          pattern: ^-?(?:0|[1-9]\d*)$
          type:
          - integer
          - string
          description: 'Gets live-gateway libraries with no shared-credential entry whose absence is unmigrated.

            Those entries are included in int CredentialCensusCounts.Unmigrated.'
          format: int32
      description: Tenant-wide counts for the credential census. One aggregate query per family.
    CredentialCensusPage:
      type: object
      properties:
        pageNumber:
          pattern: ^-?(?:0|[1-9]\d*)$
          type:
          - integer
          - string
          description: Gets the 1-based page number.
          format: int32
        pageSize:
          pattern: ^-?(?:0|[1-9]\d*)$
          type:
          - integer
          - string
          description: Gets the page size.
          format: int32
        counts:
          description: Gets the tenant-wide family counts. These are aggregates, not a walk of every handle.
          $ref: '#/components/schemas/CredentialCensusCounts'
        items:
          type: array
          items:
            $ref: '#/components/schemas/CredentialCensusRow'
          description: Gets the rows on this page.
      description: One page of the tenant credential census. Ids and classifications only.