Smokeball Stages API

The Stages API from Smokeball — 5 operation(s) for stages.

Operations 5

GET /stages Get stage to matter mappings in the firm #
GET /matters/{matterId}/stages Get a matter stage information #
GET /stagesets Get stage sets for the firm #
GET /stagesets/{id} Get a stage set #
GET /stagesets/{stageSetId}/stages/{id} Get a stage on a stage set #

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/smokeball-stages-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

smokeball-stages-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Smokeball Activity Codes Stages API
  version: '1.0'
  description: REST API for integrating with Smokeball legal practice management software. Supports matters, contacts, documents, time entries, billing, trust accounting, staff, webhooks, and law firm workflows across US, AU, and UK regions. Uses OAuth 2.0 (client credentials) authentication.
  contact:
    name: Smokeball Developer Support
    url: https://docs.smokeball.com/docs/api-docs/1e13a13124aee-introduction
  x-api-id: smokeball
  x-audience: external-public
servers:
- url: https://api.smokeball.com
- url: https://api.smokeball.com.au
- url: https://api.smokeball.co.uk
- url: https://stagingapi.smokeball.com
- url: https://stagingapi.smokeball.com.au
- url: https://stagingapi.smokeball.co.uk
security:
- api-key: []
  token: []
tags:
- name: Stages
paths:
  /stages:
    get:
      tags:
      - Stages
      summary: Get stage to matter mappings in the firm
      description: Returns a list of stage to matter mappings in the firm.
      operationId: GetMatterStages
      parameters:
      - name: Offset
        in: query
        schema:
          maximum: 2147483647
          minimum: 0
          type: integer
          format: int32
      - name: Limit
        in: query
        schema:
          maximum: 500
          minimum: 1
          type: integer
          format: int32
      - name: UpdatedSince
        in: query
        description: Returns items updated since a specified time (.net ticks representation of the UTC datetime).
        schema:
          type: integer
          format: int64
      - name: LastUpdated
        in: query
        description: 'Deprecated, use updatedSince

          Returns items updated since a specified time.'
        schema:
          type: string
          format: date-time
      responses:
        '200':
          description: When request is successful. Returns a paged collection of 'MatterStage' objects.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MatterStagePagedCollection'
  /matters/{matterId}/stages:
    get:
      tags:
      - Stages
      summary: Get a matter stage information
      description: Returns the specified matters stage information.
      operationId: GetStagesOnMatter
      parameters:
      - name: matterId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: When request is successful. Returns a 'MatterStage' object.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MatterStage'
        '400':
          description: When an unsupported request is made.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '403':
          description: When the matter stage is not associated with the authenticated client.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '404':
          description: When matter stage information with specified matter id does not exist.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
  /stagesets:
    get:
      tags:
      - Stages
      summary: Get stage sets for the firm
      description: Returns a list of stage sets for the firm.
      operationId: GetStageSets
      parameters:
      - name: Offset
        in: query
        schema:
          maximum: 2147483647
          minimum: 0
          type: integer
          format: int32
      - name: Limit
        in: query
        schema:
          maximum: 500
          minimum: 1
          type: integer
          format: int32
      - name: UpdatedSince
        in: query
        description: Returns items updated since a specified time (.net ticks representation of the UTC datetime).
        schema:
          type: integer
          format: int64
      - name: LastUpdated
        in: query
        description: 'Deprecated, use updatedSince

          Returns items updated since a specified time.'
        schema:
          type: string
          format: date-time
      responses:
        '200':
          description: When request is successful. Returns a paged collection of 'StageSet' objects.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StageSetPagedCollection'
  /stagesets/{id}:
    get:
      tags:
      - Stages
      summary: Get a stage set
      description: Returns the specified stage set.
      operationId: GetStageSetById
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: When request is successful. Returns a 'StageSet' object.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StageSet'
        '400':
          description: When an unsupported request is made.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '404':
          description: When stage set with specified id does not exist.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
  /stagesets/{stageSetId}/stages/{id}:
    get:
      tags:
      - Stages
      summary: Get a stage on a stage set
      description: Return the specified stage on the stage set.
      operationId: GetStageOnStageSet
      parameters:
      - name: stageSetId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      - name: id
        in: path
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: When request is successful. Returns a 'Stage' object.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Stage'
        '400':
          description: When an unsupported request is made.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '404':
          description: When stage or stage set with specified id does not exist.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
