Events


The event's endpoint is responsible for receiving different event types in which RD Station Contacts take part in.

It is possible to send default events to RD Station such as conversion events, opportunity marking events and won and lost events. Also, RD Station supports the possibility of receiving different event types, for instance, chat events, e-commerce ones and others.

The identification of different events can be used in RD Station Marketing to create, for example, custom segmentations and automated workflows.


Common Headers


All events requests share the same headers, that should be as follow:
Request Headers
Content-Type application/json
Authorization Bearer ACCESS_TOKEN

Common Responses


All events requests share the same responses structure:

Success | Code: 200

{
  "event_uuid": "5408c5a3-4711-4f2e-8d0b-13407a3e30f3"
}

Bad Request | Invalid Event Type | Code: 400

{
  "errors": [
    {
      "error_type": "INVALID_OPTION",
      "error_message": "Must be one of the valid options.",
      "validation_rules": {
          "valid_options": [
              "CONVERSION",
              "OPPORTUNITY",
              "OPPORTUNITY_LOST",
              "SALE",
              "ORDER_PLACED",
              "ORDER_PLACED_ITEM",
              /* ... */
          ]
      },
      "path": "$.body.event_type"
    }
  ]
}

Available Methods


Default Events


Default events are defined specifically for standard transitions of a Contact on a funnel on RD Station. For instance, conversion events that set a Contact to a Lead stage and opportunity, opportunity won and opportunity lost events.

Conversion Event

RD Station Marketing considers the value of the conversion_identifier attribute as the identifier of the custom event. This event is recorded whenever a conversion occurs.


Request body parameters
Field Type Required Description
event_type String true The event type that diferentiates the event. For the conversion event it should be sent as "CONVERSION".
event_family String true The family of the event for processing purposes. It currently accepts only "CDP" as valid option.
conversion_identifier String true The name of the conversion event.
name String false Name of the contact.
email String true Email of the contact.
job_title String false Job title of the contact.
state String false State of the contact.
city String false City of the contact.
country String false Country of the contact.
personal_phone String false Phone of the contact.
mobile_phone String false Mobile phone of the contact.
twitter String false Twitter handler of the contact.
facebook String false Facebook of the contact.
linkedin String false Linkedin of the contact.
website String false Website of the contact.
cf_custom_field_api_identifier String false Custom field and its value related to the contact.
company_name String false Company name of the contact.
company_site String false Company website of the contact.
company_address String false Company address of the contact.
client_tracking_id String false Value of a '_rdtrk' cookie. (e.g: 43b00843-09af-4fae-bf9d-a0697640b808)
traffic_source String false This can either be the value of a '__trf.src' cookie (base 64 encoded or not) or an UTM source param. If passing a cookie the following fields MUST be empty: traffic_medium, traffic_campaign and traffic_value.
traffic_medium String false UTM medium param.
traffic_campaign String false UTM campaign param.
traffic_value String false UTM value param (term).
tags Array of Strings false Tags that can be added to the contact.
available_for_mailing Boolean false Enable/disable receive emails.
legal_bases Array of Objects false Legal Bases of the contact.

Obs: All custom fields available in RD Station Marketing account are valid on this payload, and should be sent with the payload key as the api identifier (cf_api_identifier).


Request body example
{
  "event_type": "CONVERSION",
  "event_family":"CDP",
  "payload": {
    "conversion_identifier": "Name of the conversion event",
    "name": "Nome",
    "email": "email@email.com",
    "job_title": "job title value",
    "state": "state of the contact",
    "city": "city of the contact",
    "country": "country of the contact",
    "personal_phone": "phone of the contact",
    "mobile_phone": "mobile_phone of the contact",
    "twitter": "twitter handler of the contact",
    "facebook": "facebook name of the contact",
    "linkedin": "linkedin user name of the contact",
    "website": "website of the contact",
    "cf_custom_field_api_identifier": "custom field value",
    "company_name": "company name",
    "company_site": "company website",
    "company_address": "company address",
    "client_tracking_id": "lead tracking client_id",
    "traffic_source": "Google",
    "traffic_medium": "cpc",
    "traffic_campaign": "easter-50-off",
    "traffic_value": "easter eggs",
    "tags": ["mql", "2019"],
    "available_for_mailing": true,
    "legal_bases": [
      {
        "category": "data_processing",
        "type": "pre_existent_contract"
      },
      {
        "category": "communications",
        "type": "consent",
        "status": "granted"
      }
    ]
  }
}

