MACT Overview

X mobile app promotion measurement allows advertisers to track the success of advertising campaigns on X that are designed to drive installs or other in-app conversions. A X mobile measurement partner provides the ability for an advertiser to manage what conversions they want to track from the apps they are promoting on X. Once the advertiser has set up the type and time windows of the events they want to track the mobile measurement partner will send all of those events to X and immediately receive attribution data indicating the campaign and creative that the user engaged with to drive the conversion.

Conversion Events

In order to report a conversion event to X and get attribution data the partner must send the mobile app ID, type and timestamp of the conversion, as well as a hashed value of the advertising/device ID. Providing this data will record the conversion event on X’s platform as well as return the attribution where appropriate. In addition, the advertiser may elect to provide extra metadata about the conversion event such as value of a purchase, the ID of a product, or a registration method.

API reference

Conversion Event

POST conversion_event

Record a mobile measurement conversion event. The response will indicate Twitter or Twitter Audience Platform (TAP) attribution.

This relates to the GET conversion_attribution endpoint.

Either Twitter, TAP or no attribution will be claimed in the response. The twitter_attribution node will always be present and have a value of null when there is no Twitter attribution (see the example response below). If TAP attribution is claimed a tpn_attribution node will be present and populated accordingly. Please refer to the TAP overview for more information.

There are several optional parameters available to set metadata associated with each conversion event. This metadata has no effect on attribution calculations.

Resource URL

https://ads-api.x.com/12/conversion_event

Parameters
NameDescription
app_id
required
The unique identifier with the corresponding app store.

Type: int, string

Example: 333903271, com.vine.android
conversion_time
required
The time of the conversion event in an ISO-8601 timestamp format, with milliseconds appended.

Type: string

Example: 2014-05-22T02:38:28.103Z
conversion_type
required
The type of conversion event.

Type: enum

Possible values: PURCHASE, SIGN_UP, INSTALL, RE_ENGAGE, UPDATE, TUTORIAL_COMPLETE, RESERVATION, ADD_TO_CART, ADD_TO_WISHLIST, LOGIN, CHECKOUT_INITIATED, SEARCH, LEVEL_ACHIEVED, ACHIEVEMENT_UNLOCKED, CONTENT_VIEW, SHARE, INVITE, ADDED_PAYMENT_INFO, SPENT_CREDITS, RATED
hashed_device_id
required
The HMAC_SHA-256 hashed IDFA or AdID.

Type: string

Example: ABCD1234XYZ
os_type
required
The OS type for the app.

Type: enum

Possible values: IOS, ANDROID
click_window
optional
The click window for this event in days.

Type: int

Note: click_window must be greater than or equal to view_through_window

Default: 14
Possible values: 1, 7, 14, 30
device_ip_address
optional
IPv4 or IPv6 address of the device when the conversion event happened.

Type: string

Example: 192.133.78.1
level
optional
A level associated with this event.

Type: int

Example: 2
non_twitter_engagement_time
optional
The time of the last non-twitter engagement prior to the conversion.

Type: string

Example: 2014-05-22T02:38:28.103Z
non_twitter_engagement_type
optional
The type of non-twitter engagement prior to the conversion event.

Type: enum

Possible values: CLICK, VIEW
number_items
optional
Number of items associated with this event.

Type: int

Example: 2
price_currency
optional
Expected to be an ISO 4217 code to indicate the currency associated with this event.

Type: String

Examples: EUR,USD,JPY
price_micro
optional
A price amount associated to this event in micro.

Type: int

Example: 123450000
user_payment_info
optional
A boolean value to indicate if the user’s payment information is stored in the app associated with this event.

Type: bool

Possible values: true or false
view_through_window
optional
The view through window for this event in days.

Note:

click_window must be greater than or equal to view_through_window.

Type: int

Default: 1
Possible values: 0, 1, 7, 14, 30
Example Request

https://ads-api.x.com/12/conversion_event?app_id=333903271&os_type=IOS&hashed_device_id=ABCD1234XYZ&conversion_type=INSTALL&conversion_time=2013-04-16T07:00:00.123Z&click_window=14&view_through_window=1

