App Installation service
This service allows app developers to install apps on client systems.
REST API
Method | Endpoint | Description |
---|---|---|
GET |
https://api.appnexus.com/app-installation |
View all installations |
GET |
https://api.appnexus.com/app-installation?id=ID |
View a specific installation |
POST |
https://api.appnexus.com/app-installation |
Install an app for a client |
PUT |
https://sand.api.appnexus.com/app-installation?id=ID |
Update an app installation |
DELETE |
https://api.appnexus.com/app-installation?id=ID |
Delete an app installation |
JSON fields
Field | Type | Description |
---|---|---|
accepted_permissions |
boolean | Indicates whether permission was received to access the areas required by the app for use. |
addendum |
string | This contains the text of the agreement that appears when a user installs the app. This field can be edited using the Markdown markup language. |
has_payment_access |
boolean | Indicates whether payment terms and fees can be applied to this app. Read-only. Default: true |
id |
int | The unique identification number of each installation instance. Required: PUT and DELETE |
installed_on |
timestamp | The date and time that this app was installed by the user. Read-only |
installer_user_id |
int | The unique identification of the user with permission to install apps from the Apps Marketplace. This is also the user who can accept or reject addendum agreements. Read-only |
log_level_data_fee |
int | The fee being charged to the user to consume log-level data. Read-only |
permissions |
array of objects | The operations that the app can perform on behalf of the currently logged in user. For more information, see Permissions below. |
plugin_id |
int | The unique identification number of the plugin installed in this instance. Required: POST |
subscriber_email |
string | The email address of the specified contact person at the app installer. Read-only |
subscriber_entity_id |
int | The unique identification number of the parent of the user that installed the app. Required: POST |
subscriber_entity_type |
enum | The parent organization of the user that installed the app. Possible values include "member" or "bidder" . When adding an installation, you must choose the correct option for the subscriber_entity_id (below). |
subscriber_name |
string | The name of the contact person at the app installer. Read-only |
subscriber_phone |
string | The phone number of the specified contact person at the app installer. Read-only |
Permissions
Each object in the permissions
array contains the following fields:
Field | Type | Description |
---|---|---|
privileges |
array of objects | The types of calls that the app can make to the API service and the specific fields that can be used. See privileges example.Within each object, method defines the calls that can be made to the service ("get" , "post" , "put" , or "delete" ), and fields restricts the permissions to particular fields in the service. If fields is null , the permissions apply to all fields in the service. Note that use of the "delete" method must be approved by a Xandr representative. |
service |
enum | The name of the API service that the app is permitted to use. |
privileges
example
{
"method": "get",
"fields": null
}
Examples
View all installations
$ curl -b cookies -c cookies 'https://api.appnexus.com/app-installation'
{
"response":{
"status":"OK",
"count":1,
"start_element":0,
"num_elements":100,
"app-installations":[
{
"id":9,
"plugin_id":47,
"addendum":"This is test text to demonstrate the addendum functionality.",
"subscriber_entity_type":"member",
"subscriber_entity_id":3754,
"accepted_permission":false,
"installed_on":"2013-05-01 20:58:28",
"installer_user_id":5447,
"permissions":null,
"has_payment_access":false
"log_level_data_fee":5500,
"subscriber_phone":"",
"subscriber_email":"zivester@appnexus.com",
"subscriber_name":"Zach Ivester"
}
],
"dbg_info":{
...
}
}
}
View a specific installation
$ curl -b cookies -c cookies 's://sand.api.appnexus.com/app-installation?id=868'
{
"response":{
"status":"OK",
"count":1,
"start_element":null,
"num_elements":null,
"app-installation":{
"id":868,
"plugin_id":4,
"entity_type":"bidder",
"entity_id":226,
"status":"installed"
}
}
}
Install an app to a client
$ cat add-app-installation.json
{
"app-installation":
{
"plugin_id": "20",
"subscriber_entity_type": "member",
"subscriber_entity_id": "238"
}
}
$ curl -b cookies -c cookies -X POST -d @add-app-installation.json 's://api.appnexus.com/app-installation' | json-pp
{
"response":{
"status":"OK",
"count":1,
"id":18716,
"start_element":0,
"num_elements":100,
"app-installation":{
"id":18716,
"plugin_id":20,
"addendum":null,
"subscriber_entity_type":"member",
"subscriber_entity_id":238,
"accepted_permission":true,
"installed_on":"2013-05-13 12:54:50",
"installer_user_id":3052,
"permissions":null,
"has_payment_access":false
"log_level_data_fee":null,
"subscriber_phone":null,
"subscriber_email":null,
"subscriber_name":"Netseer - member 238"
},
"dbg_info":{
...
}
}
}
Update an app installation
$ cat update-app-installation.json
{
"app-installation":
{
"plugin_id": "19",
"addendum": "www.site.com",
"accepted_permission": false,
"log_level_data_fee": "2000",
"subscriber_phone": "914-555-1212",
"subscriber_email": "JMS@live.com",
"subscriber_name": "Ben Smith"
}
}
$ curl -b cookies -c cookies -X PUT -d @update-app-installation.json 's://api.appnexus.com/app-installation?id=23'
{
"response":{
"status":"OK",
"count":1,
"id":"23",
"start_element":0,
"num_elements":100,
"app-installation":{
"id":23,
"plugin_id":50,
"addendum":null,
"subscriber_entity_type":"member",
"subscriber_entity_id":185,
"accepted_permission":false,
"installed_on":"2013-05-07 15:05:45",
"installer_user_id":43,
"permissions":null,
"has_payment_access":false
"log_level_data_fee":2500,
"subscriber_phone":"",
"subscriber_email":"PQ5ejohnson@appnexus.com",
"subscriber_name":"Emily HB"
},
"dbg_info":{
...
}
}
}
Delete an app installation
$ curl -b cookies -c cookies -X DELETE 'https://api.appnexus.com/app-installation?id=121'
{
"response":{
"status":"OK",
"count":1,
"start_element":0,
"num_elements":100,
"dbg_info":{
...
}
}
}