AppDirect API Reference
Use the following URL format to send API calls:
https://{marketplaceURL}/api/{endpoint}
For example:
https://myMarketplace.com/api/marketplace/v1/bundles
Companies (v296.0-SNAPSHOT)
Download OpenAPI specification:Download
The Companies API allows developers to manage marketplace companies and their user memberships.
Retrieve a bundle
This call returns all details about a specific bundle.
path Parameters
bundleId required | number Bundle product id |
Responses
Request samples
- Shell + Curl
- Node + Request
- Java + Okhttp
curl --request GET \ --url https://marketplace.appdirect.com/api/marketplace/v1/bundles/%7BbundleId%7D
Response samples
- 200
Retrieve a bundle status
This call returns the current state of the bundle.
path Parameters
bundleId required | number Bundle product id |
Responses
Request samples
- Shell + Curl
- Node + Request
- Java + Okhttp
curl --request GET \ --url https://marketplace.appdirect.com/api/marketplace/v1/bundles/%7BbundleId%7D/status
Response samples
- 200
Get item details
Retrieves product details such as branding, pricing, and so on.
Request Body schema: application/jsonrequired
ownerUserId required | string The owner user ID. The owner owns the product after the purchase is complete. |
ownerCompanyId required | string The owner's company's ID. |
buyerUserId required | string The buyer user ID. The buyer is the person who is making the purchase. In assisted sales or reseller scenarios, the buyer can be different than the owner. |
buyerCompanyId required | string The buyer's company's ID. In assisted sales or reseller scenarios, the buyer's company can be different than the owner's company. |
currency required | string = 3 characters Three-letter code, such as USD, that determines the currency in which to display item pricing details. |
productIds required | Array of strings List of product IDs to retrieve details for. |
pricingPlanIds | Array of strings List of pricing plan IDs to retrieve details for. |
bundleIds | Array of strings List of bundle IDs to retrieve details for. (Currently not supported) |
subscriptionIds | Array of strings List of subscription IDs to retrieve details for. (Currently not supported) |
Responses
Request samples
- Payload
- Shell + Curl
- Node + Request
- Java + Okhttp
{- "ownerUserId": "19d7343b-b8ab-464a-a893-8b107d77137d",
- "ownerCompanyId": "b0410709-8333-43e2-84d6-3228f6b9998b",
- "buyerUserId": "55144410-a14a-43a1-9e0a-062c6cf31770",
- "buyerCompanyId": "6e5a0af2-e6be-4a86-a1b0-ffabcc2c6324",
- "currency": "USD",
- "productIds": [
- "100",
- "200"
], - "pricingPlanIds": [
- "a12bcf2e-d27e-4808-aae0-6099cc828664",
- "3e0a22d3-dafb-4b3d-a487-7f4e7a94b32a"
], - "bundleIds": [
- "300",
- "400"
], - "subscriptionIds": [
- "915a6558-5a1b-446a-8ec6-334cc60e3d37",
- "8569269e-4c7f-4238-807c-513c718be135"
]
}
Response samples
- 200
{- "id": "098357e5-7a88-45fe-82d3-843bfd6bcbd1",
- "type": "PRODUCT",
- "branding": {
- "name": "Sample Application",
- "vendor": "AppDirect",
- "desc": "Sample Application description",
}, - "stacked": false,
- "editions": [
- {
- "id": "45b79e06-1ac6-11e5-90d8-ca7e16f380a7",
- "freeTrialTerms": {
- "freeTrialDuration": 1,
- "freeTrialDurationPeriod": "MONTH",
- "freeTrialGracePeriod": 10
}, - "name": "Sample Edition",
- "revenueModel": "RECURRING",
- "pricingPlans": [
- {
- "id": "b794c2a1-69a7-40bc-9bf7-75a2f945a5fc",
- "currency": "USD",
- "pricingPeriod": "MONTHLY",
- "pricingSources": [
- {
- "source": "BASE_CATALOG",
- "pricingDefinitions": [
- {
- "costTypeCategory": "RECURRING",
- "costType": "RECURRING_PER_UNIT",
- "pricingStrategy": "UNIT",
- "unit": "USER",
- "priceRanges": [
- {
- "min": 0,
- "max": 5,
- "salePrice": "4.0000000000",
- "wholeSalePrice": null
}
], - "unitAllowsDecimals": false,
- "increment": 5,
- "allowsMeteredUsage": true,
- "displaysPricePerIncrement": true
}
]
}, - {
- "source": "CHANNEL_CATALOG",
- "pricingDefinitions": [
- {
- "costTypeCategory": "ONE_TIME",
- "costType": "ONE_TIME_FLAT",
- "pricingStrategy": "FLAT",
- "salePrice": "3.0000000000",
- "wholeSalePrice": null
}
]
}
]
}
]
}
]
}
Read activities
Retrieve company or user activities.
The displayType parameter dictates whether activities for the given user or activities for the whole company are returned.
Required Scopes and Authorization Rules
ROLE_USER
-Allows access as an end user in the company.
ROLE_RESELLER
-Allows access as a Reseller for the company.
ROLE_SALES_SUPPORT
-Allows access as a Sales Support agent for the marketplace.
ROLE_CHANNEL_SUPPORT
-Allows access as a Customer Support agent for the marketplace.
ROLE_CHANNEL_ADMIN
-Allows access as a Marketplace Manager for the marketplace.
ROLE_CORPORATE_ADMIN
-Allows access as a Network Manager for the marketplace.
ROLE_PARTNER_READ
-Allows access to read all marketplace data.
path Parameters
companyUuid required | string Unique identifier of company in the API request |
query Parameters
displayType | string Default: "ONLY_ME" Enum: "EVERYONE" "ONLY_ME" Scope |
page | integer Default: 0 Zero-based page index |
size | integer Default: 12 The size of the page to be returned |
Responses
Request samples
- Shell + Curl
- Node + Request
- Java + Okhttp
curl --request GET \ --url 'https://marketplace.appdirect.com/api/account/v2/companies/%7BcompanyUuid%7D/activities?displayType=SOME_STRING_VALUE&page=SOME_INTEGER_VALUE&size=SOME_INTEGER_VALUE'
Response samples
- 200
List all companies
Retrieve all marketplace companies.
Rate limit: Bucket size is 20 requests, with a leak rate of 5 requests per second.
Rate limit uses leaky bucket algorithm. Usage of a leaky bucket algorithm allows client applications to make an unlimited number of requests over a large time horizon but prevents excessively large bursts over a short one.
Required Scopes and Authorization Rules
ROLE_SALES_SUPPORT
-Allows access as a Sales Support agent for the marketplace.
ROLE_CHANNEL_SUPPORT
-Allows access as a Customer Support agent for the marketplace.
ROLE_CHANNEL_ADMIN
-Allows access as a Marketplace Manager for the marketplace.
ROLE_CORPORATE_ADMIN
-Allows access as a Network Manager for the marketplace.
ROLE_PARTNER_READ
-Allows access to read all marketplace data.
query Parameters
name | string Company name |
includeCustomAttributes | boolean Optional. Default is true. When set to true, company custom attributes are included in the API response. When set to false, company custom attributes are not included. |
includePurchaseLimitData | boolean Optional. Default is true. When set to true, the purchase limit attributes are fetched, calculated and populated in the response. When set to false, the purchase limit attributes are not fetched. |
page | integer Default: 0 Zero-based page index |
size | integer Default: 50 The number of search results to return per page |
sortField | string Default: "NAME" Value: "NAME" The property to sort by |
sortOrder | string Default: "DESC" Enum: "ASC" "DESC" Ordering type |
custom.customAttributeName | string Accepts a notIn filter in the form of ?custom.customAttributeName=notIn(customAttributeValue1, customAttributeValue2, customAttributeValueN...) that excludes companies with matching values. Before you can use the filter, you must first create "Text" type company custom attributes in the user interface. You can then specify the custom attribute name and values as customAttributeName and customAttributeValueN. See https://help.appdirect.com/platform/Default.htm#MarketplaceManager/MM-Setgscustui-create-attribs.html. |
Responses
Request samples
- Shell + Curl
- Node + Request
- Java + Okhttp
curl --request GET \ --url 'https://marketplace.appdirect.com/api/account/v2/companies?name=SOME_STRING_VALUE&includeCustomAttributes=SOME_BOOLEAN_VALUE&includePurchaseLimitData=SOME_BOOLEAN_VALUE&page=SOME_INTEGER_VALUE&size=SOME_INTEGER_VALUE&sortField=SOME_STRING_VALUE&sortOrder=SOME_STRING_VALUE&custom.customAttributeName=SOME_STRING_VALUE'
Response samples
- 200
Create new company
Create a new marketplace company
Required Scopes and Authorization Rules
ROLE_SALES_SUPPORT
-Allows access as a Sales Support agent for the marketplace.
ROLE_CHANNEL_SUPPORT
-Allows access as a Customer Support agent for the marketplace.
ROLE_CHANNEL_ADMIN
-Allows access as a Marketplace Manager for the marketplace.
ROLE_CORPORATE_ADMIN
-Allows access as a Network Manager for the marketplace.
ROLE_PARTNER
-Allows access to read and write all marketplace data.
Request Body schema: application/jsonrequired
New marketplace company
name | string or null Company name |
allowLogin | boolean Optional. Default is "true". When set to "true", the marketplace company allows users, including the first user, to login to the marketplace and receive emails from the marketplace. Users can purchase and assign products within the company. Products can also be purchased on their behalf, and assigned to them. When set to "false", the marketplace company does not allow company members, including the first user, to login to the marketplace or receive email notifications from the marketplace. Products are purchased and assigned on users behalf, and they access those products directly through the product interface. |
idpUuid | string UUID of the identity provider that the user will always use to log in. Contact your AppDirect technical consultant or business consultant to obtain the UUID. |
object (CompanyAddress) | |
companySize | string (CompanySizeType) Enum: "SMALL" "MEDIUM" "ENTERPRISE" Company size types |
Array of objects (CustomAttributeAccountV2Request) Custom attributes | |
industry | string Company industry sector |
emailAddress | string Company email address |
website | string Company website URL |
vendor | boolean Indicates whether the company has Vendor access |
reseller | boolean Indicates whether the company has Reseller access |
channelAdmin | boolean Indicates whether the company has Channel Admin access |
referral | boolean Indicates whether the company has Referral access |
externalId | string Company external ID |
phoneNumber | string or null Company phone number |
defaultRole | string The default role newly created users receive |
countryCode | string Company country code defined by ISO ALPHA-2 standard |
thirtyDaysPurchaseLimitExempt | boolean Indicates if company is exempt from the marketplace default thirty day spend limit |
thirtyDaysPurchaseLimitOverrideAmt | number Company-level override amount of marketplace default thirty day spend limit |
dailyPurchaseLimitExempt | boolean Indicates if company is exempt from the marketplace default daily spend limit |
dailyPurchaseLimitOverrideAmt | number Company-level override amount of marketplace default daily spend limit |
onlyAdminsCanBuy | boolean Indicates if only selected roles in company that can make purchases or all roles in company can make purchases |
importAppsEnabled | boolean The import apps feature is enabled for this company |
billingDayOfMonth | integer (Optional) Use this property in company creation requests to set the billing cycle start date. The date applies to all purchases made through the specified company, and overrides the marketplace-level billing cycle date. |
object (CreateCompanyV2RequestFirstUser) Represents the membership of the first user in a company, who also receives the Company Administrator role by default |
Responses
Request samples
- Payload
- Shell + Curl
- Node + Request
- Java + Okhttp
{- "externalId": "P02TSQ3YPZoykqx1a10",
- "name": "Company Example",
- "companySize": "SMALL",
- "defaultRole": "USER",
- "countryCode": "US",
- "emailAddress": "info@company12345.com",
- "phoneNumber": "11234567890",
- "industry": "Sales",
- "address": {
- "city": "New York",
- "country": "US",
- "state": "NY",
- "street1": "980 West 881st Street",
- "street2": "55AB",
- "zip": "12345"
}, - "channelAdmin": false,
- "reseller": false,
- "vendor": false,
- "customAttributes": [
- {
- "name": "text_example",
- "value": "foo"
}, - {
- "name": "multiselect_checkboxes_example",
- "valueKeys": [
- "ipsum",
- "fake"
]
}
], - "firstUser": {
- "firstName": "John",
- "lastName": "Smith",
- "email": "john.smith@company12345.com",
- "roles": [
- "ROLE_SYS_ADMIN"
]
}
}
Response samples
- 201
Read a company
Retrieve a marketplace company by ID or external ID. If you use the ID, you can omit a prefix or use 'id:' as the prefix. If you use the external ID, you must always specify the 'externalId:' prefix.
Required Scopes and Authorization Rules
ROLE_USER
-Allows access as an end user in the company.
ROLE_RESELLER
-Allows access as a Reseller for the company.
ROLE_SALES_SUPPORT
-Allows access as a Sales Support agent for the marketplace.
ROLE_CHANNEL_SUPPORT
-Allows access as a Customer Support agent for the marketplace.
ROLE_CHANNEL_ADMIN
-Allows access as a Marketplace Manager for the marketplace.
ROLE_CORPORATE_ADMIN
-Allows access as a Network Manager for the marketplace.
ROLE_PARTNER_READ
-Allows access to read all marketplace data.
path Parameters
companyUuid required | string Unique identifier (ID or external ID) of the company in the API request |
Responses
Request samples
- Shell + Curl
- Node + Request
- Java + Okhttp
curl --request GET \ --url https://marketplace.appdirect.com/api/account/v2/companies/%7BcompanyUuid%7D
Response samples
- 200
Update company
Update a marketplace company.
Required Scopes and Authorization Rules
ROLE_SALES_SUPPORT
-Allows access as a Sales Support agent for the marketplace.
ROLE_CHANNEL_SUPPORT
-Allows access as a Customer Support agent for the marketplace.
ROLE_CHANNEL_ADMIN
-Allows access as a Marketplace Manager for the marketplace.
ROLE_CORPORATE_ADMIN
-Allows access as a Network Manager for the marketplace.
ROLE_PARTNER
-Allows access to read and write all marketplace data.
path Parameters
companyUuid required | string Company ID |
Request Body schema: application/jsonrequired
Marketplace company details to be updated
name | string or null Company name |
enabled | boolean Indicates whether company is enabled |
allowLogin | boolean Indicates whether a company's users are managed users (false) or not (true). Do not change the value with this request |
object (CompanyAddress) | |
companySize | string (CompanySizeType) Enum: "SMALL" "MEDIUM" "ENTERPRISE" Company size types |
Array of objects (CustomAttributeAccountV2) Custom attributes | |
industry | string Company industry sector |
emailAddress | string Company email address |
website | string Company website URL |
vendor | boolean Indicates whether the company has Vendor access |
reseller | boolean Indicates whether the company has Reseller access |
channelAdmin | boolean Indicates whether the company has Channel Admin access |
referral | boolean Indicates whether the company has Referral access |
externalId | string Company external ID |
phoneNumber | string or null Company phone number |
defaultRole | string The default role newly created users receive |
countryCode | string Company country code defined by ISO ALPHA-2 standard |
billingDayOfMonth | integer (Optional) Use this property in company creation requests to set the billing cycle start date. The date applies to all purchases made through the specified company, and overrides the marketplace-level billing cycle date. |
thirtyDaysPurchaseLimit | number Monthly spend limit used as the default limit for all companies in the marketplace |
thirtyDaysPurchaseRemainingAmt | number Remaining monthly spending amount |
dailyPurchaseLimit | number Daily spend limit used as the default limit for all companies in the marketplace |
dailyPurchaseRemainingAmt | number Remaining daily spending amount |
thirtyDaysPurchaseLimitExempt | boolean Whether company is exempt from the marketplace default thirty-day spend limit |
thirtyDaysPurchaseLimitOverrideAmt | number Thirty-day spend limit for this company (overrides marketplace default for thirty-day company spend limit) |
dailyPurchaseLimitExempt | boolean Whether company is exempt from the marketplace default daily spend limit |
dailyPurchaseLimitOverrideAmt | number Daily spend limit for this company (overrides marketplace default for daily company spend limit) |
Responses
Request samples
- Payload
- Shell + Curl
- Node + Request
- Java + Okhttp
{- "name": "Company 7078259907",
- "enabled": true,
- "address": {
- "city": "San Francisco",
- "country": "United Stated of America",
- "state": "California",
- "street1": "5th Ave",
- "street2": "#400",
- "zip": "32455"
}, - "companySize": "SMALL",
- "customAttributes": [
- {
- "name": "Geographic Region",
- "attributeType": "TEXT",
- "label": "Geographic Region",
- "hint": "US West, US Central, or US East",
- "value": "US"
}, - {
- "name": "Company Details",
- "attributeType": "MULTISELECT",
- "label": "Label Names",
- "hint": "",
- "valueKeys": [
- "Option 1"
]
}
], - "industry": "IT",
- "emailAddress": "info@company.com",
- "vendor": false,
- "reseller": false,
- "channelAdmin": false,
- "externalId": "d689b970-f3f9-42a6-a974-90e2bdadf860",
- "phoneNumber": "9259221234",
- "defaultRole": "USER",
- "countryCode": "US",
- "thirtyDaysPurchaseLimit": 0,
- "thirtyDaysPurchaseLimitExempt": false,
- "thirtyDaysPurchaseLimitOverrideAmt": null,
- "thirtyDaysPurchaseRemainingAmt": null,
- "dailyPurchaseLimit": 1000,
- "dailyPurchaseLimitExempt": false,
- "dailyPurchaseLimitOverrideAmt": 100,
- "dailyPurchaseRemainingAmt": null
}
Response samples
- 200
Patch company
Partially update marketplace company account information. This only adds or updates the values for the properties that you include in the call; all other properties are ignored.
Required Scopes and Authorization Rules
ROLE_SALES_SUPPORT
-Allows access as a Sales Support agent for the marketplace.
ROLE_CHANNEL_SUPPORT
-Allows access as a Customer Support agent for the marketplace.
ROLE_CHANNEL_ADMIN
-Allows access as a Marketplace Manager for the marketplace.
ROLE_CORPORATE_ADMIN
-Allows access as a Network Manager for the marketplace.
ROLE_PARTNER
-Allows access to read and write all marketplace data.
path Parameters
companyUuid required | string Company ID |
Request Body schema: application/jsonrequired
Marketplace company account information and settings
name | string or null Company name |
enabled | boolean Indicates whether company is enabled |
allowLogin | boolean Indicates whether a company's users are managed users (false) or not (true). Do not change the value with this request. |
object (CompanyAddress) | |
companySize | string (CompanySizeType) Enum: "SMALL" "MEDIUM" "ENTERPRISE" Company size types |
Array of objects (CustomAttributeAccountV2) Custom attributes | |
industry | string Company industry sector |
emailAddress | string Company email address |
website | string Company website URL |
vendor | boolean Indicates whether the company has Vendor access |
reseller | boolean Indicates whether the company has Reseller access |
channelAdmin | boolean Indicates whether the company has Channel Admin access |
referral | boolean Indicates whether the company has Referral access |
externalId | string Company external ID |
phoneNumber | string or null Company phone number |
defaultRole | string The default role newly created users receive |
countryCode | string Company country code defined by ISO ALPHA-2 standard |
billingDayOfMonth | integer (Optional) Use this property in company creation requests to set the billing cycle start date. The date applies to all purchases made through the specified company, and overrides the marketplace-level billing cycle date. |
thirtyDaysPurchaseLimitExempt | boolean Whether company is exempt from the marketplace default thirty-day spend limit |
thirtyDaysPurchaseLimitOverrideAmt | number Thirty-day spend limit for this company (overrides marketplace default for thirty-day company spend limit) |
dailyPurchaseLimitExempt | boolean Whether company is exempt from the marketplace default daily spend limit |
dailyPurchaseLimitOverrideAmt | number Daily spend limit for this company (overrides marketplace default for daily company spend limit) |
Responses
Request samples
- Payload
- Shell + Curl
- Node + Request
- Java + Okhttp
{- "name": "Company 7078259907",
- "enabled": true,
- "address": {
- "city": "San Francisco",
- "country": "United Stated of America",
- "state": "California",
- "street1": "5th Ave",
- "street2": "#400",
- "zip": "32455"
}, - "companySize": "SMALL",
- "customAttributes": [
- {
- "name": "Geographic Region",
- "attributeType": "TEXT",
- "label": "Geographic Region",
- "hint": "US West, US Central, or US East",
- "value": "US"
}, - {
- "name": "Company Details",
- "attributeType": "MULTISELECT",
- "label": "Label Names",
- "hint": "",
- "valueKeys": [
- "great option"
]
}
], - "industry": "IT",
- "emailAddress": "info@company.com",
- "vendor": false,
- "reseller": false,
- "channelAdmin": false,
- "externalId": "d689b970-f3f9-42a6-a974-90e2bdadf860",
- "phoneNumber": "9259221234",
- "defaultRole": "USER",
- "countryCode": "US",
- "thirtyDaysPurchaseLimitExempt": false,
- "thirtyDaysPurchaseLimitOverrideAmt": null,
- "dailyPurchaseLimitExempt": false,
- "dailyPurchaseLimitOverrideAmt": 10
}
Response samples
- 200
Update company picture
Update a marketplace company’s profile picture, for example, with an image of a logo. This method requires a Content-Type request header with a value of “multipart/form-data”. The updated company resource is returned.
Required Scopes and Authorization Rules
ROLE_SYS_ADMIN
-Allows access as a Company Admin for the company.
ROLE_CHANNEL_ADMIN
-Allows access as a Marketplace Manager for the marketplace.
ROLE_CORPORATE_ADMIN
-Allows access as a Network Manager for the marketplace.
ROLE_PARTNER
-Allows access to read and write all marketplace data.
path Parameters
companyUuid required | string Unique identifier of company in the API request |
Request Body schema: application/jsonrequired
Image file that will be used as the profile picture.
Responses
Request samples
- Payload
- Shell + Curl
- Node + Request
- Java + Okhttp
{ }
Response samples
- 200
Create company
Create a new company linked to the current reseller.
Required Scopes and Authorization Rules
ROLE_RESELLER
-Allows access as a Reseller for the company.
Request Body schema: application/jsonrequired
Information about the new company that will be created
createdByCompanyId | string Reseller's company UUID |
name | string New company's name |
externalId | string External ID used to identify the new company (must be unique) |
phone | string New company's phone number |
companySize | string (AppResellerAccountCompanySize) Enum: "SMALL" "MEDIUM" "ENTERPRISE" Size of the new company |
website | string New company's website |
companyAccess | string (AppResellerAccountCompanyApiContext) Enum: "RESELLER" "REFERRAL" "CUSTOMER" Supported AppReseller contexts |
Responses
Request samples
- Payload
- Shell + Curl
- Node + Request
- Java + Okhttp
{- "createdByCompanyId": "386626c0-53e2-4515-8450-4a720bb5d029",
- "name": "Test Name",
- "externalId": "externalRandom",
- "phone": "50505055",
- "companySize": "SMALL",
- "website": "www.new_company.com",
- "companyAccess": "RESELLER"
}
Response samples
- 200
{- "id": "386626c0-53e2-4515-8450-4a720bb5d029",
- "externalId": "externalRandom",
- "name": "Test Name",
- "createdOn": 1519158286000,
- "phone": "50505055"
}
List companies
Retrieves companies depending on context: in the Reseller context, this endpoint lists all companies linked to the current reseller company; in the Reseller Manager context, it lists all referral and reseller companies in the current marketplace
Required Scopes and Authorization Rules
ROLE_RESELLER
-Allows access as a Reseller for the companies
ROLE_RESELLER_MANAGER
-Allows access as a Reseller Manager for the companies
query Parameters
context required | string Value: "RESELLER, RESELLER_MANAGER" Supported AppReseller contexts |
active | string User activation status |
enabled | string User enablement status |
searchText | string Search text |
fromDate | string From date, in timestamp format |
toDate | string To date, in timestamp format |
sortField | string Enum: "COMPANY_ID" "CREATED_ON" Field to sort by |
sortOrder | string Sort order |
page | integer Page number |
size | integer Number of results per page |
vendor | string Value: "ONLY_VENDORS, ONLY_NON_VENDORS, ONLY_RESELLERS" This enum filters companies that can sell (or not) or resell products in the marketplace. |
channelAdmin | string Value: "ONLY_CHANNEL_ADMINS, ONLY_NON_CHANNEL_ADMINS" This enum filters companies that have (or not) permission to manage the marketplace. |
Responses
Request samples
- Shell + Curl
- Node + Request
- Java + Okhttp
curl --request GET \ --url 'https://marketplace.appdirect.com/api/appReseller/v1/companies?context=SOME_STRING_VALUE&active=SOME_STRING_VALUE&enabled=SOME_STRING_VALUE&searchText=SOME_STRING_VALUE&fromDate=SOME_STRING_VALUE&toDate=SOME_STRING_VALUE&sortField=SOME_STRING_VALUE&sortOrder=SOME_STRING_VALUE&page=SOME_INTEGER_VALUE&size=SOME_INTEGER_VALUE&vendor=SOME_STRING_VALUE&channelAdmin=SOME_STRING_VALUE'
Response samples
- 200
[- {
- "id": "386626c0-53e2-4515-8450-4a720bb5d029",
- "externalId": "externalRandom",
- "name": "Test Name",
- "createdOn": 1519158286000,
- "phone": "50505055",
- "activated": true,
- "numOfUsers": 1,
- "grantedAccesses": [ ]
}, - {
- "id": "296626c0-53e2-4515-8450-4a720bb5d040",
- "externalId": "externalRandom2",
- "name": "Test Name 2",
- "createdOn": 1519158286000,
- "phone": "50505056",
- "activated": true,
- "numOfUsers": 1,
- "grantedAccesses": [ ]
}
]
Company details
Retrieves the current reseller company details.
Required Scopes and Authorization Rules
ROLE_RESELLER
-Allows access as a Reseller for the company.
ROLE_RESELLER_MANAGER
-Allows access as a Reseller Manager for the company.
path Parameters
companyId required | string Company ID |
query Parameters
context required | string Value: "RESELLER, RESELLER_MANAGER" Supported AppReseller contexts |
Responses
Request samples
- Shell + Curl
- Node + Request
- Java + Okhttp
curl --request GET \ --url 'https://marketplace.appdirect.com/api/appReseller/v1/companies/%7BcompanyId%7D?context=SOME_STRING_VALUE'
Response samples
- 200
{- "id": "9e00b38b-7918-4a27-b2f6-123b77cfac0b",
- "name": "C37719018",
- "createdOn": 1523007202000,
- "enabled": true,
- "active": true,
- "grantedAccesses": [ ],
- "defaultRole": "USER",
- "availableAccesses": [ ],
- "availableTaxExemptions": [
- "FEDERAL_GOVERNMENT_US",
- "STATE_GOVERNMENT_US",
- "TRIBE_INDIAN",
- "FOREIGN_DIPLOMAT",
- "CHARITABLE_ORG",
- "RELIGIOUS_ORG",
- "RESALE",
- "COMMERCIAL_AGRICULTURAL",
- "INDUSTRIAL_PRODUCTION",
- "DIRECT_MAIL_US",
- "DIRECT_PAY_PERMIT_US",
- "OTHER",
- "LOCAL_GOVERNMENT_US",
- "COMMERCIAL_AQUACULTURE",
- "COMMERCIAL_FISHERY",
- "NON_RESIDENT_CAN",
- "MEDICAL_DEVICE_WITH_EXEMPT_SALES_TAX_US",
- "MEDICAL_DEVICE_WITH_TAXABLE_SALES_TAX_US"
], - "stats": [
- {
- "unit": "Free Trials",
- "children": "0"
}, - {
- "unit": "Expired Free Trials",
- "children": "0"
}, - {
- "unit": "Purchased Products",
- "children": "0"
}, - {
- "unit": "Suspended Products",
- "children": "0"
}, - {
- "unit": "Unpaid Invoices",
- "children": "0"
}, - {
- "unit": "Total Spent",
- "children": "$0.00"
}
], - "settings": [ ],
- "actions": [
- "JOIN_COMPANY",
- "DISABLE_COMPANY",
- "MANAGE_CUSTOM_ATTRIBUTES",
- "INVITE_USERS"
], - "availableRoles": [
- "USER"
], - "idpConfigurations": [ ]
}
Create user
Create a new user in a company linked to the Reseller company.
Required Scopes and Authorization Rules
ROLE_RESELLER
-Allows access as a Reseller for the company.
query Parameters
context required | string Enum: "RESELLER" "RESELLER_MANAGER" |
Request Body schema: application/json
Information about the user to create
createdByCompanyId | string Reseller's company ID |
companyId | string New user's company ID |
externalId | string New user's external ID (must be unique) |
string New user's email (must be unique) | |
firstName | string New user's First Name |
lastName | string New user's Last Name |
Responses
Request samples
- Payload
- Shell + Curl
- Node + Request
- Java + Okhttp
{- "createdByCompanyId": "386626c0-53e2-0000-0000-4a720bb5d000",
- "companyId": "4c00cad1-f741-0zf6-bb00-0000e73cec00",
- "externalId": "01",
- "email": "user@appdirect.com",
- "firstName": "James",
- "lastName": "Smith"
}
Response samples
- 200
{- "id": "6d375008-3b19-4cb8-bbb9-dcd9fce99432",
- "companyId": "460fad0d-19e2-4eec-a756-59c15dc7a56a",
- "email": "test4@yopmail.com",
- "firstName": "user4",
- "lastName": "user4",
- "memberships": [
- {
- "company": {
- "id": "460fad0d-19e2-4eec-a756-59c15dc7a56a",
- "externalId": "external11",
- "name": "Company3",
- "createdOn": 1525682872000,
- "phone": null
}
}
]
}
List users
In the Reseller Manager context, this request retrieves all Resellers and Referral users. In the Reseller context, it retrieves all users that belong to companies linked to the reseller.
Required Scopes and Authorization Rules
ROLE_RESELLER
-Allows access as a Reseller for reading the users from companies that are linked to mine.
ROLE_RESELLER_MANAGER
-Allows access as a Reseller Manager for reading the users whose company are Reseller or Referral.
query Parameters
context required | string Enum: "RESELLER" "RESELLER_MANAGER" |
partner | string User partner |
companyId | string User company ID |
active | Array of strings List of user activation status |
searchText | string Search text |
fromDate | string From date, in timestamp format |
toDate | string To date, in timestamp format |
sortField | string Enum: "CUSTOMER_ID" "EMAIL" "FIRST_NAME" Field to sort by |
sortOrder | string Sort order |
page | integer Page number |
size | integer Number of results per page |
Responses
Request samples
- Shell + Curl
- Node + Request
- Java + Okhttp
curl --request GET \ --url 'https://marketplace.appdirect.com/api/appReseller/v1/users?context=SOME_STRING_VALUE&partner=SOME_STRING_VALUE&companyId=SOME_STRING_VALUE&active=SOME_ARRAY_VALUE&searchText=SOME_STRING_VALUE&fromDate=SOME_STRING_VALUE&toDate=SOME_STRING_VALUE&sortField=SOME_STRING_VALUE&sortOrder=SOME_STRING_VALUE&page=SOME_INTEGER_VALUE&size=SOME_INTEGER_VALUE'
Response samples
- 200
{- "content": [
- {
- "id": "0af398ee-0000-000a-0000-a83d70caeff8",
- "companyId": "0a357e6b-0000-000a-0000-680eabb9e322",
- "email": "john@appdirect.com",
- "firstName": "John",
- "lastName": "Grande",
- "createdOn": 1525682872000,
- "activated": false,
- "invitationRequired": false,
- "memberships": [
- {
- "company": {
- "id": "0a357e6b-0000-000a-0000-680eabb9e322",
- "name": "TestCompany",
- "createdOn": 1525682872000
}, - "enabled": true
}
]
}, - {
- "id": "47e70302-0000-000a-0000-a01cb6129c6c",
- "companyId": "a5811d92-0000-000a-0000-3c69e47fe126",
- "email": "george@appdirect.com",
- "firstName": "George",
- "lastName": "Common",
- "createdOn": 1461321550000,
- "activated": false,
- "invitationRequired": false,
- "memberships": [
- {
- "company": {
- "id": "a5811d92-0000-000a-0000-3c69e47fe126",
- "name": "C4027287",
- "createdOn": 1461321550000
}, - "enabled": true
}
]
}
], - "page": {
- "size": 10,
- "totalElements": 2,
- "totalPages": 1,
- "number": 0
}
}
User details
Get a single user details
Required Scopes and Authorization Rules
ROLE_RESELLER
-Allows access as a Reseller for the company.
ROLE_RESELLER_MANAGER
-Allows access as a Reseller Manager for the company.
path Parameters
userId required | string User ID |
query Parameters
context required | string Enum: "RESELLER" "RESELLER_MANAGER" |
companyId required | string User's company ID (some user details depend on the specified company) |
Responses
Request samples
- Shell + Curl
- Node + Request
- Java + Okhttp
curl --request GET \ --url 'https://marketplace.appdirect.com/api/appReseller/v1/users/%7BuserId%7D?context=SOME_STRING_VALUE&companyId=SOME_STRING_VALUE'
Response samples
- 200
{- "id": "64535371-9e83-0000-0000-61cb17bc0c9e",
- "companyId": "c5fe2ca9-3db1-0000-0000-0cf0a01bd437",
- "email": "c4201720@appdirect.com",
- "firstName": "John",
- "lastName": "Grande",
- "createdOn": 1465984400000,
- "activated": true,
- "invitationRequired": false,
- "memberships": [
- {
- "company": {
- "id": "c5fe2ca9-0000-408c-0000-0cf0a01bd437",
- "name": "C4200000"
}, - "roles": [
- "BILLING_ADMIN",
- "SYS_ADMIN",
- "RESELLER"
], - "enabled": true
}
], - "partner": "APPDIRECT",
- "enabled": true,
- "customAttributes": [ ],
- "settings": [
- {
- "setting": "SYS_ADMIN",
- "permission": "READ",
- "value": "true"
}, - {
- "setting": "BILLING_ADMIN",
- "permission": "READ",
- "value": "true"
}
], - "actions": [
- "SEND_RESET_PASSWORD_EMAIL"
], - "availableRoles": [
- {
- "name": "BILLING_ADMIN",
- "permission": "READ"
}, - {
- "name": "SYS_ADMIN",
- "permission": "READ"
}
]
}
Create company association
Creates an association (link) between a customer company and a reseller company.
Required Scopes and Authorization Rules
ROLE_RESELLER_MANAGER
-Allows access as a Reseller Manager for the marketplace.
ROLE_CHANNEL_ADMIN
-Allows access as a Marketplace Manager for the marketplace.
ROLE_PARTNER
-Allows access to read and write all marketplace data.
Request Body schema: application/jsonrequired
Information about the association to create
customerCompanyId required | string Customer company ID |
resellerCompanyId required | string Reseller company ID |
Responses
Request samples
- Payload
- Shell + Curl
- Node + Request
- Java + Okhttp
{- "customerCompanyId": "string",
- "resellerCompanyId": "string"
}
Response samples
- 200
- 409
{- "id": "c39b8bcd-db7a-46d0-939f-facdeb1d6967",
- "resellerCompany": {
- "id": "0a69093c-0000-4f8d-0000-5e0000630000",
- "name": "Reseller"
}, - "customerCompany": {
- "id": "0dc2860e-0000-40f7-0000-ef0000a30000",
- "name": "Customer"
}, - "createdOn": 1531839782000
}
List company associations
Retrieves all customer company associations. This request requires either the Reseller company ID or the Customer company ID, which you can retrieve with the List companies request.
Required Scopes and Authorization Rules
ROLE_RESELLER_MANAGER
-Allows access as a Reseller Manager for reading the users whose company are Reseller or Referral.
ROLE_CHANNEL_ADMIN
-Allows access as a Marketplace Manager for the marketplace.
ROLE_PARTNER_READ
-Allows access to read all marketplace data.
query Parameters
resellerCompanyId required | string Reseller company ID. This field is required if you do not include the Customer company ID |
customerCompanyId required | string Customer company ID. This field is required if you do not include the Reseller company ID |
searchText | string Search term used to search on different fields of the customer company association. |
createdOn | string Date filter, defined by upper or lower inclusive or exclusive limits, in Unix timestamp format. Acceptable values are: gte([timestamp]) - 'greater than or equal to'; or lte([timestamp]) - 'less than or equal to' |
sort | string Sort field and order. For ascending sort order, use the '+[FieldName]' format. For descending order, use the '-[FieldName]' format. |
number | integer Page number |
size | integer Number of results per page |
Responses
Request samples
- Shell + Curl
- Node + Request
- Java + Okhttp
curl --request GET \ --url 'https://marketplace.appdirect.com/api/appReseller/v1/companyAssociations?resellerCompanyId=SOME_STRING_VALUE&customerCompanyId=SOME_STRING_VALUE&searchText=SOME_STRING_VALUE&createdOn=SOME_STRING_VALUE&sort=SOME_STRING_VALUE&number=SOME_INTEGER_VALUE&size=SOME_INTEGER_VALUE'
Response samples
- 200
{- "content": [
- {
- "id": "c39b8bcd-db7a-46d0-939f-facdeb1d6967",
- "resellerCompany": {
- "id": "0a69093c-0000-4f8d-0000-5e0000630000",
- "name": "Reseller1"
}, - "customerCompany": {
- "id": "0dc2860e-0000-40f7-0000-ef0000a30000",
- "name": "Customer1"
}, - "createdOn": 1531839782000
}, - {
- "id": "c39b8bcd-db7a-46d0-939f-facdeb1d6967",
- "resellerCompany": {
- "id": "0a69093c-0000-4f8d-0000-5000020000ef",
- "name": "Reseller2"
}, - "customerCompany": {
- "id": "0dc2860e-0000-40f7-0000-e0000600000a",
- "name": "Customer2"
}, - "createdOn": 1531839782000
}
], - "page": {
- "size": 10,
- "totalElements": 2,
- "totalPages": 1,
- "number": 0
}
}
Remove company association
Deletes a company association.
Required Scopes and Authorization Rules
ROLE_RESELLER_MANAGER
-Allows access as a Reseller Manager for reading the users whose company are Reseller or Referral.
ROLE_CHANNEL_ADMIN
-Allows access as a Marketplace Manager for the marketplace.
ROLE_PARTNER
-Allows access to read and write all marketplace data.
path Parameters
companyAssociationId required | string Company Association ID |
Responses
Request samples
- Shell + Curl
- Node + Request
- Java + Okhttp
curl --request DELETE \ --url https://marketplace.appdirect.com/api/appReseller/v1/companyAssociations/%7BcompanyAssociationId%7D
Read company membership
Retrieve a marketplace user's company membership information.
Required Scopes and Authorization Rules
ROLE_USER
-Allows access as an end user in the company
ROLE_RESELLER
-Allows access as a Reseller for the company.
ROLE_RESELLER_MANAGER
-Allows access as a Reseller Manager for the marketplace. Only memberships with the Reseller role or that are linked to Reseller companies can be retrieved.
ROLE_SALES_SUPPORT
-Allows access as a Sales Support agent for the marketplace.
ROLE_CHANNEL_SUPPORT
-Allows access as a Customer Support agent for the marketplace.
ROLE_CHANNEL_ADMIN
-Allows access as a Marketplace Manager for the marketplace.
ROLE_CORPORATE_ADMIN
-Allows access as a Network Manager for the marketplace.
ROLE_PARTNER_READ
-Allows access to read all marketplace data.
path Parameters
companyUuid required | string Unique identifier of company in the API request |
userUuid required | string Unique identifier of user in the API request |
query Parameters
includeCompanies | boolean Optional. Default is true. When set to true, companies will be included in the API response. When set to false, companies will not be included. |
includeUserCustomAttributes | boolean Optional. Default is true. When set to true, user custom attributes will be included in the API response. When set to false, user custom attributes will not be included. |
Responses
Request samples
- Shell + Curl
- Node + Request
- Java + Okhttp
curl --request GET \ --url 'https://marketplace.appdirect.com/api/account/v2/companies/%7BcompanyUuid%7D/memberships/%7BuserUuid%7D?includeCompanies=SOME_BOOLEAN_VALUE&includeUserCustomAttributes=SOME_BOOLEAN_VALUE'
Response samples
- 200
Update company membership
Update a marketplace user's company membership.
Updates the following roles based on the provided user company membership data: Product Support, Sales Support, Reseller Manager, Customer Support, Reseller, Billing Admin, Company Admin, Developer. This also enables/disables the membership based on provided user company membership data.
Note: You cannot set the Marketplace Manager role through the API.
Required Scopes and Authorization Rules
ROLE_SYS_ADMIN
-Allows access as a Company Admin for the company.
ROLE_RESELLER
-Allows access as a Reseller for the company.
ROLE_SALES_SUPPORT
-Allows access as a Sales Support agent for the marketplace.
ROLE_CHANNEL_SUPPORT
-Allows access as a Customer Support agent for the marketplace.
ROLE_CHANNEL_ADMIN
-Allows access as a Marketplace Manager for the marketplace.
ROLE_CORPORATE_ADMIN
-Allows access as a Network Manager for the marketplace.
ROLE_PARTNER
-Allows access to read and write all marketplace data.
path Parameters
companyUuid required | string Unique identifier of company in the API request |
userUuid required | string Unique identifier of user in the API request |
Request Body schema: application/json
Update User company membership data
enabled | boolean Indicates whether the membership is enabled |
roles | Array of strings Roles for this membership. One or more of the following: ROLE_CHANNEL_ADMIN (Marketplace Manager), ROLE_CHANNEL_PRODUCT_SUPPORT (Product Support), ROLE_SALES_SUPPORT (Sales Support), ROLE_RESELLER_MANAGER (Reseller Manager), ROLE_RESELLER (Reseller), ROLE_CHANNEL_SUPPORT (Customer Support), ROLE_SYS_ADMIN (Company Admin), ROLE_BILLING_ADMIN (Billing Admin), ROLE_DEVELOPER (Developer). |
Responses
Request samples
- Payload
- Shell + Curl
- Node + Request
- Java + Okhttp
{- "enabled": true,
- "roles": [
- "ROLE_BILLING_ADMIN",
- "ROLE_DEVELOPER",
- "ROLE_SYS_ADMIN"
]
}
Response samples
- 200
Delete company membership
Delete a marketplace user's company membership.
If this is the only company the user was member of, user is marked as deleted. A user that has active entitlements, owns products or is externally managed can't be deleted.
Required Scopes and Authorization Rules
ROLE_SYS_ADMIN
-Allows access as a Company Admin for the company.
ROLE_RESELLER
-Allows access as a Reseller for the company.
ROLE_SALES_SUPPORT
-Allows access as a Sales Support agent for the marketplace.
ROLE_CHANNEL_SUPPORT
-Allows access as a Customer Support agent for the marketplace.
ROLE_CHANNEL_ADMIN
-Allows access as a Marketplace Manager for the marketplace.
ROLE_CORPORATE_ADMIN
-Allows access as a Network Manager for the marketplace.
ROLE_PARTNER
-Allows access to read and write all marketplace data.
path Parameters
companyUuid required | string Unique identifier of company in the API request |
userUuid required | string Unique identifier of user in the API request |
Responses
Request samples
- Shell + Curl
- Node + Request
- Java + Okhttp
curl --request DELETE \ --url https://marketplace.appdirect.com/api/account/v2/companies/%7BcompanyUuid%7D/memberships/%7BuserUuid%7D
Enable/Disable company membership
Enable or disable marketplace user's company membership.
This only changes the user company membership's enabled status; all other attributes are ignored.
Required Scopes and Authorization Rules
ROLE_SYS_ADMIN
-Allows access as a Company Admin for the company.
ROLE_RESELLER
-Allows access as a Reseller for the company.
ROLE_SALES_SUPPORT
-Allows access as a Sales Support agent for the marketplace.
ROLE_CHANNEL_SUPPORT
-Allows access as a Customer Support agent for the marketplace.
ROLE_CHANNEL_ADMIN
-Allows access as a Marketplace Manager for the marketplace.
ROLE_CORPORATE_ADMIN
-Allows access as a Network Manager for the marketplace.
ROLE_PARTNER
-Allows access to read and write all marketplace data.
path Parameters
companyUuid required | string Unique identifier of company in the API request |
userUuid required | string Unique identifier of user in the API request |
Request Body schema: application/json
User company membership data
enabled | boolean Indicates whether membership is enabled |
Responses
Request samples
- Payload
- Shell + Curl
- Node + Request
- Java + Okhttp
{- "enabled": true
}
Response samples
- 200
Create company membership (Add User)
Create a marketplace user with membership in the given company.
The created user is active, and is associated with the specified company (membership). User is set with a temporary password; the password is emailed to the recipients specified in the request body.
The domain part of the user's email address must match one of the verified domains associated with the company the user will be created in.
Note: You cannot set the Marketplace Manager role through the API.
Required Scopes and Authorization Rules
ROLE_SYS_ADMIN
-Allows access as a Company Admin for the company.
ROLE_CHANNEL_ADMIN
-Allows access as a Marketplace Manager for the marketplace.
ROLE_CORPORATE_ADMIN
-Allows access as a Network Manager for the marketplace.
ROLE_PARTNER
-Allows access to read and write all marketplace data.
path Parameters
companyUuid required | string Unique identifier of company in the API request |
Request Body schema: application/json
User creation data
recipientEmails | Array of strings List of emails where the temporary password is sent |
temporaryPassword | string Temporary password |
object (ActiveUserAccountV2) User information (company) |
Responses
Request samples
- Payload
- Shell + Curl
- Node + Request
- Java + Okhttp
{- "user": {
- "email": "guy.smith@company9411805586.com",
- "firstName": "Guy",
- "lastName": "Smith",
- "roles": [
- "ROLE_DEVELOPER"
]
}, - "temporaryPassword": "Temporary Password",
- "recipientEmails": [
- "manager@company9411805586.com",
- "itteam@company9411805586.com"
]
}
Response samples
- 200
List company memberships
List a marketplace company's user memberships.
Required Scopes and Authorization Rules
ROLE_USER
-Allows access as an end user in the company.
ROLE_RESELLER
-Allows access as a Reseller for the company.
ROLE_SALES_SUPPORT
-Allows access as a Sales Support agent for the marketplace.
ROLE_CHANNEL_SUPPORT
-Allows access as a Customer Support agent for the marketplace.
ROLE_CHANNEL_ADMIN
-Allows access as a Marketplace Manager for the marketplace.
ROLE_CORPORATE_ADMIN
-Allows access as a Network Manager for the marketplace.
ROLE_PARTNER_READ
-Allows access to read all marketplace data.
path Parameters
companyUuid required | string Unique identifier of company in the API request |
query Parameters
active | boolean If specified, returns only memberships associated with users having the specified active status |
enabled | boolean If specified, returns only memberships with the specified enabled status |
roleName | string If specified, returns only memberships with the specified role enabled |
groupUuid | string If specified, returns only memberships that are a part of the specified group |
page | integer Default: 0 Zero-based page index |
searchText | string Search term used to search on different fields of a membership |
size | integer Default: 50 The size of the page to be returned |
sortField | string Default: "DATE" Enum: "DATE" "FIRST_NAME" "LAST_NAME" The property to sort by |
sortOrder | string Default: "ASC" Enum: "ASC" "DESC" Ordering type |
includeCompanies | boolean Optional. Default is true. When set to true, companies will be included in the API response. When set to false, companies will not be included. |
includeUserCustomAttributes | boolean Optional. Default is true. When set to true, user custom attributes will be included in the API response. When set to false, user custom attributes will not be included. |
Responses
Request samples
- Shell + Curl
- Node + Request
- Java + Okhttp
curl --request GET \ --url 'https://marketplace.appdirect.com/api/account/v2/companies/%7BcompanyUuid%7D/memberships?active=SOME_BOOLEAN_VALUE&enabled=SOME_BOOLEAN_VALUE&roleName=SOME_STRING_VALUE&groupUuid=SOME_STRING_VALUE&page=SOME_INTEGER_VALUE&searchText=SOME_STRING_VALUE&size=SOME_INTEGER_VALUE&sortField=SOME_STRING_VALUE&sortOrder=SOME_STRING_VALUE&includeCompanies=SOME_BOOLEAN_VALUE&includeUserCustomAttributes=SOME_BOOLEAN_VALUE'
Response samples
- 200
Create company membership
Add a new or existing user as a member of a marketplace company.
If no user exists with the given email address a new user account (Users) will be created. Use the allowLogin body parameter to control if a new user account should be invited to the marketplace with login access or created as a managed user without login access. See CreateUserAccountV2 for more information on the allowLogin parameter.
Depending on channel configuration, an invited membership is either created immediately, or when the invited user accepts the invitation.
Note: You cannot set the Marketplace Manager role through the API.
Required Scopes and Authorization Rules
ROLE_RESELLER
-Allows access as a Reseller for the company.
ROLE_SALES_SUPPORT
-Allows access as a Sales Support agent for the marketplace.
ROLE_CHANNEL_SUPPORT
-Allows access as a Customer Support agent for the marketplace.
ROLE_SYS_ADMIN
-Allows access as a Company Admin for the company.
ROLE_CHANNEL_ADMIN
-Allows access as a Marketplace Manager for the marketplace.
ROLE_CORPORATE_ADMIN
-Allows access as a Network Manager for the marketplace.
ROLE_PARTNER
-Allows access to read and write all marketplace data.
path Parameters
companyUuid required | string Unique identifier of company in the API request |
query Parameters
inviterUuid | string Unique identifier of the inviter in the API request. Required only when ROLE_PARTNER authority/scope is used to make the API request. |
Request Body schema: application/json
User company membership data
object (CreateUserAccountV2) User information data | |
roles | Array of strings Optional. When not included the company default role will be used. Roles for this membership. One or more of the following: ROLE_USER (User), ROLE_CHANNEL_PRODUCT_SUPPORT (Product Support), ROLE_SALES_SUPPORT (Sales Support), ROLE_RESELLER_MANAGER (Reseller Manager), ROLE_RESELLER (Reseller), ROLE_CHANNEL_SUPPORT (Customer Support), ROLE_SYS_ADMIN (Company Admin), ROLE_BILLING_ADMIN (Billing Admin), ROLE_DEVELOPER (Developer). For user roles (not associated with membership), see UserAccountV2. |
Responses
Request samples
- Payload
- Shell + Curl
- Node + Request
- Java + Okhttp
{- "user": {
- "email": "jane.lee@company1151609035.com",
- "firstName": "Jane",
- "lastName": "Lee",
- "allowLogin": true
}, - "roles": [
- "ROLE_USER"
]
}
Response samples
- 201
Update company membership roles (bulk)
Update role assignments for one or more company memberships (users).
API clients acting on behalf of an end user must first call Read assignable roles for company membership to retrieve the list of roles they are allowed to update.
Note: You cannot set the Marketplace Manager role through the API.
Required Scopes and Authorization Rules
ROLE_RESELLER
-Allows access as a Reseller for the company.
ROLE_SALES_SUPPORT
-Allows access as a Sales Support agent for the marketplace.
ROLE_CHANNEL_SUPPORT
-Allows access as a Customer Support agent for the marketplace.
ROLE_SYS_ADMIN
-Allows access as a Company Admin for the company.
ROLE_CHANNEL_ADMIN
-Allows access as a Marketplace Manager for the marketplace.
ROLE_CORPORATE_ADMIN
-Allows access as a Network Manager for the marketplace.
ROLE_PARTNER
-Allows access to read and write all marketplace data.
path Parameters
companyUuid required | string Unique identifier of company in the API request |
Request Body schema: application/json
User company membership role data
userUuid | string UUID of the user whose membership roles need to be modified |
rolesToAdd | Array of strings Roles to add to this membership. One or more of the following: ROLE_CHANNEL_PRODUCT_SUPPORT (Product Support), ROLE_SALES_SUPPORT (Sales Support), ROLE_RESELLER_MANAGER (Reseller Manager), ROLE_RESELLER (Reseller), ROLE_CHANNEL_SUPPORT (Customer Support), ROLE_SYS_ADMIN (Company Admin), ROLE_BILLING_ADMIN (Billing Admin), ROLE_DEVELOPER (Developer). |
rolesToRemove | Array of strings Roles to remove from this membership. One or more of the following: ROLE_CHANNEL_ADMIN (Marketplace Manager), ROLE_CHANNEL_PRODUCT_SUPPORT (Product Support), ROLE_SALES_SUPPORT (Sales Support), ROLE_RESELLER_MANAGER (Reseller Manager), ROLE_RESELLER (Reseller), ROLE_CHANNEL_SUPPORT (Customer Support), ROLE_SYS_ADMIN (Company Admin), ROLE_BILLING_ADMIN (Billing Admin), ROLE_DEVELOPER (Developer). |
Responses
Request samples
- Payload
- Shell + Curl
- Node + Request
- Java + Okhttp
[- {
- "userUuid": "92a8d9f6-223d-11e8-a232-d879d2b204fc",
- "rolesToAdd": [
- "ROLE_DEVELOPER",
- "ROLE_RESELLER"
], - "rolesToRemove": [
- "ROLE_CHANNEL_SUPPORT"
]
}, - {
- "userUuid": "673d2cda-2d1a-11e8-a232-d879d2b204fc",
- "rolesToAdd": [
- "ROLE_SYS_ADMIN"
]
}
]
Read user checklist
Retrieve a marketplace user's checklist.
Required Scopes and Authorization Rules
ROLE_USER
-Allows access as current user matches the user in path.
ROLE_SYS_ADMIN
-Allows access as a Company Admin for the company.
ROLE_RESELLER
-Allows access as a Reseller for the company.
ROLE_CHANNEL_ADMIN
-Allows access as a Marketplace Manager for the marketplace.
ROLE_CORPORATE_ADMIN
-Allows access as a Network Manager for the marketplace.
ROLE_PARTNER_READ
-Allows access to read all marketplace data.
path Parameters
companyUuid required | string Unique identifier of company in the API request |
userUuid required | string Unique identifier of user in the API request |
Responses
Request samples
- Shell + Curl
- Node + Request
- Java + Okhttp
curl --request GET \ --url https://marketplace.appdirect.com/api/account/v2/companies/%7BcompanyUuid%7D/memberships/%7BuserUuid%7D/checklist
Response samples
- 200
Invite a managed user
Invite a managed user as a member of a marketplace company. If the user is a member of a managed company, the managed company identifier must be used in this request. The operation will then also convert the managed company to a regular company.
Required Scopes and Authorization Rules
ROLE_RESELLER
-Allows access as a Reseller for the company.
ROLE_SALES_SUPPORT
-Allows access as a Sales Support agent for the marketplace.
ROLE_CHANNEL_SUPPORT
-Allows access as a Customer Support agent for the marketplace.
ROLE_SYS_ADMIN
-Allows access as a Company Admin for the company.
ROLE_CHANNEL_ADMIN
-Allows access as a Marketplace Manager for the marketplace.
ROLE_CORPORATE_ADMIN
-Allows access as a Network Manager for the marketplace.
ROLE_PARTNER
-Allows access to read and write all marketplace data.
path Parameters
companyUuid required | string Unique identifier of company in the API request |
userUuid required | string Unique identifier of user in the API request |
query Parameters
inviterUuid | string Unique identifier of the inviter in the API request. Required only when ROLE_PARTNER authority/scope is used to make the API request. |
Responses
Request samples
- Shell + Curl
- Node + Request
- Java + Okhttp
curl --request POST \ --url 'https://marketplace.appdirect.com/api/account/v2/companies/%7BcompanyUuid%7D/memberships/%7BuserUuid%7D/invite?inviterUuid=SOME_STRING_VALUE'
Request to purchase an application
Request to purchase an application for the given marketplace company and user.
This causes an email notification to be sent to company administrators (system and billing admins).
Required Scopes and Authorization Rules
ROLE_USER
-Allows access as current user matches the user in path.
ROLE_CHANNEL_ADMIN
-Allows access as a Marketplace Manager for the marketplace.
ROLE_CORPORATE_ADMIN
-Allows access as a Network Manager for the marketplace.
ROLE_PARTNER
-Allows access to read and write all marketplace data.
path Parameters
applicationId required | integer Unique identifier of application to purchase |
companyUuid required | string Unique identifier of company in the API request |
userUuid required | string User Unique identifier of user in the API request |
Responses
Request samples
- Shell + Curl
- Node + Request
- Java + Okhttp
curl --request POST \ --url https://marketplace.appdirect.com/api/account/v2/companies/%7BcompanyUuid%7D/memberships/%7BuserUuid%7D/applications/%7BapplicationId%7D/purchaseRequests
List application assignments for company membership
Retrieve a marketplace user's application assignments.
Returns assignments that are not FAILED or CANCELLED.
Required Scopes and Authorization Rules
ROLE_SYS_ADMIN
-Allows access as a Company Admin for the company.
ROLE_RESELLER
-Allows access as a Reseller for the company.
ROLE_SALES_SUPPORT
-Allows access as a Sales Support agent for the marketplace.
ROLE_CHANNEL_SUPPORT
-Allows access as a Customer Support agent for the marketplace.
ROLE_CHANNEL_ADMIN
-Allows access as a Marketplace Manager for the marketplace.
ROLE_CORPORATE_ADMIN
-Allows access as a Network Manager for the marketplace.
ROLE_PARTNER_READ
-Allows access to read all marketplace data.
path Parameters
companyUuid required | string Unique identifier of company in the API request |
userUuid required | string Unique identifier of user in the API request |
Responses
Request samples
- Shell + Curl
- Node + Request
- Java + Okhttp
curl --request GET \ --url https://marketplace.appdirect.com/api/account/v2/companies/%7BcompanyUuid%7D/memberships/%7BuserUuid%7D/assignments
Response samples
- 200
Read assignable roles for company membership
Retrieve marketplace roles that can be assigned by this company membership.
Required Scopes and Authorization Rules
ROLE_USER
-Allows access as current user matches the user in path.
ROLE_SYS_ADMIN
-Allows access as a Company Admin for the company.
ROLE_RESELLER
-Allows access as a Reseller for the company.
ROLE_SALES_SUPPORT
-Allows access as a Sales Support agent for the marketplace.
ROLE_CHANNEL_SUPPORT
-Allows access as a Customer Support agent for the marketplace.
ROLE_CHANNEL_ADMIN
-Allows access as a Marketplace Manager for the marketplace.
ROLE_CORPORATE_ADMIN
-Allows access as a Network Manager for the marketplace.
ROLE_PARTNER_READ
-Allows access to read all marketplace data.
path Parameters
companyUuid required | string Unique identifier of company in the API request |
userUuid required | string Unique identifier of user in the API request |
Responses
Request samples
- Shell + Curl
- Node + Request
- Java + Okhttp
curl --request GET \ --url https://marketplace.appdirect.com/api/account/v2/companies/%7BcompanyUuid%7D/memberships/%7BuserUuid%7D/assignableRoles
Response samples
- 200
Read company assignable roles
Retrieves a list of marketplace roles that the current, logged-in user can assign to any user in any marketplace company.
Required Scopes and Authorization Rules
ROLE_SYS_ADMIN
-Allows access as a Company Admin for the company.
ROLE_RESELLER
-Allows access as a Reseller for the company.
ROLE_SALES_SUPPORT
-Allows access as a Sales Support agent for the marketplace.
ROLE_CHANNEL_SUPPORT
-Allows access as a Customer Support agent for the marketplace.
ROLE_CHANNEL_ADMIN
-Allows access as a Marketplace Manager for the marketplace.
ROLE_CORPORATE_ADMIN
-Allows access as a Network Manager for the marketplace.
path Parameters
companyUuid required | string Unique identifier of the company |
Responses
Request samples
- Shell + Curl
- Node + Request
- Java + Okhttp
curl --request GET \ --url https://marketplace.appdirect.com/api/account/v2/companies/%7BcompanyUuid%7D/assignableRoles
Response samples
- 200
List groups for company membership
Retrieve the list of groups the company membership is in.
Required Scopes and Authorization Rules
ROLE_USER
-Allows access as an end user in the company
ROLE_RESELLER
-Allows access as a Reseller for the company.
ROLE_SALES_SUPPORT
-Allows access as a Sales Support agent for the marketplace.
ROLE_CHANNEL_SUPPORT
-Allows access as a Customer Support agent for the marketplace.
ROLE_CHANNEL_ADMIN
-Allows access as a Marketplace Manager for the marketplace.
ROLE_CORPORATE_ADMIN
-Allows access as a Network Manager for the marketplace.
ROLE_PARTNER_READ
-Allows access to read all marketplace data.
path Parameters
companyUuid required | string Unique identifier of company in the API request |
userUuid required | string Unique identifier of user in the API request |
query Parameters
ldap | boolean Set to true when company is externally managed |
page | integer Default: 0 Zero-based page index |
searchText | string Search term used to search on group name and description |
size | integer Default: 50 The size of the page to be returned |
sortField | string Default: "createdOn" |
sortOrder | string Default: "DESC" Enum: "ASC" "DESC" |
Responses
Request samples
- Shell + Curl
- Node + Request
- Java + Okhttp
curl --request GET \ --url 'https://marketplace.appdirect.com/api/account/v2/companies/%7BcompanyUuid%7D/memberships/%7BuserUuid%7D/groups?ldap=SOME_BOOLEAN_VALUE&page=SOME_INTEGER_VALUE&searchText=SOME_STRING_VALUE&size=SOME_INTEGER_VALUE&sortField=SOME_STRING_VALUE&sortOrder=SOME_STRING_VALUE'
Response samples
- 200
Publish content events
Publishes content events that contain new or changed data in referenced resources. To access this API, you must configure product-scoped OAuth2 authentication for your application.
Required Scopes and Authorization Rules
ROLE_APPLICATION
-Allows access as the Developer that owns the Product.
Request Body schema: application/jsonrequired
All information about a change to data in a referenced resource, including the resource key, change description, changes to fields, user access, and content.
object (EventMetadata) Metadata for Search content | |
required | object (Key) Identify a resource |
object (ContentEventActor) Identify the application user by identifier (accountName) and name. Required parameters: Only identifier is required to identify a user. | |
object (Action) An action statement that can be used to describe changes that appear in feeds. The statement is constructed of a verb suffixed by text. For example: Verb (assigned) + text (a task) = action description (assigned a task). If delete boolean is true, the resource is deleted from Customer Search. Required parameters: Only Text and Verb are required in requests to create action statements. Only delete is required to delete a resource. | |
object (Changes) Changes to a resource connected to Search | |
Array of objects (Content) Content items associated with the resource |
Responses
Request samples
- Payload
- Shell + Curl
- Node + Request
- Java + Okhttp
{- "eventMetadata": {
- "id": "6ed0279c-35ed-4c7e-928e-25e46c080431",
- "type": "ResourceUpdated",
- "timestamp": "2020-06-11T15:23:45Z"
}, - "key": {
- "source": "b2fc6737-3d3f-4da2-afda-f80f25b89af9",
- "instance": "myclient.myapp.com",
- "resourceId": "order-12345",
- "timestamp": 1500558736123
}, - "actor": {
- "identifier": "bob@a13a9998-e025-4751-8fee-72afdc0fe6d5@2cc88871-e942-4910-96e3-0521d7ae52f4",
- "name": "Bob Roberts"
}, - "action": {
- "verb": "assigned",
- "text": "a task"
}, - "changes": {
- "fields": [
- {
- "name": "projectStatus",
- "value": "In progress",
- "label": "Project Status",
- "op": "replace",
- "display": "expanded"
}
], - "users": [
- {
- "identifier": "bob@a13a9998-e025-4751-8fee-72afdc0fe6d5@2cc88871-e942-4910-96e3-0521d7ae52f4",
- "name": "Bob Roberts"
}
], - "groups": [
- {
- "identifier": "c390a4bf-4f54-418a-87ca-5970c332ba17"
}
]
}, - "contents": [
- {
- "title": "Order request",
- "searchText": "string",
- "mimeType": "application/pdf",
- "linkedToResource": true
}
]
}
Response samples
- 200
- 400
- 401
- 500
{ }
Read all Currency Exchange Rates
Retrieve all of the current and historical exchange rates set on the marketplace.
query Parameters
baseCurrency | string Enum: "USD" "CAD" "EUR" "JPY" "GBP" "KRW" "CHF" "SEK" "SGD" "MYR" "AUD" "MXN" "INR" "BRL" "DKK" "NZD" "NOK" "ZAR" "PHP" "CNY" "SAR" "GTQ" The base currency filter. Optional. |
counterCurrency | string Enum: "USD" "CAD" "EUR" "JPY" "GBP" "KRW" "CHF" "SEK" "SGD" "MYR" "AUD" "MXN" "INR" "BRL" "DKK" "NZD" "NOK" "ZAR" "PHP" "CNY" "SAR" "GTQ" The counter currency filter. Optional. |
page | integer Default: 0 The page number. Optional. |
size | integer Default: 20 The number of application returned by page. Optional. |
sortField | string Default: "VALID_FROM" Enum: "BASE_CURRENCY" "COUNTER_CURRENCY" "VALID_FROM" The order field. Optional. |
sortOrder | string Default: "DESC" Enum: "ASC" "DESC" The sort direction. Optional. |
Responses
Request samples
- Shell + Curl
- Node + Request
- Java + Okhttp
curl --request GET \ --url 'https://marketplace.appdirect.com/api/channel/v1/exchangeRates?baseCurrency=SOME_STRING_VALUE&counterCurrency=SOME_STRING_VALUE&page=SOME_INTEGER_VALUE&size=SOME_INTEGER_VALUE&sortField=SOME_STRING_VALUE&sortOrder=SOME_STRING_VALUE'
Response samples
- 200
{- "content": [
- {
- "baseCurrency": "USD",
- "counterCurrency": "CAD",
- "rate": 1.25,
- "validFrom": 1507077229000,
- "active": true,
- "authenticationType": "CHANNEL_CONSUMER_LOGIN",
- "oauthKey": "dNcCBthw82",
- "userId": 1111,
- "currencyExchangeRateUuid": "9ec1a010-2814-42c9-a9e0-44ed1f5895f0"
}
], - "page": {
- "size": 20,
- "totalElements": 50,
- "totalPages": 3,
- "number": 0
},
}
Create new Currency Exchange Rate
Define a new exchange rate to be used when custom metered usage is reported to your marketplace by a Developer in a currency that isn't supported by your marketplace. This enables you to invoice your customers in your marketplace currency, even though a Developer's external price list for metered usage charges (like Amazon Web Services) might be in a different currency.
Request Body schema: application/json
The new Currency Exchange Rate
baseCurrency required | string (Currency) Default: "USD" Enum: "USD" "CAD" "EUR" "JPY" "GBP" "KRW" "CHF" "SEK" "SGD" "MYR" "AUD" "MXN" "INR" "BRL" "DKK" "NZD" "NOK" "ZAR" "PHP" "CNY" "SAR" "GTQ" "IDR" "ARS" "COP" "PEN" Supported currencies for the system |
counterCurrency required | string (Currency) Default: "USD" Enum: "USD" "CAD" "EUR" "JPY" "GBP" "KRW" "CHF" "SEK" "SGD" "MYR" "AUD" "MXN" "INR" "BRL" "DKK" "NZD" "NOK" "ZAR" "PHP" "CNY" "SAR" "GTQ" "IDR" "ARS" "COP" "PEN" Supported currencies for the system |
rate required | number A currency pair is the quotation and pricing structure of the currencies traded in a forex market. A Currency Pair is represented as XXX/YYY where XXX is the Base currency and YYY is the Counter currency. In AppDirect the Base currency is an external currency and the Counter currency is a supported currency in your marketplace. When an exchange rate is provided with a Currency Pair, it represents how much of the Counter currency is required to purchase 1 unit of the Base currency. EUR/USD=1.18; EUR is the Base currency and USD is the counter currency. 1 EUR is equal to 1.18 USD. In order to buy 1 EUR, the buyer must pay 1.18 USD. |
Responses
Request samples
- Payload
- Shell + Curl
- Node + Request
- Java + Okhttp
{- "baseCurrency": "USD",
- "counterCurrency": "CAD",
- "rate": 0.5
}
Response samples
- 200
{- "baseCurrency": "GTQ",
- "counterCurrency": "INR",
- "rate": 0.3,
- "validFrom": 1507077229000,
- "active": true,
- "authenticationType": "USER_LOGIN",
- "oauthKey": "",
- "userId": 3434556,
- "currencyExchangeRateUuid": "76b11329-e3a5-4944-93b0-0411c9f63369"
}
Read a Currency Exchange Rate
Retrieve the details of a specific Currency Exchange Rate.
path Parameters
currencyExchangeRateUuid required | string The unique identifier of the currency exchange rate. |
Responses
Request samples
- Shell + Curl
- Node + Request
- Java + Okhttp
curl --request GET \ --url https://marketplace.appdirect.com/api/channel/v1/exchangeRates/%7BcurrencyExchangeRateUuid%7D
Response samples
- 200
{- "baseCurrency": "GTQ",
- "counterCurrency": "INR",
- "rate": 0.3,
- "validFrom": 1507077229000,
- "active": true,
- "authenticationType": "USER_LOGIN",
- "oauthKey": "",
- "userId": 3434556,
- "currencyExchangeRateUuid": "76b11329-e3a5-4944-93b0-0411c9f63369"
}
Deactivate a Currency Exchange Rate
Deactivate a Currency Exchange Rate. To stop supporting currency exchange on your marketplace, deactivate a rate. This will prevent the exchange rate from being used to convert usage.
path Parameters
currencyExchangeRateUuid required | string The unique identifier of the currency exchange rate. |
Request Body schema: application/json
Currency Exchange Rate active
active | boolean Currency Exchange Rates can be only deactivated. Allowed value: false. |
Responses
Request samples
- Payload
- Shell + Curl
- Node + Request
- Java + Okhttp
{- "active": true
}
Response samples
- 200
{- "baseCurrency": "GTQ",
- "counterCurrency": "INR",
- "rate": 0.3,
- "validFrom": 1507077229000,
- "active": true,
- "authenticationType": "USER_LOGIN",
- "oauthKey": "",
- "userId": 3434556,
- "currencyExchangeRateUuid": "76b11329-e3a5-4944-93b0-0411c9f63369"
}
API endpoint to manage notification templates (email and sms) that are used to communicate with users on the marketplace when a event occurs on the marketplace that requires a notification to users.
Retrieve an SMS template by type
This call returns all details for a specific sms template type.
path Parameters
type required | string Sms template type |
query Parameters
directSales | boolean Default: false Get the developer sms tempalte |
Responses
Request samples
- Shell + Curl
- Node + Request
- Java + Okhttp
curl --request GET \ --url 'https://marketplace.appdirect.com/api/notification/v1/templates/sms/%7Btype%7D?directSales=SOME_BOOLEAN_VALUE'
Response samples
- 200
{- "id": 269,
- "type": "ACCOUNT_ACTIVATION",
- "Subject": "subject...",
- "locale": "en_US",
- "content": "activate that bad boy",
- "enabled": true,
- "directSales": false
}
List notification templates
List notification templates for the current channel
query Parameters
directSales | boolean Default: false List only the developers notification templates |
Responses
Request samples
- Shell + Curl
- Node + Request
- Java + Okhttp
curl --request GET \ --url 'https://marketplace.appdirect.com/api/notification/v1/templates?directSales=SOME_BOOLEAN_VALUE'
Response samples
- 200
[- {
- "type": "ACCOUNT_ACTIVATION",
- "audience": "NEW_USER",
- "category": "ACCOUNTS",
- "methods": [
- {
- "method": "EMAIL",
- "enabled": true
}, - {
- "method": "SMS",
- "enabled": true
}
], - "reminder": "NONE",
- "generated": false,
- "required": true
}, - {
- "type": "ACCOUNT_ACTIVATION_AFTER_MIGRATION",
- "audience": "NEW_USER",
- "category": "ACCOUNTS",
- "methods": [
- {
- "method": "EMAIL",
- "enabled": true
}
], - "reminder": "NONE",
- "generated": false,
- "required": false
}, - {
- "type": "BRANDED_ACCOUNT_ACTIVATION",
- "audience": "NEW_USER",
- "category": "ACCOUNTS",
- "methods": [
- {
- "method": "EMAIL",
- "enabled": true
}
], - "reminder": "NONE",
- "generated": false,
- "required": true
}, - {
- "type": "ACCOUNT_ACTIVATION_CREATED_BY_ASSISTED_SALES",
- "audience": "NEW_USER",
- "category": "ACCOUNTS",
- "methods": [
- {
- "method": "EMAIL",
- "enabled": true
}
], - "reminder": "NONE",
- "generated": false,
- "required": false
}, - {
- "type": "ACTIVE_USER_TEMP_PASSWORD",
- "audience": "NEW_USER",
- "category": "ACCOUNTS",
- "methods": [
- {
- "method": "EMAIL",
- "enabled": true
}
], - "reminder": "NONE",
- "generated": false,
- "required": false
}, - {
- "type": "NEW_USER",
- "audience": "NEW_USER",
- "category": "ACCOUNTS",
- "methods": [
- {
- "method": "EMAIL",
- "enabled": true
}, - {
- "method": "SMS",
- "enabled": true
}
], - "reminder": "NONE",
- "generated": false,
- "required": true
}
]
Create or update a common email template element
This call allows you to create a new template element (for example, a variable) or update an existing one.
Request Body schema: application/json
Common element definition
content required | string Email notification content |
defaultCommonElement | boolean If the elements are default common elements |
enabled | boolean If the email template is enabled |
id | number Email notification template ID |
locale required | string Email notification locale to determine the language |
partner | string Partner being used to render the email |
type required | string (NotificationCommonElementType) Value: "UNSUBSCRIBE" |
Responses
Request samples
- Payload
- Shell + Curl
- Node + Request
- Java + Okhttp
{- "content": "string",
- "defaultCommonElement": true,
- "enabled": true,
- "id": 0,
- "locale": "string",
- "partner": "string",
- "type": "UNSUBSCRIBE"
}
Response samples
- 200
{- "id": 3,
- "type": "UNSUBSCRIBE",
- "content": "This is a test.",
- "locale": "en_US",
- "enabled": true,
- "partner": "APPDIRECT",
- "defaultCommonElement": false
}
List all notification parameters for a notification type
This call returns all parameter details from a notification template for a specified template type.
path Parameters
type required | string Notification type |
Responses
Request samples
- Shell + Curl
- Node + Request
- Java + Okhttp
curl --request GET \ --url https://marketplace.appdirect.com/api/notification/v1/templates/parameters/%7Btype%7D
Response samples
- 200
[- {
- "parameterName": "{SUPPORT_EMAIL}",
- "type": "SUPPORT_EMAIL",
- "valueType": "SINGLE"
}, - {
- "parameterName": "{BASE_URL}",
- "type": "BASE_URL",
- "valueType": "SINGLE"
}, - {
- "parameterName": "{SUPPORT_PHONE}",
- "type": "SUPPORT_PHONE",
- "valueType": "SINGLE"
}, - {
- "parameterName": "{ACTIVATION_URL}",
- "type": "ACTIVATION_URL",
- "valueType": "SINGLE"
}, - {
- "parameterName": "{COMPANY_NAME}",
- "type": "COMPANY_NAME",
- "valueType": "SINGLE"
}, - {
- "parameterName": "{PARTNER_LABEL}",
- "type": "PARTNER_LABEL",
- "valueType": "SINGLE"
}, - {
- "parameterName": "{PARTNER_STORE_LABEL}",
- "type": "PARTNER_STORE_LABEL",
- "valueType": "SINGLE"
}, - {
- "parameterName": "{USER_EMAIL}",
- "type": "USER_EMAIL",
- "valueType": "SINGLE"
}, - {
- "parameterName": "{ACTIVATION_TOKEN}",
- "type": "ACTIVATION_TOKEN",
- "valueType": "SINGLE"
}, - {
- "parameterName": "{SUPPORT_URL}",
- "type": "SUPPORT_URL",
- "valueType": "SINGLE"
}, - {
- "parameterName": "{MARKETPLACE_LOGO_URL}",
- "type": "MARKETPLACE_LOGO_URL",
- "valueType": "SINGLE"
}
]
Retrieve an email template by type
This call returns all details from a specific email template type.
path Parameters
type required | string Email template type |
query Parameters
directSales | boolean Default: false Get the developer email template |
Responses
Request samples
- Shell + Curl
- Node + Request
- Java + Okhttp
curl --request GET \ --url 'https://marketplace.appdirect.com/api/notification/v1/templates/email/%7Btype%7D?directSales=SOME_BOOLEAN_VALUE'
Response samples
- 200
{- "id": 2,
- "type": "ACCOUNT_ACTIVATION",
- "locale": "en_US",
- "subject": "Please verify your email address for {PARTNER_LABEL}",
- "content": "Hello,<br/>Congratulations! You have a new {PARTNER_STORE_LABEL} account ready to be activated.<br/>Your account has been created with the username {USER_EMAIL}<br/>To activate your account please use the following link:<br/>{ACTIVATION_URL}<br/><br/>If you have any questions, our Support Team is standing by. You can<br/>email us at {SUPPORT_EMAIL}, call us at {SUPPORT_PHONE},<br/>or start a chat with us on the website at {SUPPORT_URL}.<br/>\n<br/>Thank you!<br/>Your friends at {PARTNER_LABEL}",
- "enabled": true,
- "reminderPattern": "pattern...",
- "directSales": false,
- "defaultTemplate": false,
- "partner": "APPDIRECT",
- "fallbackEmailTemplateId": 10
}
Create or update an sms template
This call create a new element or updates an existing SMS template.
Request Body schema: application/json
Sms Template definition
content required | string SMS notification content |
directSales | boolean If the template is used for a direct sale product |
enabled | boolean If the SMS template is enabled |
id | number SMS notification template ID |
locale required | string SMS notification locale to determine the language |
type required | string (NotificationTemplateType) Enum: "ACCOUNT_ACTIVATION" "ACCOUNT_ACTIVATION_AFTER_MIGRATION" "BRANDED_ACCOUNT_ACTIVATION" "ACCOUNT_ACTIVATION_CREATED_BY_ASSISTED_SALES" "ACTIVE_USER_TEMP_PASSWORD" "NEW_USER" "INVITE_USER" "BAAS_MARKETPLACE_SIGN_UP_REQUEST" "LISTING_MARKETPLACE_SIGN_UP_REQUEST" "STORE_MARKETPLACE_SIGN_UP_REQUEST" "LISTING_MARKETPLACE_SIGN_UP_REMINDER" "STORE_MARKETPLACE_SIGN_UP_REMINDER" "PASSWORD_RESET" "PASSWORD_CHANGED_NOTICE" "PRIMARY_EMAIL_CHANGED_NOTICE" "EMAIL_VERIFICATION" "IMPERSONATE_REQUEST" "PASSWORD_REMINDER" "REGISTRATION_REMINDER" "FIRST_TIME_LOGIN" "INACTIVE_USER_LOGIN_REMINDER" "INACTIVE_USER_PURCHASE_REMINDER" "ACCOUNT_ACTIVATION_FOR_EMAIL_CHANGE" "TWO_FACTOR_AUTHENTICATION_EMAIL" "ASSIGNMENT_NOTICE" "UNASSIGNMENT_NOTICE" "ASSIGNED_USERS_LIMIT" "ADOPTION_NOTICE" "SUBSCRIPTION_ADOPTION" "APPLICATION_ACCESS_REQUEST_NOTICE" "APPLICATION_PURCHASE_REQUEST_NOTICE" "EXPIRED_APPLICATION_REQUEST" "SUSPENDED_APPLICATION_REQUEST" "UPDATED_DOWNLOAD" "REVIEW_PURCHASE_REMINDER" "DENY_REVIEW" "DISCOUNT_DEACTIVATED" "CHANGE_OWNERSHIP" "REACTIVATE_DOMAIN" "SUBSCRIPTION_ORDER" "SUBSCRIPTION_ORDER_SINGLE_USER" "SUBSCRIPTION_ORDER_FREE_TRIAL" "PERSONAL_SUBSCRIPTION_NOTICE" "SUBSCRIPTION_ORDER_DOCUMENT" "SUBSCRIPTION_ORDER_MODULE" "FAILED_ORDER" "SUBSCRIPTION_UPGRADE" "FREE_TRIAL_OVER" "FREE_TRIAL_AUTO_UPGRADE_TO_PAID" "EXPIRED_TRIAL_UPGRADE_REMINDER" "INVOICE" "PAYMENT_SUCCESSFUL" "PAYMENT_FAILED" "REFUND" "EXPIRED_CREDIT_CARD" "SUBSCRIPTION_SUSPENDED_OVERDUE_INVOICE" "SUBSCRIPTION_SUSPENDED" "SUBSCRIPTION_CANCEL" "SUBSCRIPTION_CANCEL_SCHEDULED" "SCHEDULED_CANCELLATION_REMINDER" "TICKET_SUPPORT_SUBSCRIPTION_CANCEL" "FAILED_TO_REMOVE_USER" "FAILED_TO_REMOVE_USER_HAS_ACTIVE_OR_PENDING_APPS" "FAILED_TO_REMOVE_USER_OWNS_APPS" "FAILED_TO_REMOVE_USER_SOLE_SYSADMIN" "END_OF_CONTRACT" "OFF_PURCHASE_ORDER" "ORDER_APPROVAL_REQUEST" "SUBSCRIPTION_ORDER_RESELLER" "SUBSCRIPTION_CHANGE_RESELLER" "PUBLISH_REQUEST_PENDING_APPROVAL" "APPLICATION_PUBLISHED" "PUBLISH_DENIED" "VENDOR_NOTIFICATION" "VENDOR_REVIEW" "QUESTION_ASKED" "VENDOR_PUBLISH_REQUEST" "NETWORK_APPLICATION_REPUBLISHED" "MANUAL_EVENT_RESOLUTION" "NEW_REPORT_AVAILABLE" "REPORT_GENERATED" "REPORT_SUMMARY" "NEW_REPORT_SPECIFIC_NOTIFICATION" "OFFLINE_ORDER" "OFFLINE_ASSIGNMENT" "PRODUCT_CREDENTIALS" "MOSI_BOOST_FAILURE" "CREST_NEW_ADMIN" "MOSI_NEW_ADMIN" "MOSI_NEW_USER" "MOSI_UPDATE_USERNAME" "MOSI_ORDER_PLACED" "GOOGLE_NEW_ADMIN_USER" "GOOGLE_NEW_USER" "SENDGRID_PURCHASE" "MCAFEE_PURCHASE" "SCALEXTREME_ACCOUNT" "SYMANTEC_CLOUD_NEW_ACCOUNT" "SYMANTEC_CLOUD_OLD_ACCOUNT" "SYMANTEC_EV_CLOUD_NOTIFICATION" "MOZY_NEW_USER" "NORTON_NEW_USER_PC" "WEBEX_NEW_USER" "ASYNCHRONOUS_PRODUCT_PURCHASE_NOTIFICATION" "MARKETPLACE_REQUEST_TO_ADD_PRODUCT" "VENDOR_ADD_REQUEST" "PRODUCT_ADDED" "VENDOR_APPROVED" "AZURE_SYNC_INVITE_NEW_USER" "AZURE_SYNC_INVITE_USER" "DOCUSIGN_PURCHASE" "DOCUSIGN_ASSIGN" "RESELLER_LINKED" "RESELLER_UNLINKED" "RESELLER_SIGNUP_REQUESTED" "RESELLER_SIGNUP_APPROVED" "RESELLER_SIGNUP_DENIED" "TBILL_VALIDATION" "TBILL_APPROVED_USER_NOTIFICATION" "TBILL_REJECTED_USER_NOTIFICATION" "TBILL_APPROVED_CHANNEL_NOTIFICATION" "TBILL_REJECTED_CHANNEL_NOTIFICATION" "TBILL_INVALID_NOTIFICATION" "LEFTRONIC_ACCOUNT_ACTIVATION" "DOMAIN_REGISTRATION_DOMAIN_PURCHASED_NEW" "DOMAIN_REGISTRATION_DOMAIN_PURCHASED_TRANSFER" "DOMAIN_REGISTRATION_DOMAIN_TRANSFER_COMPLETE" "DOMAIN_REGISTRATION_END_OF_CONTRACT" "DOMAIN_REGISTRATION_END_OF_CONTRACT_MANUAL_RENEWAL" "DOMAIN_REGISTRATION_DOMAIN_SUSPENDED" "DOMAIN_REGISTRATION_DOMAIN_CANCELED" "O365_RESET_DOMAIN_USER_PASSWORDS" "SALES_LEAD_CREATED" "SALES_LEAD_ACCEPTED" "SALES_LEAD_DENIED" "SALES_LEAD_ASSIGNED" "SALES_LEAD_WON" "SALES_LEAD_LOST" "LEAD_PRODUCT_CREATED_ADMIN" "LEAD_MANUAL_CREATED_RESELLER" "LEAD_MANUAL_CREATED_DEVELOPER" "LEAD_PRODUCT_CREATED_SSR" "LEAD_REFERRED_COMPANY_SSR" "LEAD_REFERRED_COMPANY_RESELLER" "LEAD_CONVERTED_ADMIN" "LEAD_CONVERTED_SSR" "PRODUCT_PROFILE_LEAD_CREATED" "CUSTOM_AD_HOC" "SALES_OPPORTUNITY_CREATED" "SALES_OPPORTUNITY_APPROVED" "SALES_OPPORTUNITY_DENIED" "RESELLER_PROFILE_PUBLICATION_REQUESTED" "RESELLER_PROFILE_PUBLICATION_REQUEST_CANCELLED" "RESELLER_PROFILE_UNPUBLISHED" "RESELLER_PROFILE_PUBLICATION_APPROVED" "RESELLER_PROFILE_PUBLICATION_DENIED" "MICROSOFT_CREDENTIALS_SENT" "FAILED_CONTRACT" "WHOLESALES_PRICE_END_USER_ACTION_PENDING_PRICE_GRANTED" "WHOLESALE_PRICE_END_USER_ACTION_PENDING_PRICE_GRANTED_BY_SALES_SUPPORT" "WHOLESALE_PRICE_END_USER_ACTION_PENDING_REJECTED" "WHOLESALE_PRICE_END_USER_ACTION_PENDING_REJECTED_BY_CHANNEL" "WHOLESALES_PRICE_RESELLER_ACTION_PENDING_PRICE_REQUESTED" "WHOLESALE_PRICE_SALES_SUPPORT_ACTION_PENDING_PRICE_REQUESTED" "WHOLESALES_PRICE_RESELLER_ACTION_PENDING_PRICE_REQUESTED_FOR_COMPANY_ADMIN" "WHOLESALE_PRICE_RESELLER_ACTION_PENDING_REJECTED_BY_RESELLER_MANAGER" "WHOLESALE_PRICE_SALES_SUPPORT_ACTION_PENDING_REJECTED_BY_CHANNEL_ADMIN" "WHOLESALE_PRICE_RESELLER_ACTION_PENDING_REJECTED_BY_END_USER" "WHOLESALE_PRICE_SALES_SUPPORT_ACTION_PENDING_REJECTED_BY_END_USER" "WHOLESALES_PRICE_RESELLER_ACTION_PENDING_MANAGER_APPROVED" "WHOLESALES_PRICE_RESELLER_MANAGER_ACTION_PENDING_PRICE_REQUESTED" "WHOLESALES_PRICE_RESELLER_MANAGER_ACTION_PENDING_PRICE_REQUESTED_FOR_CHANNEL_ADMIN" "API_ALERT" "WELCOME_USER" "CREDIT_CARD_REQUIRED" |
Responses
Request samples
- Payload
- Shell + Curl
- Node + Request
- Java + Okhttp
{- "content": "string",
- "directSales": true,
- "enabled": true,
- "id": 0,
- "locale": "string",
- "type": "ACCOUNT_ACTIVATION"
}
Response samples
- 200
{- "id": 1,
- "type": "ACCOUNT_ACTIVATION",
- "locale": "en_US",
- "content": "This is a test.",
- "enabled": true,
- "directSales": false
}
Create or update an email template
This call creates a new email template or updates an existing template.
Request Body schema: application/json
Template definition
content required | string Email notification content |
defaultTemplate | boolean If the template is a default template of it's kind |
directSales | boolean If the template is used for a direct sale product |
enabled | boolean If the email template is enabled |
fallbackEmailTemplateId | number The ID of the template to fallback to if current one is disabled or not existing |
id | number Email notification template ID |
locale required | string Email notification locale to determine the language |
partner | string Partner being used to render the email |
reminderPattern | string Notification reminder pattern |
subject required | string Email notification subject |
type required | string (NotificationTemplateType) Enum: "ACCOUNT_ACTIVATION" "ACCOUNT_ACTIVATION_AFTER_MIGRATION" "BRANDED_ACCOUNT_ACTIVATION" "ACCOUNT_ACTIVATION_CREATED_BY_ASSISTED_SALES" "ACTIVE_USER_TEMP_PASSWORD" "NEW_USER" "INVITE_USER" "BAAS_MARKETPLACE_SIGN_UP_REQUEST" "LISTING_MARKETPLACE_SIGN_UP_REQUEST" "STORE_MARKETPLACE_SIGN_UP_REQUEST" "LISTING_MARKETPLACE_SIGN_UP_REMINDER" "STORE_MARKETPLACE_SIGN_UP_REMINDER" "PASSWORD_RESET" "PASSWORD_CHANGED_NOTICE" "PRIMARY_EMAIL_CHANGED_NOTICE" "EMAIL_VERIFICATION" "IMPERSONATE_REQUEST" "PASSWORD_REMINDER" "REGISTRATION_REMINDER" "FIRST_TIME_LOGIN" "INACTIVE_USER_LOGIN_REMINDER" "INACTIVE_USER_PURCHASE_REMINDER" "ACCOUNT_ACTIVATION_FOR_EMAIL_CHANGE" "TWO_FACTOR_AUTHENTICATION_EMAIL" "ASSIGNMENT_NOTICE" "UNASSIGNMENT_NOTICE" "ASSIGNED_USERS_LIMIT" "ADOPTION_NOTICE" "SUBSCRIPTION_ADOPTION" "APPLICATION_ACCESS_REQUEST_NOTICE" "APPLICATION_PURCHASE_REQUEST_NOTICE" "EXPIRED_APPLICATION_REQUEST" "SUSPENDED_APPLICATION_REQUEST" "UPDATED_DOWNLOAD" "REVIEW_PURCHASE_REMINDER" "DENY_REVIEW" "DISCOUNT_DEACTIVATED" "CHANGE_OWNERSHIP" "REACTIVATE_DOMAIN" "SUBSCRIPTION_ORDER" "SUBSCRIPTION_ORDER_SINGLE_USER" "SUBSCRIPTION_ORDER_FREE_TRIAL" "PERSONAL_SUBSCRIPTION_NOTICE" "SUBSCRIPTION_ORDER_DOCUMENT" "SUBSCRIPTION_ORDER_MODULE" "FAILED_ORDER" "SUBSCRIPTION_UPGRADE" "FREE_TRIAL_OVER" "FREE_TRIAL_AUTO_UPGRADE_TO_PAID" "EXPIRED_TRIAL_UPGRADE_REMINDER" "INVOICE" "PAYMENT_SUCCESSFUL" "PAYMENT_FAILED" "REFUND" "EXPIRED_CREDIT_CARD" "SUBSCRIPTION_SUSPENDED_OVERDUE_INVOICE" "SUBSCRIPTION_SUSPENDED" "SUBSCRIPTION_CANCEL" "SUBSCRIPTION_CANCEL_SCHEDULED" "SCHEDULED_CANCELLATION_REMINDER" "TICKET_SUPPORT_SUBSCRIPTION_CANCEL" "FAILED_TO_REMOVE_USER" "FAILED_TO_REMOVE_USER_HAS_ACTIVE_OR_PENDING_APPS" "FAILED_TO_REMOVE_USER_OWNS_APPS" "FAILED_TO_REMOVE_USER_SOLE_SYSADMIN" "END_OF_CONTRACT" "OFF_PURCHASE_ORDER" "ORDER_APPROVAL_REQUEST" "SUBSCRIPTION_ORDER_RESELLER" "SUBSCRIPTION_CHANGE_RESELLER" "PUBLISH_REQUEST_PENDING_APPROVAL" "APPLICATION_PUBLISHED" "PUBLISH_DENIED" "VENDOR_NOTIFICATION" "VENDOR_REVIEW" "QUESTION_ASKED" "VENDOR_PUBLISH_REQUEST" "NETWORK_APPLICATION_REPUBLISHED" "MANUAL_EVENT_RESOLUTION" "NEW_REPORT_AVAILABLE" "REPORT_GENERATED" "REPORT_SUMMARY" "NEW_REPORT_SPECIFIC_NOTIFICATION" "OFFLINE_ORDER" "OFFLINE_ASSIGNMENT" "PRODUCT_CREDENTIALS" "MOSI_BOOST_FAILURE" "CREST_NEW_ADMIN" "MOSI_NEW_ADMIN" "MOSI_NEW_USER" "MOSI_UPDATE_USERNAME" "MOSI_ORDER_PLACED" "GOOGLE_NEW_ADMIN_USER" "GOOGLE_NEW_USER" "SENDGRID_PURCHASE" "MCAFEE_PURCHASE" "SCALEXTREME_ACCOUNT" "SYMANTEC_CLOUD_NEW_ACCOUNT" "SYMANTEC_CLOUD_OLD_ACCOUNT" "SYMANTEC_EV_CLOUD_NOTIFICATION" "MOZY_NEW_USER" "NORTON_NEW_USER_PC" "WEBEX_NEW_USER" "ASYNCHRONOUS_PRODUCT_PURCHASE_NOTIFICATION" "MARKETPLACE_REQUEST_TO_ADD_PRODUCT" "VENDOR_ADD_REQUEST" "PRODUCT_ADDED" "VENDOR_APPROVED" "AZURE_SYNC_INVITE_NEW_USER" "AZURE_SYNC_INVITE_USER" "DOCUSIGN_PURCHASE" "DOCUSIGN_ASSIGN" "RESELLER_LINKED" "RESELLER_UNLINKED" "RESELLER_SIGNUP_REQUESTED" "RESELLER_SIGNUP_APPROVED" "RESELLER_SIGNUP_DENIED" "TBILL_VALIDATION" "TBILL_APPROVED_USER_NOTIFICATION" "TBILL_REJECTED_USER_NOTIFICATION" "TBILL_APPROVED_CHANNEL_NOTIFICATION" "TBILL_REJECTED_CHANNEL_NOTIFICATION" "TBILL_INVALID_NOTIFICATION" "LEFTRONIC_ACCOUNT_ACTIVATION" "DOMAIN_REGISTRATION_DOMAIN_PURCHASED_NEW" "DOMAIN_REGISTRATION_DOMAIN_PURCHASED_TRANSFER" "DOMAIN_REGISTRATION_DOMAIN_TRANSFER_COMPLETE" "DOMAIN_REGISTRATION_END_OF_CONTRACT" "DOMAIN_REGISTRATION_END_OF_CONTRACT_MANUAL_RENEWAL" "DOMAIN_REGISTRATION_DOMAIN_SUSPENDED" "DOMAIN_REGISTRATION_DOMAIN_CANCELED" "O365_RESET_DOMAIN_USER_PASSWORDS" "SALES_LEAD_CREATED" "SALES_LEAD_ACCEPTED" "SALES_LEAD_DENIED" "SALES_LEAD_ASSIGNED" "SALES_LEAD_WON" "SALES_LEAD_LOST" "LEAD_PRODUCT_CREATED_ADMIN" "LEAD_MANUAL_CREATED_RESELLER" "LEAD_MANUAL_CREATED_DEVELOPER" "LEAD_PRODUCT_CREATED_SSR" "LEAD_REFERRED_COMPANY_SSR" "LEAD_REFERRED_COMPANY_RESELLER" "LEAD_CONVERTED_ADMIN" "LEAD_CONVERTED_SSR" "PRODUCT_PROFILE_LEAD_CREATED" "CUSTOM_AD_HOC" "SALES_OPPORTUNITY_CREATED" "SALES_OPPORTUNITY_APPROVED" "SALES_OPPORTUNITY_DENIED" "RESELLER_PROFILE_PUBLICATION_REQUESTED" "RESELLER_PROFILE_PUBLICATION_REQUEST_CANCELLED" "RESELLER_PROFILE_UNPUBLISHED" "RESELLER_PROFILE_PUBLICATION_APPROVED" "RESELLER_PROFILE_PUBLICATION_DENIED" "MICROSOFT_CREDENTIALS_SENT" "FAILED_CONTRACT" "WHOLESALES_PRICE_END_USER_ACTION_PENDING_PRICE_GRANTED" "WHOLESALE_PRICE_END_USER_ACTION_PENDING_PRICE_GRANTED_BY_SALES_SUPPORT" "WHOLESALE_PRICE_END_USER_ACTION_PENDING_REJECTED" "WHOLESALE_PRICE_END_USER_ACTION_PENDING_REJECTED_BY_CHANNEL" "WHOLESALES_PRICE_RESELLER_ACTION_PENDING_PRICE_REQUESTED" "WHOLESALE_PRICE_SALES_SUPPORT_ACTION_PENDING_PRICE_REQUESTED" "WHOLESALES_PRICE_RESELLER_ACTION_PENDING_PRICE_REQUESTED_FOR_COMPANY_ADMIN" "WHOLESALE_PRICE_RESELLER_ACTION_PENDING_REJECTED_BY_RESELLER_MANAGER" "WHOLESALE_PRICE_SALES_SUPPORT_ACTION_PENDING_REJECTED_BY_CHANNEL_ADMIN" "WHOLESALE_PRICE_RESELLER_ACTION_PENDING_REJECTED_BY_END_USER" "WHOLESALE_PRICE_SALES_SUPPORT_ACTION_PENDING_REJECTED_BY_END_USER" "WHOLESALES_PRICE_RESELLER_ACTION_PENDING_MANAGER_APPROVED" "WHOLESALES_PRICE_RESELLER_MANAGER_ACTION_PENDING_PRICE_REQUESTED" "WHOLESALES_PRICE_RESELLER_MANAGER_ACTION_PENDING_PRICE_REQUESTED_FOR_CHANNEL_ADMIN" "API_ALERT" "WELCOME_USER" "CREDIT_CARD_REQUIRED" |
Responses
Request samples
- Payload
- Shell + Curl
- Node + Request
- Java + Okhttp
{- "content": "string",
- "defaultTemplate": true,
- "directSales": true,
- "enabled": true,
- "fallbackEmailTemplateId": 0,
- "id": 0,
- "locale": "string",
- "partner": "string",
- "reminderPattern": "string",
- "subject": "string",
- "type": "ACCOUNT_ACTIVATION"
}
Response samples
- 200
{- "id": 573,
- "type": "ACCOUNT_ACTIVATION",
- "locale": "en_US",
- "subject": "Test email",
- "content": "This is a test.",
- "enabled": true,
- "reminderPattern": "pattern...",
- "directSales": false,
- "defaultTemplate": false,
- "partner": "APPDIRECT",
- "fallbackEmailTemplateId": 1
}
Retrieve common email element by type
Retrieve common email element by type for the current channel
path Parameters
type required | string Notification common element type |
Responses
Request samples
- Shell + Curl
- Node + Request
- Java + Okhttp
curl --request GET \ --url https://marketplace.appdirect.com/api/notification/v1/templates/common/email/%7Btype%7D
Response samples
- 200
{- "id": 4,
- "type": "UNSUBSCRIBE",
- "content": "This is a test.",
- "locale": "en_US",
- "enabled": true,
- "partner": "APPDIRECT",
- "defaultCommonElement": false
}
List notification common elements
List common element definitions that is present in each notification that is sent e.g. an unsubscribe message in an email footer.
Responses
Request samples
- Shell + Curl
- Node + Request
- Java + Okhttp
curl --request GET \ --url https://marketplace.appdirect.com/api/notification/v1/templates/common
Response samples
- 200
[- {
- "type": "UNSUBSCRIBE",
- "position": "BOTTOM",
- "methods": [
- "EMAIL",
- "SMS"
]
}
]
API endpoint to manage default notification templates (email and sms) When a partner have not customized a notification template, the default template will be used to send notification to users if it exists for the required notification template type and required locale.
Read default notification templates available for the current channel.
Read default notification templates available for the current channel. Reserved for super support users.
Responses
Request samples
- Shell + Curl
- Node + Request
- Java + Okhttp
curl --request GET \ --url https://marketplace.appdirect.com/api/notification/v1/templates/default
Response samples
- 200
[- {
- "audience": "NEW_USER",
- "category": "ACCOUNTS",
- "generated": true,
- "methods": [
- {
- "enabled": true,
- "method": "EMAIL"
}
], - "reminder": "NONE",
- "required": true,
- "type": "ACCOUNT_ACTIVATION"
}
]
Create or update a default common email template element.
Create or update a default common email template element
Request Body schema: application/json
Common element definition
content required | string Email notification content |
defaultCommonElement | boolean If the elements are default common elements |
enabled | boolean If the email template is enabled |
id | number Email notification template ID |
locale required | string Email notification locale to determine the language |
partner | string Partner being used to render the email |
type required | string (NotificationCommonElementType) Value: "UNSUBSCRIBE" |
Responses
Request samples
- Payload
- Shell + Curl
- Node + Request
- Java + Okhttp
{- "content": "string",
- "defaultCommonElement": true,
- "enabled": true,
- "id": 0,
- "locale": "string",
- "partner": "string",
- "type": "UNSUBSCRIBE"
}
Read default common email element by type.
Read default common email element by type
path Parameters
type required | string Notification common element type |
Responses
Request samples
- Shell + Curl
- Node + Request
- Java + Okhttp
curl --request GET \ --url https://marketplace.appdirect.com/api/notification/v1/templates/default/common/email/%7Btype%7D
Response samples
- 200
{- "content": "string",
- "defaultCommonElement": true,
- "enabled": true,
- "id": 0,
- "locale": "string",
- "partner": "string",
- "type": "UNSUBSCRIBE"
}
Create or update default email template
Create or update default email template. Reserved for super support users.
Request Body schema: application/json
Template definition
content required | string Email notification content |
defaultTemplate | boolean If the template is a default template of it's kind |
directSales | boolean If the template is used for a direct sale product |
enabled | boolean If the email template is enabled |
fallbackEmailTemplateId | number The ID of the template to fallback to if current one is disabled or not existing |
id | number Email notification template ID |
locale required | string Email notification locale to determine the language |
partner | string Partner being used to render the email |
reminderPattern | string Notification reminder pattern |
subject required | string Email notification subject |
type required | string (NotificationTemplateType) Enum: "ACCOUNT_ACTIVATION" "ACCOUNT_ACTIVATION_AFTER_MIGRATION" "BRANDED_ACCOUNT_ACTIVATION" "ACCOUNT_ACTIVATION_CREATED_BY_ASSISTED_SALES" "ACTIVE_USER_TEMP_PASSWORD" "NEW_USER" "INVITE_USER" "BAAS_MARKETPLACE_SIGN_UP_REQUEST" "LISTING_MARKETPLACE_SIGN_UP_REQUEST" "STORE_MARKETPLACE_SIGN_UP_REQUEST" "LISTING_MARKETPLACE_SIGN_UP_REMINDER" "STORE_MARKETPLACE_SIGN_UP_REMINDER" "PASSWORD_RESET" "PASSWORD_CHANGED_NOTICE" "PRIMARY_EMAIL_CHANGED_NOTICE" "EMAIL_VERIFICATION" "IMPERSONATE_REQUEST" "PASSWORD_REMINDER" "REGISTRATION_REMINDER" "FIRST_TIME_LOGIN" "INACTIVE_USER_LOGIN_REMINDER" "INACTIVE_USER_PURCHASE_REMINDER" "ACCOUNT_ACTIVATION_FOR_EMAIL_CHANGE" "TWO_FACTOR_AUTHENTICATION_EMAIL" "ASSIGNMENT_NOTICE" "UNASSIGNMENT_NOTICE" "ASSIGNED_USERS_LIMIT" "ADOPTION_NOTICE" "SUBSCRIPTION_ADOPTION" "APPLICATION_ACCESS_REQUEST_NOTICE" "APPLICATION_PURCHASE_REQUEST_NOTICE" "EXPIRED_APPLICATION_REQUEST" "SUSPENDED_APPLICATION_REQUEST" "UPDATED_DOWNLOAD" "REVIEW_PURCHASE_REMINDER" "DENY_REVIEW" "DISCOUNT_DEACTIVATED" "CHANGE_OWNERSHIP" "REACTIVATE_DOMAIN" "SUBSCRIPTION_ORDER" "SUBSCRIPTION_ORDER_SINGLE_USER" "SUBSCRIPTION_ORDER_FREE_TRIAL" "PERSONAL_SUBSCRIPTION_NOTICE" "SUBSCRIPTION_ORDER_DOCUMENT" "SUBSCRIPTION_ORDER_MODULE" "FAILED_ORDER" "SUBSCRIPTION_UPGRADE" "FREE_TRIAL_OVER" "FREE_TRIAL_AUTO_UPGRADE_TO_PAID" "EXPIRED_TRIAL_UPGRADE_REMINDER" "INVOICE" "PAYMENT_SUCCESSFUL" "PAYMENT_FAILED" "REFUND" "EXPIRED_CREDIT_CARD" "SUBSCRIPTION_SUSPENDED_OVERDUE_INVOICE" "SUBSCRIPTION_SUSPENDED" "SUBSCRIPTION_CANCEL" "SUBSCRIPTION_CANCEL_SCHEDULED" "SCHEDULED_CANCELLATION_REMINDER" "TICKET_SUPPORT_SUBSCRIPTION_CANCEL" "FAILED_TO_REMOVE_USER" "FAILED_TO_REMOVE_USER_HAS_ACTIVE_OR_PENDING_APPS" "FAILED_TO_REMOVE_USER_OWNS_APPS" "FAILED_TO_REMOVE_USER_SOLE_SYSADMIN" "END_OF_CONTRACT" "OFF_PURCHASE_ORDER" "ORDER_APPROVAL_REQUEST" "SUBSCRIPTION_ORDER_RESELLER" "SUBSCRIPTION_CHANGE_RESELLER" "PUBLISH_REQUEST_PENDING_APPROVAL" "APPLICATION_PUBLISHED" "PUBLISH_DENIED" "VENDOR_NOTIFICATION" "VENDOR_REVIEW" "QUESTION_ASKED" "VENDOR_PUBLISH_REQUEST" "NETWORK_APPLICATION_REPUBLISHED" "MANUAL_EVENT_RESOLUTION" "NEW_REPORT_AVAILABLE" "REPORT_GENERATED" "REPORT_SUMMARY" "NEW_REPORT_SPECIFIC_NOTIFICATION" "OFFLINE_ORDER" "OFFLINE_ASSIGNMENT" "PRODUCT_CREDENTIALS" "MOSI_BOOST_FAILURE" "CREST_NEW_ADMIN" "MOSI_NEW_ADMIN" "MOSI_NEW_USER" "MOSI_UPDATE_USERNAME" "MOSI_ORDER_PLACED" "GOOGLE_NEW_ADMIN_USER" "GOOGLE_NEW_USER" "SENDGRID_PURCHASE" "MCAFEE_PURCHASE" "SCALEXTREME_ACCOUNT" "SYMANTEC_CLOUD_NEW_ACCOUNT" "SYMANTEC_CLOUD_OLD_ACCOUNT" "SYMANTEC_EV_CLOUD_NOTIFICATION" "MOZY_NEW_USER" "NORTON_NEW_USER_PC" "WEBEX_NEW_USER" "ASYNCHRONOUS_PRODUCT_PURCHASE_NOTIFICATION" "MARKETPLACE_REQUEST_TO_ADD_PRODUCT" "VENDOR_ADD_REQUEST" "PRODUCT_ADDED" "VENDOR_APPROVED" "AZURE_SYNC_INVITE_NEW_USER" "AZURE_SYNC_INVITE_USER" "DOCUSIGN_PURCHASE" "DOCUSIGN_ASSIGN" "RESELLER_LINKED" "RESELLER_UNLINKED" "RESELLER_SIGNUP_REQUESTED" "RESELLER_SIGNUP_APPROVED" "RESELLER_SIGNUP_DENIED" "TBILL_VALIDATION" "TBILL_APPROVED_USER_NOTIFICATION" "TBILL_REJECTED_USER_NOTIFICATION" "TBILL_APPROVED_CHANNEL_NOTIFICATION" "TBILL_REJECTED_CHANNEL_NOTIFICATION" "TBILL_INVALID_NOTIFICATION" "LEFTRONIC_ACCOUNT_ACTIVATION" "DOMAIN_REGISTRATION_DOMAIN_PURCHASED_NEW" "DOMAIN_REGISTRATION_DOMAIN_PURCHASED_TRANSFER" "DOMAIN_REGISTRATION_DOMAIN_TRANSFER_COMPLETE" "DOMAIN_REGISTRATION_END_OF_CONTRACT" "DOMAIN_REGISTRATION_END_OF_CONTRACT_MANUAL_RENEWAL" "DOMAIN_REGISTRATION_DOMAIN_SUSPENDED" "DOMAIN_REGISTRATION_DOMAIN_CANCELED" "O365_RESET_DOMAIN_USER_PASSWORDS" "SALES_LEAD_CREATED" "SALES_LEAD_ACCEPTED" "SALES_LEAD_DENIED" "SALES_LEAD_ASSIGNED" "SALES_LEAD_WON" "SALES_LEAD_LOST" "LEAD_PRODUCT_CREATED_ADMIN" "LEAD_MANUAL_CREATED_RESELLER" "LEAD_MANUAL_CREATED_DEVELOPER" "LEAD_PRODUCT_CREATED_SSR" "LEAD_REFERRED_COMPANY_SSR" "LEAD_REFERRED_COMPANY_RESELLER" "LEAD_CONVERTED_ADMIN" "LEAD_CONVERTED_SSR" "PRODUCT_PROFILE_LEAD_CREATED" "CUSTOM_AD_HOC" "SALES_OPPORTUNITY_CREATED" "SALES_OPPORTUNITY_APPROVED" "SALES_OPPORTUNITY_DENIED" "RESELLER_PROFILE_PUBLICATION_REQUESTED" "RESELLER_PROFILE_PUBLICATION_REQUEST_CANCELLED" "RESELLER_PROFILE_UNPUBLISHED" "RESELLER_PROFILE_PUBLICATION_APPROVED" "RESELLER_PROFILE_PUBLICATION_DENIED" "MICROSOFT_CREDENTIALS_SENT" "FAILED_CONTRACT" "WHOLESALES_PRICE_END_USER_ACTION_PENDING_PRICE_GRANTED" "WHOLESALE_PRICE_END_USER_ACTION_PENDING_PRICE_GRANTED_BY_SALES_SUPPORT" "WHOLESALE_PRICE_END_USER_ACTION_PENDING_REJECTED" "WHOLESALE_PRICE_END_USER_ACTION_PENDING_REJECTED_BY_CHANNEL" "WHOLESALES_PRICE_RESELLER_ACTION_PENDING_PRICE_REQUESTED" "WHOLESALE_PRICE_SALES_SUPPORT_ACTION_PENDING_PRICE_REQUESTED" "WHOLESALES_PRICE_RESELLER_ACTION_PENDING_PRICE_REQUESTED_FOR_COMPANY_ADMIN" "WHOLESALE_PRICE_RESELLER_ACTION_PENDING_REJECTED_BY_RESELLER_MANAGER" "WHOLESALE_PRICE_SALES_SUPPORT_ACTION_PENDING_REJECTED_BY_CHANNEL_ADMIN" "WHOLESALE_PRICE_RESELLER_ACTION_PENDING_REJECTED_BY_END_USER" "WHOLESALE_PRICE_SALES_SUPPORT_ACTION_PENDING_REJECTED_BY_END_USER" "WHOLESALES_PRICE_RESELLER_ACTION_PENDING_MANAGER_APPROVED" "WHOLESALES_PRICE_RESELLER_MANAGER_ACTION_PENDING_PRICE_REQUESTED" "WHOLESALES_PRICE_RESELLER_MANAGER_ACTION_PENDING_PRICE_REQUESTED_FOR_CHANNEL_ADMIN" "API_ALERT" "WELCOME_USER" "CREDIT_CARD_REQUIRED" |
Responses
Request samples
- Payload
- Shell + Curl
- Node + Request
- Java + Okhttp
{- "content": "string",
- "defaultTemplate": true,
- "directSales": true,
- "enabled": true,
- "fallbackEmailTemplateId": 0,
- "id": 0,
- "locale": "string",
- "partner": "string",
- "reminderPattern": "string",
- "subject": "string",
- "type": "ACCOUNT_ACTIVATION"
}
Read default email template by type
Read default email template by type. Reserved for super support user.
path Parameters
type required | string Email template type |
Responses
Request samples
- Shell + Curl
- Node + Request
- Java + Okhttp
curl --request GET \ --url https://marketplace.appdirect.com/api/notification/v1/templates/default/email/%7Btype%7D
Response samples
- 200
{- "content": "string",
- "defaultTemplate": true,
- "directSales": true,
- "enabled": true,
- "fallbackEmailTemplateId": 0,
- "id": 0,
- "locale": "string",
- "partner": "string",
- "reminderPattern": "string",
- "subject": "string",
- "type": "ACCOUNT_ACTIVATION"
}
List all discounts
Lists all available discounts. The parameters can be used to filter the results.
query Parameters
code | string Discount code |
count | integer Default: 250 Number of results to fetch. Used for paging. |
sortField | string Default: "CREATED_ON" Enum: "APPLICATION" "CHANNEL" "CODE" "CREATED_ON" "END_DATE" "REDEMPTIONS" "START_DATE" Sort field. Default value is creation date. |
sortOrder | string Default: "ASC" Enum: "ASC" "DESC" Sort order. Default value is ascending. |
start | integer First result index. Used for paging. |
Responses
Request samples
- Shell + Curl
- Node + Request
- Java + Okhttp
curl --request GET \ --url 'https://marketplace.appdirect.com/api/channel/v1/discounts?code=SOME_STRING_VALUE&count=SOME_INTEGER_VALUE&sortField=SOME_STRING_VALUE&sortOrder=SOME_STRING_VALUE&start=SOME_INTEGER_VALUE'
Response samples
- 200
Create discounts
Creates a discount with the provided data. Note that percentage discounts cannot exceed two decimal places (for example, 10.15).
Request Body schema: application/json
Discount data object
applicationId | number or null Application ID. |
applicationUuid | string or null Application UUID. |
applicationName | string or null Name of the application to which the discount applies. |
autoApply | boolean True if the discount is automatically applied. Default value is true. |
basePartnerSharePercentage | number or null Base partner's percentage share of the discount. |
billingCycles | number or null Number of billing cycles for which the discount should be applied. |
code | string or null Discount code. Must be at least 4 characters, but no longer than 103 characters. |
createdOn | number or null Creation date of the discount. |
description required | string Description of discount. Required field. Must be at least 4 characters, but no longer than 255 characters. |
editionId | number or null Edition ID. |
editionUuid | string or null Edition UUID. |
expirationDate | number or null Expiration date for the discount. This date must be in the future. |
id | number or null Discount ID. |
uuid | string or null Discount UUID. |
industryId | number or null Industry ID. |
maxRedemptions | number or null Maximum number of redemptions available. |
maxUnits | number Maximum number of units for which to apply the discount. |
minUnits | number Minimum number of units for which to apply the discount. |
partnerSharePercentage | number or null Partner's percentage share of the discount. |
paymentPlanId | number or null Payment plan ID. |
paymentPlanUuid | string or null Payment plan UUID. |
percentage | number Percentage discount if discount is of PERCENTAGE type. The percentage value cannot exceed two decimal places (for example, 10.15). |
price | number or null Amount to discount if discount is of FIXED_PRICE type. |
redemptionRestriction | string (RedemptionRestriction) |
redemptions | number Number of times the discount has been redeemed. |
retainable | boolean True if the discount is retainable. Retainable discounts can be redeemed on orders that are updated after the discount expires. For example, if an order includes a discount that expires on 01 January 2019, and the order is then updated on 02 January 2019, the discount would still be redeemable. The default value is false (discounts are not retained). |
startDate | number or null Start date for the discount. |
type required | string (DiscountType) |
unit | string (PricingUnit) Enum: "USER" "GIGABYTE" "MEGABYTE" "HOUR" "MINUTE" "INVOICE" "UNIT" "PROJECT" "PROPERTY" "ITEM" "WORD" "EMAIL" "CONTACT" "CALL" "CREDIT" "ROOM" "HOST" "AGENT" "OPERATOR" "PROVIDER" "MANAGER" "TESTER" "JVM" "SERVER" "WEB_USE_MINUTE" "AUDIO_USE_MINUTE" "PIECE" "EMPLOYEE_PAY_PERIOD" "EMPLOYEE_PER_PAY_PERIOD" "COMPUTER" "NOT_APPLICABLE" "ONE_TIME_SETUP" "DATA_POINTS" "TIER1_API_CALLS" "TIER2_API_CALLS" "ADVISORY_HOURS" "OVERAGE_AUDIO_MINUTE" "EMPLOYEE" "CONNECTION" "PUSH_USER" "THOUSAND_EMAILS_PER_DAY" "PUSH_NOTIFICATION_DEVICES" "API_CALLS" "SMS_TEXT_MESSAGE" "CONTACTS_1000" "CONTRACT_FEE" "TRANSFER_FEE" "REACTIVATION_FEE" "RECIPIENT" "ADDITIONAL_1000_CONTACTS_BLOCK" "SCHEDULE_PLAN" "EMAILS_1000" "EMAILS_2500" "MOBILE_DEVICE" "PAYSLIP" "PAYSLIP_CORRECTION" "STORE" "WEBSITE" "EPAPER" "PAGE" "POSTAGE_AND_PRINT" "INTERNATIONAL_POSTAGE_AND_PRINT" "TIER1_TOP_LEVEL_DOMAIN" "TIER2_TOP_LEVEL_DOMAIN" "DEDICATED_IP" "ENABLELCM" "MAXCOMPONENTS" "DATA_MANAGEMENT_USER" "SPECIALIST_USER" "PROFESSIONAL_USER" "MATERIALITY_MATRIX" "STAKEHOLDER_MANAGEMENT" "SCORECARD" "STANDARD_MAPPING" "DONATION_MANAGEMENT" "DOCUMENT" "PACKAGE_SMALL" "PACKAGE_LARGE" "MEMBER" "ATTENDEE" "MAILING" "RESPONSE" "EXTERNAL_INVOICE_FEE" "CLIENT_TEST" "IMAGE_TRANSFORMATION" "TOTAL_IMAGE" "LICENSE" "MAILBOX" "FREE_40_INCH_HDTV_PC" "FREE_46_INCH_HDTV_PC" "FREE_46_INCH_HDTV_PC_MOUNTING" "EMPLOYEE_PER_WEEK" "REGISTER" "END_USER" "CORE" "DEVICE" "PORT" "MEASURER" "PUBLISHED_MEASUREMENT" "NODE" "SERVER_RULE" "VPN_LP" "PROXY_LP" "DESKTOP_CONNECT_LP" "CAMERA" "MAIN_SOUND_ZONE" "SUB_SOUND_ZONE" "POST" "REPORT" "BOX" "SESSION" "DISPLAY" "TRUCKROLL" "TRANSACTION_FEE" "SENDING_API_CALL" "LOOKUP_API_CALL" "ANALYTICS_API_CALL" "MIGRATION_INSTANCE" "NFON_SETUP_PER_PHONE_EXTENSION" "NFON_SETUP_PER_PHONE_EXTENSION_PLUS" "NFON_SETUP_PER_EFAX_EXTENSION" "NFON_PHONE_EXTENSION" "NFON_PHONE_EXTENSION_PLUS" "NFON_EFAX_EXTENSION" "NFON_CALL_CENTER_MONITORING" "NFON_NMEETING" "NFON_MOBILE_NFON_DEVICE" "NFON_ISOFTPHONE_MAC" "NFON_NSOFTPHONE_STANDARD_WINDOWS" "NFON_NSOFTPHONE_PREMIUM_WINDOWS" "NFON_NCTI_STANDARD_WINDOWS" "NFON_NCTI_STANDARD_CRM_WINDOWS" "NFON_NCTI_STANDARD_MAC" "NFON_NSOFTPHONE_STANDARD_WINDOWS_OR_MOBILE" "WESUSTAIN_PERFORMANCE" "WESUSTAIN_STAKEHOLDER_REPUTATION" "WESUSTAIN_WEAPP" "FAX" "FAX_LINE" "ROOM_LINE" "DEPARTMENT_LINE" "INTERNATIONAL_LICENSE" "INTERNATIONAL_DEPARTMENT_LINE" "INTERNATIONAL_ROOM_LINE" "INTERNATIONAL_LINE" "CALLING_CREDIT" "LINE" "TOLLFREE_ROOM_LINE" "TOLLFREE_DEPARTMENT_LINE" "TAXES_AND_FEES" "LEAD" "OPPORTUNITY" "CAMPAIGN" "CASE" "CUSTOMER" "TIER1_STANDARD_LINE" "TIER1_ROOM_LINE" "TIER1_TOLLFREE_ROOM_LINE" "TIER1_TOLLFREE_DEPARTMENT_LINE" "TIER1_FAX_LINE" "TIER1_DEPARTMENT_LINE" "TIER2_STANDARD_LINE" "TIER2_ROOM_LINE" "TIER2_DEPARTMENT_LINE" "TIER3_STANDARD_LINE" "TIER3_ROOM_LINE" "TIER3_DEPARTMENT_LINE" "TIER4_STANDARD_LINE" "TIER4_ROOM_LINE" "TIER4_DEPARTMENT_LINE" "CLUSTER" "NODE_4VCPU" "FIVE_HUNDRED_GB_SSD" "TWELVE_TB_NETWORK_IO" "JBOSS_EAP" "JBOSS_FUSE" "JBOSS_A_MQ" "JBOSS_BRMS" "JBOSS_BPM_SUITE" "JBOSS_DATA_GRID" "JBOSS_DATA_VIRT" "USER_LICENSE" "ADDITIONAL_NUMBER_LICENSE" "ROOM_PHONE_LICENSE" "UBERCONFERENCE_PRO_LICENSE" "UBERCONFERENCE_PRO_LICENSE_UNBUNDLED" "INSTANCE" "INDOOR_CAMERA" |