Example Response
    {
      "data": {
        "conversion_value_micro": 0,
        "view_through_window": 1,
        "tpn_attribution": null,
        "conversion_time": "2017-01-21T01:14:00.602Z",
        "click_window": 30,
        "limit_ad_tracking": false,
        "event_metadata": null,
        "non_twitter_engagement_type": null,
        "conversion_type": "INSTALL",
        "partner_client_id": "com.appname contact id",
        "app_id": "com.appname",
        "hashed_device_id": "lke1GZa3AseB343ZcCQq7svfHzLfuSqyYnE+Rf49MOI=",
        "twitter_attribution": {
          "country_code": "US",
          "engagement_time": "2017-01-21T01:13:00.602Z",
          "engagement_type": "CLICK",
          "attribution_type": "PROMOTED",
          "promoted_properties": {
            "campaign_id": "4ns44",
            "line_item_id": "3x44d",
            "publisher_app_id": "333903271"
            "account_id":"18ce11e3egb",
            "line_item_objective": "APP_INSTALLS",
            "campaign_name": null
          },
          "tweet_id": "11434635565377600"
        },
        "os_type": "ANDROID",
        "non_twitter_engagement_time": null
      },
      "request": {
        "params": {
          "version_number": "1",
          "app_id": "com.appname",
          "conversion_type": "INSTALL",
          "os_type": "ANDROID",
          "hashed_device_id": "lke1GZa3AseB343ZcCQq7svfHzLfuSqyYnE+Rf49MOI=",
          "conversion_time": "2017-01-21T01:14:00.602Z",
          "click_window": "30",
          "view_through_window": "1",
          "limit_ad_tracking": "false"
        }
      }
    }

App Event Tags

GET accounts/:account_id/app_event_tags

Retrieve details for some or all app event tags associated with the current account.

These are what define the conversion windows set up per each conversion type for Mobile App Conversion Tracking.

Resource URL

https://ads-api.x.com/12/accounts/:account_id/app_event_tags

Parameters
NameDescription
account_id
required
The identifier for the leveraged account. Appears within the resource’s path and is generally a required parameter for all Advertiser API requests excluding GET accounts. The specified account must be associated with the authenticated user.

Type: string

Example: 18ce54d4x5t
app_event_tag_ids
optional
Scope the response to just the desired app event tags by specifying a comma-separated list of identifiers. Up to 200 IDs may be provided.

Type: string

Example: jhp
count
optional
Specifies the number of records to try and retrieve per distinct request.

Type: int

Default: 200
Min, Max: 1, 1000
cursor
optional
Specifies a cursor to get the next page of results. See Pagination for more information.

Type: string

Example: 8x7v00oow
sort_by
optional
Sorts by supported attribute in ascending or descending order. See Sorting for more information.

Type: string

Example: created_at-asc
with_deleted
optional
Include deleted results in your request.

Type: boolean

Default: false
Possible values: true, false
with_total_count
optional
Include the total_count response attribute.

Note: This parameter and cursor are exclusive.

Note: Requests which include total_count will have lower rate limits, currently set at 200 per 15 minutes.

Type: boolean

Default: false
Possible values: true, false
Example Request

GET https://ads-api.x.com/12/accounts/18ce54d4x5t/app_event_tags?app_event_tag_ids=jhp

Example Response
    {
      "request": {
        "params": {
          "app_event_tag_ids": [
            "jhp"
          ],
          "account_id": "18ce54d4x5t"
        }
      },
      "next_cursor": null,
      "data": [
        {
          "provider_app_event_name": null,
          "app_store_identifier": "co.vine.android",
          "post_view_attribution_window": 1,
          "deep_link_scheme": "vine://",
          "id": "jhp",
          "retargeting_enabled": true,
          "conversion_type": "INSTALL",
          "created_at": "2016-12-08T07:49:58Z",
          "post_engagement_attribution_window": 14,
          "provider_app_event_id": null,
          "last_tracked_at": "2021-05-22T17:00:04Z",
          "status": "TRACKING",
          "updated_at": "2016-12-08T23:07:54Z",
          "os_type": "ANDROID",
          "deleted": false
        }
      ]
    }

GET accounts/:account_id/app_event_tags/:app_event_tag_id

Retrieve a specific app event tag associated with the current account.

These are what define the conversion windows set up per each conversion type for Mobile App Conversion Tracking.

Resource URL

https://ads-api.x.com/12/accounts/:account_id/app_event_tags/:app_event_tag_id

