Developers

API Change log

Released 2024.10.01

  • As part of a common effort to improve the security and performance of Inbenta products, we have upgraded the technology behind the Knowledge API. 

Released 2024.09.03

  • Added a context parameter to the contents endpoints which helps customers by giving them more control and flexibility over how their data is logged. Now, customers can include context in their requests, just like with the POST /search endpoint. This means they can adjust logging to better fit their needs, leading to more accurate data, better customization, and more relevant insights.

Released 2024.07.23

  • We added a new dynabs parameter to the Knowledge API's POST /search endpoint, that allows to refuse dynamic abstract information in a request, decreasing response times. The value for that parameter should be boolean.

Released 2024.06.11

  • With instant searches, we perform an incremental query while the user is typing and the API stores previous results in cache to increase efficiency. The API internally splits the query when it’s too long and stores the result for each of the split queries. This incremental query is not done if the user pastes a big portion of text, which could produce a timeout. To prevent this from happening, we added a new parameter splitQueriesLimit, so that developers can decide the number of “non-cached” split queries that will be processed by the Knowledge API, so that it returns results faster.

Released 2024.01.09

  • As part of a common effort to improve the security and performance of Inbenta products, we have upgraded the technology behind the Knowledge API.

Released 2023.08.22

  • Fixed: When logging a click event, the Knowledge API used the same value for the entered key as the associated log, which caused discrepancies in the total amount of clicks for specific dates between the Reporting API and the Dashboard. This is now fixed and the click event is logged with the correct date value (that means, the date the event occurred).

Released 2023.07.25

  • The endpoint GET /contents/{contentId} now accepts a new parameter autocompleterClick that allows you to log clicks on autocompleter results.

Released 2023.03.07

  • Feature: The endpoint GET /user-types now also returns the user type names along with the IDs. For further information, refer to the Knowledge API Routes documentation. Note that you have to publish the instance to Production for the endpoint to return the user type names.

Released 2022.10.18

  • We updated the POST /inbtrck/events endpoint to allow customers to track their conversion events to calculate their own conversion rates. This was a requirement for the development of a new conversion events report in Knowledge instances.

Released 2022.07.12

  • We changed the HTTP status code returned by the Knowledge API’s endpoint GET /content/slug/slug when the content is found using an old title instead of the current one. From now on, it will be considered a 301 Redirection, so integrations can react to this event. See API Routes for more info.

  • Fixed: An additional Direct Access click was logged when users rated a content suggested via Semantic Autocompleter in addition to the Autocomplete click. This is now fixed and only the initial Autocomplete click is logged.

Released 2022.06.14

  • Fixed: If the x-inbenta-env, x-inbenta-user-type, x-inbenta-source and x-inbenta-session headers are set in the request but with no value, we now use the defined default values in
    the documentation.

  • The endpoint GET /contents/{contentId}/cross-selling now returns forced cross selling contents via the parameter isForced.

  • We added a new parameter withContentData to the /categories endpoints. This parameter allows to chose whether the response payload should include information about how many contents the categories have and their children. This allows to improve performance when this information is not required.

Released 2022.05.31

  • Feature: We added the parameter logUserInfo to the contents endpoints and to GET /categories/{categoryId}/contents to register a context for clicks. This option already existed for content searches. Now when a click context is set, clicks on contents are also registered with user data, which will appear in the "User Information" column of the Sessions > Details Dashboard.

Released 2022.05.03

  • We added a new boolean property hasCrossSelling to contents returned by the Knowledge API. This property indicates if a content has cross selling items linked to them.

Released 2022.04.05

  • The Knowledge API now uses the following aliases for tracking routes so that ad blockers do not automatically block requests: POST /inbtrck/session for POST /tracking/session, POST /inbtrck/session/user for POST /tracking/session/user and POST /inbtrck/events for POST /tracking/events. The original endpoints remain active but are now marked as deprecated in the Developers Portal documentation, and the Knowledge SDK will start to use the new routes.

  • Fixed: The Knowledge API’s searchContents endpoint was sometimes returning no results with a 422 error when there were indeed results found, but one of those results was missing information in a required field. This is now fixed and the API will no longer return the content without the required information and we will log an error report in our internal error reporting system.

Released 2022.03.08

  • The Knowledge API’s new GET /contents/slug/{slug} endpoint allows you to obtain a content even if its title and slug have changed. The API remembers previous content slugs and returns the new content together with the new content slug with an HTTP 301 code.

Released 2021.10.05

  • Fixed: The Knowledge API endpoint GET /autocompleter/data was returning the structure text/html instead of application/json. This is now fixed.

Released 2021.09.21

  • We improved the Knowledge API documentation by replacing old environment version names such as Edit and Live with the current names, which are Test, Preproduction and Production.

Released 2021.08.10

  • We included new headers to the Knowledge API to increase security.

Released 2021.04.20

  • Feature: New GET /user-types endpoint that retrieves the user types available in each of the environments of the Knowledge API.

Released 2021.03.09

  • Feature: A new parameter context is available in the POST /search endpoint and POST /tracking/events endpoint in order to register contextual information to that event. This context will be displayed in the non-session reports of the Dashboard.