Legal Bases
Field Type Valid params
category String data_processing or communications
type String pre_existent_contract, consent, legitimate_interest, judicial_process, vital_interest or public_interest
status String granted or declined (only when category is communications)

Obs: When the category is data_processing the field status is not mandatory, but pay attention to the fact that if you include this field, the only accepted value for status is granted.


Mark Opportunity Event

The Mark Opportunity event records contacts marked as an opportunity in RD Station Marketing.


Request body parameters
Field Type Required Description
event_type String true The event type that diferentiates the event. For the opportunity event it should be sent as "OPPORTUNITY".
event_family String true The family of the event for processing purposes. It currently accepts only "CDP" as valid option.
funnel_name String true Name of the funnel to which the Contact should be marked as opportunity.
email String true Email of the contact.

Request body example
{
  "event_type": "OPPORTUNITY",
  "event_family":"CDP",
  "payload": {
    "email": "email@email.com",
    "funnel_name": "default"
  }
}

Obs: This event does not create a new contact and requires an existing contact to be processed.


Mark Opportunity Won Event

The Mark Opportunity Won event records a contact as an opportunity won in RD Station Marketing.


Request body parameters
Field Type Required Description
event_type String true The event type that diferentiates the event. For the opportunity won event it should be sent as "SALE".
event_family String true The family of the event for processing purposes. It currently accepts only "CDP" as valid option.
funnel_name String true Name of the funnel to which the Contact should be marked as won.
email String true Email of the contact.
value String false Value of the won opportunity.

Request body example
{
  "event_type": "SALE",
  "event_family":"CDP",
  "payload": {
    "email": "email@email.com",
    "funnel_name": "default",
    "value": 200
  }
}

Obs: This event does not create a new contact and requires an existing contact to be processed.


Mark Opportunity Lost Event

The Mark Opportunity Lost event records a contact as an opportunity lost in RD Station Marketing.


Request body parameters
Field Type Required Description
event_type String true The event type that diferentiates the event. For the opportunity lost event it should be sent as "OPPORTUNITY_LOST".
event_family String true The family of the event for processing purposes. It currently accepts only "CDP" as valid option.
email String true Email of the contact.
funnel_name String true Name of the funnel to which the Contact should be marked as lost.
reason String false Reason for why the Contact was marked as lost.

Request body example
{
  "event_type": "OPPORTUNITY_LOST",
  "event_family":"CDP",
  "payload": {
    "email": "email@email.com",
    "funnel_name": "default",
    "reason":"Lost reason"
  }
}

Obs: This event does not create a new contact and requires an existing contact to be processed.


E-commerce Events


E-commerce events are responsible for describing a Contact behaviour of a buying process on an e-commerce platform. Through these events is possible to indicate when a Contact places an order or even when abandons a cart, informing which products were on the process.

Placed Order Event

RD Station Marketing always considers the value of the event_type ORDER_PLACED attribute as the identifier of this custom event. This event is recorded whenever an order is placed on an e-commerce platform.


Request body parameters
Field Type Required Description
event_type String true The event type that diferentiates the event. For the placed order event it should be sent as "ORDER_PLACED".
event_family String true The family of the event for processing purposes. It currently accepts only "CDP" as valid option.
name String false Name of the contact.
email String true Email of the contact.
cf_order_id String true Order identifier
cf_order_total_items Integer true Total number of itens from the order.
cf_order_status String true Status of the order to when the event was triggered
cf_order_payment_method String true Method of payment. Available options: "Credit Card", "Debit Card", "Invoice", "Others"
cf_order_payment_amount Float true Total value of the order
legal_bases Array of Objects false Legal Bases of the contact.

