Payload Structure

  "operation": "upsert" | "delete",
  "items"?: ContentItem[],
  "ids"?: string[]

You can see an example payload structure above.

2 basic batch operations are supported at the moment: upsert and delete.

Upsert Operation

Using the upsert batch operation you can both create and update existing items. If the item is not present on Findify's end, it will be created, otherwise the item's fields will be updated by Findify. We use the id field that is provided to link the item in the request to our internal content database, so you must provide the same id used when creating an item if you need to update it. You don't need to specify which fields to update, Findify will calculate the difference automatically. For this operation you must provide the items array with the following structure

interface ContentItem {
  id: string,
  title: string,
  url: string,
  image_url?: string, // optional field, if provided, Findify will use it to show the image in Search and Autocomplete
  description?: string, // optional field, if provided, Findify will show it in the Content Card by default
  [optional field name]: string | number | boolean | string[] | number[]

There are 3 required fields that must be present in the item that is part of the upsert operation: id, title, url.


image_url and description

If you are using MJS and provide these fields in the content item, MJS will automatically display the image and description in Autocomplete and Search results

Apart from the 3 required fields, you can provide as many optional fields as you want or need as long as they conform to the supported field types.


At the moment we don't support objects or nested objects as allowed types of content items

Delete operation

Findify will remove all content items with the specified IDs if they are present in our system. For this operation you must provide the ids parameter in your request.

Click Try It! to start a request and see the response here!