Override Settings

There are cases where we do not want to use some of the Template values in the Destination app. In these cases we can override template settings values in Adjust App Automation.

This is done by including a dictionary under override_settings key with appropriate values in the Adjust App Automation request.

List of keys that can be used in override_settings:

events: list[dict[str, any]]
partners: list[dict[str, any]]
csv_upload_settings: dict[str, any]
ios_14: dict[str, any]
attribution_settings: dict[str, any]
trackers: list[dict[str, any]]
callbacks: list[dict[str, any]]
sdk_secrets: dict[str, any]
external_data_forwarding: list[dict[str, any]]
fraud_prevention_settings: dict[str, any]
purchase_verification: dict[str, any]

Note

Key names used in override_settings are different from previous Adjust App Automation version (v1).

Callbacks settings

callbacks: list[dict[str, any]]

To override callback settings for example, we need to pass a list of dictionaries which contain the id of the callback whos value want to override along with the actual new value, for example to override Global callback we would send following data:

override_settings": {
    "callbacks": [
        {"id": "global", "url": "https://test.example.com"}
    ]
}

This makes it possible to override several callbacks in one request.

Complete request would now look like this:

$ curl \
--header "AdjustAuthorization: Token <Adjust API Token>" \
--header "Content-Type: application/json" \
--data '{
    "name":"Test App Name",
    "bundle_id":"test.bundle.app",
    "store_id":"test.bundle.app",
    "platform":"android",
    "override_settings": {
        "callbacks": [
            {"id": "global", "url": "https://test.example.com"}
        ]
    }
}' \
-X POST https://settings.adjust.com/api/app

If we now check what data Adjust App Automation has for this app we can see it includes the overridden settings information.

This will be used to override template data when migrating settings from Template app to the Destination app.

$ curl \
  --header "AdjustAuthorization: Token <Adjust API Token>" \
  -L 'https://settings.adjust.com/api/app?store_id=test.bundle.app&platform=android' \
  | json_pp

  {
     "name" : "Test App Name",
     "adjust_app_token" : "p77yk727r18g",
     "platform" : "android",
     "store_id" : "test.bundle.app",
     "channel_setup" : {
        "facebook" : { "app_id" : "123456789" },
        "snapchat" : { "app_id" : "test.bundle.app" }
     },
     "additional_info" : {
        "overrides" : {
           "callbacks" : [{
              "id" : "global",
              "url" : "https://test.davor.com"
           }]
        }
     }
  }

SDK Secrets Settings

sdk_secrets: dict[str, any]

To override enforcing SDK signatures, we need to pass a dictionary which contains the enforce_install_signing and the true or false bool value.

"override_settings": {
    "sdk_secrets": {"enforce_install_signing": "true"}
}

The whole request could look something like:

$ curl \
--header "AdjustAuthorization: Token <Adjust API Token>" \
--header "Content-Type: application/json" \
--data '{
    "name":"Test App Name",
    "bundle_id":"test.bundle.app",
    "store_id":"test.bundle.app",
    "platform":"android",
    "override_settings": {
        "sdk_secrets": {"enforce_install_signing": "true"}
    }
}' \
-X POST https://settings.adjust.com/api/app

Event settings

events: list[dict[str, any]]

Partner Settings

partners: list[dict[str, any]]

CSV Upload Settings

csv_upload_settings: dict[str, any]

iOS Settings

ios_14: dict[str, any]

App Attribution Settings

attribution_settings: dict[str, any]

Trackers Settings

trackers: list[dict[str, any]]

Data Forwarding Settings

external_data_forwarding: list[dict[str, any]]

Fraud Prevention Settings

fraud_prevention_settings: dict[str, any]

Purchase Verification Settings

purchase_verification: dict[str, any]