Request body example
{
  "event_type": "ORDER_PLACED",
  "event_family":"CDP",
  "payload": {
    "name": "Contact's Name",
    "email": "email@email.com",
    "cf_order_id": "order identifier",
    "cf_order_total_items": 2,
    "cf_order_status": "pending_payment",
    "cf_order_payment_method": "Credit Card",
    "cf_order_payment_amount": 40.20,
    "legal_bases": [
      {
        "category":"data_processing",
        "type":"pre_existent_contract"
      },
      {
        "category": "communications",
        "type":"consent",
        "status":"granted"
      }
    ]
  }
}

Legal Bases
Field Type Valid params
category String data_processing or communications
type String pre_existent_contract, consent, legitimate_interest, judicial_process, vital_interest or public_interest
status String granted or declined (only when category is communications)

Obs: When the category is data_processing the field status is not mandatory, but pay attention to the fact that if you include this field, the only accepted value for status is granted.


Placed Order Event with a specific Item

RD Station Marketing always considers the value of the event_type ORDER_PLACED_ITEM attribute as the identifier of the custom event. This event is recorded whenever an order with a specific item is placed on an e-commerce platform.


Request body parameters
Field Type Required Description
event_type String true The event type that diferentiates the event. For the placed order item event it should be sent as "ORDER_PLACED_ITEM".
event_family String true The family of the event for processing purposes. It currently accepts only "CDP" as valid option.
name String false Name of the contact.
email String true Email of the contact.
cf_order_id String true Order identifier
cf_order_product_id String true Product Identifier
cf_order_product_sku String true Product SKU
legal_bases Array of Objects false Legal Bases of the contact.

Request body example
{
  "event_type": "ORDER_PLACED_ITEM",
  "event_family":"CDP",
  "payload": {
    "name": "Contact's Name",
    "email": "email@email.com",
    "cf_order_id": "Order Identifier",
    "cf_order_product_id": "Product 1",
    "cf_order_product_sku": "SKU 1",
    "legal_bases": [
      {
        "category": "data_processing",
        "type": "pre_existent_contract"
      },
      {
        "category": "communications",
        "type": "consent",
        "status": "granted"
      }
    ]
  }
}

Legal Bases
Field Type Valid params
category String data_processing or communications
type String pre_existent_contract, consent, legitimate_interest, judicial_process, vital_interest or public_interest
status String granted or declined (only when category is communications)

Obs: When the category is data_processing the field status is not mandatory, but pay attention to the fact that if you include this field, the only accepted value for status is granted.


Abandoned Cart Event

RD Station Marketing always considers the value of the event_type CART_ABANDONED attribute as the identifier of the custom event. This event is recorded whenever a cart is abandoned on an e-commerce platform.


Request body parameters
Field Type Required Description
event_type String true The event type that diferentiates the event. For the abandoned cart event it should be sent as "CART_ABANDONED".
event_family String true The family of the event for processing purposes. It currently accepts only "CDP" as valid option.
name String false Name of the contact.
email String true Email of the contact.
cf_cart_id String true Cart identifier
cf_cart_total_items Integer true Total number of itens from the cart.
cf_cart_status String true Status of the cart to when the event was triggered
legal_bases Array of Objects false Legal Bases of the contact.

Request body example
{
  "event_type": "CART_ABANDONED",
  "event_family":"CDP",
  "payload": {
    "name": "Contact's Name",
    "email": "email@email.com",
    "cf_cart_id": "Cart identifier",
    "cf_cart_total_items": 2,
    "cf_cart_status": "in_progress",
    "legal_bases": [
      {
        "category": "data_processing",
        "type": "pre_existent_contract"
      },
      {
        "category": "communications",
        "type": "consent",
        "status": "granted"
      }
    ]
  }
}

Legal Bases
Field Type Valid params
category String data_processing or communications
type String pre_existent_contract, consent, legitimate_interest, judicial_process, vital_interest or public_interest
status String granted or declined (only when category is communications)

Obs: When the category is data_processing the field status is not mandatory, but pay attention to the fact that if you include this field, the only accepted value for status is granted.


Abandoned Cart Event with a specific Item

RD Station Marketing always considers the value of the event_type CART_ABANDONED_ITEM attribute as the identifier of the custom event. This event is recorded whenever a cart is abandoned with a specific item on an e-commerce platform.


