Update a Performance Video Item (Motion Ad)

Update the specified performance video item (motion ad).

📘

Update operation

  • Use either PUT or POST.
  • Submit a JSON object with the fields to update.*
  • Fields that are omitted or null, will remain unchanged.

*Alternatively, you can combine JSON content with multipart/form-data (file uploads). cURL examples are provided below.

📘

Guidelines for Motion Ads

For guidelines and best practices, refer to the Help Center, or sync with your Taboola Account Manager.

JSON example

Example 1 - JSON request:

POST /backstage/api/1.0/demo-advertiser/campaigns/1234/performance-video/items/123
{
   "title": "New Title",
   "video_url": "https://cdn.example.com/new_video.mp4"
}
{
   "id": "67",
   "campaign_id": "1234",
   "url": "http://news.example.com/demo-article-1",
   "title": "New Title",
   "approval_state": "APPROVED",
   "is_active": true,
   "status": "RUNNING",
   "policy_review": {
      "reject_reason": null
   },
   "fallback_url": "http://cdn.taboola.com/libtrc/static/thumbnails/1cc96d86c676d195c1d3cb426ddc9745.png",
   "gif_url": "http://c3.taboola.com/libtrc/static/gif/t_PERFORMANCE_VIDEO_DEFAULT/e_loop/so_0/f_gif/v1602508826/ax3qanrabayqre4lw3gg.gif",
   "video_url": "http://c3.taboola.com/libtrc/static/video/t_PERFORMANCE_VIDEO_DEFAULT/v1601995708/h1s7azgctpfhzajgcs2y.mp4!-#@800x448"
}

A comparison of the performance video item (motion ad) 'before' and 'after' the update:

{
   "id": "67",
   "campaign_id": "1234",
   "url": "http://news.example.com/demo-article-1",
   "title": "Demo Article 1",
   "approval_state": "APPROVED",
   "is_active": true,
   "status": "RUNNING",
   "policy_review": {
      "reject_reason": null
   },
   "fallback_url": "http://cdn.taboola.com/libtrc/static/thumbnails/1cc96d86c676d195c1d3cb426ddc9745.png",
   "gif_url": "http://c3.taboola.com/libtrc/static/gif/t_PERFORMANCE_VIDEO_DEFAULT/e_loop/so_0/f_gif/v1602508826/ax3qanrabayqre4lw3gg.gif",
   "video_url": "http://c3.taboola.com/libtrc/static/video/t_PERFORMANCE_VIDEO_DEFAULT/v1602508826/ax3qanrabayqre4lw3gg.mp4!-#@800x448"
}
{
   "id": "67",
   "campaign_id": "1234",
   "url": "http://news.example.com/demo-article-1",
   "title": "New Title",
   "approval_state": "APPROVED",
   "is_active": true,
   "status": "RUNNING",
   "policy_review": {
      "reject_reason": null
   },
   "fallback_url": "http://cdn.taboola.com/libtrc/static/thumbnails/1cc96d86c676d195c1d3cb426ddc9745.png",
   "gif_url": "http://c3.taboola.com/libtrc/static/gif/t_PERFORMANCE_VIDEO_DEFAULT/e_loop/so_0/f_gif/v1604505100/mtgarmu8q18db5qdbnuq.gif",
   "video_url": "http://c3.taboola.com/libtrc/static/video/t_PERFORMANCE_VIDEO_DEFAULT/v1604505100/mtgarmu8q18db5qdbnuq.mp4!-#@800x448"
}

📘

Note that both video_url and gif_url have changed.

File upload examples

Example 1 - upload a new video file and rename the title (using cURL):

curl --location --request POST 'https://backstage.taboola.com/backstage/api/1.0/demo-advertiser/campaigns/1234/performance-video/items/' \
--header 'Authorization: Bearer CZ0OAAAAAAAAEdt7AgAAAAAAGAEgAClLv6MHdQEAADooNjQ0NWZjNGQ2ZWRlNWJkNWFjZDQ2MDM5NjRiZWRhMmRjZjZhOThjMEAC::644420::78997c' \
--form 'new_item={
   "title": "New Title",
};type=application/json' \
--form '[email protected]/Users/john.doe/Downloads/demo_video.mp4'
{
   "id": "123",
   "campaign_id": "1234",
   "url": "http://news.example.com/demo_article.html",
   "title": "Demo Article",
   "approval_state": "APPROVED",
   "is_active": true,
   "status": "RUNNING",
   "policy_review": {
      "reject_reason": null
   },
   "fallback_url": "http://cdn.taboola.com/libtrc/static/thumbnails/1cc96d86c676d195c1d3cb426ddc9745.png",
   "gif_url": "http://c3.taboola.com/libtrc/static/gif/t_PERFORMANCE_VIDEO_DEFAULT/e_loop/so_0/f_gif/v1602508826/ax3qanrabayqre4lw3gg.gif",
   "video_url": "http://c3.taboola.com/libtrc/static/video/t_PERFORMANCE_VIDEO_DEFAULT/v1602508826/ax3qanrabayqre4lw3gg.mp4!-#@800x448"
}

