Endpoint Deprecation

In the continuous evolution of our SaaS solution, we perform a review/update of our API every six months. This review results in some endpoints, attributes, or operations being deprecated/removed.

The deprecations for API v4 and API v5 endpoints are announced six months in advance of their removal date to give you time to verify that you're not impacted by them or to migrate your code accordingly.

🚧

Announcements and deprecations take place on October 15th and April 15th every year.

October 15,2021 > April 15,2022

❗️

Deprecation Date: 15 October 2021

Removal Date: 15 April 2022

API_1 (v4)API (v5)
GET

API EndpointNotes
/api_1.php/catalog-viewsAn attribute in the response payload has been replaced:

Deprecated Attribute: type

Replacement Attribute: code

{
    "success": true,
    "total": 1,
    "rows": [
        {
            "id": 1,
            "name": "E-Commerce",
            "type": "ECO", // Deprecated and will be removed
            "code": "ECO", // Should be used instead
            "description": null,
            "fields": [],
            "catalogXObjectTypes": [],
            "objectType": "document"
        }
    ]
}
/api_1.php/catalog-views/__INTERNAL-ID__An attribute in the response payload has been replaced:

Deprecated Attribute: type

Replacement Attribute: code

{
    "success": true,
    "data": {
        "id": 1,
        "name": "E-Commerce",
        "type": "ECO", // Deprecated and will be removed
        "code": "ECO", // Should be used instead
        "description": null,
        "origin_catalog_view_id": null,
        "fields": []
    }
}
CRUD

API EndpointNotes
/api_1.php/profiles/picture/:id/:width/:heightAll HTTP methods are deprecated for this particular endpoint.

Replacement(s): /api/users
/api_1.php/usersAll HTTP methods are deprecated for this particular endpoint.

Replacement(s): /api/users
/api_1.php/users/groupsAll HTTP methods are deprecated for this particular endpoint.

Replacement(s): /api/users
/api_1.php/users/groupsAll HTTP methods are deprecated for this particular endpoint.

Replacement(s): /api/users/groups
/api_1.php/users/All HTTP methods are deprecated for this particular endpoint.

Replacement(s): /api/users
/api_1.php/users/meAll HTTP methods are deprecated for this particular endpoint.

Replacement(s): /api/users
/api_1.php/users/me/uploadProfilePhotoAll HTTP methods are deprecated for this particular endpoint.

Replacement(s): /api/users
/api_1.php/users/permissionsAll HTTP methods are deprecated for this particular endpoint.

Replacement(s): /api/users
/api_1.php/users/validateAll HTTP methods are deprecated for this particular endpoint.

Replacement(s): /api/users
/api_1.php/users-and-groupsAll HTTP methods are deprecated for this particular endpoint.

Replacement(s): /api/users
/api_1.php/user-settingsAll HTTP methods are deprecated for this particular endpoint.

Replacement(s): /api/users
/api_1.php/xobject_typesAll HTTP methods are deprecated for this particular endpoint.

Replacement(s): /api/link-types
/api_1.php/xobject_types/All HTTP methods are deprecated for this particular endpoint.

Replacement(s): /api/link-types/
CRUD

API EndpointNotes
/api/assets/In the response payload, the attributes.code attribute is deprecated.

attributes is an array of:

  • id
  • code <- deprecated item
  • values
  • /api/catalogs/In the response payload, the attributes.code attribute is deprecated.

    attributes is an array of:

  • id
  • code <- deprecated item
  • values
  • /api/documents/In the response payload, the attributes.code attribute is deprecated.

    attributes is an array of:

  • id
  • code <- deprecated item
  • values
  • /api/variants/In the response payload, the attributes.code attribute is deprecated.

    attributes is an array of:

  • id
  • code <- deprecated item
  • values
  • /api/catalogs/In the response payload, the fieldData attribute is deprecated.
    /api/data-flow-profiles/modelsAll HTTP methods are deprecated for this particular endpoint.

    Replacement(s)
  • /api/import/models
  • /api/export/models
  • /api/link-typesIn the response payload, the parent and child attributes are deprecated.

    Replacement(s)
  • parent -> origin
  • child -> target
  • April 29, 2022 > October 15, 2022

    ❗️

    Deprecation Date: April 29, 2022

    Removal Date: October 15, 2022

    API-v5 - POST /api/completenesses/settings && GET /api/enums/colors - The color attribute will accept only hexadecimal color

    Currently: accept both color name and hexadecimal value
    Future: accept only hexadecimal in uppercase format

    This is a POST that will be ok for /api/completenesses/settings :

    {
      "color": "#4DABF7",
      "fields": [],
      "attributes": [],
      "linkTypes": [],
      "id": "identifier_example",
      "documentTypeCode": "document_type_example",
      "description": {},
      "name": {}
    }
    

    This is a POST that will be considered as a bad request for /api/completenesses/settings :

    {
      "color": "blue",
      "fields": [],
      "attributes": [],
      "linkTypes": [],
      "id": "identifier_example",
      "documentTypeCode": "document_type_example",
      "description": {},
      "name": {}
    }
    

    API-v5 - limit parameter while retrieving data : maximum accepted value is set to 50 (100 on current version)

    Here are the endpoints impacted by this change :

    • GET /api/documents
    • GET /api/assets
    • GET /api/variants
    • GET /api/classifications
    • GET /api/links

    Let's say a script calls the endpoint GET /api/documents with a limit of 70, the API will return the first 50 documents.
    In concrete terms:

    • If you use the path links provided in the response bodies, these will clearly indicate 50 and not 70. So your script will not be impacted
    • If you don't use the path links provided in the response bodies but your script queries page 2 on its own with a limit of 70, you will have an offset of 20 documents not returned. In this case, we invite you to change the value of this limit in your scripts.

    October 17, 2022 > April 29, 2023

    ❗️

    Deprecation Date: October 17, 2022

    Removal Date: April 15, 2022

    Rate Limiting

    Medias (binaries & thumbnails)

    • Currently: 3 consecutive calls from the same IP on the same URL that returns a 4xx or 5xx : 429 for one hour. automatic renewal (offset) with each new call
    • Future: No changes will be made

    API

    • Currently: not more than 15 calls/s
    • Future:
      6K calls per 10 minutes bucket : If exceeded, 429 HTTP response code will be returned (10 minute bucket)
      300K calls per day (fair use) : If exceeded, 429 HTTP response code will be returned (1 day bucket)

    Variant export from the Document page > Variant's tab

    • Currently: inactive variants associated with the current document are exported
    • Future: inactive variants associated with the current document are not exported anymore

    Search : Tag & workflow filters

    • Currently: There are 3 ways to filter on tags + workflow steps
      The first one is the Legacy filter which include both tags & workflow steps
      A specific filter for Tags has been added a few weeks ago
      A specific filter foreach Workflow has been added a few weeks ago
    • Future: the legacy filter will be removed. A conversion for this Legacy filter to the Tags or Workflow filter will be done by Quable