Erply Product Extra Field 4 API

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

Operations 7

GET /v1/product/extra/field-4 Get Product Extra Fields
POST /v1/product/extra/field-4 Create an extra field
POST /v1/product/extra/field-4/bulk Create Extra Fields in bulk
POST /v1/product/extra/field-4/bulk/get Get Extra Fields in bulk
DELETE /v1/product/extra/field-4/{ids} Delete Product Extra Fields
PATCH /v1/product/extra/field-4/{id} Update a Product Extra Field
PATCH /v1/product/extra/field-4/{id}/move Move Product Extra Field

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/erply-product-extra-field-4-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 email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

erply-product-extra-field-4-api-openapi.yml Raw ↑
openapi: 3.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 4 API
  contact: {}
  version: 2.36.5
tags:
- name: Product Extra Field 4
paths:
  /v1/product/extra/field-4:
    get:
      security:
      - sk: []
      - cc: []
      - jwt: []
      description: Get Product Extra Field
      tags:
      - Product Extra Field 4
      summary: Get Product Extra Fields
      parameters:
      - description: skip n records
        name: skip
        in: query
        schema:
          type: integer
      - description: 'items to take, default: 20, max: 100000'
        name: take
        in: query
        schema:
          type: integer
      - description: the sort parameter is explained in the `Filtering & Sorting` section on top of the Swagger documentation
        name: sort
        in: query
        schema:
          type: string
      - description: the filter parameter is explained in the `Filtering & Sorting` section on top of the Swagger documentation
        name: filter
        in: query
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/products.ExtraFieldResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/responses.MessageResponse'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/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.'
      tags:
      - Product Extra Field 4
      summary: Create an extra field
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/responses.Response'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/responses.MessageResponse'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/responses.MessageResponse'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/products.CreateExtraFieldRequest'
        description: Create Extra Field Request
        required: true
  /v1/product/extra/field-4/bulk:
    post:
      security:
      - sk: []
      - cc: []
      - jwt: []
      description: each request contains the created resource data
      tags:
      - Product Extra Field 4
      summary: Create Extra Fields in bulk
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/responses.BulkResponseWithResults'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/products.BulkCreateExtraFieldsRequest'
        description: bulk create request
        required: true
  /v1/product/extra/field-4/bulk/get:
    post:
      security:
      - sk: []
      - cc: []
      - jwt: []
      tags:
      - Product Extra Field 4
      summary: Get Extra Fields in bulk
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/products.BulkReadExtraFieldsResponse'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/parammodels.BulkReadRequest'
        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.
        required: true
  /v1/product/extra/field-4/{ids}:
    delete:
      security:
      - sk: []
      - cc: []
      - jwt: []
      tags:
      - Product Extra Field 4
      summary: Delete Product Extra Fields
      parameters:
      - description: up to 100 semicolon delimited Product Extra Field IDs
        name: ids
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/responses.Response'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/responses.MessageResponse'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/responses.MessageResponse'
  /v1/product/extra/field-4/{id}:
    patch:
      security:
      - sk: []
      - cc: []
      - jwt: []
      tags:
      - Product Extra Field 4
      summary: Update a Product Extra Field
      parameters:
      - description: Product Extra Field ID
        name: id
        in: path
        required: true
        schema:
          type: integer
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/responses.Response'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/responses.MessageResponse'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/responses.MessageResponse'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/products.UpdateExtraFieldRequest'
        description: request
        required: true
  /v1/product/extra/field-4/{id}/move:
    patch:
      security:
      - sk: []
      - cc: []
      - jwt: []
      description: 'position has to be one of the following:  `before` | `after`'
      tags:
      - Product Extra Field 4
      summary: Move Product Extra Field
      parameters:
      - description: Product Extra Field ID
        name: id
        in: path
        required: true
        schema:
          type: integer
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/responses.Response'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/responses.MessageResponse'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/responses.MessageResponse'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/models.MoveRequest'
        description: moveRequest
        required: true
components:
  schemas:
    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: '#/components/schemas/Translatable'
        order:
          type: integer
          example: 15
    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
    products.BulkReadExtraFieldsResponse:
      type: object
      properties:
        results:
          type: array
          items:
            $ref: '#/components/schemas/products.BulkReadExtraFieldsResponseItem'
    parammodels.ReadRequestWithTotalCount:
      type: object
      properties:
        filters:
          type: array
          items:
            $ref: '#/components/schemas/parammodels.FilterJSON'
        paginationParameters:
          $ref: '#/components/schemas/parammodels.PaginationParameters'
        sortingParameters:
          $ref: '#/components/schemas/parammodels.SortRequest'
        withTotalCount:
          type: boolean
    parammodels.PaginationParameters:
      type: object
      properties:
        skip:
          type: integer
        take:
          type: integer
    responses.Response:
      type: object
      properties:
        id:
          type: integer
          example: 73
    products.BulkReadExtraFieldsResponseItem:
      type: object
      properties:
        extraFields:
          type: array
          items:
            $ref: '#/components/schemas/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
    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
    products.BulkCreateExtraFieldsRequest:
      type: object
      properties:
        requests:
          type: array
          items:
            $ref: '#/components/schemas/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
    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
    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
    responses.BulkResponseWithResults:
      type: object
      properties:
        results:
          type: array
          items:
            $ref: '#/components/schemas/responses.BulkResult'
    parammodels.BulkReadRequest:
      type: object
      properties:
        requests:
          type: array
          items:
            $ref: '#/components/schemas/parammodels.ReadRequestWithTotalCount'
    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: '#/components/schemas/Translatable'
    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: '#/components/schemas/Translatable'
  securitySchemes:
    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