Parameters
NameDescription
account_id
required
The identifier for the leveraged account. Appears within the resource’s path and is generally a required parameter for all Advertiser API requests excluding GET accounts. The specified account must be associated with the authenticated user.

Type: string

Example: 18ce54d4x5t
app_event_tag_id
required
A reference to the app event tag you are operating with in the request.

Type: string

Example: jhp
with_deleted
optional
Include deleted results in your request.

Type: boolean

Default: false
Possible values: true, false

Example Request

GET https://ads-api.x.com/12/accounts/18ce54d4x5t/app_event_tags/jhp

Example Response

    {
      "request": {
        "params": {
          "app_event_tag_id": "jhp",
          "account_id": "18ce54d4x5t"
        }
      },
      "data": {
        "provider_app_event_name": null,
        "app_store_identifier": "co.vine.android",
        "post_view_attribution_window": 1,
        "deep_link_scheme": "vine://",
        "id": "jhp",
        "retargeting_enabled": true,
        "conversion_type": "INSTALL",
        "created_at": "2016-12-08T07:49:58Z",
        "post_engagement_attribution_window": 14,
        "provider_app_event_id": null,
        "last_tracked_at": "2021-05-22T17:00:04Z",
        "status": "TRACKING",
        "updated_at": "2016-12-08T23:07:54Z",
        "os_type": "ANDROID",
        "deleted": false
      }
    }

POST accounts/:account_id/app_event_tags

Create a new app event tag associated with the current account.

Resource URL

https://ads-api.x.com/12/accounts/:account_id/app_event_tags

Parameters
NameDescription
account_id
required
The identifier for the leveraged account. Appears within the resource’s path and is generally a required parameter for all Advertiser API requests excluding GET accounts. The specified account must be associated with the authenticated user.

Type: string

Example: 18ce54d4x5t
app_store_identifier
required
The app store identifier.

Type: string

Example: com.twitter.android
conversion_type
required
The type of conversion event.

Type: enum

Possible values: ACHIEVEMENT_UNLOCKED, ADDED_PAYMENT_INFO, ADD_TO_CART, ADD_TO_WISHLIST, CHECKOUT_INITIATED, CONTENT_VIEW, INSTALL, INVITE, LEVEL_ACHIEVED, LOGIN, PURCHASE, RATED, RESERVATION, RE_ENGAGE, SEARCH, SHARE, SIGN_UP, SPENT_CREDITS, TUTORIAL_COMPLETE, UPDATE
os_type
required
The OS type for the app.

Type: enum

Possible values: IOS, ANDROID
provider_app_event_id
required
The ID of the conversion tag on provider’s site.

Type: string

Example: provider_tag_j5394
provider_app_event_name
required
The name of the conversion tag on provider’s site.

Type: string

Example: provider_name_a4382
deep_link_scheme
optional
Specify the deep link URI for the app associated with this tag.

Type: string

Example: twitter://
post_engagement_attribution_window
optional
The post-engagement attribution window for these events.

Type: int

Default: 30
Possible values: 1, 7, 14, 30
post_view_attribution_window
optional
The post-view attribution window for these events.

Type: int

Default: 1
Possible values: 0, 1, 7, 14, 30
retargeting_enabled
optional
Specify if retargeting should be enabled for this app event tag.

Type: boolean

Default: true
Possible values: true, false
Example Request

POST https://ads-api.x.com/12/accounts/18ce54d4x5t/app_event_tags?app_store_identifier=com.twitter.android&os_type=ANDROID&conversion_type=PURCHASE&provider_app_event_id=abc123&provider_app_event_name=test-tag

Example Response
    {
      "data": {
        "provider_app_event_name": "test-tag",
        "app_store_identifier": "com.twitter.android",
        "post_view_attribution_window": 1,
        "deep_link_scheme": "https://",
        "id": "3p3t",
        "retargeting_enabled": true,
        "conversion_type": "PURCHASE",
        "created_at": "2017-09-06T06:58:22Z",
        "post_engagement_attribution_window": 30,
        "provider_app_event_id": "abc123",
        "updated_at": "2017-09-06T06:58:22Z",
        "os_type": "ANDROID",
        "deleted": false
      },
      "request": {
        "params": {
          "provider_app_event_name": "test-tag",
          "app_store_identifier": "com.twitter.android",
          "account_id": "18ce54d4x5t",
          "conversion_type": "PURCHASE",
          "provider_app_event_id": "abc123",
          "os_type": "ANDROID"
        }
      }
    }

