Summary
With this API you can have a reading access to all your participant data in your promotions.
Authentication & Configuration
You need to send a token
parameter in each request.
To get your token, please send an email to help@cool-tabs.com
List of active promotions in your account
GET https://www.cool-tabs.com/api/v1/promos.json?token=XXXX
Adding the all=1
parameter retrieves all the campaigns in your account,
regardless of whether they are active.
GET https://www.cool-tabs.com/api/v1/promos.json?token=XXXX?all=1
List of participants of a promotion.
On the details page of a promotion you will be able to see the exact URLs that you should use to query the data using the API.
GET https://www.cool-tabs.com/api/v1/promos/<ID>.json?token=XXXX
Sorting and querying data.
Each participation (a participant can participate more than once) has an ever-increasing identifier.
When querying entries via the API, we typically return entries always in order from newest to oldest.
Except if I’m asking for the most recent entries than a given one, in which case we return them in reverse order.
If you are saving/processing entries in any way, whenever you come to an entry that you have already processed, you can stop making requests to the API because the rest will always include those that you have previously processed.
The idea is that once the initial processing of all the existing data is done, each new request you have to ask only for new data that arrives.
Parameters
Parameter | Description |
---|---|
since_id | Returns entries with identifier greater (more recent) than this one (excluded) |
max_id | Returns entries with identifier less (older) than this one (excluded) |
Response
The API returns a JSON object with 3 possible headers:
Parameter | Description |
---|---|
data | Array of participants |
pagination | Information on how to obtain the rest of the entries |
error | {error: {code: error_code, message: “Error message”}} |
Active promotions list example
curl https://www.cool-tabs.com/api/v1/promos.json?token=xxx
{
"data": [
{
"id": 1111,
"created_at": "2022-09-19T11:49:41.669+02:00",
"updated_at": "2022-09-19T11:49:41.669+02:00",
"promotion_start_at": "2022-08-20T00:00:00.000+02:00",
"promotion_end_at": "2022-10-19T23:59:59.999+02:00",
"participations_start_at": "2022-08-20T00:00:00.000+02:00",
"participations_end_at": "2022-10-19T23:59:59.999+02:00",
"custom_domain": null,
"content_name": "Wadus 7",
"participations_count": 0,
"url": "https://www.cool-tabs.com/api/v1/promos/1111.json?locale=es&token=xxx"
}
]
}
Active promotions list example (xml format)
curl https://www.cool-tabs.com/api/v1/promos.xml?token=xxx
<?xml version="1.0" encoding="UTF-8"?>
<data>
<promotions>
<promotion>
<id>1111</id>
<created_at>2022-10-26T12:56:38.599+02:00</created_at>
<updated_at>2022-10-26T12:56:38.599+02:00</updated_at>
<promotion_start_at>2022-09-26T00:00:00.000+02:00</promotion_start_at>
<promotion_end_at>2022-11-25T23:59:59.999+01:00</promotion_end_at>
<participations_start_at>2022-09-26T00:00:00.000+02:00</participations_start_at>
<participations_end_at>2022-11-25T23:59:59.999+01:00</participations_end_at>
<custom_domain/>
<content_name>Wadus 10</content_name>
<participations_count>0</participations_count>
<url>https://www.cool-tabs.com/api/v1/promos/1111.json?locale=es&token=xxx</url>
</promotion>
</promotions>
</data>
Reading and pagination example
Let’s assume that when you start requesting data from the API there are already 5 participations
We also simulate here that the API returns only 3 records each time, and that the date of all participants is the same (which will never be the case). The ids of the existing participations will be 10, 20, 30, 40, 50. With real data, they will be always increasing identifiers, but not consecutive or with the same difference between them.
curl https://www.cool-tabs.com/api/v1/promos/1111.json?token=xxx&per_page=3
{
"data": [
{
"id": 50,
"first_name": "John",
"last_name": "Smith",
"email": "user@example.com",
"uid": "xxxxx",
"provider": "facebook",
"nickname": null,
"votes_count": 0,
"referred_count": 0,
"referred_by": null,
"country_code": null,
"remote_ip": null,
"answer": "My answer",
"locale": null,
"user_url": "https://www.facebook.com/xxxxx",
"created_at": "2016-02-01T01:00:00.000+01:00",
"published": "true",
"public_url": "https://w.dctw.io/JXiNIKOCM",
"private_url": "https://www.cool-tabs.com/user_admin/promos/1111/participations/50/redirect_to_preview",
"campaign_medium": null,
"campaign_name": null,
"campaign_source": null,
"crm_id": null,
"crm_info": null,
"referer_url": null,
"referer_domain": null,
"spent_time_complete_form": 500
},
{
"id": 40,
"first_name": "John",
"last_name": "Smith",
"email": "user@example.com",
"uid": "xxxxx",
"provider": "facebook",
"nickname": null,
"votes_count": 0,
"referred_count": 0,
"referred_by": null,
"country_code": null,
"remote_ip": null,
"answer": "My answer",
"locale": null,
"user_url": "https://www.facebook.com/xxxxx",
"created_at": "2016-02-01T01:00:00.000+01:00",
"published": "true",
"public_url": "https://w.dctw.io/Kyi5IquP",
"private_url": "https://www.cool-tabs.com/user_admin/promos/1111/participations/40/redirect_to_preview",
"campaign_medium": null,
"campaign_name": null,
"campaign_source": null,
"crm_id": null,
"crm_info": null,
"referer_url": null,
"referer_domain": null,
"spent_time_complete_form": 400
},
{
"id": 30,
"first_name": "John",
"last_name": "Smith",
"email": "user@example.com",
"uid": "xxxxx",
"provider": "facebook",
"nickname": null,
"votes_count": 0,
"referred_count": 0,
"referred_by": null,
"country_code": null,
"remote_ip": null,
"answer": "My answer",
"locale": null,
"user_url": "https://www.facebook.com/xxxxx",
"created_at": "2016-02-01T01:00:00.000+01:00",
"published": "true",
"public_url": "https://w.dctw.io/1yiVILiZ",
"private_url": "https://www.cool-tabs.com/user_admin/promos/1111/participations/30/redirect_to_preview",
"campaign_medium": null,
"campaign_name": null,
"campaign_source": null,
"crm_id": null,
"crm_info": null,
"referer_url": null,
"referer_domain": null,
"spent_time_complete_form": 300
}
],
"pagination": {
"max_id": 30,
"since_id": 50,
"newer_results": "https://www.cool-tabs.com/api/v1/promos/1111.json?token=xxx&per_page=3&since_id=50",
"older_results": "https://www.cool-tabs.com/api/v1/promos/1111.json?token=xxx&per_page=3&max_id=30"
}
}
We see that there are older results, so we ask for them
In {pagination: {order_results: xx}}
we have the URL we should use to ask for the next (older) results. We use the max_id
parameter to get data with a maximum id less than the last one we got.
curl https://www.cool-tabs.com/api/v1/promos/1111.json?token=xxx&per_page=3&max_id=30
{
"data": [
{
"id": 20,
"first_name": "John",
"last_name": "Smith",
"email": "user@example.com",
"uid": "xxxxx",
"provider": "facebook",
"nickname": null,
"votes_count": 0,
"referred_count": 0,
"referred_by": null,
"country_code": null,
"remote_ip": null,
"answer": "My answer",
"locale": null,
"user_url": "https://www.facebook.com/xxxxx",
"created_at": "2016-02-01T01:00:00.000+01:00",
"published": "true",
"public_url": "https://w.dctw.io/5viOIOHY",
"private_url": "https://www.cool-tabs.com/user_admin/promos/1111/participations/20/redirect_to_preview",
"campaign_medium": null,
"campaign_name": null,
"campaign_source": null,
"crm_id": null,
"crm_info": null,
"referer_url": null,
"referer_domain": null,
"spent_time_complete_form": 200
},
{
"id": 10,
"first_name": "John",
"last_name": "Smith",
"email": "user@example.com",
"uid": "xxxxx",
"provider": "facebook",
"nickname": null,
"votes_count": 0,
"referred_count": 0,
"referred_by": null,
"country_code": null,
"remote_ip": null,
"answer": "My answer",
"locale": null,
"user_url": "https://www.facebook.com/xxxxx",
"created_at": "2016-02-01T01:00:00.000+01:00",
"published": "true",
"public_url": "https://w.dctw.io/zPiGIWfr",
"private_url": "https://www.cool-tabs.com/user_admin/promos/1111/participations/10/redirect_to_preview",
"campaign_medium": null,
"campaign_name": null,
"campaign_source": null,
"crm_id": null,
"crm_info": null,
"referer_url": null,
"referer_domain": null,
"spent_time_complete_form": 100
}
],
"pagination": {
"max_id": 10,
"older_results": "https://www.cool-tabs.com/api/v1/promos/1111.json?token=xxx&per_page=3&max_id=10"
}
}
It seems that there are still older results, so we ask them again
curl https://www.cool-tabs.com/api/v1/promos/1111.json?token=xxx&per_page=3&max_id=10
{
"data": [
],
"pagination": {
"max_id": 0,
"older_results": null
}
}
Here we have already reached the end of the data (data
is empty, and max_id
is 0). We have already obtained all the data.
Request to get new entries
Since you have already processed up to the participation with ID 50, to see if there are new participations you will have to make the following request:
curl https://www.cool-tabs.com/api/v1/promos/1111.json?token=xxx&per_page=3&since_id=50
{
"data": [
],
"pagination": {
"since_id": 50,
"newer_results": "https://www.cool-tabs.com/api/v1/promos/1111.json?token=xxx&per_page=3&since_id=50"
}
}
Since there have been no new participants, data
is empty. But pagination
still tells us the URL to get new results. Since there have been no new participants, it returns the original request we made. It can be repeated without problems.
Now suppose that between request and request you make, we have 4 new entries
These new entries have the following unique ID: 60,70,80,90
curl https://www.cool-tabs.com/api/v1/promos/1111.json?token=xxx&per_page=3&since_id=50
{
"data": [
{
"id": 60,
"first_name": "John",
"last_name": "Smith",
"email": "user@example.com",
"uid": "xxxxx",
"provider": "facebook",
"nickname": null,
"votes_count": 0,
"referred_count": 0,
"referred_by": null,
"country_code": null,
"remote_ip": null,
"answer": "My answer",
"locale": null,
"user_url": "https://www.facebook.com/xxxxx",
"created_at": "2016-02-01T01:00:00.000+01:00",
"published": "true",
"public_url": "https://w.dctw.io/PXi6IaNTR",
"private_url": "https://www.cool-tabs.com/user_admin/promos/1111/participations/60/redirect_to_preview",
"campaign_medium": null,
"campaign_name": null,
"campaign_source": null,
"crm_id": null,
"crm_info": null,
"referer_url": null,
"referer_domain": null,
"spent_time_complete_form": null
},
{
"id": 70,
"first_name": "John",
"last_name": "Smith",
"email": "user@example.com",
"uid": "xxxxx",
"provider": "facebook",
"nickname": null,
"votes_count": 0,
"referred_count": 0,
"referred_by": null,
"country_code": null,
"remote_ip": null,
"answer": "My answer",
"locale": null,
"user_url": "https://www.facebook.com/xxxxx",
"created_at": "2016-02-01T01:00:00.000+01:00",
"published": "true",
"public_url": "https://w.dctw.io/ZRinI0nHm",
"private_url": "https://www.cool-tabs.com/user_admin/promos/1111/participations/70/redirect_to_preview",
"campaign_medium": null,
"campaign_name": null,
"campaign_source": null,
"crm_id": null,
"crm_info": null,
"referer_url": null,
"referer_domain": null,
"spent_time_complete_form": null
},
{
"id": 80,
"first_name": "John",
"last_name": "Smith",
"email": "user@example.com",
"uid": "xxxxx",
"provider": "facebook",
"nickname": null,
"votes_count": 0,
"referred_count": 0,
"referred_by": null,
"country_code": null,
"remote_ip": null,
"answer": "My answer",
"locale": null,
"user_url": "https://www.facebook.com/xxxxx",
"created_at": "2016-02-01T01:00:00.000+01:00",
"published": "true",
"public_url": "https://w.dctw.io/B1iyInAfA",
"private_url": "https://www.cool-tabs.com/user_admin/promos/1111/participations/80/redirect_to_preview",
"campaign_medium": null,
"campaign_name": null,
"campaign_source": null,
"crm_id": null,
"crm_info": null,
"referer_url": null,
"referer_domain": null,
"spent_time_complete_form": null
}
],
"pagination": {
"max_id": 60,
"since_id": 80,
"newer_results": "https://www.cool-tabs.com/api/v1/promos/1111.json?token=xxx&per_page=3&since_id=80",
"older_results": "https://www.cool-tabs.com/api/v1/promos/1111.json?token=xxx&per_page=3&max_id=60&since_id=50"
}
}
Now we return the IDs in ascending order (because we have requested data with since_id
)
And we ask for new results again to see if there are any left
curl https://www.cool-tabs.com/api/v1/promos/1111.json?token=xxx&per_page=3&since_id=80
{
"data": [
{
"id": 90,
"first_name": "John",
"last_name": "Smith",
"email": "user@example.com",
"uid": "xxxxx",
"provider": "facebook",
"nickname": null,
"votes_count": 0,
"referred_count": 0,
"referred_by": null,
"country_code": null,
"remote_ip": null,
"answer": "My answer",
"locale": null,
"user_url": "https://www.facebook.com/xxxxx",
"created_at": "2016-02-01T01:00:00.000+01:00",
"published": "true",
"public_url": "https://w.dctw.io/O1iAInnHG",
"private_url": "https://www.cool-tabs.com/user_admin/promos/1111/participations/90/redirect_to_preview",
"campaign_medium": null,
"campaign_name": null,
"campaign_source": null,
"crm_id": null,
"crm_info": null,
"referer_url": null,
"referer_domain": null,
"spent_time_complete_form": null
}
],
"pagination": {
"max_id": 90,
"since_id": 90,
"newer_results": "https://www.cool-tabs.com/api/v1/promos/1111.json?token=xxx&per_page=3&since_id=90",
"older_results": "https://www.cool-tabs.com/api/v1/promos/1111.json?token=xxx&per_page=3&max_id=90&since_id=80"
}
}
And we keep asking for results because there may still be, we still don’t know that there are none left.
curl https://www.cool-tabs.com/api/v1/promos/1111.json?token=xxx&per_page=3&since_id=90
{
"data": [
],
"pagination": {
"since_id": 90,
"newer_results": "https://www.cool-tabs.com/api/v1/promos/1111.json?token=xxx&per_page=3&since_id=90"
}
}
And now we have all new entries.
Xml format example
curl https://www.cool-tabs.com/api/v1/promos/1111.xml?token=xxx&per_page=2
<?xml version="1.0" encoding="UTF-8"?>
<data>
<participations>
<participation>
<id>2</id>
<first_name>John</first_name>
<last_name>Smith</last_name>
<email>user@example.com</email>
<uid>2</uid>
<provider>facebook</provider>
<nickname/>
<votes_count>0</votes_count>
<referred_count>0</referred_count>
<referred_by/>
<country_code/>
<remote_ip/>
<answer>My answer</answer>
<locale/>
<user_url>https://www.facebook.com/2</user_url>
<created_at>2016-02-01 01:00:00 +0100</created_at>
<published>true</published>
<public_url>https://w.dctw.io/O1iAIniG</public_url>
<private_url>https://www.cool-tabs.com/user_admin/promos/1111/participations/2/redirect_to_preview</private_url>
<campaign_medium/>
<campaign_name/>
<campaign_source/>
<crm_id/>
<crm_info/>
<referer_url/>
<referer_domain/>
<spent_time_complete_form/>
</participation>
<participation>
<id>1</id>
<first_name>John</first_name>
<last_name>Smith</last_name>
<email>user@example.com</email>
<uid>1</uid>
<provider>facebook</provider>
<nickname/>
<votes_count>0</votes_count>
<referred_count>0</referred_count>
<referred_by/>
<country_code/>
<remote_ip/>
<answer>My answer</answer>
<locale/>
<user_url>https://www.facebook.com/1</user_url>
<created_at>2016-02-01 01:00:00 +0100</created_at>
<published>true</published>
<public_url>https://w.dctw.io/Mvi8IaSX</public_url>
<private_url>https://www.cool-tabs.com/user_admin/promos/1111/participations/1/redirect_to_preview</private_url>
<campaign_medium/>
<campaign_name/>
<campaign_source/>
<crm_id/>
<crm_info/>
<referer_url/>
<referer_domain/>
<spent_time_complete_form/>
</participation>
</participations>
<pagination max_id="1" since_id="2" newer_results="https://www.cool-tabs.com/api/v1/promos/1111.xml?token=xxx&per_page=2&since_id=2" older_results="https://www.cool-tabs.com/api/v1/promos/1111.xml?token=xxx&per_page=2&max_id=1"/>
</data>
Video promotion example
Additionally, we return the video_url_for_api
and video_embed_html
attributes. We also include a new root node (it doesn’t hang from data
), called: content_for_head
, where we include the HTML that you must include in the pages where you show videos if you want to use our default video player (you can always use another one that you use).
curl https://www.cool-tabs.com/api/v1/promos/1111.json?token=xxx&per_page=3
{
"content_for_head": "<link rel=\"stylesheet\" media=\"screen\" href=\"//vjs.zencdn.net/6.7/video-js.min.css\" /><script src=\"//vjs.zencdn.net/6.7/video.min.js\"></script>",
"data": [
{
"id": 94,
"first_name": "Pepe",
"last_name": "López",
"email": "pepe4@gmail.com",
"uid": null,
"provider": "instagramv2",
"nickname": null,
"votes_count": 0,
"referred_count": 0,
"referred_by": null,
"country_code": null,
"remote_ip": null,
"answer": "My answer",
"video_url_for_api": "https://scontent.cdninstagram.com/t50.2886-16/11653682_1650853161812013_1882853911_a.mp4",
"video_embed_html": "<video id='my_video_3' class='video-js vjs-sublime-skin embed_video' controls preload='none' width='450' height='450' data-poster='https://scontent.cdninstagram.com/t51.2885-15/s320x320/e15/11312011_395643690645950_975468682_n.jpg?ig_cache_key=NDgyNjYzOTk2Mjk4MjQwMTQ3.2'> <source src='https://scontent.cdninstagram.com/t50.2886-16/11653682_1650853161812013_1882853911_a.mp4' type='video/mp4'> </video>",
"locale": null,
"user_url": null,
"created_at": "2022-10-26T12:56:37.934+02:00",
"published": "true",
"public_url": "https://w.dctw.io/JXiNIVOHM",
"private_url": "https://www.cool-tabs.com/user_admin/promos/1111/participations/94/redirect_to_preview",
"campaign_medium": null,
"campaign_name": null,
"campaign_source": null,
"crm_id": null,
"crm_info": null,
"referer_url": null,
"referer_domain": null,
"spent_time_complete_form": null
},
{
"id": 93,
"first_name": "Pepe",
"last_name": "López",
"email": "pepe3@gmail.com",
"uid": null,
"provider": "facebook",
"nickname": null,
"votes_count": 0,
"referred_count": 0,
"referred_by": null,
"country_code": null,
"remote_ip": null,
"answer": "My answer",
"video_url_for_api": "https://www.youtube.com/watch?v=uG95yGRaooY",
"video_embed_html": "<iframe class=\"youtube-player embed_video \" width=\"397\" height=\"360\" data-src=\"https://www.youtube-nocookie.com/embed/uG95yGRaooY?rel=0&\" allowfullscreen></iframe>",
"locale": null,
"user_url": "https://www.facebook.com/",
"created_at": "2022-10-26T12:56:37.902+02:00",
"published": "true",
"public_url": "https://w.dctw.io/8RiPIlwhq",
"private_url": "https://www.cool-tabs.com/user_admin/promos/1111/participations/93/redirect_to_preview",
"campaign_medium": null,
"campaign_name": null,
"campaign_source": null,
"crm_id": null,
"crm_info": null,
"referer_url": null,
"referer_domain": null,
"spent_time_complete_form": null
},
{
"id": 92,
"first_name": "Pepe",
"last_name": "López",
"email": "pepe2@gmail.com",
"uid": null,
"provider": "facebook",
"nickname": null,
"votes_count": 0,
"referred_count": 0,
"referred_by": null,
"country_code": null,
"remote_ip": null,
"answer": "My answer",
"video_url_for_api": "https://cool-tabs-space.s3.amazonaws.com/assets/participation_videos/b0bf7870e74711e4bdddabeefd435d2f/video_mp4_2015-04-17-09.39.48.mp4",
"video_embed_html": "<video id='my_video_92' class='video-js vjs-sublime-skin embed_video' controls preload='none' width='1024' height='768' data-poster='https://cool-tabs-space.s3.amazonaws.com/assets/participation_videos/b0bf7870e74711e4bdddabeefd435d2f/screenshot_2015-04-17-09.39.48.jpg'><source src='https://cool-tabs-space.s3.amazonaws.com/assets/participation_videos/b0bf7870e74711e4bdddabeefd435d2f/video_mp4_2015-04-17-09.39.48.mp4' type='video/mp4'><source src='https://cool-tabs-space.s3.amazonaws.com/assets/participation_videos/b0bf7870e74711e4bdddabeefd435d2f/video_webm_2015-04-17-09.39.48.webm' type='video/webm'>We are sorry, but your browser cannot play these videos. </video>",
"locale": null,
"user_url": "https://www.facebook.com/",
"created_at": "2022-10-26T12:56:37.792+02:00",
"published": "true",
"public_url": "https://w.dctw.io/AmirI6ZC0",
"private_url": "https://www.cool-tabs.com/user_admin/promos/1111/participations/92/redirect_to_preview",
"campaign_medium": null,
"campaign_name": null,
"campaign_source": null,
"crm_id": null,
"crm_info": null,
"referer_url": null,
"referer_domain": null,
"spent_time_complete_form": null
}
],
"pagination": {
"max_id": 92,
"since_id": 94,
"newer_results": "https://www.cool-tabs.com/api/v1/promos/1111.json?token=xxx&per_page=3&since_id=94",
"older_results": "https://www.cool-tabs.com/api/v1/promos/1111.json?token=xxx&per_page=3&max_id=92"
}
}
curl https://www.cool-tabs.com/api/v1/promos/1111.xml?token=xxx&per_page=3
<?xml version="1.0" encoding="UTF-8"?>
<data>
<content_for_head><link rel="stylesheet" media="screen" href="//vjs.zencdn.net/6.7/video-js.min.css" /><script src="//vjs.zencdn.net/6.7/video.min.js"></script></content_for_head>
<participations>
<participation>
<id>94</id>
<first_name>Pepe</first_name>
<last_name>López</last_name>
<email>pepe4@gmail.com</email>
<uid/>
<provider>instagramv2</provider>
<nickname/>
<votes_count>0</votes_count>
<referred_count>0</referred_count>
<referred_by/>
<country_code/>
<remote_ip/>
<answer>My answer</answer>
<video_url_for_api>https://scontent.cdninstagram.com/t50.2886-16/11653682_1650853161812013_1882853911_a.mp4</video_url_for_api>
<video_embed_html><video id='my_video_3' class='video-js vjs-sublime-skin embed_video' controls preload='none' width='450' height='450' data-poster='https://scontent.cdninstagram.com/t51.2885-15/s320x320/e15/11312011_395643690645950_975468682_n.jpg?ig_cache_key=NDgyNjYzOTk2Mjk4MjQwMTQ3.2'> <source src='https://scontent.cdninstagram.com/t50.2886-16/11653682_1650853161812013_1882853911_a.mp4' type='video/mp4'> </video></video_embed_html>
<locale/>
<user_url/>
<created_at>2022-10-26 12:56:37 +0200</created_at>
<published>true</published>
<public_url>https://w.dctw.io/JXiNIVOHM</public_url>
<private_url>https://www.cool-tabs.com/user_admin/promos/1111/participations/94/redirect_to_preview</private_url>
<campaign_medium/>
<campaign_name/>
<campaign_source/>
<crm_id/>
<crm_info/>
<referer_url/>
<referer_domain/>
<spent_time_complete_form/>
</participation>
<participation>
<id>93</id>
<first_name>Pepe</first_name>
<last_name>López</last_name>
<email>pepe3@gmail.com</email>
<uid/>
<provider>facebook</provider>
<nickname/>
<votes_count>0</votes_count>
<referred_count>0</referred_count>
<referred_by/>
<country_code/>
<remote_ip/>
<answer>My answer</answer>
<video_url_for_api>https://www.youtube.com/watch?v=uG95yGRaooY</video_url_for_api>
<video_embed_html><iframe class="youtube-player embed_video " width="397" height="360" data-src="https://www.youtube-nocookie.com/embed/uG95yGRaooY?rel=0&" allowfullscreen></iframe></video_embed_html>
<locale/>
<user_url>https://www.facebook.com/</user_url>
<created_at>2022-10-26 12:56:37 +0200</created_at>
<published>true</published>
<public_url>https://w.dctw.io/8RiPIlwhq</public_url>
<private_url>https://www.cool-tabs.com/user_admin/promos/1111/participations/93/redirect_to_preview</private_url>
<campaign_medium/>
<campaign_name/>
<campaign_source/>
<crm_id/>
<crm_info/>
<referer_url/>
<referer_domain/>
<spent_time_complete_form/>
</participation>
<participation>
<id>92</id>
<first_name>Pepe</first_name>
<last_name>López</last_name>
<email>pepe2@gmail.com</email>
<uid/>
<provider>facebook</provider>
<nickname/>
<votes_count>0</votes_count>
<referred_count>0</referred_count>
<referred_by/>
<country_code/>
<remote_ip/>
<answer>My answer</answer>
<video_url_for_api>https://cool-tabs-space.s3.amazonaws.com/assets/participation_videos/b0bf7870e74711e4bdddabeefd435d2f/video_mp4_2015-04-17-09.39.48.mp4</video_url_for_api>
<video_embed_html><video id='my_video_92' class='video-js vjs-sublime-skin embed_video' controls preload='none' width='1024' height='768' data-poster='https://cool-tabs-space.s3.amazonaws.com/assets/participation_videos/b0bf7870e74711e4bdddabeefd435d2f/screenshot_2015-04-17-09.39.48.jpg'><source src='https://cool-tabs-space.s3.amazonaws.com/assets/participation_videos/b0bf7870e74711e4bdddabeefd435d2f/video_mp4_2015-04-17-09.39.48.mp4' type='video/mp4'><source src='https://cool-tabs-space.s3.amazonaws.com/assets/participation_videos/b0bf7870e74711e4bdddabeefd435d2f/video_webm_2015-04-17-09.39.48.webm' type='video/webm'>We are sorry, but your browser cannot play these videos. </video></video_embed_html>
<locale/>
<user_url>https://www.facebook.com/</user_url>
<created_at>2022-10-26 12:56:37 +0200</created_at>
<published>true</published>
<public_url>https://w.dctw.io/AmirI6ZC0</public_url>
<private_url>https://www.cool-tabs.com/user_admin/promos/1111/participations/92/redirect_to_preview</private_url>
<campaign_medium/>
<campaign_name/>
<campaign_source/>
<crm_id/>
<crm_info/>
<referer_url/>
<referer_domain/>
<spent_time_complete_form/>
</participation>
</participations>
<pagination max_id="92" since_id="94" newer_results="https://www.cool-tabs.com/api/v1/promos/1111.xml?token=xxx&per_page=3&since_id=94" older_results="https://www.cool-tabs.com/api/v1/promos/1111.xml?token=xxx&per_page=3&max_id=92"/>
</data>