Request body parameters
Field Type Required Description
event_type String true The event type that diferentiates the event. For the abandoned cart item event it should be sent as "CART_ABANDONED_ITEM".
event_family String true The family of the event for processing purposes. It currently accepts only "CDP" as valid option.
name String false Name of the contact.
email String true Email of the contact.
cf_cart_id String true Cart identifier
cf_cart_product_id String true Identifier of the product that was left on the cart.
cf_cart_product_sku String true SKU of the product that was left on the cart
legal_bases Array of Objects false Legal Bases of the contact.

Request body example
{
  "event_type": "CART_ABANDONED_ITEM",
  "event_family":"CDP",
  "payload": {
    "name": "Contact's Name",
    "email": "email@email.com",
    "cf_cart_id": "Cart identifier",
    "cf_cart_product_id": "Product identifier",
    "cf_cart_product_sku": "Product SKU",
    "legal_bases": [
      {
        "category": "data_processing",
        "type": "pre_existent_contract"
      },
      {
        "category": "communications",
        "type": "consent",
        "status": "granted"
      }
    ]
  }
}

Legal Bases
Field Type Valid params
category String data_processing or communications
type String pre_existent_contract, consent, legitimate_interest, judicial_process, vital_interest or public_interest
status String granted or declined (only when category is communications)

Obs: When the category is data_processing the field status is not mandatory, but pay attention to the fact that if you include this field, the only accepted value for status is granted.


Chat Events


Chat events allow RD Station to receive events whenever a Contact starts or finishes a conversation through a chat app. Integrated apps only need to send requests to the RD Station API on the desired moment.

Chat Started Event

RD Station Marketing always considers the value of the event_type CHAT_STARTED attribute as the identifier of the custom event. This event is recorded whenever a chat is initiated.


Request body parameters
Field Type Required Description
event_type String true The event type that diferentiates the event. For the chat started event it should be sent as "CHAT_STARTED".
event_family String true The family of the event for processing purposes. It currently accepts only "CDP" as valid option.
chat_subject String true The subject of the chat.
cf_chat_status String true Status of the chat.
cf_chat_type String false Type of the chat.
cf_birthdate String false Bith date of the Contact
cf_gender String false Gender of the Contact.
name String false Name of the contact.
email String true Email of the contact.
job_title String false Job title of the contact.
personal_phone String false Phone of the contact.
mobile_phone String false Mobile phone of the contact.
twitter String false Twitter handler of the contact.
facebook String false Facebook of the contact.
linkedin String false Linkedin of the contact.
website String false Website of the contact.
company_name String false Company name of the contact.
company_site String false Company website of the contact.
legal_bases Array of Objects false Legal Bases of the contact.

Request body example
{
  "event_type": "CHAT_STARTED",
  "event_family":"CDP",
  "payload": {
    "name": "Name of the contact",
    "email": "email@email.com",
    "company_name": "Company name of the contact",
    "company_site": "Company website of the contact",
    "job_title": "Job title of the contact",
    "personal_phone": "Phone of the contact",
    "mobile_phone": "Mobile phone of the contact",
    "twitter": "Twitter handler of the contact",
    "facebook": "Facebook of the contact",
    "linkedin": "Linkedin of the contact",
    "website": "Website of the contact",
    "chat_subject": "Chat subject",
    "cf_birthdate": "1980-06-10",
    "cf_gender": "Gender of the Contact",
    "cf_chat_status": "online",
    "cf_chat_type": "Type of the chat: sales, support, ...",
    "legal_bases": [
      {
        "category": "data_processing",
        "type": "pre_existent_contract"
      },
      {
        "category": "communications",
        "type": "consent",
        "status": "granted"
      }
    ]
  }
}

Legal Bases
Field Type Valid params
category String data_processing or communications
type String pre_existent_contract, consent, legitimate_interest, judicial_process, vital_interest or public_interest
status String granted or declined (only when category is communications)

Obs: When the category is data_processing the field status is not mandatory, but pay attention to the fact that if you include this field, the only accepted value for status is granted.


Chat Finished Event

RD Station Marketing always considers the value of the event_type CHAT_FINISHED attribute as the identifier of the custom event. This event is recorded whenever a chat is ended.