DELETE accounts/:account_id/app_event_tags/:id

Delete the specified app event tag belonging to the current account.

Resource URL

https://ads-api.x.com/12/accounts/:account_id/app_event_tags/:id

Parameters
NameDescription
account_id
required
The identifier for the leveraged account. Appears within the resource’s path and is generally a required parameter for all Advertiser API requests excluding GET accounts. The specified account must be associated with the authenticated user.

Type: string

Example: 18ce54d4x5t
id
required
A reference to the app event tag you are operating with in the request.

Type: string

Example: jhp
Example Request

DELETE https://ads-api.x.com/12/accounts/18ce54d4x5t/app_event_tags/jhp

Example Response
    {
      "data": {
        "provider_app_event_name": null,
        "app_store_identifier": "co.vine.android",
        "post_view_attribution_window": 1,
        "deep_link_scheme": "vine://",
        "id": "jhp",
        "retargeting_enabled": true,
        "conversion_type": "INSTALL",
        "created_at": "2016-12-08T07:49:58Z",
        "post_engagement_attribution_window": 14,
        "provider_app_event_id": null,
        "last_tracked_at": "2021-05-22T17:00:04Z",
        "status": "TRACKING",
        "updated_at": "2017-08-30T05:44:57Z",
        "os_type": "ANDROID",
        "deleted": true
      },
      "request": {
        "params": {
          "id": "jhp",
          "account_id": "5gvk9h"
        }
      }
    }

App Lists

GET accounts/:account_id/app_lists

Retrieve details for some or all app lists associated with the current account.

Resource URL

https://ads-api.x.com/12/accounts/:account_id/app_lists

Parameters

NameDescription
account_id
required
The identifier for the leveraged account. Appears within the resource’s path and is generally a required parameter for all Advertiser API requests excluding GET accounts. The specified account must be associated with the authenticated user.

Type: string

Example: 18ce54d4x5t
app_list_ids
optional
Scope the response to just the desired app lists by specifying a comma-separated list of identifiers. Up to 200 IDs may be provided.

Type: string

Example: wm7x
count
optional
Specifies the number of records to try and retrieve per distinct request.

Type: int

Default: 200
Min, Max: 1, 1000
cursor
optional
Specifies a cursor to get the next page of results. See Pagination for more information.

Type: string

Example: 8x7v00oow
sort_by
optional
Sorts by supported attribute in ascending or descending order. See Sorting for more information.

Type: string

Example: created_at-asc
with_deleted
optional
Include deleted results in your request.

Type: boolean

Default: false
Possible values: true, false
with_total_count
optional
Include the total_count response attribute.

Note: This parameter and cursor are exclusive.

Note: Requests which include total_count will have lower rate limits, currently set at 200 per 15 minutes.

Type: boolean

Default: false
Possible values: true, false
Example Request

GET https://ads-api.x.com/12/accounts/18ce54d4x5t/app_lists?app_list_ids=wm7x

Example Response
    {
      "request": {
        "params": {
          "app_list_ids": [
            "wm7x"
          ],
          "account_id": "18ce54d4x5t"
        }
      },
      "next_cursor": null,
      "data": [
        {
          "id": "wm7x",
          "name": "foo @ 14026528192426843"
        }
      ]
    }

GET accounts/:account_id/app_lists/:app_list_id

Retrieve a specific app list associated with the current account.

Resource URL

https://ads-api.x.com/12/accounts/:account_id/app_lists/:app_list_id

Parameters
NameDescription
account_id
required
The identifier for the leveraged account. Appears within the resource’s path and is generally a required parameter for all Advertiser API requests excluding GET accounts. The specified account must be associated with the authenticated user.

Type: string

Example: 18ce54d4x5t
app_list_id
required
A reference to the app list you are operating with in the request.

Type: string

Example: 28ukf
with_deleted
optional
Include deleted results in your request.

Type: boolean

Default: false
Possible values: true, false
Example Request

GET https://ads-api.x.com/12/accounts/18ce54d4x5t/app_lists/28ukf

