openapi: 3.0.0
info:
  title: SAP API
  version: 1.0.0
servers:
- url: http://localhost:8080
paths:
  /rfc/SRM_RECORD_ADDELEMENTS:
    post:
      tags:
      - SRM_BAPI_RECORD
      operationId: /rfc/SRM_RECORD_ADDELEMENTS
      requestBody:
        content:
          application/json:
            schema:
              properties:
                DOCUMENTCLASS:
                  type: string
                  maxLength: 10
                  description: File Location
                DOC_CONTEXT:
                  type: object
                  properties:
                    RMS_ID:
                      type: string
                      maxLength: 32
                      description: RMS ID in SRM
                    SPS_ID:
                      type: string
                      maxLength: 32
                      description: Element Type ID
                OBJECTID:
                  type: string
                  maxLength: 32
                  description: Internal ID of Record
                SKIP_ELEMS_WITH_ERROR:
                  type: string
                  default: X
                  maxLength: 1
                  description: 'Indicator: Ignore Elements with Errors'
                STACKED:
                  type: string
                  default: X
                  maxLength: 1
                  description: Insert Front or Back (Within model_id)
                STORE_AS_NEW_VERSION:
                  type: string
                  default: ' '
                  maxLength: 1
                  description: 'Indicator: Create New Logical Version of Record?'
                ELEMENT_IDENTIFICATION:
                  type: array
                  items:
                    type: object
                    properties:
                      ELEM_NO:
                        type: integer
                        format: int32
                        description: Position
                      NAME:
                        type: string
                        maxLength: 64
                        description: Property Name
                      VALUE:
                        type: string
                        maxLength: 255
                        description: Property Value
                ELEMENT_INSERTION:
                  type: array
                  items:
                    type: object
                    properties:
                      ELEM_NO:
                        type: integer
                        format: int32
                        description: Position
                      ANCHOR:
                        type: string
                        maxLength: 64
                        description: Anchor
                      DESCR:
                        type: string
                        maxLength: 255
                        description: Description
                ELEMENT_INSERTION_BY_ANCHOR:
                  type: array
                  items:
                    type: object
                    properties:
                      ELEM_NO:
                        type: integer
                        format: int32
                        description: Position
                      ANCHOR:
                        type: string
                        maxLength: 64
                        description: Anchor
                      PARENT_NODE_ID:
                        type: string
                        maxLength: 11
                        description: Parent Node ID of New Element
                      PARENT_NODE_ATTR_NAME:
                        type: string
                        maxLength: 64
                        description: Name of Node Attribute
                      PARENT_NODE_ATTR_VALUE:
                        type: string
                        maxLength: 255
                        description: Value of Node Attribute
                      DESCR:
                        type: string
                        maxLength: 255
                        description: Description
                ELEMENT_INSERTION_BY_MODELID:
                  type: array
                  items:
                    type: object
                    properties:
                      ELEM_NO:
                        type: integer
                        format: int32
                        description: Position
                      MODEL_ID:
                        type: string
                        maxLength: 11
                        description: 'Record: Model ID'
                      PARENT_NODE_ID:
                        type: string
                        maxLength: 11
                        description: Parent Node ID of New Element
                      PARENT_NODE_ATTR_NAME:
                        type: string
                        maxLength: 64
                        description: Name of Node Attribute
                      PARENT_NODE_ATTR_VALUE:
                        type: string
                        maxLength: 255
                        description: Value of Node Attribute
                      DESCR:
                        type: string
                        maxLength: 255
                        description: Description
                ELEMENT_INSERTION_BY_REF_NODE:
                  type: array
                  items:
                    type: object
                    properties:
                      ELEM_NO:
                        type: integer
                        format: int32
                        description: Position
                      REF_NODE_ID:
                        type: string
                        maxLength: 11
                        description: Reference to Existing Node
                      ADD_AS_CHILD:
                        type: string
                        maxLength: 1
                        description: 'Flag: New Element Is Child of Reference Node  enumValues: X=Set,""=Not set'
                        enum:
                        - X
                        - ''
                      DESCR:
                        type: string
                        maxLength: 255
                        description: Description
                ELEMENT_PROPERTIES:
                  type: array
                  items:
                    type: object
                    properties:
                      ELEM_NO:
                        type: integer
                        format: int32
                        description: Position
                      NAME:
                        type: string
                        maxLength: 64
                        description: Property Name
                      VALUE:
                        type: string
                        maxLength: 255
                        description: Property Value
                ELEMENT_VISIBILITY:
                  type: array
                  items:
                    type: object
                    properties:
                      ELEM_NO:
                        type: integer
                        format: int32
                        description: Position
                      NAME:
                        type: string
                        maxLength: 64
                        description: Property Name
                      VALUE:
                        type: string
                        maxLength: 255
                        description: Property Value
              required:
              - DOCUMENTCLASS
              - OBJECTID
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                properties:
                  ELEMENT_IDENTIFICATION:
                    type: array
                    items:
                      type: object
                      properties:
                        ELEM_NO:
                          type: integer
                          format: int32
                          description: Position
                        NAME:
                          type: string
                          maxLength: 64
                          description: Property Name
                        VALUE:
                          type: string
                          maxLength: 255
                          description: Property Value
                  ELEMENT_INSERTION:
                    type: array
                    items:
                      type: object
                      properties:
                        ELEM_NO:
                          type: integer
                          format: int32
                          description: Position
                        ANCHOR:
                          type: string
                          maxLength: 64
                          description: Anchor
                        DESCR:
                          type: string
                          maxLength: 255
                          description: Description
                  ELEMENT_INSERTION_BY_ANCHOR:
                    type: array
                    items:
                      type: object
                      properties:
                        ELEM_NO:
                          type: integer
                          format: int32
                          description: Position
                        ANCHOR:
                          type: string
                          maxLength: 64
                          description: Anchor
                        PARENT_NODE_ID:
                          type: string
                          maxLength: 11
                          description: Parent Node ID of New Element
                        PARENT_NODE_ATTR_NAME:
                          type: string
                          maxLength: 64
                          description: Name of Node Attribute
                        PARENT_NODE_ATTR_VALUE:
                          type: string
                          maxLength: 255
                          description: Value of Node Attribute
                        DESCR:
                          type: string
                          maxLength: 255
                          description: Description
                  ELEMENT_INSERTION_BY_MODELID:
                    type: array
                    items:
                      type: object
                      properties:
                        ELEM_NO:
                          type: integer
                          format: int32
                          description: Position
                        MODEL_ID:
                          type: string
                          maxLength: 11
                          description: 'Record: Model ID'
                        PARENT_NODE_ID:
                          type: string
                          maxLength: 11
                          description: Parent Node ID of New Element
                        PARENT_NODE_ATTR_NAME:
                          type: string
                          maxLength: 64
                          description: Name of Node Attribute
                        PARENT_NODE_ATTR_VALUE:
                          type: string
                          maxLength: 255
                          description: Value of Node Attribute
                        DESCR:
                          type: string
                          maxLength: 255
                          description: Description
                  ELEMENT_INSERTION_BY_REF_NODE:
                    type: array
                    items:
                      type: object
                      properties:
                        ELEM_NO:
                          type: integer
                          format: int32
                          description: Position
                        REF_NODE_ID:
                          type: string
                          maxLength: 11
                          description: Reference to Existing Node
                        ADD_AS_CHILD:
                          type: string
                          maxLength: 1
                          description: 'Flag: New Element Is Child of Reference Node  enumValues: X=Set,""=Not set'
                          enum:
                          - X
                          - ''
                        DESCR:
                          type: string
                          maxLength: 255
                          description: Description
                  ELEMENT_PROPERTIES:
                    type: array
                    items:
                      type: object
                      properties:
                        ELEM_NO:
                          type: integer
                          format: int32
                          description: Position
                        NAME:
                          type: string
                          maxLength: 64
                          description: Property Name
                        VALUE:
                          type: string
                          maxLength: 255
                          description: Property Value
                  ELEMENT_VISIBILITY:
                    type: array
                    items:
                      type: object
                      properties:
                        ELEM_NO:
                          type: integer
                          format: int32
                          description: Position
                        NAME:
                          type: string
                          maxLength: 64
                          description: Property Name
                        VALUE:
                          type: string
                          maxLength: 255
                          description: Property Value
                  RETURN:
                    type: array
                    items:
                      type: object
                      properties:
                        TYPE:
                          type: string
                          maxLength: 1
                          description: 'Message type: S Success, E Error, W Warning, I Info, A Abort'
                        ID:
                          type: string
                          maxLength: 20
                          description: Message Class
                        NUMBER:
                          type: integer
                          format: int64
                          description: Message Number
                        MESSAGE:
                          type: string
                          maxLength: 220
                          description: Message Text
                        LOG_NO:
                          type: string
                          maxLength: 20
                          description: 'Application log: log number'
                        LOG_MSG_NO:
                          type: integer
                          format: int64
                          description: 'Application log: Internal message serial number'
                        MESSAGE_V1:
                          type: string
                          maxLength: 50
                          description: Message Variable
                        MESSAGE_V2:
                          type: string
                          maxLength: 50
                          description: Message Variable
                        MESSAGE_V3:
                          type: string
                          maxLength: 50
                          description: Message Variable
                        MESSAGE_V4:
                          type: string
                          maxLength: 50
                          description: Message Variable
                        PARAMETER:
                          type: string
                          maxLength: 32
                          description: Parameter Name
                        ROW:
                          type: integer
                          format: int32
                          description: Lines in parameter
                        FIELD:
                          type: string
                          maxLength: 30
                          description: Field in parameter
                        SYSTEM:
                          type: string
                          maxLength: 10
                          description: Logical system from which message originates
        '400':
          description: Bad request.
        5XX:
          description: Unexpected error.