Request body parameters
Field Type Required Description
event_type String true The event type that diferentiates the event. For the chat finished event it should be sent as "CHAT_FINISHED".
event_family String true The family of the event for processing purposes. It currently accepts only "CDP" as valid option.
chat_subject String true The subject of the chat.
cf_chat_status String true Status of the chat.
cf_chat_transcript_message String true Transcript of the chat.
cf_chat_type String false Type of the chat.
cf_birthdate String false Bith date of the Contact
cf_gender String false Gender of the Contact.
name String false Name of the contact.
email String true Email of the contact.
job_title String false Job title of the contact.
personal_phone String false Phone of the contact.
mobile_phone String false Mobile phone of the contact.
twitter String false Twitter handler of the contact.
facebook String false Facebook of the contact.
linkedin String false Linkedin of the contact.
website String false Website of the contact.
company_name String false Company name of the contact.
company_site String false Company website of the contact.
legal_bases Array of Objects false Legal Bases of the contact.

Request body example
{
  "event_type": "CHAT_FINISHED",
  "event_family":"CDP",
  "payload": {
    "name": "Name of the contact",
    "email": "email@email.com",
    "company_name": "Company name of the contact",
    "company_site": "Company website of the contact",
    "job_title": "Job title of the contact",
    "personal_phone": "Phone of the contact",
    "mobile_phone": "Mobile phone of the contact",
    "twitter": "Twitter handler of the contact",
    "facebook": "Facebook of the contact",
    "linkedin": "Linkedin of the contact",
    "website": "Website of the contact",
    "chat_subject": "Chat subject",
    "cf_birthdate": "1980-06-10",
    "cf_gender": "Gender of the Contact",
    "cf_chat_status": "online",
    "cf_chat_type": "Type of the chat: sales, support, ...",
    "cf_chat_transcript_message": "Transcript of the chat",
    "legal_bases": [
      {
        "category": "data_processing",
        "type": "pre_existent_contract"
      },
      {
        "category": "communications",
        "type": "consent",
        "status": "granted"
      }
    ]
  }
}

Legal Bases
Field Type Valid params
category String data_processing or communications
type String pre_existent_contract, consent, legitimate_interest, judicial_process, vital_interest or public_interest
status String granted or declined (only when category is communications)

Obs: When the category is data_processing the field status is not mandatory, but pay attention to the fact that if you include this field, the only accepted value for status is granted.


Call Events


Call events allow RD Station to receive events whenever a Contact finishes a call.

Call Finished Event

RD Station Marketing considers the value of the event_type CALL_FINISHED attribute as the identifier of the custom event. This event is recorded whenever a call is ended.


Request body parameters
Field Type Required Description
event_type String true The event type that diferentiates the event. For the call finished event it should be sent as "CALL_FINISHED".
event_family String true The family of the event for processing purposes. It currently accepts only "CDP" as valid option.
name String false Lead name
email String true Lead email
company_name String false Lead's company name
company_site String false Lead's company website
job_title String false Lead's job title
personal_phone String false Leads phone (phone of the person who answered the call)
call_user_email String false Caller email
call_from_number String true Number of Call Tracking
call_started_at Timestamp false Call starting time. Must be in RFC 3339 datetime format (example: '2019-03-15T15:00:00.05Z').
call_duration String false Call duration, in seconds.
call_type String false Call type. Inbound or Outbound
call_status String true Call status.
call_status_description String false Call status complement. This could be the name of the recipient, a personalized message or "Off"
call_phone_type String false Phone type. Mobile or comercial.
call_carrier String false Carrier name
call_record String false Call recording URL
legal_bases Array of Objects false Legal Bases of the contact.

Request body example
{
  "event_type": "CALL_FINISHED",
  "event_family":"CDP",
  "payload": {
    "name": "John Doe",
    "email": "email@email.com",
    "company_name": "Acme Inc",
    "company_site": "http://www.acme.inc",
    "job_title": "CEO",
    "personal_phone": "+5511912341234",
    "call_user_email": "user.name@yourcompany.com",
    "call_from_number": "+551112341234",
    "call_started_at": "2019-03-15T14:53:42.928Z",
    "call_duration": "58",
    "call_type": "Inbound",
    "call_status": "in_progress",
    "call_status_description": "n/a",
    "call_phone_type": "Mobile",
    "call_carrier": "Vivo",
    "call_record": "http://wwww.mycompany.com/calls/c9266675-f484-44a7-9ad1-e43a080a8545",
    "legal_bases": [
      {
        "category": "data_processing",
        "type": "pre_existent_contract"
      },
      {
        "category": "communications",
        "type": "consent",
        "status": "granted"
      }
    ]
  }
}