components:
  schemas:
    StageSetPagedCollection:
      type: object
      properties:
        id:
          type:
          - string
          - 'null'
        href:
          type:
          - string
          - 'null'
        relation:
          type:
          - string
          - 'null'
        method:
          type:
          - string
          - 'null'
          default: GET
        self:
          allOf:
          - $ref: '#/components/schemas/Link'
        value:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/StageSet'
        offset:
          type:
          - integer
          - 'null'
          format: int32
        limit:
          type:
          - integer
          - 'null'
          format: int32
        size:
          type: integer
          format: int64
        first:
          allOf:
          - $ref: '#/components/schemas/Link'
        previous:
          allOf:
          - $ref: '#/components/schemas/Link'
        next:
          allOf:
          - $ref: '#/components/schemas/Link'
        last:
          allOf:
          - $ref: '#/components/schemas/Link'
      additionalProperties: false
    ProblemDetails:
      type: object
      properties:
        type:
          type:
          - string
          - 'null'
        title:
          type:
          - string
          - 'null'
        status:
          type:
          - integer
          - 'null'
          format: int32
        detail:
          type:
          - string
          - 'null'
        instance:
          type:
          - string
          - 'null'
      additionalProperties: {}
    MatterStage:
      type: object
      properties:
        id:
          type:
          - string
          - 'null'
        href:
          type:
          - string
          - 'null'
        relation:
          type:
          - string
          - 'null'
        method:
          type:
          - string
          - 'null'
          default: GET
        self:
          allOf:
          - $ref: '#/components/schemas/Link'
        versionId:
          type:
          - string
          - 'null'
          description: Version id of the record.
          example: da4e7fd1-5394-4ca9-b1c6-e18c4e2bf262
        matter:
          allOf:
          - $ref: '#/components/schemas/Link'
          description: Matter in which this mapping is associated to.
        stageSet:
          allOf:
          - $ref: '#/components/schemas/Link'
          description: Current stage set of the matter.
        stage:
          allOf:
          - $ref: '#/components/schemas/Stage'
          description: Current stage of the matter.
        lastUpdated:
          type: integer
          description: Timestamp when the matter stage was last updated.
          format: int64
          example: 637847425252027400
      additionalProperties: false
      description: Contains the current stage of the matter.
    Stage:
      type: object
      properties:
        href:
          type:
          - string
          - 'null'
        relation:
          type:
          - string
          - 'null'
        method:
          type:
          - string
          - 'null'
          default: GET
        self:
          allOf:
          - $ref: '#/components/schemas/Link'
        id:
          type:
          - string
          - 'null'
          description: Unique identifier of the stage.
          example: 45b94df1-1657-48b0-ae81-583b42ed52d6
        versionId:
          type:
          - string
          - 'null'
          description: Version id of the record.
          example: 09d1f360-b810-4a63-acaa-5ed81a551f06
        name:
          type:
          - string
          - 'null'
          description: Name of the stage.
          example: Review contract
        isDeleted:
          type: boolean
          description: True when the stage is deleted.
          example: true
        lastUpdated:
          type: integer
          description: Timestamp when the stage was last updated.
          format: int64
          example: 637847425252027400
      additionalProperties: false
      description: Contains information of a stage in a stage set.
    Link:
      type: object
      properties:
        id:
          type:
          - string
          - 'null'
        href:
          type:
          - string
          - 'null'
        relation:
          type:
          - string
          - 'null'
        method:
          type:
          - string
          - 'null'
          default: GET
      additionalProperties: false
    StageSet:
      type: object
      properties:
        href:
          type:
          - string
          - 'null'
        relation:
          type:
          - string
          - 'null'
        method:
          type:
          - string
          - 'null'
          default: GET
        self:
          allOf:
          - $ref: '#/components/schemas/Link'
        id:
          type:
          - string
          - 'null'
          description: Unique identifier of the stage set.
          example: 6ccc033d-67c9-4090-8705-3aff0c5a8cfb
        versionId:
          type:
          - string
          - 'null'
          description: Version id of the record.
          example: 499244ff-651f-4f66-b618-9defde27c281
        name:
          type:
          - string
          - 'null'
          description: Name of the stage set.
          example: Review contract
        isDeleted:
          type: boolean
          description: True when the stage set is deleted.
          example: true
        stages:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/Stage'
          description: Stages of the stage set.
        lastUpdated:
          type: integer
          description: Timestamp when the stage set was last updated.
          format: int64
          example: 637847425252027400
      additionalProperties: false
      description: Contains the stage set and stages information.
    MatterStagePagedCollection:
      type: object
      properties:
        id:
          type:
          - string
          - 'null'
        href:
          type:
          - string
          - 'null'
        relation:
          type:
          - string
          - 'null'
        method:
          type:
          - string
          - 'null'
          default: GET
        self:
          allOf:
          - $ref: '#/components/schemas/Link'
        value:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/MatterStage'
        offset:
          type:
          - integer
          - 'null'
          format: int32
        limit:
          type:
          - integer
          - 'null'
          format: int32
        size:
          type: integer
          format: int64
        first:
          allOf:
          - $ref: '#/components/schemas/Link'
        previous:
          allOf:
          - $ref: '#/components/schemas/Link'
        next:
          allOf:
          - $ref: '#/components/schemas/Link'
        last:
          allOf:
          - $ref: '#/components/schemas/Link'
      additionalProperties: false
  securitySchemes:
    api-key:
      type: apiKey
      name: x-api-key
      in: header
    token:
      type: apiKey
      name: Authorization
      in: header
      x-amazon-apigateway-authtype: cognito_user_pools