openapi: 3.0.0
info:
  title: SAP API
  version: 1.0.0
servers:
- url: http://localhost:8080
paths:
  /rfc/MSS_GET_TABLE_COLUMNS:
    post:
      tags:
      - SFMSS_SYSCAT
      operationId: /rfc/MSS_GET_TABLE_COLUMNS
      requestBody:
        content:
          application/json:
            schema:
              properties:
                DB_NAME:
                  type: string
                  maxLength: 128
                  description: Database name
                NAMES_ONLY:
                  type: string
                  maxLength: 1
                  description: If 'X', then only the names of the coumns are returned.
                SCHEMA_NAME:
                  type: string
                  maxLength: 128
                  description: Schema name
                TABLE_NAME:
                  type: string
                  maxLength: 128
                  description: Table name
                TABLE_COLS:
                  type: array
                  items:
                    type: object
                    properties:
                      NAME:
                        type: string
                        maxLength: 128
                        description: Column name
                      POSITION:
                        type: integer
                        format: int32
                        description: Position of the column in the table
                      TYPE:
                        type: string
                        maxLength: 128
                        description: Data type name
                      LENGTH:
                        type: integer
                        format: int32
                        description: Storage length of the column
                      PRECISION:
                        type: integer
                        format: int32
                        description: Precison of the column
                      SCALE:
                        type: integer
                        format: int32
                        description: Scale of the column (only if the data type is numeric)
                      ISNULLABLE:
                        type: integer
                        format: int32
                        description: '1/0: column is nullable / not-nullable'
                      DEFAULT:
                        type: string
                        maxLength: 128
                        description: Default name
              required:
              - TABLE_NAME
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                properties:
                  TABLE_COLS:
                    type: array
                    items:
                      type: object
                      properties:
                        NAME:
                          type: string
                          maxLength: 128
                          description: Column name
                        POSITION:
                          type: integer
                          format: int32
                          description: Position of the column in the table
                        TYPE:
                          type: string
                          maxLength: 128
                          description: Data type name
                        LENGTH:
                          type: integer
                          format: int32
                          description: Storage length of the column
                        PRECISION:
                          type: integer
                          format: int32
                          description: Precison of the column
                        SCALE:
                          type: integer
                          format: int32
                          description: Scale of the column (only if the data type is numeric)
                        ISNULLABLE:
                          type: integer
                          format: int32
                          description: '1/0: column is nullable / not-nullable'
                        DEFAULT:
                          type: string
                          maxLength: 128
                          description: Default name
        '400':
          description: Bad request.
        5XX:
          description: Unexpected error.