Legal Bases
Field Type Valid params
category String data_processing or communications
type String pre_existent_contract, consent, legitimate_interest, judicial_process, vital_interest or public_interest
status String granted or declined (only when category is communications)

Obs: When the category is data_processing the field status is not mandatory, but pay attention to the fact that if you include this field, the only accepted value for status is granted.


Media Events


Media events allow RD Station to receive events whenever a Contact starts or stops consuming media (audio or video).

Media Playback Started Event

RD Station Marketing always considers the value of the event_type MEDIA_PLAYBACK_STARTED attribute as the identifier of the custom event. This event is recorded whenever a media playback is initiated.


Request body parameters
Field Type Required Description
event_type String true The event type that diferentiates the event. For the media playback started event it should be sent as "MEDIA_PLAYBACK_STARTED".
event_family String true The family of the event for processing purposes. It currently accepts only "CDP" as valid option.
email String true Lead email
name String false Lead name
company_name String false Lead's company name
company_site String false Lead's company website
job_title String false Lead's job title
personal_phone String false Lead's phone
mobile_phone String false Lead's mobile pgone
twitter String false Lead's Twitter
facebook String false Lead's Facebook
linkedin String false Lead's Linkedin
website String false Lead's website
media_type String true Video or Audio
media_metadata String false Media (audio or video) URL
media_recorded_content Boolean false True if this is a recording. False if it is live.
media_identifier String true identifier
media_category String false Media category
media_duration Integer false Media duration, in seconds.
media_published_date_timestamp Timestamp false Datetime of media publishing. Must be in RFC 3339 datetime format (example: '2019-03-15T15:00:00.05Z').
legal_bases Array of Objects false Legal Bases of the contact.

Request body example
{
  "event_type": "MEDIA_PLAYBACK_STARTED",
  "event_family":"CDP",
  "payload": {
    "email": "email@email.com",
    "name": "John Doe",
    "company_name": "Acme Inc",
    "company_site": "http://www.acme.inc",
    "job_title": "CTO",
    "personal_phone": "+551112341234",
    "mobile_phone": "+5511912341234",
    "twitter": "@johndoe",
    "facebook": "https://facebook.com/john.doe/",
    "linkedin": "https://www.linkedin.com/in/johndoe/",
    "website": "https://johndoe.com",
    "media_type": "Video",
    "media_metadata": "https://www.mycompany.com/videos/c9266675-f484-44a7-9ad1-e43a080a8545",
    "media_recorded_content": true,
    "media_identifier": "c9266675-f484-44a7-9ad1-e43a080a8545",
    "media_category": "Marketing",
    "media_duration": 58,
    "media_published_date_timestamp": "2019-03-15T14:53:42.928Z",
    "legal_bases": [
      {
        "category": "data_processing",
        "type": "pre_existent_contract"
      },
      {
        "category": "communications",
        "type": "consent",
        "status": "granted"
      }
    ]
  }
}

Legal Bases
Field Type Valid params
category String data_processing or communications
type String pre_existent_contract, consent, legitimate_interest, judicial_process, vital_interest or public_interest
status String granted or declined (only when category is communications)

Obs: When the category is data_processing the field status is not mandatory, but pay attention to the fact that if you include this field, the only accepted value for status is granted.


Media Playback Stopped Event

RD Station Marketing always considers the value of the event_type MEDIA_PLAYBACK_STOPPED attribute as the identifier of the custom event. This event is recorded whenever a media playback ends.


