Apache HBase Scans API

Table scanning operations

OpenAPI Specification

apache-hbase-scans-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Apache HBase REST Regions Scans API
  version: 1.0.0
  description: REST API (Stargate) for Apache HBase distributed NoSQL database, providing table management, row and cell operations, and table scanning via HTTP.
  contact:
    email: dev@hbase.apache.org
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0
servers:
- url: http://localhost:8080
  description: HBase REST Gateway (Stargate)
tags:
- name: Scans
  description: Table scanning operations
paths:
  /{tableName}/scanner:
    put:
      operationId: createScanner
      summary: Apache HBase Create Scanner
      description: Create a scanner to iterate over rows in an HBase table with optional filters.
      tags:
      - Scans
      parameters:
      - name: tableName
        in: path
        required: true
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Scanner'
      responses:
        '201':
          description: Scanner created
          headers:
            Location:
              schema:
                type: string
              description: URL to the created scanner
  /{tableName}/scanner/{scannerId}:
    get:
      operationId: getNextScannerBatch
      summary: Apache HBase Get Next Scanner Batch
      description: Get the next batch of rows from an open HBase scanner.
      tags:
      - Scans
      parameters:
      - name: tableName
        in: path
        required: true
        schema:
          type: string
      - name: scannerId
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Batch retrieved
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CellSet'
        '204':
          description: No more rows (scan complete)
    delete:
      operationId: deleteScanner
      summary: Apache HBase Delete Scanner
      description: Close and delete an open HBase scanner.
      tags:
      - Scans
      parameters:
      - name: tableName
        in: path
        required: true
        schema:
          type: string
      - name: scannerId
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Scanner closed
components:
  schemas:
    Scanner:
      type: object
      description: HBase scanner configuration for table scans
      properties:
        startRow:
          type: string
          description: Base64-encoded start row key (inclusive)
          example: cm93MQ==
        endRow:
          type: string
          description: Base64-encoded end row key (exclusive)
          example: cm93Mg==
        column:
          type: array
          items:
            type: string
          description: Base64-encoded column filters
          example:
          - Y2YxOnF1YWw=
        batch:
          type: integer
          description: Number of rows per batch
          example: 100
        maxVersions:
          type: integer
          description: Max cell versions to return
          example: 1
        filter:
          type: string
          description: URL-encoded filter string
    Cell:
      type: object
      description: Single HBase cell with column and value
      properties:
        column:
          type: string
          description: Base64-encoded column (family:qualifier)
          example: Y2YxOnF1YWw=
        timestamp:
          type: integer
          format: int64
          description: Cell timestamp in milliseconds
          example: 1718153645993
        $:
          type: string
          description: Base64-encoded cell value
          example: dmFsdWU=
    CellSet:
      type: object
      description: Set of HBase cells grouped by row
      properties:
        Row:
          type: array
          description: Array of row objects
          items:
            type: object
            properties:
              key:
                type: string
                description: Base64-encoded row key
                example: cm93a2V5MQ==
              Cell:
                type: array
                description: Array of cells in the row
                items:
                  $ref: '#/components/schemas/Cell'