Example Response
    {
      "data": {
        "name": "twitter @ 262689209670784",
        "id": "28ukf",
        "created_at": "2017-08-17T17:07:42Z",
        "updated_at": "2017-08-17T17:07:42Z",
        "deleted": false,
        "apps": [
          {
            "app_store_identifier": "com.twitter.android",
            "os_type": "Android"
          }
        ]
      },
      "request": {
        "params": {
          "app_list_id": "28ukf",
          "account_id": "18ce54d4x5t"
        }
      }
    }

POST accounts/:account_id/app_lists

Create an app_list associated with the current account.

Currently there is a limit of 100 app_list objects per account_id and 500 apps per app_list.

Resource URL

https://ads-api.x.com/12/accounts/:account_id/app_lists

Parameters
NameDescription
account_id
required
The identifier for the leveraged account. Appears within the resource’s path and is generally a required parameter for all Advertiser API requests excluding GET accounts. The specified account must be associated with the authenticated user.

Type: string

Example: 18ce54d4x5t
app_store_identifiers
required
The app store identifiers to include in the app_list

Type: string

Example: com.twitter.android
name
required
The name you will assign to the app_list

Type: string

Example: My First App List
Example Request

POST https://ads-api.x.com/12/accounts/18ce54d4x5t/app_lists?name=app list&app_store_identifiers=com.twitter.android

Example Response
    {
      "data": {
        "name": "app list",
        "id": "2a4um",
        "created_at": "2017-09-06T07:17:26Z",
        "updated_at": "2017-09-06T07:17:26Z",
        "deleted": false,
        "apps": [
          {
            "app_store_identifier": "com.twitter.android",
            "os_type": "Android"
          }
        ]
      },
      "request": {
        "params": {
          "app_store_identifiers": [
            "com.twitter.android"
          ],
          "name": "app list",
          "account_id": "18ce54d4x5t"
        }
      }
    }

DELETE accounts/:account_id/app_lists/:app_list_id

Delete the specified app list associated with the current account.

Resource URL

https://ads-api.x.com/12/accounts/:account_id/app_lists/:app_list_id

Parameters
NameDescription
account_id
required
The identifier for the leveraged account. Appears within the resource’s path and is generally a required parameter for all Advertiser API requests excluding GET accounts. The specified account must be associated with the authenticated user.

Type: string

Example: 18ce54d4x5t
app_list_id
required
A reference to the app list you are operating with in the request.

Type: string

Example: 28ukf
Example Request

DELETE https://ads-api.x.com/12/accounts/18ce54d4x5t/app_lists/28ukf

Example Response
    {
      "data": {
        "name": "twitter @ 262689209670784",
        "id": "28ukf",
        "created_at": "2017-08-17T17:07:42Z",
        "updated_at": "2017-09-12T22:20:33Z",
        "deleted": true,
        "apps": [
          {
            "app_store_identifier": "com.twitter.android",
            "os_type": "Android"
          }
        ]
      },
      "request": {
        "params": {
          "app_list_id": "28ukf",
          "account_id": "18ce54d4x5t"
        }
      }
    }

App Event Provider Configurations

GET accounts/:account_id/app_event_provider_configurations

Retrieve details for some or all app event provider configurations (core configuration for Mobile Application Conversion Tracking) associated with the current account.

Resource URL

https://ads-api.x.com/11/accounts/:account_id/app_event_provider_configurations

Parameters
NameDescription
account_id
required
The identifier for the leveraged account. Appears within the resource’s path and is generally a required parameter for all Advertiser API requests excluding GET accounts. The specified account must be associated with the authenticated user.

Type: string

Example: 18ce54d4x5t
count
optional
Specifies the number of records to try and retrieve per distinct request.

Type: int

Default: 200
Min, Max: 1, 1000
cursor
optional
Specifies a cursor to get the next page of results. See Pagination for more information.

Type: string

Example: 8x7v00oow
ids
optional
Scope the response to just the desired configurations by specifying a comma-separated list of identifiers. Up to 200 IDs may be provided.

Type: string

Example: 25n
sort_by
optional
Sorts by supported attribute in ascending or descending order. See Sorting for more information.

Type: string

Example: created_at-asc
with_deleted
optional
Include deleted results in your request.

Type: boolean

Default: false
Possible values: true, false
with_total_count
optional
Include the total_count response attribute.