Example 2 - upload 2 new files and rename the title (using cURL):

curl --location --request POST 'https://backstage.taboola.com/backstage/api/1.0/demo-advertiser/campaigns/1234/performance-video/items/' \
--header 'Authorization: Bearer CZ0OAAAAAAAAEdt7AgAAAAAAGAEgAClLv6MHdQEAADooNjQ0NWZjNGQ2ZWRlNWJkNWFjZDQ2MDM5NjRiZWRhMmRjZjZhOThjMEAC::644420::78997c' \
--form 'new_item={
   "title": "New Title"
};type=application/json' \
--form '[email protected]/Users/john.doe/Downloads/demo_video.mp4'
--form '[email protected]/Users/john.doe/Downloads/demo_image.png'
{
   "id": "123",
   "campaign_id": "1234",
   "url": "http://news.example.com/demo_article.html",
   "title": "Demo Article",
   "approval_state": "APPROVED",
   "is_active": true,
   "status": "RUNNING",
   "policy_review": {
      "reject_reason": null
   },
   "fallback_url": "http://cdn.taboola.com/libtrc/static/thumbnails/1cc96d86c676d195c1d3cb426ddc9745.png",
   "gif_url": "http://c3.taboola.com/libtrc/static/gif/t_PERFORMANCE_VIDEO_DEFAULT/e_loop/so_0/f_gif/v1602508826/ax3qanrabayqre4lw3gg.gif",
   "video_url": "http://c3.taboola.com/libtrc/static/video/t_PERFORMANCE_VIDEO_DEFAULT/v1602508826/ax3qanrabayqre4lw3gg.mp4!-#@800x448"
}

🚧

Uploading files

  1. Upload files as multipart/form-data.
  2. Pass all other params within the new_item JSON object param.
  3. Specify a content type of application\json for the new_item param only. (In the above example, this is the ;type=application/json snippet just after new_item JSON object.)

🚧

If the request is missing a param - or the content type is incorrectly specified - the server may return Error 500.

Example 4 - file upload only (using cURL):

curl --location --request POST 'https://backstage.taboola.com/backstage/api/1.0/demo-advertiser/campaigns/1234/performance-video/items/' \
--header 'Authorization: Bearer CZ0OAAAAAAAAEdt7AgAAAAAAGAEgAClLv6MHdQEAADooNjQ0NWZjNGQ2ZWRlNWJkNWFjZDQ2MDM5NjRiZWRhMmRjZjZhOThjMEAC::644420::78997c' \
--form '[email protected]/Users/john.doe/Downloads/demo_video.mp4'
{
   "id": "123",
   "campaign_id": "1234",
   "url": "http://news.example.com/demo_article.html",
   "title": "Demo Article",
   "approval_state": "APPROVED",
   "is_active": true,
   "status": "RUNNING",
   "policy_review": {
      "reject_reason": null
   },
   "fallback_url": "http://cdn.taboola.com/libtrc/static/thumbnails/1cc96d86c676d195c1d3cb426ddc9745.png",
   "gif_url": "http://c3.taboola.com/libtrc/static/gif/t_PERFORMANCE_VIDEO_DEFAULT/e_loop/so_0/f_gif/v1602508826/ax3qanrabayqre4lw3gg.gif",
   "video_url": "http://c3.taboola.com/libtrc/static/video/t_PERFORMANCE_VIDEO_DEFAULT/v1602508826/ax3qanrabayqre4lw3gg.mp4!-#@800x448"
}

📘

In the above example, the new_item is not present.

Pausing a performance video item (motion ad)

To pause (or unpause) a performance video Item, update it and set is_active to false (or true).

For an illustration of this flow (using an image-based item), see: Pausing/unpausing Campaign Items.

🚧

A paused video performance item (motion ad) is not served by Taboola.

Language