Request body parameters
Field Type Required Description
event_type String true The event type that diferentiates the event. For the media playback stopped event it should be sent as "MEDIA_PLAYBACK_STOPPED".
event_family String true The family of the event for processing purposes. It currently accepts only "CDP" as valid option.
email String true Lead email
name String false Lead name
company_name String false Lead's company name
company_site String false Lead's company website
job_title String false Lead's job title
personal_phone String false Lead's phone
mobile_phone String false Lead's mobile pgone
twitter String false Lead's Twitter
facebook String false Lead's Facebook
linkedin String false Lead's Linkedin
website String false Lead's website
media_type String true Video or Audio
media_metadata String false Media (audio or video) URL
media_recorded_content Boolean false True if this is a recording. False if it is live.
media_identifier String true identifier
media_category String false Media category
media_duration Integer false Media duration, in seconds.
media_published_date_timestamp Timestamp false Datetime of media publishing. Must be in RFC 3339 datetime format (example: '2019-03-15T15:00:00.05Z').
media_finished Boolean false Indicates if the media was watched or listened to the end.
media_user_interaction_duration Integer false Time the user listend or watched the media. In seconds.
media_user_interaction_percent Integer false Percentage of the media that the user listend or watched.
media_user_interaction_date_timestamp String false Datetime of when the media was consumed. Must be in RFC 3339 datetime format (example: '2019-03-15T15:00:00.05Z').
legal_bases Array of Objects false Legal Bases of the contact.

Request body example
{
  "event_type": "MEDIA_PLAYBACK_STOPPED",
  "event_family":"CDP",
  "payload": {
    "email": "email@email.com",
    "name": "John Doe",
    "company_name": "Acme Inc",
    "company_site": "http://www.acme.inc",
    "job_title": "CTO",
    "personal_phone": "+551112341234",
    "mobile_phone": "+5511912341234",
    "twitter": "@johndoe",
    "facebook": "https://facebook.com/john.doe/",
    "linkedin": "https://www.linkedin.com/in/johndoe/",
    "website": "https://johndoe.com",
    "media_type": "Video",
    "media_metadata": "https://www.mycompany.com/videos/c9266675-f484-44a7-9ad1-e43a080a8545",
    "media_identifier": "c9266675-f484-44a7-9ad1-e43a080a8545",
    "media_category": "Marketing",
    "media_finished": true,
    "media_recorded_content": true,
    "media_duration": 58,
    "media_published_date_timestamp": "2019-03-11T14:53:42.928Z",
    "media_user_interaction_duration": 30,
    "media_user_interaction_percent": 30,
    "media_user_interaction_date_timestamp":  "2019-03-15T14:53:42.928Z",
    "legal_bases": [
      {
        "category": "data_processing",
        "type": "pre_existent_contract"
      },
      {
        "category": "communications",
        "type": "consent",
        "status": "granted"
      }
    ]
  }
}

Legal Bases
Field Type Valid params
category String data_processing or communications
type String pre_existent_contract, consent, legitimate_interest, judicial_process, vital_interest or public_interest
status String granted or declined (only when category is communications)

Obs: When the category is data_processing the field status is not mandatory, but pay attention to the fact that if you include this field, the only accepted value for status is granted.


Events Batch


The events batch endpoint allows RD Station to receive more than one event at once. Thus allowing events of order placed and order placed items to be sent without the need of multiple requests.

Request body parameters
Field Type Required Description
event_type String true The event type as defined by one of the events above
event_family String true The family of the event for processing purposes. It currently accepts only "CDP" as valid option.
payload Object true Payload object containing the attributes of the related event_type as defined above.

Request body example
[
  {
    "event_type" : "#type",
    "event_family" : "CDP",
    "payload": {
      /* ... */
    }
  },
  {
    "event_type" : "#type",
    "event_family" : "CDP",
    "payload": {
      /* ... */
    }
  },
  {
    "event_type" : "#type",
    "event_family" : "CDP",
    "payload":
    {
      /* ... */
    }
  },
  /* ... */
]

Request response example

Success | Code: 200


{
    "event_batch_uuid": "UUID of the batch",
    "events":[
	     { "event_uuid":"Event UUID" },
	     { "event_uuid":"Event UUID" },
	     { "event_uuid":"Event UUID" },
       /* ... */
     ]
}
The event uuid array is organized according to the the order of the array sent in the request payload.