BugBug Step runs API

The Step runs API from BugBug — 1 operation(s) for step runs.

Operations 1

GET /v2/stepruns/{id}/ Retrieve step run details #

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/bugbug-io:bugbug-io-step-runs-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

bugbug-io-step-runs-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: BugBug.io Public Step runs API
  version: v2
  x-logo:
    url: /static/images/logo.svg
    altText: BugBug.io
  description: 'BugBug.io is a modern browser-based app for software testers, developers, or product managers in need of quick & reliable test automation. You can run tests from your CI/CD pipeline or build system. You can run tests and suites in the cloud via BugBug Command Line Interface.


    Please use Authorize button to Try it out.'
  contact:
    email: support@bugbug.io
tags:
- name: Step runs
paths:
  /v2/stepruns/{id}/:
    get:
      operationId: v2_stepruns_retrieve
      description: Returns a single step run.
      summary: Retrieve step run details
      parameters:
      - in: path
        name: id
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this step run.
        required: true
      tags:
      - Step runs
      security:
      - tokenAuth: []
      - Bearer: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/V2StepRunDetail'
          description: ''
        '401':
          description: Authentication credentials were missing or invalid.
        '404':
          description: Resource not found.
components:
  schemas:
    V2StepRunDetail:
      type: object
      properties:
        id:
          type: string
          format: uuid
          readOnly: true
        stepId:
          type: string
          format: uuid
          readOnly: true
        testRunId:
          type: string
          format: uuid
          readOnly: true
        type:
          type: string
          readOnly: true
        status:
          enum:
          - error
          - passed
          - failed
          - running
          - auto_retrying
          - stopped
          - queued
          - paused
          - skipped
          - recording
          - initialized
          type: string
          description: '* `error` - Error

            * `passed` - Passed

            * `failed` - Failed

            * `running` - Running

            * `auto_retrying` - Auto Retrying

            * `stopped` - Stopped

            * `queued` - Queued

            * `paused` - Paused

            * `skipped` - Skipped

            * `recording` - Recording

            * `initialized` - Initialized'
          x-spec-enum-id: d6540c730bc09488
        error:
          type:
          - string
          - 'null'
        errorCode:
          type:
          - string
          - 'null'
          maxLength: 100
        warning:
          type: boolean
        forceFailed:
          type: boolean
        ignoredFailed:
          type: boolean
        executed:
          type:
          - boolean
          - 'null'
        elementExists:
          type:
          - boolean
          - 'null'
        timeout:
          type:
          - boolean
          - 'null'
        executionUrl:
          type:
          - string
          - 'null'
          title: Step execution URL
        started:
          type:
          - string
          - 'null'
          format: date-time
        ended:
          type:
          - string
          - 'null'
          format: date-time
        duration:
          type:
          - string
          - 'null'
        runTimeout:
          type:
          - number
          - 'null'
          format: double
        sleep:
          type:
          - number
          - 'null'
          format: double
        screenshotUrl:
          type: string
          readOnly: true
        coveringElementScreenshot:
          type: string
          readOnly: true
        assertionExpectedValue:
          type:
          - string
          - 'null'
        assertionCurrentValue:
          type:
          - string
          - 'null'
        assertionType:
          type: string
          readOnly: true
        assertionProperty:
          type: string
          readOnly: true
        assertionAttributeName:
          type: string
          readOnly: true
        tabNo:
          type: integer
          readOnly: true
        computedValue:
          type:
          - string
          - 'null'
        computedUrl:
          type:
          - string
          - 'null'
        computedUsername:
          type:
          - string
          - 'null'
        computedPassword:
          type:
          - string
          - 'null'
        computedFrameLocation:
          type:
          - string
          - 'null'
        computedAssertionExpectedValue:
          type:
          - string
          - 'null'
        computedSelector:
          type:
          - string
          - 'null'
        selector:
          type:
          - string
          - 'null'
        interactionPositionX:
          type:
          - number
          - 'null'
          format: double
        interactionPositionY:
          type:
          - number
          - 'null'
          format: double
        scrollX:
          type:
          - number
          - 'null'
          format: double
        scrollY:
          type:
          - number
          - 'null'
          format: double
        windowInnerWidth:
          type:
          - number
          - 'null'
          format: double
        windowInnerHeight:
          type:
          - number
          - 'null'
          format: double
        waitingConditions:
          type: array
          items:
            $ref: '#/components/schemas/V2WaitingConditionRun'
          readOnly: true
        visualRegressionRefScreenshotSourceId:
          type:
          - string
          - 'null'
          format: uuid
          readOnly: true
        visualRegressionCompareResult:
          allOf:
          - $ref: '#/components/schemas/V2VisualRegressionCompareResult'
          readOnly: true
      required:
      - assertionAttributeName
      - assertionProperty
      - assertionType
      - coveringElementScreenshot
      - id
      - screenshotUrl
      - stepId
      - tabNo
      - testRunId
      - type
      - visualRegressionCompareResult
      - visualRegressionRefScreenshotSourceId
      - waitingConditions
    V2VisualRegressionCompareResult:
      type: object
      properties:
        refScreenshotUrl:
          type:
          - string
          - 'null'
          readOnly: true
        observedScreenshotUrl:
          type:
          - string
          - 'null'
          readOnly: true
        diffScreenshotUrl:
          type:
          - string
          - 'null'
          readOnly: true
        maxDiff:
          type: number
          format: double
          description: Maximum allowed difference used for comparison
        observedDiff:
          type:
          - number
          - 'null'
          format: double
          readOnly: true
        executionTime:
          type:
          - number
          - 'null'
          format: double
        browserName:
          type:
          - string
          - 'null'
          maxLength: 64
        osName:
          type:
          - string
          - 'null'
          maxLength: 64
        screenSizeType:
          enum:
          - desktop
          - mobile
          - custom
          - ''
          - null
          type:
          - string
          - 'null'
          description: '* `desktop` - Desktop

            * `mobile` - Mobile

            * `custom` - Custom'
          x-spec-enum-id: c0cdf94a62475084
        runMode:
          enum:
          - server
          - local
          - recording
          - ''
          - null
          type:
          - string
          - 'null'
          description: '* `server` - cloud

            * `local` - local

            * `recording` - recording'
          x-spec-enum-id: 396ab9b642f5073e
        profileName:
          type: string
          readOnly: true
      required:
      - diffScreenshotUrl
      - maxDiff
      - observedDiff
      - observedScreenshotUrl
      - profileName
      - refScreenshotUrl
    V2WaitingConditionRun:
      type: object
      properties:
        type:
          enum:
          - documentComplete
          - elementIsVisible
          - elementIsNotCovered
          - elementIsNotAnimating
          - elementIsNotDisabled
          - elementHasFocus
          - networkIdle
          - pageNavigationAfterExecution
          - elementHasAttribute
          type: string
          description: '* `documentComplete` - documentComplete

            * `elementIsVisible` - elementIsVisible

            * `elementIsNotCovered` - elementIsNotCovered

            * `elementIsNotAnimating` - elementIsNotAnimating

            * `elementIsNotDisabled` - elementIsNotDisabled

            * `elementHasFocus` - elementHasFocus

            * `networkIdle` - networkIdle

            * `pageNavigationAfterExecution` - pageNavigationAfterExecution

            * `elementHasAttribute` - elementHasAttribute'
          x-spec-enum-id: 8bf476331e5e9e41
          readOnly: true
        isSuccess:
          type: boolean
        isSoftSuccess:
          type: boolean
        isIgnored:
          type: boolean
        expected:
          type:
          - string
          - 'null'
        current:
          type:
          - string
          - 'null'
      required:
      - isSuccess
      - type
  securitySchemes:
    tokenAuth:
      type: apiKey
      in: header
      name: Authorization
      description: Token-based authentication with required prefix "Token"