Este punto final solo debe utilizarse al enviar datos de ingresos por impresión (ILRD) directamente a través de S2S para un proveedor de mediación que aún no esté integrado oficialmente con Tenjin.
Autenticación #
Autenticamos cada solicitud enviada al servidor de Tenjin utilizando la clave API como nombre de usuario en la autenticación básica o como parámetro «api_key».
Nota: La integración de servidor a servidor no es una función estándar para todos los clientes de Tenjin. Ponte en contacto con tu gestor de cuentas de Tenjin si deseas que se te incluya en la lista blanca para esta función.
Punto final genérico #
Ruta: https://track.tenjin.io/v0/ad_impressions/
Método: POST
Content-Type: application/x-www-form-urlencoded
Parámetros de información del dispositivo #
Los parámetros marcados con * son obligatorios
| Parámetros | Ejemplo | Descripción |
bundle_id* | com.tenjin.wordfinder | ID de paquete de la aplicación. |
advertising_id* | be277924-d076-456d-9a20-3c8dee5663d3 | El identificador de publicidad sin procesar del dispositivo. Ten en cuenta que la solicitud solo se aceptará si se incluye un identificador de dispositivo válido (puede ser «advertising_id», «developer_device_id» o «analytics_installation_id»). Es importante mantener la coherencia a la hora de enviar los distintos tipos de identificadores de dispositivo. Para iOS, debe ser IDFA. En caso de que no se cuente con el consentimiento del usuario, «advertising_id» puede estar vacío o contener solo ceros, y es necesario proporcionar el IDFV en «developer_device_id» junto con «analytics_installation_id». Para Android, se debe proporcionar el «advertising_id» o el «analytics_installation_id». |
developer_device_id* | 5f4dcc3b-5aa5-40e1-8914-7a9c5d5ebf31 | Campo alternativo para el identificador único del dispositivo, que se utiliza cuando no hay un identificador de publicidad. En el caso de iOS, debe ser el IDFV. |
analytics_installation_id* | 91d1c313-dd94-4bd3-bbbb-16c8b7afa054 | Tenjin ha generado un identificador específico para la instalación de la aplicación. Está disponible mediante la llamada de retorno del cliente o el SDK.SDK de AndroidSDK de iOSSDK de Unity |
platform* | iOS | Plataforma de la aplicación. ios,android (con Google Play Store), android_other (sin Google Play Store, por ejemplo, dispositivos con tiendas de aplicaciones chinas), amazon (con la aplicación Amazon de la App Store) |
app_version* | 1.5 | La versión de tu aplicación Para Android: String app_version = context.getPackageManager().getPackageInfo(context.getPackageName(), 0).versionName + “.” + context.getPackageManager().getPackageInfo(context.getPackageName(), 0).versionCode) Para iOS: [[[NSBundle mainBundle] infoDictionary] objectForKey:@”CFBundleShortVersionString”] |
app_version_code | 2 | Solo Android Versión de la aplicación Android: https://developer.android.com/studio/publish/versioning |
build_id | RQ3A.211001.001 | Para Android: String build = String.valueOf(Build.ID) Para iOS: @import Darwin.sys.sysctl; NSString *build(void) { size_t bufferSize = 64; NSMutableData *buffer = [[NSMutableData alloc] initWithLength:bufferSize]; int status = sysctlbyname(“kern.osversion”, buffer.mutableBytes, &bufferSize, NULL, 0); if (status != 0) { return nil; } return [[NSString alloc] initWithCString:buffer.mutableBytes encoding:NSUTF8StringEncoding];} |
carrier | T-2 | Operador de telefonía móvil (proveedor de servicios de Internet) |
connection_type | wifi | móvil/wifi |
country | US | La norma ISO sobre códigos de país de configuración regional (véase, por ejemplo, la documentación de Apple). |
device | línea azul | Android: android.os.Build.DEVICE (referencia)iOS: systemInfo.machine (referencia) |
device_brand | ||
device_manufacturer | ||
device_model | Pixel 3 | Para Android: String dispositivo = Build.MODEL; Para iOS: @import Darwin.sys.sysctl; NSString *device(void) { size_t bufferSize = 64; NSMutableData *buffer = [[NSMutableData alloc] initWithLength:bufferSize]; int status = sysctlbyname(“hw.machine”, buffer.mutableBytes, &bufferSize, NULL, 0); if (status != 0) { return nil; } return [[NSString alloc] initWithCString:buffer.mutableBytes encoding:NSUTF8StringEncoding];} |
device_product | línea azul | Solo Android: build.PRODUCT |
language | es | Código ISO 639-1 de dos letras |
limit_ad_tracking | FALSO | ¿El dispositivo limita el seguimiento publicitario? (verdadero, falso) |
opt_in | VERDADERO | Consentimiento de aceptación en el dispositivo para el cumplimiento del RGPD: Implementación del SDK de Tenjin |
locale | en_US | Para Android:String locale = Locale.getDefault().toString() Para iOS:[[NSLocale currentLocale] localeIdentifier] |
os_version | 14 | Para Android: String.valueOf(Build.VERSION.SDK_INT) Para iOS: [[UIDevice currentDevice] systemVersion] |
os_version_release | 14.3.1 | Solo para Android: versión completa del sistema operativo |
timezone | Europa/Liubliana | |
user_agent | Linux; U; Android 11; SM-A505FN Build/RP1A.200720.012 | Agente de usuario del dispositivo del usuario |
screen_height | 2028 | |
screen_width | 1080 | |
sent_at | 1693581566830 | Tiempo de la época en milisegundos |
session_id | f4239af1-cd6f-49e8-8b97-f61a9e81a7e0 | |
source_app_store | Google Play | Solo Android: unspecified, googleplay, amazon, other |
ip_address* (Obligatorio para determinar el país del dispositivo) | 87.123.246.9 | La dirección IP del usuario. Se utiliza para identificar el país a efectos de los parámetros de consentimiento de los usuarios de Google DMA. |
ad_user_data (Requerido por Google) | 1 | Parámetro «Signal» de consentimiento del usuario de Google: «consent» indica la transmisión a terceros de datos a nivel de usuario con fines publicitarios; «1» significa que se ha otorgado el consentimiento; «0», que se ha denegado. Elimina por completo el parámetro de la solicitud (no lo dejes en blanco) cuando no haya datos sobre el consentimiento del usuario. |
ad_personalization (Requerido por Google) | 1 | Parámetro «Google User Consent Signal»: «consent» para anuncios personalizados1; «0» para consentimiento denegado. Elimina por completo el parámetro de la solicitud (no lo dejes en blanco) cuando no haya datos sobre el consentimiento del usuario. |
Parámetros de información sobre ingresos #
Los parámetros marcados con * son obligatorios
| Parámetros | Ejemplo | Descripción |
ad_revenue_mediation* | máx. | Nombre de la plataforma de mediación; utiliza los valores que se indican a continuación:max,ironsource,admob,topon,cas,tradplusPara otros tipos de mediación, utiliza custom. |
network_name* | mintegral | Nombre de la red en la que se muestra el anuncio, que suele facilitar el proveedor de mediación |
currency* | USD | Los códigos de moneda de la ISO, por ejemplo, USD, JPY |
revenue_decimal* | 0.001 | Los ingresos en formato decimal para UNA sola impresión solo requieren «revenue_decimal» o «revenue_cpm». Si se reciben ambos, se dará prioridad a «revenue_decimal». |
revenue_cpm | 1.0 | Los ingresos en CPM equivalen a revenue_decimal * 1.000 |
mediation_country | US | País del proveedor de mediación, en los códigos de país de dos letras de la ISO; p. ej., US |
ad_unit_id | 09807a44b2f855cc | ID del bloque publicitario facilitado por la red ganadora |
ad_format | banner | Formato del bloque publicitario: banner, mrec, xpromo, native, leaderboard/leader, interstitial/inter, rewarded/reward, rewarded_inter/rewarded_interstitial |
precision | BID | Valor transmitido por mediación, que indica la fuente de los ingresos, como BID, CPM o RATE. |
creative_id | 9299584 | Valor transmitido por mediación, |
placement | Banner123 | Valor pasado mediante mediación para el nombre de la ubicación publicitaria definida por el editor |
network_placement | Nombre del banner | Nombre de la ubicación de la red publicitaria externa |
auction_id | 27d38ef0-847c-11ec-8b8d-3fe5d30476ca_765960010 | Valor transmitido por mediación |
Ejemplo de solicitud #
curl -X POST https://track.tenjin.com/v0/ad_impressions/ -H "Content-Type: application/x-www-form-urlencoded" -d 'api_key=api_key&advertising_id=123&ad_revenue_mediation=max&network_name=google&mediation_country=US¤cy=USD&ad_unit_id=1&ad_format=banner&revenue_decimal=0.01&precision=BID&creative_id=2&placement=banner_1&auction_id=3&bundle_id=com.tenjin.test&platform=ios&ad_user_data=1&ad_personalization=1'