Released 2021.02.09

  • Feature: There are three new endpoints in the Knowledge API to handle Cross Selling: GET /contents/{contentId}/cross-selling, GET /categories/{categoryId}/cross-selling and GET /cross-selling.

  • Feature: New endpoint in the Knowledge API in order to retrieve the related contents of a set of specified contents.

Released 2020.10.28

  • Added: We updated the Knowledge engine to return unknown words in Real Time Development.

Released 2020.08.05

  • Fixed: The GET /contents/push endpoint returned content id as a string. It now returns it as integer.

Released 2020.02.19

  • Fixed: Prevent duplicate clicks when rating a content after an automated click.

Released 2019.11.27

  • Fixed: The /contents/push endpoint was returning a 404 error when one of the ad-hoc push content IDs did not exist as a standard content. The API will no longer return this error.

Released 2019.05.29

  • New: Added the new /language-detector endpoint.
  • New: Added the new "language-detector" option in the /tracking/events endpoint.

Released 2019.05.15

  • New: The KM API can now track information about the SDK version used as part of the User information.

Released 2019.04.03

  • New: There is a new API endpoint in the KM API that allows you to retrieve multiple contents passing a list of ids, with a single request. 
  • Update: The /tracking/session endpoint of the KM API now returns not only the sessionToken, but also the sessionId. This allows developers to retrieve and use sessionId to filter results in Dashboards.

Released 2019.03.06

  • Update: The API had the capacity to split a query if it was too long to process. However, this wasn't possible if the query did not contain any punctuation symbols. This is now corrected and the API can now split a query even when the query does not contains any punctuation symbols. 
  • Update: We added a "maxDepth" parameter to the /categories/slug/{slug} endpoint so that you can retrieve not only the first level of categories but the whole category tree. 
  • Fixed: The API was throwing an "error 500" when users asked questions that did not exist in the knowledge base. This is now fixed and it now returns "error 404" instead. 

Released 2019.02.20

  • Fixed: The Developers Portal's "try out" feature for the KM endpoint /contents/slug/{slug} returned an error when a user sent booleans as "true" or "false", because it only accepted the values 0 or 1. This is now fixed and all API endpoints accepts both options: true/false or 0/1.

Released 2019.01.23

  • Fixed: The engine could generate duplicate entries when a user rated contents. This is now fixed.

Released 2019.01.09

  • Update ICS initialization to avoid using survey when they are not needed
  • Track Development as Internal test

Released 2018.12.12

  • New: API Endpoint /categories/{categoryId}/contents that returns the contents in a category ordered as defined in the KM Application.
  • Update Sentry to only report 5xx errors and requests that took more than 5s to be processed.
  • Update rate limits library to 1.6 
  • Avoid tracking any user information as default. Two need options available to log the users' browser and IP. 
  • API now accepts multiple signing keys to generate access tokens. This allow Inbenta to rotate signing key without impacting clients.

Released 2018.11.07

  • Fixed: Depth value in the API /categories endpoint return correct values.
  • Add cache to search endpoint in order to improve efficiency when receiving equal searches. Specially useful for deflection tools.

Released 2018.10.17

  • Added: New functionality to retrieve contents sorted by last modified.
  • Added: Updated the API Routes with the categoryId parameter in the /contents endpoint to define it is a string that contains category ids separated by comas.
  • Added: Updated API and SDK tracking documentation.

Released 2018.10.03

  • Updated rate limits. The limits are now up to 5 times higher than before.

Released 2018.09.19

  • Added: New endpoints:
    • GET /user-questions
    • GET /user-questions/<id>
    • GET /user-questions/slug/<slug>
    • GET /content/<id>/user-questions
    • GET /user-question/<id>/contents
  • Added: New tracking event click_user_question
  • Improvement: Allow multiple categories in /contents endpoint

Released 2018.08.22

  • Improve popular: now accept multiples categories, separated by a comma
  • Improve push: now accept multiples categories, separated by a comma

Released 2018.08.08

  • Updated: Tracking of endpoint GET /cross-selling/{crossSellingId}
  • Updated: Tracking of endpoint GET /cross-selling/search

Released 2018.07.25

  • Added: new events to endpoint POST /tracking/events. New events: instant_search, instant_click and contact_search.
  • Added: new parameter tracking to endpoint POST /search. When true, the endpoint will do the tracking of a search (Default: true).
  • Added: new parameter tracking to endpoint GET /contents/{contentId}. When true, the endpoint will do a click in the requested content (Default: true).
  • Added: new parameter tracking to endpoint GET /contents/{contentId}. When true, the endpoint will do a click in the requested content (Default: true).
  • Added: new parameter tracking to endpoint GET /contents/slug/{contentSlug}. When true, the endpoint will do a click in the requested content (Default: true).

Released 2018.05.16

  • Fixed: Tracking event rate without comment save it as null not as '-'

Released 2018.05.02

  • Fixed: /autocompleter/data endpoint not return expired contents and not published contents.

Released 2018.04.04

  • Fixed number of contents on 'categories' endpoints
  • Added:  "matching details" to search endpoint