Skip to end of metadata
Go to start of metadata

Plugin Service

When you develop an app for the Apps Marketplace, you build an umbrella app and then one or more specific app instances that plug into the 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 Apps 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 Xandr 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 Apps Marketplace page and in the More Info dialog.

 

POST

description

string

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

  

public_key

string

The public key of the public/private key pair for authenticating the app.

  

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 Apps 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 Apps Marketplace page.

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 Apps 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.

false

 

featured

boolean

Read-only. Indicates whether the app is listed in the carousel area of the available apps.

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 Apps 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 Apps Marketplace will look to see if a user is already logged into the UI. 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_availabilitiesarray of objectsThis 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 below.  

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 Apps 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 Xandr 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