Note: This parameter and cursor are exclusive.

Note: Requests which include total_count will have lower rate limits, currently set at 200 per 15 minutes.

Type: boolean

Default: false
Possible values: true, false
Example Request

GET https://ads-api.x.com/11/accounts/18ce54d4x5t/app_event_provider_configurations?ids=25n

Example Response
    {
      "data": [
        {
          "provider_name": "Answers powered by Fabric",
          "id": "25n",
          "provider_advertiser_id": "54ac2766f0de9e1f7a00001a",
          "created_at": "2016-12-08T07:49:58Z",
          "provider_advertiser_identifier": "54ac2766f0de9e1f7a00001a",
          "updated_at": "2017-05-12T21:37:15Z",
          "deleted": false
        }
      ],
      "next_cursor": null,
      "request": {
        "params": {
          "ids": [
            "25n"
          ],
          "account_id": "18ce54d4x5t"
        }
      }
    }

GET accounts/:account_id/app_event_provider_configurations/:id

Retrieve a specific ID for event provider configurations (core configuration for Mobile Application Conversion Tracking) associated with the current account.

Resource URL

https://ads-api.x.com/11/accounts/:account_id/app_event_provider_configurations/:id

Parameters
NameDescription
account_id
required
The identifier for the leveraged account. Appears within the resource’s path and is generally a required parameter for all Advertiser API requests excluding GET accounts. The specified account must be associated with the authenticated user.

Type: string

Example: 18ce54d4x5t
id
required
A reference to the app event provider configuration you are operating with in the request.

Type: string

Example: 25n
with_deleted
optional
Include deleted results in your request.

Type: boolean

Default: false
Possible values: true, false
Example Request

GET https://ads-api.x.com/11/accounts/18ce54d4x5t/app_event_provider_configurations/25n

Example Response
    {
      "data_type": "app_event_provider_configuration",
      "data": {
        "provider_name": "API McTestface",
        "id": "25n",
        "provider_advertiser_id": "123",
        "created_at": "2017-03-24T22:24:56Z",
        "provider_advertiser_identifier": "123",
        "updated_at": "2017-03-24T22:24:56Z",
        "deleted": false
      },
      "request": {
        "params": {
          "id": "25n",
          "account_id": "18ce54d4x5t"
        }
      }
    }
POST accounts/:account_id/app_event_provider_configurations

Create a new app event provider configuration associated with the current account. Only one MACT provider can be associated with a particular ads account.

Resource URL

https://ads-api.x.com/11/accounts/:account_id/app_event_provider_configurations

Parameters
NameDescription
account_id
required
The identifier for the leveraged account. Appears within the resource’s path and is generally a required parameter for all Advertiser API requests excluding GET accounts. The specified account must be associated with the authenticated user.

Type: string

Example: 18ce54d4x5t
provider_advertiser_id
required
The advertiser’s identifier from the provider’s site

Type: string

Example: client1
Example Request

POST https://ads-api.x.com/11/accounts/18ce54d4x5t/app_event_provider_configurations?provider_advertiser_id=client1

Example Response
    {
      "data": {
        "provider_name": "InternalTestProvider",
        "id": "e5g",
        "provider_advertiser_id": "client1",
        "created_at": "2017-08-30T05:40:07Z",
        "provider_advertiser_identifier": "client1",
        "updated_at": "2017-09-06T06:39:03Z",
        "deleted": false
      },
      "request": {
        "params": {
          "provider_advertiser_id": "client1",
          "account_id": "18ce54d4x5t"
        }
      }
    }

DELETE accounts/:account_id/app_event_provider_configurations/:id[¶]

Delete the specified app event provider configuration belonging to the current account.

Resource URL

https://ads-api.x.com/11/accounts/:account_id/app_event_provider_configurations/:id

Parameters
NameDescription
account_id
required
The identifier for the leveraged account. Appears within the resource’s path and is generally a required parameter for all Advertiser API requests excluding GET accounts. The specified account must be associated with the authenticated user.

Type: string

Example: 18ce54d4x5t
id
required
A reference to the app event provider configuration you are operating with in the request.

Type: string

Example: e5g
Example Request

DELETE https://ads-api.x.com/11/accounts/18ce54d4x5t/app_event_provider_configurations/e5g

