Content View | Kevel Audience

An event that describes the action of viewing content, such as a newspaper article, on a website.

Here's an example of a Content View:

pcdp("event", "track", {

"clientId": "kevel",

"siteId": "kevel.com",

"type": "contentView",

"customFields": {

"debug": "true",

"role": "superuser"

},

"content": {

"id": "25545c",

"name": "Internet reaches 4bn users",

"categoriesList": [

"News",

"Internet"

],

"media": "article",

"access": "paid"

}

})
import Foundation

let event = """
{

"clientId": "kevel",

"siteId": "kevel.com",

"type": "contentView",

"customFields": {

"debug": "true",

"role": "superuser"

},

"content": {

"id": "25545c",

"name": "Internet reaches 4bn users",

"categoriesList": [

"News",

"Internet"

],

"media": "article",

"access": "paid"

}
}
"""

let trackUrl = "https://tr.cdp.\(websiteDomain)/events"

var urlComponents = URLComponents(string: trackUrl)!

urlComponents.queryItems = [  
  URLQueryItem(name: "id_\(idType)", value: id),  
  URLQueryItem(name: "cookies", value: "false")  
]

var request = URLRequest(url: urlComponents.url!)

request.httpMethod = "POST"

request.setValue("application/json", forHTTPHeaderField: "Content-Type")

request.setValue(userAgent, forHTTPHeaderField: "User-Agent")

request.httpBody = event.data(using: .utf8)!

URLSession.shared.dataTask(with: request).resume()
import androidx.core.net.toUri

import org.json.JSONObject

import java.net.URL

import javax.net.ssl.HttpsURLConnection

val event = """
{

"clientId": "kevel",

"siteId": "kevel.com",

"type": "contentView",

"customFields": {

"debug": "true",

"role": "superuser"

},

"content": {

"id": "25545c",

"name": "Internet reaches 4bn users",

"categoriesList": [

"News",

"Internet"

],

"media": "article",

"access": "paid"

}
}
"""

val trackUri = "https://tr.cdp.$websiteDomain/events".toUri().buildUpon()
    .appendQueryParameter("id_\(idType)", id)
    .appendQueryParameter("cookies", "false")

coroutineScope.launch(Dispatchers.IO) {
    val conn = (URL(trackUri.toString()).openConnection() as HttpsURLConnection).apply {
        requestMethod = "POST"
        setRequestProperty("User-Agent", userAgent)
        setRequestProperty("Content-Type", "application/json")
        doOutput = true
    }

conn.outputStream.use { os ->
        os.write(event.toByteArray(Charsets.UTF_8))
    }

try {
        conn.responseCode
    } finally {
        conn.disconnect()
    }
}

In more detail, the fields supported on every Content View are:

Field Required Type Default Example Description
clientId string "kevel" The client identifier.
siteId string "kevel.com" The client's site identifier.
type required "contentView" "contentView" The event type.
customFields object of string {...} An object with custom fields for extra metadata to be supplied in the event. The values within this object must all be strings.
facebookConversionTracking Facebook Conversion Tracking Details {...} A description of a tracking event to send to Facebook using Facebook Conversions API.
content required Content {...} A description of the actual content being viewed.

Facebook Conversion Tracking Details ​

A description of a tracking event to send to Facebook using Facebook Conversions API.

Field Required Type Default Example Description
pixel_id string "396622227884531" The pixel ID to associate this Facebook tracking event with.
event_id string "0c53d0b57" ID used to deduplicate events sent by both Facebook Pixel and Conversions API. More information about the usefulness of this ID is available at https://developers.facebook.com/docs/marketing-api/server-side-api/using-the-api/deduplicate-pixel-and-server-side-events.
event_name string "AddToCart" A Facebook pixel Standard Event or Custom Event name. This field is used to deduplicate events sent by both Facebook Pixel and Conversions API. The available Standard Events are listed in https://developers.facebook.com/docs/facebook-pixel/reference#standard-events.
custom_data object {...} Parameters to send additional data Facebook can use for ads delivery optimization. More information about the fields that can be supplied here is available at https://developers.facebook.com/docs/marketing-api/conversions-api/parameters/custom-data.

Content ​

A description of the actual content being viewed.

Field Required Type Default Example Description
id string "25545c" The content identifier.
name string "Internet reaches 4bn users" The title of the content.
categoriesList array of string ["News", "Internet"] A hierarchically sorted list of the categories the content is inserted in.
media string "article" The type of media this content is made of. Typical values are 'video', 'article' and 'blog'.
access string "paid" The type of access associated with the content. Typical values are 'paid' and 'free'.