Erply Product Extra Field 3 API

The Product Extra Field 3 API from Erply — 6 operation(s) for product extra field 3.

OpenAPI Specification

erply-product-extra-field-3-api-openapi.yml Raw ↑
swagger: '2.0'
info:
  description: "\n\n## Overview\n\n\n\nThis application offers an API for managing assignments and tasks.\n\n\n\nGraphQL endpoint for the same API is [also available](/graph)\n\n\n\n<details><summary>Authentication</summary>\n\n\n\n> \n\n> Authenticate using your Erply credentials and get a sessionKey. This sessionKey and your Erply clientCode must be provided in the HTTP headers of every request. You do not have to authenticate against this API - valid Erply sessionKey-s from other sources are also acceptable. To authenticate using this API, use the `POST /api/v1/auth` endpoint.\n\n>\n\n</details>\n\n"
  title: assignments Assortment Product Extra Field 3 API
  contact: {}
  version: 2.36.5
host: ''
basePath: ''
schemes: []
tags:
- name: Product Extra Field 3
paths:
  /v1/product/extra/field-3:
    get:
      security:
      - sk: []
      - cc: []
      - jwt: []
      description: Get Product Extra Field
      consumes:
      - application/json
      produces:
      - application/json
      tags:
      - Product Extra Field 3
      summary: Get Product Extra Fields
      parameters:
      - type: integer
        description: skip n records
        name: skip
        in: query
      - type: integer
        description: 'items to take, default: 20, max: 100000'
        name: take
        in: query
      - type: string
        description: the sort parameter is explained in the `Filtering & Sorting` section on top of the Swagger documentation
        name: sort
        in: query
      - type: string
        description: the filter parameter is explained in the `Filtering & Sorting` section on top of the Swagger documentation
        name: filter
        in: query
      responses:
        '200':
          description: OK
          schema:
            type: array
            items:
              $ref: '#/definitions/products.ExtraFieldResponse'
        '400':
          description: Bad Request
          schema:
            $ref: '#/definitions/responses.MessageResponse'
        '500':
          description: Internal Server Error
          schema:
            $ref: '#/definitions/responses.MessageResponse'
    post:
      security:
      - sk: []
      - cc: []
      - jwt: []
      description: 'Extra fields 1 - 4 are just additional classifiers, without any meaning attached.

        Basically, if organizing products by brands, priority groups and families is not sufficient, users can have more such fields, up to 4 additional if they need.'
      consumes:
      - application/json
      produces:
      - application/json
      tags:
      - Product Extra Field 3
      summary: Create an extra field
      parameters:
      - description: Create Extra Field Request
        name: extraField
        in: body
        required: true
        schema:
          $ref: '#/definitions/products.CreateExtraFieldRequest'
      responses:
        '201':
          description: Created
          schema:
            $ref: '#/definitions/responses.Response'
        '400':
          description: Bad Request
          schema:
            $ref: '#/definitions/responses.MessageResponse'
        '500':
          description: Internal Server Error
          schema:
            $ref: '#/definitions/responses.MessageResponse'
  /v1/product/extra/field-3/bulk:
    post:
      security:
      - sk: []
      - cc: []
      - jwt: []
      description: each request contains the created resource data
      consumes:
      - application/json
      produces:
      - application/json
      tags:
      - Product Extra Field 3
      summary: Create Extra Fields in bulk
      parameters:
      - description: bulk create request
        name: request
        in: body
        required: true
        schema:
          $ref: '#/definitions/products.BulkCreateExtraFieldsRequest'
      responses:
        '200':
          description: OK
          schema:
            $ref: '#/definitions/responses.BulkResponseWithResults'
  /v1/product/extra/field-3/bulk/get:
    post:
      security:
      - sk: []
      - cc: []
      - jwt: []
      consumes:
      - application/json
      produces:
      - application/json
      tags:
      - Product Extra Field 3
      summary: Get Extra Fields in bulk
      parameters:
      - description: requests have the parameters that the original get request has, but in json format. This way you can apply the parameters to each request separately.
        name: request
        in: body
        required: true
        schema:
          $ref: '#/definitions/parammodels.BulkReadRequest'
      responses:
        '200':
          description: OK
          schema:
            $ref: '#/definitions/products.BulkReadExtraFieldsResponse'
  /v1/product/extra/field-3/{ids}:
    delete:
      security:
      - sk: []
      - cc: []
      - jwt: []
      consumes:
      - application/json
      produces:
      - application/json
      tags:
      - Product Extra Field 3
      summary: Delete Product Extra Fields
      parameters:
      - type: string
        description: up to 100 semicolon delimited Product Extra Field IDs
        name: ids
        in: path
        required: true
      responses:
        '200':
          description: OK
          schema:
            $ref: '#/definitions/responses.Response'
        '400':
          description: Bad Request
          schema:
            $ref: '#/definitions/responses.MessageResponse'
        '500':
          description: Internal Server Error
          schema:
            $ref: '#/definitions/responses.MessageResponse'
  /v1/product/extra/field-3/{id}:
    patch:
      security:
      - sk: []
      - cc: []
      - jwt: []
      consumes:
      - application/json
      produces:
      - application/json
      tags:
      - Product Extra Field 3
      summary: Update a Product Extra Field
      parameters:
      - description: request
        name: request
        in: body
        required: true
        schema:
          $ref: '#/definitions/products.UpdateExtraFieldRequest'
      - type: integer
        description: Product Extra Field ID
        name: id
        in: path
        required: true
      responses:
        '200':
          description: OK
          schema:
            $ref: '#/definitions/responses.Response'
        '400':
          description: Bad Request
          schema:
            $ref: '#/definitions/responses.MessageResponse'
        '500':
          description: Internal Server Error
          schema:
            $ref: '#/definitions/responses.MessageResponse'
  /v1/product/extra/field-3/{id}/move:
    patch:
      security:
      - sk: []
      - cc: []
      - jwt: []
      description: 'position has to be one of the following:  `before` | `after`'
      consumes:
      - application/json
      produces:
      - application/json
      tags:
      - Product Extra Field 3
      summary: Move Product Extra Field
      parameters:
      - type: integer
        description: Product Extra Field ID
        name: id
        in: path
        required: true
      - description: moveRequest
        name: moveRequest
        in: body
        required: true
        schema:
          $ref: '#/definitions/models.MoveRequest'
      responses:
        '200':
          description: OK
          schema:
            $ref: '#/definitions/responses.Response'
        '400':
          description: Bad Request
          schema:
            $ref: '#/definitions/responses.MessageResponse'
        '500':
          description: Internal Server Error
          schema:
            $ref: '#/definitions/responses.MessageResponse'