Example Response
    {
      "data": {
        "provider_name": "InternalTestProvider",
        "id": "e5g",
        "provider_advertiser_id": "client1",
        "created_at": "2017-08-30T05:40:07Z",
        "provider_advertiser_identifier": "client1",
        "updated_at": "2017-08-30T05:40:26Z",
        "deleted": true
      },
      "request": {
        "params": {
          "id": "e5g",
          "account_id": "18ce54d4x5t"
        }
      }
    }

Conversion Attribution

GET conversion_attribution

Query Twitter to check on conversion attribution without writing a conversion event. Response will indicate Twitter attribution.

This relates to the POST conversion_event endpoint.

Either Twitter, TAP, or no attribution will be claimed in the response. The twitter_attribution node will always be present and have a value of null when there is no Twitter attribution and be populated as seen in the example response below. If TAP attribution is claimed a tpn_attribution node will be present and populated accordingly. Please refer to the TAP overview for more information.

Resource URL

https://ads-api.x.com/12/conversion_attribution

Parameters
NameDescription
app_id
required
The unique identifier with the corresponding app store.

Type: int, string

Example: 333903271, com.vine.android
conversion_time
required
The time of the conversion event in an ISO-8601 timestamp format, with milliseconds appended.

Type: string

Example: 2014-05-22T02:38:28.103Z
conversion_type
required
The type of conversion event.

Type: enum

Possible values: ACHIEVEMENT_UNLOCKED, ADDED_PAYMENT_INFO, ADD_TO_CART, ADD_TO_WISHLIST, CHECKOUT_INITIATED, CONTENT_VIEW, INSTALL, INVITE, LEVEL_ACHIEVED, LOGIN, PURCHASE, RATED, RESERVATION, RE_ENGAGE, SEARCH, SHARE, SIGN_UP, SPENT_CREDITS, TUTORIAL_COMPLETE, UPDATE
hashed_device_id
required
The HMAC_SHA-256 hashed IDFA or AdID.

Type: string

Example: ABCD1234XYZ
os_type
required
The OS type for the app.

Type: enum

Possible values: IOS, ANDROID
click_window
optional
The click window for this event in days.

Type: int

Default: 14
Possible values: 1, 7, 14, 30
extra_device_ids
optional
A SHA256 of the SHA1 of the device ID passed in hashed_device_id, plus any additional hashed device IDs.

Type: string

Example: ABCD1234XYZ, DCBA4321XYZ
non_twitter_engagement_time
optional
The time of the last non-twitter engagement prior to the conversion.

Type: string

Example: 2014-05-22T02:38:28.103Z
non_twitter_engagement_type
optional
The type of non-twitter engagement prior to the conversion event.

Type: enum

Possible values: CLICK, VIEW
view_through_window
optional
The view through window for this event in days.

Type: int

Default: 1
Possible values: 0, 1, 7, 14, 30
Example Request

GET https://ads-api.x.com/12/conversion_attribution?app_id=333903271&os_type=IOS&hashed_device_id=ABCD1234XYZ&conversion_type=INSTALL&conversion_time=2013-04-16T07:00:00.123Z&click_window=14&view_through_window=0

Example Response
    {
      data:{
        "app_id":"333903271",
        "os_type":"IOS",
        "hashed_device_id":"ABCD1234XYZ",
        "conversion_type":"INSTALL",
        "partner_client_id":"123abc",
        "conversion_time":"2013-04-16T07:00:00.123Z",
        "click_window":14,
        "view_through_window":0,
        "extra_device_ids":null,
        "twitter_attribution":{
          "engagement_type":"VIEW",
          "engagement_time":"2013-04-16T07:00:00.123Z",
          "country_code":"US",
          "tweet_id":"383034667764441088",
          "attribution_type":"PROMOTED",
          "promoted_properties":{
            "campaign_id”: “54a21",
            "campaign_name":"Vine_Contest",
            "line_item_id":"23ab2d4"
          }
        }
      },
      "data_type":"conversion_attribution",
      "request":{
        "params":{
          "app_id":"333903271",
          "os_type":"IOS",
          "hashed_device_id":"ABCD1234XYZ",
          "conversion_time":"2013-04-16T07:00:00.123Z",
          "conversion_type":"INSTALL",
          "click_window":14,
          "view_through_window":0
        }
      }
    }