Skip to end of metadata
Go to start of metadata

Plugin Service

When you develop an app for the AppNexus Apps Marketplace (customer login required), you build an umbrella app and then one or more specific app instances that plug into the AppNexus workflow in different places. The Plugin Service allows you to create and control the umbrella app. For information about creating and managing app instances, see the Plugin Instance Service.

On This Page

REST API

There are three different user roles that can make calls to this service:

  • App Providers - Members who develop apps in the App Marketplace
  • App Subscribers - Members who subscribe to and use apps
  • Non-member Developers - App providers who are not associated to any member

Certain roles are restricted from making one or more calls. The roles that can make the calls specified in the Rest API section (below) are listed below each call.

Add an app:
POST https://api.appnexus.com/plugin
(plugin JSON)

  • App Providers

Modify an app:
PUT https://api.appnexus.com/plugin?id=PLUGIN_ID
(plugin JSON)

  • App Providers

View all apps:
GET https://api.appnexus.com/plugin

  • App Providers
  • App Subscribers (will only see apps to which they are associated)
  • Non-member Developers (will only see apps to which they are associated)

To view all apps that a member has installed, execute a GET call against the Member service. Locate the id field under plugins . All plugins that this member has installed (regardless of whether they are associated) are listed by plugin number.

View a specific app:
GET https://api.appnexus.com/plugin?id=PLUGIN_ID

  • App Providers
  • App Subscribers (will only see apps to which they are associated)
  • Non-member Developers (will only see app if they are associated to it)

View all apps created by a specific subscriber, developer, or non-member developer:
GET https://api.appnexus.com/plugin?developer_id=DEVELOPER_ID

  • App Subscribers
  • App Providers
  • Non-member Developers

If you cannot see apps that you have created, contact your AppNexus representative.

Delete an app:
DELETE https://api.appnexus.com/plugin

  • App Providers

JSON Fields

Field

Type

Description

Default

Required On

id

int

The ID of the app.

Auto-generated number

PUT/DELETE, in query string

name

string

The name of the app that is displayed on the main App Marketplace page and in the More Info dialog.

 Click for screenshots




POST

description

string

The description of the app that is displayed in the More Info dialog.

 Click for a screenshot



public_key

string

The public key of the public/private key pair for authenticating the app. For more details about creating this public/private key pair, see App Development (Customer login required).

moreinfo_url

string

The URL of the app used for demo purposes.

null

log_level_data_fee

int

Read-only. The dollar amount charged to the member consuming log-level data.

null

This field can only be updated through the App-Contract service.

plugin_category_id

int

The identification number of the category to which this app will be assigned. Note that if you select a number that is a sub-level category, this app will automatically be assigned to both this category and the associate parent category. If you enter a parent category, however, the app belongs only to that one and not to any sub-level category.

null

is_available

boolean

If true, the app is exposed to members in the App Marketplace by default. You can use the member_availabilities field to override this setting for specific members. For example, if you wanted to expose the app only to specific clients, you would set is_available to false and then use member_availabilities to expose the app to those specific clients. For more details, see Member Availabilities below.

false

summary

string

The description of the app that is displayed on the main App Marketplace page.

 Click for a screenshot


null

contact_name

string

The name of the app developer. This appears on the Fee Details Screen.

null

contact_phone

string

The phone number that you can use to contact the app developer. This appears on the Fee Details Screen.

null

contact_email

string

The email address that you can use to contact the app developer. This appears on the Fee Details Screen.

null

contact_text

string

This is any additional text that usually providers more information about the app developer. This appears on the Fee Details Screen.

null

author_display_name

string

The author name that is displayed below the name of the app on the main App Marketplace page and in the More Info dialog.

 Click for screenshots


null

recommended

boolean

Read-only. Indicates whether the app is listed in the Recommended Apps row of the Apps Marketplace Screen (Customer login required).

false

featured

boolean

Read-only. Indicates whether the app is listed in the carousel area of the Browse for Available Apps (Customer login required).

false

has_payment_access

boolean

Read-only. Indicates whether payment terms and fees can be applied to this app.

true

allowed_asset_count

int

Read-only. Indicates the number of images that can be associated to an app. This cannot exceed five (5). These images are defined in the App-Asset service (Admin only).

addendum

string

Read-only. Contains the text of the addendum terms for the app.

null

click_to_install

boolean

Indicates whether the install option on the App Marketplace UI screen is functional.

false

video_url

string

The URL of the tutorial video for this app. Must be Vimeo hosted.

null

developer

object

The developer of the app. For more information, see Developer below.

POST

domains

array of objects

The sites to which AppNexus Marketplace will look to see if a user is already logged into AppNexus Console. For more information, see Domains below.

null

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.

null

plugin-instances

array of objects

Read-only. The specific instances associated to the app. For more information about app instances, see the Plugin Instance Service.

null

member_availabilities array of objects This setting indicates if this app is available to certain members or restricted from certain members. This value will override the setting is_available . For more information, see Member Availabilities .

Developer

The developer object contains the following fields:

Field

Type

Description

Default

Required On

id

int

The ID of the developer that built the app. You can use the Developer Service to retrieve this ID.

POST

name

string

Read-only. The name of the developer that built the app.

Domains

The domains object contains the following field:

Field

Type

Description

Default

Required On

name

string

The domain name of the site to which AppNexus Marketplace will look to see if a user is logged on.

null

Permissions

Each object in the permissions array contains the following fields:

Field

Type

Description

Default

Required On

service

enum

The name of the API service that the app is permitted to use.

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.

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 an AppNexus representative.

Member Availabilities

The main is_available field defines whether or not the app is exposed to all members by default. You can use the member_availabilities field to override this default for specific members. For example, if you wanted to expose the app only to select members, you would set is_available to false and then use member_availabilities to expose the app to those specific members.

Each object in the member_availabilities array contains the following fields:

Field

Type

Description

Default

Required On

id

int

The ID of the member.

POST/PUT, if passing main is_available field

is_available

boolean

If true, the app is exposed to the member.

POST/PUT, if passing id

Examples

Add an app
Modify an app
View all apps
View a specific app
View all apps created by a specific subscriber, developer, or non-member developer
Delete an app
  • No labels