definitions:
  responses.Response:
    type: object
    properties:
      id:
        type: integer
        example: 73
  models.MoveRequest:
    type: object
    properties:
      position:
        description: Position has to be  lastChild | before | after
        type: string
        example: after
      target_id:
        description: Target ID represents the object that the requested object is put after, or before, or becomes the last child of
        type: integer
  parammodels.FilterJSON:
    type: object
    properties:
      fieldName:
        type: string
        example: group_id
      operandBefore:
        description: supported values are "and", "or"
        type: string
        example: or
      operator:
        type: string
        example: '='
      sliceValue:
        description: to be used if the value is a slice
        type: array
        items: {}
      value:
        type: object
  parammodels.SortRequest:
    type: object
    properties:
      desc:
        description: If true - descending, if false - ascending
        type: boolean
      language:
        description: Language in ISO 639-1 standard. Is needed only for translatable properties like description and name.
        type: string
        example: en
      selector:
        description: 'JSON field. For description: description_plain or description_html'
        type: string
        example: name
  products.UpdateExtraFieldRequest:
    type: object
    properties:
      code:
        description: code of the extra field
        type: string
        example: code
      is_active:
        description: Is the field active?
        type: boolean
        example: true
      name:
        description: /This field supports more languages. Please read Translatable names and descriptions block in the documentation.
        $ref: '#/definitions/Translatable'
  parammodels.PaginationParameters:
    type: object
    properties:
      skip:
        type: integer
      take:
        type: integer
  products.BulkCreateExtraFieldsRequest:
    type: object
    properties:
      requests:
        type: array
        items:
          $ref: '#/definitions/products.CreateExtraFieldRequest'
  responses.MessageResponse:
    type: object
    properties:
      message:
        type: string
        example: some message
  Translatable:
    type: object
    properties:
      en:
        description: This field supports more languages. Please read Translatable names and descriptions block in the documentation.
        type: string
  products.CreateExtraFieldRequest:
    type: object
    properties:
      code:
        description: code of the extra field
        type: string
        example: code
      is_active:
        description: Is the field active?
        type: boolean
        example: true
      name:
        description: /This field supports more languages. Please read Translatable names and descriptions block in the documentation.
        $ref: '#/definitions/Translatable'
  parammodels.ReadRequestWithTotalCount:
    type: object
    properties:
      filters:
        type: array
        items:
          $ref: '#/definitions/parammodels.FilterJSON'
      paginationParameters:
        $ref: '#/definitions/parammodels.PaginationParameters'
      sortingParameters:
        $ref: '#/definitions/parammodels.SortRequest'
      withTotalCount:
        type: boolean
  parammodels.BulkReadRequest:
    type: object
    properties:
      requests:
        type: array
        items:
          $ref: '#/definitions/parammodels.ReadRequestWithTotalCount'
  products.ExtraFieldResponse:
    type: object
    properties:
      added:
        description: Unix timestamp
        type: integer
        example: 1595230999
      addedby:
        description: username
        type: string
        example: k@erp.xyz
      changed:
        description: Unix timestamp
        type: integer
        example: 1595230999
      changedby:
        description: username
        type: string
        example: k@erp.xyz
      code:
        description: code of the extra field
        type: string
        example: code
      id:
        description: object ID
        type: integer
        example: 1234
      is_active:
        description: Is the field active?
        type: boolean
        example: true
      name:
        description: /This field supports more languages. Please read Translatable names and descriptions block in the documentation.
        $ref: '#/definitions/Translatable'
      order:
        type: integer
        example: 15
  responses.BulkResult:
    type: object
    properties:
      message:
        type: string
        example: some message
      resourceId:
        description: identifier of the REST-ful response
        type: integer
        example: 2
      resultId:
        description: identifier of the result item
        type: integer
        example: 2
  products.BulkReadExtraFieldsResponse:
    type: object
    properties:
      results:
        type: array
        items:
          $ref: '#/definitions/products.BulkReadExtraFieldsResponseItem'
  products.BulkReadExtraFieldsResponseItem:
    type: object
    properties:
      extraFields:
        type: array
        items:
          $ref: '#/definitions/products.ExtraFieldResponse'
      message:
        type: string
        example: some message
      resultId:
        description: id of the response, if requested 3 read requests each ID represents 1 response item
        type: integer
      totalCount:
        description: total number of records (ignores skip & take parameters)
        type: integer
  responses.BulkResponseWithResults:
    type: object
    properties:
      results:
        type: array
        items:
          $ref: '#/definitions/responses.BulkResult'
securityDefinitions:
  AccessToken:
    type: apiKey
    name: accessToken
    in: header
  ErplyClientCode:
    type: apiKey
    name: clientCode
    in: header
  ErplyJWT:
    type: apiKey
    name: jwt
    in: header
  ErplySession:
    type: apiKey
    name: sessionKey
    in: header
  RequestKey:
    type: apiKey
    name: requestKey
    in: header