openapi: 3.0.0
servers:
- url: https://api.enterprise.apigee.com/v1
info:
title: Monetization API
description: >-
Monetize your APIs. For more information, see
Monetization overview.
version: '1.0'
security:
- Basic: []
- OAuth: []
paths:
'/mint/organizations/{org_name}/monetization-packages':
post:
summary: Create an API package
tags:
- API packages
operationId: createAPIPackage
description: >-
Creates an API package.
An API package is a collection of API products that is presented to developers as a bundle, and typically associated with one or more rate plans for monetization. An API package does not become visible to developers until you publish a rate plan for the package (with a start date of the current or future date).
Developers can register their apps to use an API package only by purchasing one of the rate plans currently in effect. If an API package does not have a published rate plan that is currently in effect, the package is not monetized.
You can create multiple API packages. You decide which API products to include in each API package. You can even put the same API product or products in different packages and associate them with the same or different rate plans.
After you add an API product to a package, you may need to set up price points for the API product. You need to do this only if all of the following are true:
* You set up a revenue sharing rate plan for the API product.
Developers charge third parties for the use of the resources in the API product.
* There is a minimum or maximum restriction on the amount developers can charge and you want to notify developers of the restriction.
The minimum and maximum prices are displayed in the details for the API package.
See also Creating an API product bundle using the API.
**Note**: Once you create a package, you cannot delete it.
parameters:
- $ref: '#/components/parameters/org_name'
responses:
'201':
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/APIPackage'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/APIPackage'
description: API package details.
get:
summary: List API packages
tags:
- API packages
operationId: listAPIPackages
description: Lists API packages for the specified organization. See also Viewing API product bundles using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/all'
- $ref: '#/components/parameters/size'
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/monetized'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/APIPackages'
'/mint/organizations/{org_name}/monetization-packages/{package_id}':
get:
summary: Get an API package
tags:
- API packages
operationId: getAPIPackage
description: Gets an API package for the specified organization. See also Viewing API product bundle using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/package_id'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/APIPackage'
delete:
summary: Delete an API package
tags:
- API packages
operationId: deleteAPIPackage
description: Deletes an API package for the specified organization. You can delete an API package only if it does not have any rate plans defined. See also Deleting an API product bundle using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/package_id'
responses:
'204':
description: No Content
'/mint/organizations/{org_name}/developers/{developer_email}/monetization-packages':
get:
summary: List API packages accepted by a developer
tags:
- API packages
operationId: listAPIPackagesAcceptedDev
description: Lists all API packages accepted by a developer. See also Viewing API product bundle accepted by a developeror company using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/developer_email'
- $ref: '#/components/parameters/current'
- $ref: '#/components/parameters/allAvailable'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/APIPackages'
'/mint/organizations/{org_name}/companies/{company_id}/monetization-packages':
get:
summary: List API packages accepted by a company
tags:
- API packages
operationId: listAPIPackagesAcceptedCompany
description: Lists API packages accepted by a company. See also Viewing API product bundle accepted by a developeror company using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/company_id'
- $ref: '#/components/parameters/current'
- $ref: '#/components/parameters/allAvailable'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/APIPackages'
'/mint/organizations/{org_name}/monetization-packages/{package_id}/products/{product_id}':
post:
summary: Add an API product to an API package
tags:
- API packages
operationId: addAPIProductAPIPackage
description: >-
Adds an API product to an API package.
If you have an API product-specific rate plan defined (rate card or revenue share), you can specify the details in the request body. Otherwise, specify `{ }`.
See also Managing the API products in an API product bundle using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/package_id'
- $ref: '#/components/parameters/product_id'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/Rateplan'
requestBody:
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Rateplan'
description: >-
API product-specific rate plan details. Only required if you have an API product-specific rate plan defined (rate card or revenue share). If not required, specify {}.
delete:
summary: Delete an API product from an API package
tags:
- API packages
operationId: deleteAPIProductAPIPackage
description: Deletes the specified API product from an API package. See also Deleting an API product from an API product bundle.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/package_id'
- $ref: '#/components/parameters/product_id'
responses:
'204':
description: No Content
'/mint/organizations/{org_name}/products':
get:
summary: List API products
tags:
- API products
operationId: listAPIProducts
description: Lists API products for the specified organization. See also Manage API products.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/all'
- $ref: '#/components/parameters/size'
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/monetized'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/APIProducts'
'/mint/organizations/{org_name}/products/{product_id}':
get:
summary: Get an API product
tags:
- API products
operationId: getAPIProduct
description: Gets an API product in the specified organization. See also Manage API products.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/product_id'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/APIProduct'
'/mint/organizations/{org_name}/billing-adjustments':
post:
summary: Make a billing adjustment
tags:
- Billing adjustments
operationId: makeBillingAdjustment
description: >-
Makes a billing adjustment for the specified organization.
If you do not specify an optional property, the billing adjustment will be all inclusive for that property. For example, if you do not specify a transaction type, the billing adjustment will apply to all transaction types. See also Making a billing adjustment using the API.
parameters:
- $ref: '#/components/parameters/org_name'
responses:
'201':
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/BillingAdjustment'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/BillingAdjustment'
description: Billing adjustment.
get:
summary: List billing adjustments
tags:
- Billing adjustments
operationId: listBillingAdjustments
description: Lists billing adjustments for the organization. See also Viewing billing adjustments using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/all'
- $ref: '#/components/parameters/size'
- $ref: '#/components/parameters/page'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/BillingAdjustments'
'/mint/organizations/{org_name}/billing-adjustments/{billing_adjustment_id}':
get:
summary: Get the specified billing adjustment
tags:
- Billing adjustments
operationId: getBillingAdjustment
description: Gets the specified billing adjustment for the organization. See also Viewing billing adjustments using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/billing_adjustment_id'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/BillingAdjustment'
put:
summary: Update a billing adjustment
tags:
- Billing adjustments
operationId: updateBillingAdjustment
description: >-
Updates the specified billing adjustment for the organization.
You must specify all of the same properties that you set when creating the billing adjustment and include the ID of the billing adjustment.
You can modify the name and adjustment percentage values only. See also Updating a billing adjustment using the API.
**Note**: When you update a billing adjustment, you need to specify all the billing adjustement settings, not only the settings you want to update. You might want to get the billing adjustment, copy the response payload, modify it as required, and then pass the modified payload in the request body.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/billing_adjustment_id'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/BillingAdjustment'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/BillingAdjustment'
description: Updates details for the billing adjustment.
delete:
summary: Delete a billing adjustment
tags:
- Billing adjustments
operationId: deleteBillingAdjustment
description: Deletes the specified billing adjustment for the organization. See also Deleting a billing adjustment using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/billing_adjustment_id'
responses:
'204':
description: No Content
'/mint/organizations/{org_name}/tax-engine':
get:
summary: Get the tax rate for a developer
tags:
- Billing documents
operationId: getTaxRateDeveloper
description: Gets the tax rate for a developer in an organization. See also Retrieving the tax rate for a developer using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/developer_email'
responses:
'200':
description: OK
'/mint/organizations/{org_name}/monetization-packages/{package_id}/rate-plans/{plan_id}/real-currency-credit-transactions':
post:
summary: Issue credit to a developer
operationId: Issue credit to a developer
tags:
- Credits
description: Issues credit to a developer. You can apply credit against a package as a whole, or against the use of a specific product within a package. See also Issuing the credits using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/package_id'
- $ref: '#/components/parameters/plan_id'
- $ref: '#/components/parameters/billingMonth'
- $ref: '#/components/parameters/billingYear'
- $ref: '#/components/parameters/currencyId'
- $ref: '#/components/parameters/developerId'
- $ref: '#/components/parameters/productId'
- $ref: '#/components/parameters/transactionAmount'
- $ref: '#/components/parameters/transactionNote'
responses:
'201':
description: Created
content:
application/json:
schema:
$ref: "#/components/schemas/Transaction"
'/mint/organizations/{org_name}/developers/{developer_email}/developer-credit-limit':
post:
summary: Set a credit limit for a developer
operationId: setCreditLimitDevS
tags:
- Credit limits
description: >-
Sets a credit limit for a developer. See also Setting a credit limit using the API.
**Note**: When you add a supported currency for an organization, you can set a credit limit. The credit limit applies to all postpaid developers in the organization. This API overrides the credit limit for the specified developer only.'
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/developer_email'
- $ref: '#/components/parameters/supportedCurrencyId'
- $ref: '#/components/parameters/amount'
responses:
'201':
description: Created
content:
application/json:
schema:
$ref: "#/components/schemas/PrepaidBalance"
get:
summary: Get the credit limit for a developer
operationId: getCreditLimitDev
tags:
- Credit limits
description: Gets the credit limit for a developer. See also Retrieving a credit limit using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/developer_email'
- $ref: '#/components/parameters/all'
- $ref: '#/components/parameters/size'
- $ref: '#/components/parameters/page'
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/CreditLimit'
'/mint/organizations/{org_name}/supported-currencies':
get:
summary: Get supported currencies
tags:
- Currency
operationId: getSupportedCurrencies
description: Gets supported currencies. See also Retrieving supported currencies using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/all'
- $ref: '#/components/parameters/size'
- $ref: '#/components/parameters/page'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/SupportedCurrencies'
post:
summary: Add a supported currency
tags:
- Currency
operationId: addSupportedCurrency
description: Adds a supported currency. See also Adding supported currencies using the API.
parameters:
- $ref: '#/components/parameters/org_name'
responses:
'201':
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/SupportedCurrency'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/SupportedCurrency'
description: Supported currency details.
'/mint/organizations/{org_name}/supported-currencies/{supportedcurrency_id}':
get:
summary: Get supported currency
tags:
- Currency
operationId: getSupportedCurrency
description: Gets details for a supported currency. See also Retrieving supported currencies using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/supportedcurrency_id'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/SupportedCurrency'
put:
summary: Update a supported currency
tags:
- Currency
operationId: updateSupportedCurrency
description: >-
Updates a supported currency. See also Updating a supported currency using the API.
**Note**: All properties in the request body are required.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/supportedcurrency_id'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/SupportedCurrency'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/SupportedCurrency'
description: Supported currency details.
delete:
summary: Delete supported currency
tags:
- Currency
operationId: deleteSupportedCurrency
description: Deletes a supported currency. See also Deleting a supported currency using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/supportedcurrency_id'
responses:
'204':
description: No Content
'/mint/organizations/{org_name}/developer-categories':
get:
summary: List developer categories
tags:
- Developer categories
operationId: listDeveloperCategories
description: Lists developer categories in an organization. See also Retrieving developer categories using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/all'
- $ref: '#/components/parameters/size'
- $ref: '#/components/parameters/page'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DeveloperCategories'
post:
summary: Create a developer category
tags:
- Developer categories
operationId: createDeveloperCategory
description: >-
Creates a developer category for an organization. See also Creating a developer category using the API.
parameters:
- $ref: '#/components/parameters/org_name'
responses:
'201':
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/DeveloperCategory'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/DeveloperCategory'
description: Developer category details.
'/mint/organizations/{org_name}/developer-categories/{category_id}':
get:
summary: Get developer category
tags:
- Developer categories
operationId: getDeveloperCategory
description: Gets details of a developer category. See also Retrieving developer categories using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/category_id'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DeveloperCategory'
put:
summary: Update a developer category
tags:
- Developer categories
operationId: updateDeveloperCategory
description: Updates a developer category for an organization. See also Updating a developer category using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/category_id'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DeveloperCategory'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/DeveloperCategory'
description: Developer category details.
delete:
summary: Delete developer category
tags:
- Developer categories
operationId: deleteDeveloperCategory
description: Deletes a developer category from an organization. See also Deleting a developer category using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/category_id'
responses:
'204':
description: No Content
'/mint/organizations/{org_name}/transactions':
post:
summary: Migrate existing transactions or fees
tags:
- Developer migration
operationId: migrateExistingTransactionsFees
description: Migrates existing transactions or fees. See also Migrating developers to monetization.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/force'
responses:
'201':
description: Created
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/TransactionsMigrate'
description: Migration details.
'/mint/organizations/{org_name}/developer-roles':
get:
summary: List developer roles
tags:
- Developer roles
operationId: listDeveloperRoles
description: Lists developer roles in an organization. See Retrieving a developer role.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/all'
- $ref: '#/components/parameters/size'
- $ref: '#/components/parameters/page'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DeveloperRoles'
post:
summary: Create a developer role
tags:
- Developer roles
operationId: createDeveloperRole
description: Creates a developer role for an organization. See Creating a developer role.
parameters:
- $ref: '#/components/parameters/org_name'
responses:
'201':
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/DeveloperRole'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/DeveloperRole'
description: Developer role details.
'/mint/organizations/{org_name}/notification-email-templates':
get:
summary: List notification email templates
tags:
- Event notifications
operationId: listNotificationEmailTemplates
description: Lists notification email templates. The items in the templates that begin with `$` are variables. See also Managing notification templates using the API.
parameters:
- $ref: '#/components/parameters/org_name'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/NotificationEmailTemplates'
post:
summary: Create a notification email template
tags:
- Event notifications
operationId: createNotificationEmailTemplate
description: Creates a notification email template. See also Managing notification templates using the API.
parameters:
- $ref: '#/components/parameters/org_name'
responses:
'201':
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/NotificationEmailTemplate'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/NotificationEmailTemplate'
description: Notification email template.
'/mint/organizations/{org_name}/notification-email-templates/{template_id}':
get:
summary: Get a notification email template
tags:
- Event notifications
operationId: getNotificationEmailTemplate
description: Gets a notification email template. See also Managing notification templates using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/template_id'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/NotificationEmailTemplate'
put:
summary: Update a notification email template
tags:
- Event notifications
operationId: updateNotificationEmailTemplate
description: Updates a notification email template. See also Managing notification templates using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/template_id'
responses:
'201':
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/NotificationEmailTemplate'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/NotificationEmailTemplate'
description: Notification email template.
'/mint/organizations/{org_name}/notification-conditions/{condition_id}':
get:
summary: Get a notification condition and action
tags:
- Event notifications
operationId: getNotificationConditionAction
description: Gets a notification condition and action. See also Configuring notification conditions and actions using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/condition_id'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/NotificationCondition'
put:
summary: Update notification condition and action
tags:
- Event notifications
operationId: updateNotificationConditionAction
description: Updates a notification condition and action. See also Configuring notification conditions and actions using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/condition_id'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/NotificationCondition'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/NotificationRequest'
description: Notification condition and action.
delete:
summary: Delete a notification condition and action
tags:
- Event notifications
operationId: deleteNotificationConditionAction
description: Deletes a notification condition and action. See also Configuring notification conditions and actions using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/condition_id'
responses:
'204':
description: No Content
'/mint/organizations/{org_name}/notification-conditions':
get:
summary: List notification conditions and actions
tags:
- Event notifications
operationId: listNotificationConditionsActions
description: Lists notification conditions and actions. See also Configuring notification conditions and actions using the API.
parameters:
- $ref: '#/components/parameters/org_name'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/NotificationConditionsActions'
post:
summary: Create notification condition and action
tags:
- Event notifications
operationId: createNotificationConditionAction
description: Creates a notification condition and action. See also Configuring notification conditions and actions using the API.
parameters:
- $ref: '#/components/parameters/org_name'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/NotificationCondition'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/NotificationRequest'
description: Notification condition and action.
'/mint/organizations/{org_name}/webhooks':
get:
summary: List webhooks
tags:
- Event notifications
operationId: listWebhooks
description: Lists webhooks. See also Viewing all webhooks using the API.
parameters:
- $ref: '#/components/parameters/org_name'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/Webhooks'
post:
summary: Create a webhook
tags:
- Event notifications
operationId: createWebhook
description: Creates a webhook. See also Creating a webhook using the API.
parameters:
- $ref: '#/components/parameters/org_name'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/Webhook'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/Webhook'
description: Webhook details.
'/mint/organizations/{org_name}/webhooks/{webhook_id}':
get:
summary: Get a webhook
tags:
- Event notifications
operationId: getWebhook
description: Gets a webhook. See also Viewing a webhook using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/webhook_id'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/Webhook'
post:
summary: Update a webhook
tags:
- Event notifications
operationId: updateWebhook
description: Updates a webhook. See also Updating a webhook using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/webhook_id'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/Webhook'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/Webhook'
description: Webhook details.
delete:
summary: Delete a webhook
operationId: deleteWebhook
tags:
- Event notifications
description: Deletes a webhook. See also Deleting a webhook using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/webhook_id'
- $ref: '#/components/parameters/forceDelete'
responses:
'204':
description: No Content
'/mint/organizations/{org_name}/webhooks/{webhook_id}/test/{developer_email}/{app_id}/{product_id}/{rateplan_id}':
get:
summary: List available webhook notification trigger types.
operationId: listWebhookNotificationTriggerTypes
tags:
- Event notifications
description: Lists available webhook notification trigger types. See also Viewing the available webhook notification trigger types.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/webhook_id'
- $ref: '#/components/parameters/developer_email'
- $ref: '#/components/parameters/app_id'
- $ref: '#/components/parameters/product_id'
- $ref: '#/components/parameters/rateplan_id'
responses:
'200':
description: OK
post:
summary: Test the execution of a webhook.
operationId: testWebhook
tags:
- Event notifications
description: Test the execution of a webhook. See also Testing the execution of a webhook.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/webhook_id'
- $ref: '#/components/parameters/developer_email'
- $ref: '#/components/parameters/app_id'
- $ref: '#/components/parameters/product_id'
- $ref: '#/components/parameters/rateplan_id'
responses:
'201':
description: Created
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/WebhookTest'
description: Webhook details.
'/mint/organizations/{org_name}/webhooks/{webhook_id}/test/{developer_email}/{app_id}/{product_id}/{rateplan_id}/{trigger_type}':
get:
summary: Get a sample request payload for the webhook trigger type.
operationId: getSampleWebhookTriggerType
tags:
- Event notifications
description: Gets a sample request payload for the webhook trigger type. See also Viewing a sample request payload for webhook notification testing.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/webhook_id'
- $ref: '#/components/parameters/developer_email'
- $ref: '#/components/parameters/app_id'
- $ref: '#/components/parameters/product_id'
- $ref: '#/components/parameters/rateplan_id'
- $ref: '#/components/parameters/trigger_type'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/WebhookSample'
'/mint/organizations/{org_name}/notification-service-items':
get:
summary: Get notifications sent
operationId: getNotificationsSent
tags:
- Event notifications
description: >-
Gets notifications that have been sent for an organization.
A maximum of 1000 notifications are returned. In the response, the `hasMoreItems` flag indicates whether the number of notifications in the specified list amounts to more than 1000. If `hasMoreItems` is `true`, indicating that there are more notifications than could be displayed, and you would like to view the remaining notifications, you need to refine your query parameter filters to process smaller groups of notifications per request. For example, you might make multiple requests using several smaller date ranges, or return notifications with only certain status values.
See also Viewing the notifications sent.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/startdate'
- $ref: '#/components/parameters/enddate'
- $ref: '#/components/parameters/status'
responses:
'200':
description: OK
'/mint/organizations/{org_name}/notification-service-items/{notification_id}':
get:
summary: Get notification details
operationId: getNotificationDetails
tags:
- Event notifications
description: Gets details for a specific notification. See also Viewing details for a notification.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/notification_id'
responses:
'200':
description: OK
'/mint/organizations/{org_name}/notification-service-items/{notification_id}/reprocess':
post:
summary: Reprocess a notification
operationId: reporcessNotification
tags:
- Event notifications
description: Reprocess a notification. See also Reprocessing a notification.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/notification_id'
responses:
'201':
description: Created
'/mint/organizations/{org_name}':
get:
summary: Get the organization profile
tags:
- Organization profile
operationId: getOrganizationProfile
description: Gets the organization profile. See also View the organization profile using the API.
parameters:
- $ref: '#/components/parameters/org_name'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/OrganizationProfile'
put:
summary: Update organization profile
tags:
- Organization profile
operationId: updateOrganizationProfile
description: >-
Update the organization profile. See also Edit the organization profile using the API.
**Note**: When you update the organization profile, you need to specify all the organization profile settings, not only the settings you want to update. You might want to get the organization profile copy the response payload, modify it as required, and then pass the modified payload in the request body.
parameters:
- $ref: '#/components/parameters/org_name'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/Organization'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/OrganizationProfile'
description: Organization profile.
'/mint/organizations/{org_name}/developers/{developer_email}/developer-balances/recurring-setup':
post:
summary: Set up automatic reload of prepaid account balance for a developer
tags:
- Prepaid account balances
operationId: automaticReloadPrepaidAccountBalanceDev
description: Set up automatic reload of prepaid account balance for a developer. See also Setting up automatic reload of prepaid account balances for a developer.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/developer_email'
- $ref: '#/components/parameters/supportedCurrencyId'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/PrepaidBalanceDevelopers'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PrepaidBalanceReload'
description: Automatic prepaid account balance details.
'/mint/organizations/{org_name}/companies/{company_id}/developer-balances/recurring-setup':
post:
summary: Set up automatic reload of prepaid account balance for a company
tags:
- Prepaid account balances
operationId: automaticReloadPrepaidAccountBalanceCompany
description: Set up automatic reload of prepaid account balance for a company. See also Setting up automatic reload of prepaid account balances for a company.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/company_id'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/PrepaidBalanceReload'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PrepaidBalanceReload'
description: Automatic prepaid account balance details.
'/mint/organizations/{org_name}/companies/{company_id}/developer-balances':
get:
summary: Get prepaid account balance and recurring setup for a company
tags:
- Prepaid account balances
operationId: getPrepaidAccountBalanceRecurringCompany
description: Gets prepaid account balance and recurring setup for a company. See also Viewing prepaid account balances for a company.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/company_id'
- $ref: '#/components/parameters/all'
- $ref: '#/components/parameters/size'
- $ref: '#/components/parameters/page'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/PrepaidBalances'
post:
summary: Reload prepaid account balance for a company
tags:
- Prepaid account balances
operationId: reloadPrepaidAccountBalanceCompany
description: Reload prepaid account balance for a company. See also Reloading a prepaid account balance using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/company_id'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/PrepaidBalance'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/Reload'
description: Automatic prepaid account balance details.
'/mint/organizations/{org_name}/developers/{developer_email}/developer-balances':
get:
summary: Account balance for a developer
tags:
- Prepaid account balances
operationId: getPrepaidAccountBalanceDev
description: Gets account balance for a developer. See also Viewing prepaid account balances for a developer.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/developer_email'
- $ref: '#/components/parameters/all'
- $ref: '#/components/parameters/size'
- $ref: '#/components/parameters/page'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/PrepaidBalances'
post:
summary: Reload prepaid account balance for a developer
tags:
- Prepaid account balances
operationId: relaodPrepaidAccountBalanceDev
description: Reload prepaid account balance for a developer. See also Reloading a prepaid account balance using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/developer_email'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/PrepaidBalance'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/Reload'
description: Automatic prepaid account balance details.
'/mint/organizations/{org_name}/developers/{developer_email}/prepaid-developer-balance':
get:
summary: Get prepaid account balance, top up, and tax information for a developer
tags:
- Prepaid account balances
operationId: getAccountDetailsDev
description: Gets prepaid account balance information including current and total balance, usage, top ups, and usage tax. See also Viewing prepaid account balances for a developer.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/developer_email'
- $ref: '#/components/parameters/billingMonth'
- $ref: '#/components/parameters/billingYear'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/PrepaidBalanceDevelopers'
'/mint/organizations/{org_name}/companies/{company_id}/eligible-products':
get:
summary: Get eligible API products for a company
tags:
- API products
operationId: getEligibleAPIProductsCompany
description: >-
Gets the API products that a company is eligible to access, including:
* API products for which a company has accepted a rate plan.
* API products that do not have a published rate plan.
See also View API products.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/company_id'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/EligibleProducts'
'/mint/organizations/{org_name}/developers':
get:
summary: Get monetization information for developers
tags:
- Developers
operationId: getMonetizationDevs
description: >-
Gets the monetization information for all developers in an organization.
You can define the monetization information by passing custom attributes when creating or updating a developer.
You can get the monetization custom attributes set using the standard (non-monetization) API to get all developers or a single developer.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/all'
- $ref: '#/components/parameters/size'
- $ref: '#/components/parameters/page'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/Developers'
'/mint/organizations/{org_name}/developers/{developer_email}':
get:
summary: Get monetization information for a developer
tags:
- Developers
operationId: getMonetizationDev
description:
Gets the monetization information for a developers in an organization.
You can define the monetization information by passing custom attributes when creating or updating a developer.
You can get the monetization custom attributes set using the standard (non-monetization) API to get all developers or a single developer.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/developer_email'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/Developer'
'/mint/organizations/{org_name}/developers/{developer_email}/eligible-products':
get:
summary: Get eligible API products for a developer
tags:
- API products
operationId: getEligibleAPIProductsDev
description: >-
Gets the API products that a developer is eligible to access, including:
* API products for which a developer has accepted a rate plan.
* API products that do not have a published rate plan.
See also View API products.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/developer_email'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/EligibleProducts'
'/mint/organizations/{org_name}/providers':
get:
summary: Get third-party payment providers
tags:
- Prepaid account balances
operationId: getThirdPartyPaymentProviders
description: Gets third-party payment providers for your organization. See also Viewing the payment providers configured for your organization.
parameters:
- $ref: '#/components/parameters/org_name'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/PaymentProviders'
post:
summary: Configure third-party payment provider
tags:
- Prepaid account balances
operationId: Configure third-party payment provider
description: 'Configure third-party payment providers for your organization. See also Viewing the payment providers configured for your organization.'
parameters:
- $ref: '#/components/parameters/org_name'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/PaymentProvider'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PaymentProvider'
description: Third-party payment provider details.
'/mint/organizations/{org_name}/providers/{provider_id}':
put:
summary: Update third-party payment provider
tags:
- Prepaid account balances
operationId: updateThirdPartyPaymentProvider
description: Updates third-party payment providers for your organization. See also Viewing the payment providers configured for your organization.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/provider_id'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/PaymentProvider'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PaymentProvider'
description: Payment provider details.
delete:
summary: Delete third-party payment provider
tags:
- Prepaid account balances
operationId: deleteThirdPartyPaymentProvider
description: Deletes third-party payment provider for your organization. See also .
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/provider_id'
responses:
'204':
description: OK
'/mint/organizations/{org_name}/rate-plans':
get:
summary: List rate plans for an organization
operationId: listRatePlansOrg
tags:
- Rate plans
description: Lists rate plans for your organization. See also Viewing rate plans using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/all'
- $ref: '#/components/parameters/size'
- $ref: '#/components/parameters/page'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/Rateplans"
'/mint/organizations/{org_name}/monetization-packages/{package_id}/rate-plans':
post:
summary: Create a rate plan
operationId: createRatePlan
tags:
- Rate plans
description: >-
A rate plan specifies the monetization approach for your API package or for individual API products in the package. For example, it specifies whether you charge for the use of your API package and products based on a flat rate or a variable rate, and whether there are additional fees.
You define the type of plan to indicate whether it applies to all developers, developers in a specific category, or a specific developer. You can configure the following features:
* Set a one-time or recurring fee for the plan
* Add a freemium part to the plan enabling devleopers to try out features for free over a period of time
* Configure a rate plan type, such as revenue share, rate card, or combination
* Set a renewal period
* Define product-specific plans, if desired
After you initially set up a rate plan, you can update it to add fees, add a fremium plan, or specify additional rate plan details.
**Note**: You can set up multiple rate plans for an API package.
See also Create rate plans.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/package_id'
responses:
'201':
description: Created
content:
application/json:
schema:
$ref: "#/components/schemas/Rateplan"
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/Rateplan'
description: Rate plan details.
get:
summary: List rate plans for an API package
operationId: listRatePlansAPIPackage
tags:
- Rate plans
description: Lists rate plans for an API package. See also Viewing rate plans using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/package_id'
- $ref: '#/components/parameters/current'
- $ref: '#/components/parameters/showPrivate'
- $ref: '#/components/parameters/standard'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/Rateplans"
'/mint/organizations/{org_name}/monetization-packages/{package_id}/rate-plans/{plan_id}':
put:
summary: Update a rate plan
operationId: updateRatePlan
tags:
- Rate plans
description: 'Update a rate plan for an API package. See also Editing a rate plan draft using the API.'
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/package_id'
- $ref: '#/components/parameters/plan_id'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/Rateplan"
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/Rateplan'
description: Rate plan details.
get:
summary: Get a rate plan
operationId: getRatePlan
tags:
- Rate plans
description: Gets a rate plan for an API package. See also Viewing a rate plan for an API package using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/package_id'
- $ref: '#/components/parameters/plan_id'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/Rateplan"
delete:
summary: Delete a rate plan
operationId: deleteRatePlan
tags:
- Rate plans
description: Deletes a rate plan for an API package that is in draft mode. You cannot delete a rate plan once it has been published. See also Deleting a rate plan draft using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/package_id'
- $ref: '#/components/parameters/plan_id'
responses:
'204':
description: 'Success, No Content'
'/mint/organizations/{org_name}/monetization-packages/{package_id}/rate-plans/{plan_id}/revision':
post:
summary: Create a rate plan revision (or future rate plan)
operationId: createRatePlanRevision
tags:
- Rate plans
description: >-
Create a revision of an existing rate plan. A revision is a new plan; the original plan and the revision both exist as rate plans.
After an existing rate plan is published, the only property you can change is its end date. However, you can create a new version of the plan that includes changed properties, such as changed rate plan rates. You can set up the revision to go into effect at a future date. The original rate plan ends when the revision goes into effect.
Developers are notified about the revision. Those developers who accept the original rate plan are automatically registered for the revision (but have the option of rejecting the revision).
See also Creating a future rate plan using the API.'
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/package_id'
- $ref: '#/components/parameters/plan_id'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/Rateplan'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/Rateplan'
description: Rate plan details.
'/mint/organizations/{org_name}/developers/{developer_email}/developer-rateplans':
get:
summary: List active rate plans for a developer
operationId: listActiveRatePlansDev
tags:
- Rate plans
description: Lists active rate plans for a developer. See also Viewing all active rate plans for a developer using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/developer_email'
- $ref: '#/components/parameters/all'
- $ref: '#/components/parameters/size'
- $ref: '#/components/parameters/page'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/Rateplans'
post:
summary: Accept rate plan
operationId: acceptRatePlan
tags:
- Rate plans
description: Accept a published rate plan for a developer. See also Accept published rate plans using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/developer_email'
responses:
'201':
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/DeveloperRatePlan'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/AcceptRateplan'
description: Accept rate plan.
'/mint/organizations/{org_name}/developers/{developer_email}/developer-rateplans/{developer_rateplan_id}':
get:
summary: Get an accepted rate plan for a developer
operationId: getAcceptedRatePlanDev
tags:
- Rate plans
description: Gets an active rate plan for a developer. See also Viewing an active rate plan for a developer using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/developer_email'
- $ref: '#/components/parameters/developer_rateplan_id'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DeveloperRatePlan'
'/mint/organizations/{org_name}/developers/{developer_email}/products/{product_id}/rate-plan-by-developer-product':
get:
summary: List active rate plans that contain an API product
operationId: listAllActiveRatePlansWithProduct
tags:
- Rate plans
description: Lists active rate plans for a developer that contain an API product. See also Viewing all active rate plans for a developer that contain an API product using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/developer_email'
- $ref: '#/components/parameters/product_id'
- $ref: '#/components/parameters/showPrivate'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/Rateplans"
'/mint/organizations/{org_name}/developers/{developer_email}/developer-accepted-rateplans':
get:
summary: Get rate plans accepted by a developer
operationId: listAcceptedRatePlans
tags:
- Rate plans
description: Lists rate plans accepted by a developer. See also Viewing all rate plans accepted by a developer using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/developer_email'
- $ref: '#/components/parameters/all'
- $ref: '#/components/parameters/size'
- $ref: '#/components/parameters/page'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/DeveloperRatePlans"
'/mint/organizations/{org_name}/monetization-packages/{package_id}/refund-transactions':
post:
summary: Post a refund
tags:
- Refunds
operationId: postRefund
description: Post a refund to an API package. See also Posting a refund using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/package_id'
- $ref: '#/components/parameters/monetizationPackageId'
- $ref: '#/components/parameters/parentTxId'
- $ref: '#/components/parameters/refundAmount'
- $ref: '#/components/parameters/revenueType'
- $ref: '#/components/parameters/transactionNote'
responses:
'201':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/Transaction'
'/mint/organizations/{org_name}/report-definitions':
post:
summary: Create a report definition
tags:
- Reports
operationId: createReportDefinition
description: Create a report definition for an organization. You must create a report definition before you can generate a report. See also Creating a report definition using the API.
parameters:
- $ref: '#/components/parameters/org_name'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ReportDefinition'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ReportDefinition'
description: Report definition details.
get:
summary: Get report definitions
tags:
- Reports
operationId: getReportDefinitions
description: Gets report definitions for an organization. You can specify query parameters to limit the number of report definitions returned or to sort them using a specified field. See also Viewing report definitions using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/all'
- $ref: '#/components/parameters/size'
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/sort'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ReportDefinitions'
'/mint/organizations/{org_name}/developers/{developer_email}/report-definitions':
post:
summary: Create a report definition for a developer
tags:
- Reports
operationId: createReportDefinitionDev
description: Create a report definition for a developer. You must create a report definition before you can generate a report. See also Creating a report definition using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/developer_email'
responses:
'201':
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/ReportDefinition'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ReportDefinition'
description: Report definition details.
get:
summary: Get report definitions for a developer.
tags:
- Reports
operationId: getReportDefinitionsDev
description: Gets report definitions for a developer. You can specify query parameters to limit the number of report definitions returned or to sort them using a specified field. See also Viewing report definitions using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/developer_email'
- $ref: '#/components/parameters/all'
- $ref: '#/components/parameters/size'
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/sort'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ReportDefinitions'
'/mint/organizations/{org_name}/report-definitions/{report_definition_id}':
put:
summary: Update a report definition
tags:
- Reports
operationId: updateReportDefinition
description: Updates a report definition. See also Updating a report definition using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/report_definition_id'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ReportDefinition'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ReportDefinition'
description: Report definition details.
get:
summary: Get report definition.
tags:
- Reports
operationId: getReportDefinition
description: Gets details for a report definition. See also Viewing report definitions using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/report_definition_id'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ReportDefinition'
delete:
summary: Delete a report definition.
tags:
- Reports
operationId: deleteReportDefintion
description: Deletes the specified report definition. See also Deleting a report definition using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/report_definition_id'
responses:
'204':
description: No Content
'/mint/organizations/{org_name}/{report_type}':
post:
summary: Generate a report.
tags:
- Reports
operationId: generateReport
description: Generate a report of the specified type. See also Generating a report using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/report_type'
responses:
'200':
description: OK
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/MintCriteria'
description: Criteria used to generate report.
'/mint/organizations/{org_name}/developers/{developer_email}/revenue-reports':
post:
summary: Generate a revenue report for a developer.
tags:
- Reports
operationId: generateRevenueReportDev
description: Generates a revenue report for a developer. See also Generating a report using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/developer_email'
responses:
'200':
description: OK
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/MintCriteria'
example:
appCriteria: ''
billingMonth: 'JULY'
billingYear: '2015'
currCriteria: ''
currencyOption: 'USD'
devCriteria: ''
devCustomAttribute: object
fromDate: ''
groupBy:
- ''
monetizationPackageIds:
- ''
pkgCriteria: ''
prevFromDate: ''
prevToDate: ''
prodCriteria: ''
productIds:
- ''
pricingTypes: ''
ratePlanLevels: ''
showEntityId: false
showRevSharePct: false
showSummary: false
showTxDetail: false
showTxType: false
toDate: ''
transactionStatus: ''
transactionCustomAttributes: ''
transactionTypes: object
description: Search criteria.
'/mint/organizations/{org_name}/transaction-search':
post:
summary: Get transaction activity
tags:
- Reports
operationId: getTransactionActivity
description: Gets transaction activity for the specified organization using the specified criteria. See also Reporting transaction activity using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/all'
- $ref: '#/components/parameters/size'
- $ref: '#/components/parameters/page'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/Transactions"
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/MintCriteria'
description: Criteria used to search for transactions.
'/mint/organizations/{org_name}/applications-with-transactions':
get:
summary: Get transaction activity for applications
tags:
- Transaction activity
operationId: getTransactionActivityApplications
description: Gets transaction activity for applications. See also Reporting transaction activity using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/START_DATE'
- $ref: '#/components/parameters/END_DATE'
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
properties:
application:
type: array
description: List of applications.
items:
$ref: "#/components/schemas/Application"
'/mint/organizations/{org_name}/developers-with-transactions':
get:
summary: Get transaction activity for a developers
tags:
- Transaction activity
operationId: get transaction activity for developers
description: Gets transaction activity for developers. See also Reporting transaction activity using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/START_DATE'
- $ref: '#/components/parameters/END_DATE'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/Developers"
'/mint/organizations/{org_name}/products-with-transactions':
get:
summary: Get transaction activity for API products
tags:
- Transaction activity
operationId: getTransactionActivityAPIProducts
description: Gets transaction activity for API products. See also Reporting transaction activity using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/START_DATE'
- $ref: '#/components/parameters/END_DATE'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/APIProducts"
'/mint/organizations/{org_name}/packages-with-transactions':
get:
summary: List API packages with transactions
tags:
- Transaction activity
operationId: listAPIPackagesTransactions
description: Lists API packages with transactions for the specified organization. See also Reporting transaction activity using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/START_DATE'
- $ref: '#/components/parameters/END_DATE'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/APIPackages'
'/triggers':
get:
summary: List currently scheduled monetization jobs
tags:
- Scheduled jobs
operationId: listScheduledMonetizationJobs
description: Lists currently scheduled monetization jobs. See also Viewing scheduled jobs using the API.
**Notes:**
* **Apigee Edge Private Cloud customers only**. You must have `system admin` privileges to use the APIs. Apigee Edge Cloud customers should contact Apigee Support for assistance with managing the monetization job schedule.
* **This API cannot be executed using the Try this API panel**.
parameters:
- $ref: '#/components/parameters/orgid'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ScheduledJobs'
'/triggers/{trig_id}':
get:
summary: Get a scheduled job
tags:
- Scheduled jobs
operationId: getScheduledMonetizationJob
description: Gets a scheduled monetization job. See also Viewing scheduled jobs using the API.
**Notes:**
* **Apigee Edge Private Cloud customers only**. You must have `system admin` privileges to use the APIs. Apigee Edge Cloud customers should contact Apigee Support for assistance with managing the monetization job schedule.
* **This API cannot be executed using the Try this API panel**.
parameters:
- $ref: '#/components/parameters/trig_id'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ScheduledJob'
put:
summary: Update scheduled monetization jobs
tags:
- Scheduled jobs
operationId: updateScheduledMonetizationJobs
description: Updates scheduled monetization jobs. See also Updating scheduled jobs using the API.
**Notes:**
* **Apigee Edge Private Cloud customers only**. You must have `system admin` privileges to use the APIs. Apigee Edge Cloud customers should contact Apigee Support for assistance with managing the monetization job schedule.
* **This API cannot be executed using the Try this API panel**.
parameters:
- $ref: '#/components/parameters/trig_id'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ScheduledJob'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ScheduledJob'
description: Job request details.
'/mint/organizations/{org_name}/suspended-developers':
get:
summary: Get suspended developers
tags:
- Suspended developers
operationId: listSuspendedDevelopers
description: Lists suspended developers for an organization. See also Viewing all suspended developers using the API.
parameters:
- $ref: '#/components/parameters/org_name'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/SuspendedDevelopers'
'/mint/organizations/{org_name}/suspended-developers/{id}':
get:
summary: Get a suspended developer
tags:
- Suspended developers
operationId: getSuspendedDeveloper
description: Gets a suspended developer for an organization. See also Viewing a suspended developer using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/id'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/SuspendedDeveloper'
delete:
summary: Unsuspend a developer
tags:
- Suspended developers
operationId: unsuspendDeveloper
description: Unsuspend the specified developer. See also Unsuspending a developer using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/id'
responses:
'204':
description: No Content
'/mint/organizations/{org_name}/suspended-developers/unsuspend-by-product/{suspendedProduct_id}':
post:
summary: Unsuspend all developers for an API product
tags:
- Suspended developers
operationId: Unsuspend all developers for an API product
description: Unsuspend all developers for an API product. See also Unsuspending all developers for an API product using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/suspendedProduct_id'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/SuspendedDeveloper'
'/mint/organizations/{org_name}/sync-organization':
get:
summary: Synchronize with monetization your organization
tags:
- Synchronize monetization
operationId: synchronizeOrgWithMonetization
description: Synchronize with monetization your organization. See also Synchronizing your organization using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/childEntities'
responses:
'200':
description: OK
'/mint/organizations/{org_name}/sync-products':
get:
summary: Synchronize with monetization all API products
tags:
- Synchronize monetization
operationId: Synchronize with monetization all API products
description: 'Synchronize with monetization the API products in your organization. See also Synchronizing products using the APISynchronizing developers using the API.'
parameters:
- $ref: '#/components/parameters/org_name'
responses:
'200':
description: OK
'/mint/organizations/{org_name}/sync-applications':
get:
summary: Synchronize with monetization all applications
tags:
- Synchronize monetization
operationId: Synchronize with monetization all applications
description: 'Synchronize with monetization the applications in your organization. See also Synchronizing applications using the API.'
parameters:
- $ref: '#/components/parameters/org_name'
responses:
'200':
description: OK
'/mint/organizations/{org_name}/tncs':
get:
summary: List terms and conditions
tags:
- Terms and conditions
operationId: listTermsConditions
description: Lists terms and conditions. See also Viewing terms and conditions using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/all'
- $ref: '#/components/parameters/size'
- $ref: '#/components/parameters/page'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/TNCs'
post:
summary: Add terms and conditions
tags:
- Terms and conditions
operationId: addTermsConditions
description: Add terms and conditions. See also Adding terms and conditions using the API.
parameters:
- $ref: '#/components/parameters/org_name'
responses:
'201':
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/TNC'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/TNC'
description: Terms and conditions.
'/mint/organizations/{org_name}/tncs/{tncs_id}':
get:
summary: Get a terms and conditions document
tags:
- Terms and conditions
operationId: getTermsConditionsDocument
description: Gets a terms and conditions document. See also Viewing terms and conditions using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/tncs_id'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/TNC'
put:
summary: Update a terms and conditions document
tags:
- Terms and conditions
operationId: updateTermsConditionsDocument
description: Updates a terms and conditions document. See also Updating terms and conditions using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/tncs_id'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/TNC'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/TNC'
description: Terms and conditions.
delete:
summary: Delete a terms and conditions document
tags:
- Terms and conditions
operationId: deleteTermsConditionsDocument
description: Deletes a terms and conditions document. See also Deleting terms and conditions using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/tncs_id'
responses:
'204':
description: No Content
'/mint/organizations/{org_name}/developers/{developer_email}/developer-tncs':
get:
summary: Get the terms and conditions documents accepted by a developer
tags:
- Terms and conditions
operationId: getTermsConditionsDocumentsAcceptedDeveloper
description: Gets the terms and conditions documents accepted by the specified developer. See also Viewing terms and conditions accepted by a developer using the API.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/developer_email'
- $ref: '#/components/parameters/current'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DeveloperTNCs'
'/mint/organizations/{org_name}/developers/{developer_email}/tncs/{tncs_id}/developer-tncs':
post:
summary: Accept a terms and conditions document for a developer
tags:
- Terms and conditions
operationId: acceptTermsConditionsDocumentDeveloper
description: 'Accept the terms and conditions document for a developer. See also Manage terms and conditions using the API.'
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/developer_email'
- $ref: '#/components/parameters/tncs_id'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DeveloperTNC'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/AcceptTNC'
description: Report definition details.
'/mint/organizations/{org_name}/transactions/developers/{developer_email}':
get:
summary: Get the status of transactions.
operationId: getStatusTransactions
tags:
- Transaction activity
description: Gets the status of transcations that have occurred during a specified time range. See also View the status of transactions.
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/developer_email'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/productId'
- $ref: '#/components/parameters/utctme'
- $ref: '#/components/parameters/utctme2'
responses:
'200':
description: Success
components:
securitySchemes:
Basic:
type: http
scheme: basic
description: >-
Multi-factor authentication is not supported.
OAuth:
type: http
scheme: bearer
bearerFormat: JWT
parameters:
org_name:
in: path
name: org_name
required: true
schema:
type: string
description: Organization name.
package_id:
name: package_id
in: path
description: ID of the API package.
required: true
schema:
type: string
product_id:
name: product_id
in: path
description: ID of the API product.
required: true
schema:
type: string
company_id:
name: company_id
in: path
description: ID of the company.
required: true
schema:
type: string
billing_adjustment_id:
name: billing_adjustment_id
in: path
description: ID of the billing adjustment.
required: true
schema:
type: string
template_id:
name: template_id
in: path
description: ID of the notification email template.
required: true
schema:
type: string
condition_id:
name: condition_id
in: path
description: ID of the notification condition and action.
required: true
schema:
type: string
webhook_id:
name: webhook_id
in: path
description: ID of the webhook.
required: true
schema:
type: string
developer_email:
name: developer_email
in: path
description: ID of the developer.
required: true
schema:
type: string
app_id:
name: app_id
in: path
description: ID of the application for which you are testing webhook triggering.
required: true
schema:
type: string
rateplan_id:
name: rateplan_id
in: path
description: ID of the rate plan for which you are testing webhook triggering.
required: true
schema:
type: string
trigger_type:
name: trigger_type
in: path
description: Name of the webhook notification trigger type. For example, `RATEPLANQUOTAUSAGE`.
required: true
schema:
type: string
trig_id:
name: trig_id
in: path
description: ID of the job trigger.
required: true
schema:
type: string
id:
name: id
in: path
description: Email or ID of the developer.
required: true
schema:
type: string
provider_id:
name: provider_id
in: path
description: ID of the third-party payment provider.
required: true
schema:
type: string
plan_id:
name: plan_id
in: path
description: ID of the rate plan.
required: true
schema:
type: string
category_id:
name: category_id
in: path
description: ID of the developer category.
required: true
schema:
type: string
notification_id:
name: notification_id
in: path
description: ID of the notification item for which you want to display details.
required: true
schema:
type: string
tncs_id:
name: tncs_id
in: path
description: ID of the terms and conditions document.
required: true
schema:
type: string
supportedcurrency_id:
name: supportedcurrency_id
in: path
description: ID for the currency.
required: true
schema:
type: string
all:
name: all
in: query
description: >-
Flag that specifies whether to return all records. If set to `false`, the number of records returned per page is defined by the `size` query parameter.
required: false
schema:
type: boolean
default: false
size:
name: size
in: query
description: >-
Number of records returned per page. If the `all` query parameter is set to `true`, this parameter is ignored.
schema:
type: integer
default: 20
page:
name: page
in: query
description: >-
Number of the page that you want to return (if content is paginated). If the `all` query parameter is set to `true`, this parameter is ignored.
schema:
type: integer
default: 1
required: false
monetized:
name: monetized
in: query
description: >-
Flag that specifies whether to return only monetized API products (that is, API products with at least one published rate plan).
schema:
type: boolean
default: true
required: false
sort:
name: sort
in: query
description: Name of field on which you would like to sort the results.
required: false
schema:
type: string
current:
name: current
in: query
description: >-
Flag specifying whether to show only:
* Active API packages (`true`). Defaults to `false` in this case.
* Current rate plans (`true`), or current, draft, and expired plans (`false`). Defaults to `true` in this case.
required: false
schema:
type: boolean
allAvailable:
name: allAvailable
in: query
description: Flag specifying whether to show all available packages or only those available to the specified developer. This flag defaults to true.
required: false
schema:
type: boolean
default: true
billingMonth:
name: billingMonth
in: query
description: Billing month for which the credit applies (in all upper-case). For example, APRIL.
required: true
schema:
type: string
billingYear:
name: billingYear
in: query
description: Billing year for which the credit applies. For example, 2013.
schema:
type: string
required: true
currencyId:
name: currencyId
in: query
description: Currency used for the credit.
schema:
type: string
required: true
developerId:
name: developerId
in: query
description: ID of the developer to whom the credit applies.
required: true
schema:
type: string
productId:
name: productId
in: query
description: ID of the API product to which the credit applies. If not specified, applies to all API products in the API package.
required: false
schema:
type: string
transactionAmount:
name: transactionAmount
in: query
description: Amount of credit.
required: true
schema:
type: string
transactionNote:
name: transactionNote
in: query
description: Note that describes the reason for the credit.
schema:
type: string
required: true
supportedCurrencyId:
name: supportedCurrencyId
in: query
description: Currency used for the credit limit.
schema:
type: string
required: true
amount:
name: amount
in: query
description: Amount of credit limit.
required: true
schema:
type: string
force:
name: force
in: query
description: Flag that specifies whether to skip validation steps and forcibly set the number of transactions. By default, `?force=false` and validation steps are executed. For example, if a prepaid developer has a zero balance and activity on the account is suspended, if `?force=false` the request will fail during validation.
required: false
schema:
type: boolean
forceDelete:
name: forceDelete
in: query
description: Flag that specifies whether or not to force the deletion if processes are in progress. Set to `true` to force deleting.
required: false
schema:
type: boolean
default: true
startdate:
name: startdate
in: query
description: >-
Start date in UTC. Use the following format: `YYYY-MM-DD HH:mm:ss`. If you do not specify a timestamp (not recommended), `00:00:00` (midnight) is used by default.
required: false
schema:
type: string
enddate:
name: enddate
in: query
description: >-
End date in UTC. Use the following format: `YYYY-MM-DD HH:mm:ss`. If you do not specify a timestamp (not recommended), `00:00:00` (midnight) is used by default.
required: false
schema:
type: string
status:
name: status
in: query
description: >-
Status of the notification. Valid values include: `BLANK_MESSAGE`, `DUPLICATE`, `FAILED`, `NOTIFICATION_SENT`, `OPT_OUT`, `QUEUED`, and `TEMPLATE_NOT_FOUND`.
required: false
schema:
type: string
showPrivate:
name: showPrivate
in: query
description: Flag that specifies whether to show public and private plans (`true`) or public plans only (`false`).
required: false
schema:
type: boolean
default: false
standard:
name: standard
in: query
description: Flag that specifies whether to display all types of rate plans, including standard, developer, and developer category. Set to `true` to display standard rate plan types only. Set to `false` to display all types.
required: false
schema:
type: boolean
default: true
developer_rateplan_id:
name: developer_rateplan_id
in: path
description: ID of the accepted rate plan that is returned in the response when you accept the rate plan.
required: true
schema:
type: string
monetizationPackageId:
name: monetizationPackageId
in: query
description: API package to which the refund applies.
schema:
type: string
required: false
parentTxId:
name: parentTxId
in: query
description: The purchase transation to be refunded.
schema:
type: string
required: true
refundAmount:
name: refundAmount
in: query
description: The amount of the refund.
schema:
type: number
required: true
revenueType:
name: revenueType
in: query
description: Revenue type (GROSS or NET) of the purchase transaction.
schema:
type: string
required: true
report_definition_id:
name: report_definition_id
in: path
description: Report definition ID.
required: true
schema:
type: string
report_type:
name: report_type
in: path
description: >-
Type of report to generate. Valid values include: `billing-reports`, `revenue-reports`, `prepaid-balance-reports`, or `variance-reports`.
required: true
schema:
type: string
START_DATE:
name: START_DATE
in: query
description: Start date of the transaction activity as `YYYY-MM-DD`.
required: true
schema:
type: string
END_DATE:
name: END_DATE
in: query
description: End date of the transaction activity as `YYYY-MM-DD`.
required: true
schema:
type: string
orgid:
name: orgid
in: query
description: Name of your organization.
required: true
schema:
type: string
suspendedProduct_id:
name: suspendedProduct_id
in: path
description: >-
ID of the API product, using a format similar to the following: `{org_id}@@@{product_id}`. This value is returned as `prodId` when you view all or specific suspended developers.
required: true
schema:
type: string
childEntities:
name: childEntities
in: query
description: Flag that specifies to synchronize all products, developers, and applications in your organization.
schema:
type: boolean
required: false
limit:
name: limit
in: query
description: Maximum number of transaction records to return. This value must be set to a value less than or equal to 1000. Defaults to 1000.
required: false
schema:
type: integer
utctme:
name: utctme
in: query
description: >-
Start time in the format `YYYY-MM-DD HH:mm:ss`. If the end time `utctime2` is not specified, the time range will be: `utctime < txTime < utctime - 10 seconds`.
required: true
schema:
type: string
utctme2:
name: utctme2
in: query
description: >-
End time in the format `YYYY-MM-DD HH:mm:ss`. This value must be no greater than 1 minute from the start time. In this case, the time range will be: `utctime < txTime < utctime2`.
required: false
schema:
type: string
schemas:
Organization:
type: object
properties:
approvedTrusted:
type: boolean
description: Flag that specifies whether the developer is given approved status by the organization.
approvedUntrusted:
type: boolean
description: Flag that specifies whether untrusted developers are given approved status by the organization.
billingCycle:
type: string
description: >-
Billing cycle period. Valid values include:
* `PRORATED`: Billing is based on the number of days that an API product is used in a calendar month.
* `CALENDAR_MONTH`: Billing is done monthly.
country:
type: string
description: ISO 3166-2 code for the country of operation for the organization, such as `US` for United States or `BR` for Brazil.
currency:
type: string
description: ISO 4217 code for the "base" or accounting currency that the organization uses, such as `usd` for Unites States dollar. For revenue sharing plans, the specified currency is used for your plan. For rate card (charging model) plans, the specified currency is used by default. However, you can change the currency setting to any currency supported by the organization. For fees only plans, you can change the currency setting to any currency supported by the organization.
description:
type: string
description: Brief description of the organization.
hasBillingAdjustment:
type: boolean
description: Flag that specifies whether adjustments are enabled. If enabled, you can make adjustments to the traffic details recorded by API services for your API products.
hasBroker:
type: boolean
description: Flag that specifies whether the revenue is based on net.
hasSelfBilling:
type: boolean
description: Flag that directs monetization to generate a self-billing invoice instead of a revenue share statement. A self-billing invoice is a financial document that details the amount due to the developer. It acts as an invoice to the API Provider on behalf of the developer.
hasSeparateInvoiceForProduct:
type: boolean
description: Flag that specifies whether a separate invoice is generated for each API product.
id:
type: string
description: ID of the organization.
issueNettingStmt:
type: boolean
description: Flag that specifies whether a netting statement is generated when creating billing documents.
logoUrl:
type: string
description: URL of the organization's logo.
name:
type: string
description: Name of the organization.
netPaymentAdviceNote:
type: string
description: Net payment advice note.
nettingStmtPerCurrency:
type: boolean
description: Flag that specifies whether a separate netting statement is generated for each currency used.
regNo:
type: string
description: Organization's registration number. The registration number is displayed at the bottom of billing documents.
selfBillingAsExchOrg:
type: boolean
description: This feature is deprecated.
selfBillingForAllDev:
type: boolean
description: If self-billing invoices are enabled, flag that specifies whether they are enabled for all developers. By default, self-billing invoices are generated only for developers who have signed an agreement with the API provider.
separateInvoiceForFees:
type: boolean
description: Flag that specifies whether a separate invoice is published for fees.
status:
type: string
description: >-
Status of the organization. Valid values include:
* `ACTIVE`: The organization account is registered in monetization and is available for use.
* `INACTIVE`: The organization account is registered in monetization, but is not available for use.'
supportedBillingType:
type: string
description: >-
Developer payment model used for billing. Valid values include:
* `PREPAID`: The developer pays in advance for the use of an API product. Funds are deducted from the developer's balance when the API product is used. The developer must maintain a prepaid balance sufficient to purchase the API product.
* `POSTPAID`: The developer is billed monthly (through an invoice) for the use of API products. The developer pays for the use of API products based on the payment terms set by the plan(s) included on the invoice.
* `BOTH`: In this case, the billing type defaults to PREPAID.
taxEngineExternalId:
type: string
description: External ID for a third-party tax engine.
taxModel:
type: string
description: >-
**Note**: This property only applies if you set up revenue sharing plans and you want monetization to generate billing documents.
Tax model you want to use for revenue sharing plans which dictates the type of billing documents that monetization produces. This applies to an individual operator or organization. Valid values include:
* `Disclosed`: In this tax model, the API provider acts as a disclosed agent of the developer. The gross revenue (including sales taxes) collected from the end user is passed to the developer. The API provider’s commission is collected from the developer in the form of a commission invoice. The API provider does not handle the sales tax collected from the end user, and it is the developer’s responsibility to report the sales tax.
* `Undisclosed`: In this tax model, the API provider acts as an undisclosed agent of the developer, and deducts the tax collected from the end users and pays it to the local tax authorities. The developer invoices the API provider for the net revenue share due to the developer (less sales taxes and the API provider’s commission).
* `Hybrid`: In this tax model, the API provider acts as a disclosed agent of the developer. However, the API provider pays the sales tax collected from their subscribers to the local tax authorities on the developer’s behalf. The API provider passes the remaining revenue to the developer, and then invoices for commission charges.
taxNexus:
type: string
description: >-
The country in which the organization is registered for tax purposes.
**Note**: If the tax nexus is the United States, you need to provide additional information on all the states where you are registered for tax purposes. You provide this information as part of a configuration questionnaire when you first purchase monetization.
taxRegNo:
type: string
description: Organization’s tax registration number or Value Added Tax (VAT) registration number, if applicable. This property is optional because the tax registration number or VAT registration number does not apply in all countries. The VAT registration number is displayed at the bottom of billing documents.
transactionalRelayURL:
type: string
description: URL of another system to which transactions can be relayed, such as a data warehouse.
timezone:
type: string
description: The time zone identifier for the organization’s operations, such as America/New_York or Europe/Paris. Time zone abbreviations, such as EST (Eastern Standard Time) or CET (Central European Time), are also supported. Use caution when updating the timezone setting in an organization profile, as it can impact date- and time-based events including when a rate plan starts and ends and when notifications are sent.
OrganizationProfile:
required:
- name
type: object
properties:
address:
type: array
items:
$ref: '#/components/schemas/Address'
description: >-
Address of the organization.
**Note**: The address is displayed at the API package-level only.
approvedTrusted:
type: boolean
description: Flag that specifies whether the developer is given approved status by the organization.
approvedUntrusted:
type: boolean
description: Flag that specifies whether untrusted developers are given approved status by the organization.
billingCycle:
type: string
description: >-
Billing cycle period. Valid values include:
* `PRORATED`: Billing is based on the number of days that an API product is used in a calendar month.
* `CALENDAR_MONTH`: Billing is done monthly.
country:
type: string
description: ISO 3166-2 code for the country of operation for the organization, such as US for United States or BR for Brazil.'
currency:
type: string
description: ISO 4217 code for the "base" or accounting currency that the organization uses, such as `usd` for Unites States dollar. For revenue sharing plans, the specified currency is used for your plan. For rate card (charging model) plans, the specified currency is used by default. However, you can change the currency setting to any currency supported by the organization. For fees only plans, you can change the currency setting to any currency supported by the organization.
description:
type: string
description: Brief description of the organization.
hasBillingAdjustment:
type: boolean
description: Flag that specifies whether adjustments are enabled. If enabled, you can make adjustments to the traffic details recorded by API services for your API products.
hasBroker:
type: boolean
description: Flag that specifies whether the revenue is based on net.
hasSelfBilling:
type: boolean
description: Flag that directs monetization to generate a self-billing invoice instead of a revenue share statement. A self-billing invoice is a financial document that details the amount due to the developer. It acts as an invoice to the API Provider on behalf of the developer.
hasSeparateInvoiceForProduct:
type: boolean
description: Flag that specifies whether a separate invoice is generated for each API product.
id:
type: string
description: ID of the organization.
issueNettingStmt:
type: boolean
description: Flag that specifies whether a netting statement is generated when creating billing documents.
logoUrl:
type: string
description: URL of the organization's logo.
name:
type: string
description: Name of the organization.
netPaymentAdviceNote:
type: string
description: Net payment advice note.
nettingStmtPerCurrency:
type: boolean
description: Flag that specifies whether a separate netting statement is generated for each currency used.
regNo:
type: string
description: Organization's registration number. The registration number is displayed at the bottom of billing documents.
selfBillingAsExchOrg:
type: boolean
description: This feature is deprecated.
selfBillingForAllDev:
type: boolean
description: If self-billing invoices are enabled, flag that specifies whether they are enabled for all developers. By default, self-billing invoices are generated only for developers who have signed an agreement with the API provider.
separateInvoiceForFees:
type: boolean
description: Flag that specifies whether a separate invoice is published for fees.
status:
type: string
description: >-
Status of the organization. Valid values include:
* `ACTIVE`: The organization account is registered in monetization and is available for use.
* `INACTIVE`: The organization account is registered in monetization, but is not available for use.'
supportedBillingType:
type: string
description: >-
Developer payment model used for billing. Valid values include:
* `PREPAID`: The developer pays in advance for the use of an API product. Funds are deducted from the developer's balance when the API product is used. The developer must maintain a prepaid balance sufficient to purchase the API product.
* `POSTPAID`: The developer is billed monthly (through an invoice) for the use of API products. The developer pays for the use of API products based on the payment terms set by the plan(s) included on the invoice.
* `BOTH`: In this case, the billing type defaults to `PREPAID`.
taxEngineExternalId:
type: string
description: External ID for a third-party tax engine.
taxModel:
type: string
description: >-
**Note**: This property only applies if you set up revenue sharing plans and you want monetization to generate billing documents.
Tax model you want to use for revenue sharing plans which dictates the type of billing documents that monetization produces. This applies to an individual operator or organization. Valid values include:
* `Disclosed`: In this tax model, the API provider acts as a disclosed agent of the developer. The gross revenue (including sales taxes) collected from the end user is passed to the developer. The API provider’s commission is collected from the developer in the form of a commission invoice. The API provider does not handle the sales tax collected from the end user, and it is the developer’s responsibility to report the sales tax.
* `Undisclosed`: In this tax model, the API provider acts as an undisclosed agent of the developer, and deducts the tax collected from the end users and pays it to the local tax authorities. The developer invoices the API provider for the net revenue share due to the developer (less sales taxes and the API provider’s commission).
* `Hybrid`: In this tax model, the API provider acts as a disclosed agent of the developer. However, the API provider pays the sales tax collected from their subscribers to the local tax authorities on the developer’s behalf. The API provider passes the remaining revenue to the developer, and then invoices for commission charges.
taxNexus:
type: string
description: >-
The country in which the organization is registered for tax purposes.
**Note**: If the tax nexus is the United States, you need to provide additional information on all the states where you are registered for tax purposes. You provide this information as part of a configuration questionnaire when you first purchase monetization.
taxRegNo:
type: string
description: Organization’s tax registration number or Value Added Tax (VAT) registration number, if applicable. This property is optional because the tax registration number or VAT registration number does not apply in all countries. The VAT registration number is displayed at the bottom of billing documents.
transactionalRelayURL:
type: string
description: URL of another system to which transactions can be relayed, such as a data warehouse.
timezone:
type: string
description: The time zone identifier for the organization’s operations, such as America/New_York or Europe/Paris. Time zone abbreviations, such as EST (Eastern Standard Time) or CET (Central European Time), are also supported. Use caution when updating the timezone setting in an organization profile, as it can impact date- and time-based events including when a rate plan starts and ends and when notifications are sent
BillingAdjustment:
required:
- adjustmentPercentageFactor
- billingMonth
- billingYear
- name
- organization
type: object
properties:
adjustmentPercentageFactor:
type: number
description: Percentage factor by which the bill was adjusted. This value can be positive or negative decimal value to increase or reduce the bill, respectively. Valid values are in the range of `-100` to `999.9999`.
billingMonth:
type: string
description: >-
Billing month, specified as an integer. For example, `11` for Decemer.'
billingYear:
type: integer
description: >-
Billing year, specified using the following format: `YYYY`. For example, `2017`.
developerBillingType:
type: string
description: >-
Developer billing type for which the billing adjustment applies. Valid values include: `PREPAID`, `POSTPAID`, `BOTH`.
id:
type: string
description: >-
ID of the billing adjustment. **Required when updating the billing adjustment.
isPublished:
type: boolean
description: Flag that specifies whether the billing adjustment should be published.
monetizationPackage:
type: object
properties:
id:
type: string
description: ID of the API package.
name:
type: string
description: Name that describes the billing adjustment.
organization:
$ref: '#/components/schemas/Organization'
description: Details of organization for which you are making billing adjustments. When creating or updating a billing adjustment, specify the `id` of the organization only.
product:
$ref: '#/components/schemas/APIProduct'
description: Details of API product for which you are making billing adjustments. When creating or updating a billing adjustment, specify the `id` of the API product only.
transactionType:
type: string
description: >-
Type of transaction for which the billing adjustment applies. Valid values include: `PURCHASE`, `CHARGE`, `REFUND`, `CREDIT`, `BALANCE`, `SETUPFEES`, `TERMINATIONFEES`, `TRUEUPS`. `TRUEUPS` are transacions that are used to adjust rated transactions; invoked when tax changes are made in the previous month.
BillingAdjustments:
type: object
properties:
billingAdjustment:
type: array
items:
$ref: '#/components/schemas/BillingAdjustment'
description: Details of the billing adjustments.
totalRecords:
type: integer
description: Total number of records.
APIPackage:
required:
- name
- displayName
- description
- product
- status
type: object
properties:
description:
type: string
description: Description of the API package.
displayName:
type: string
description: User-friendly display name for the API package.
id:
type: string
description: Output only. ID of the API package.
name:
type: string
description: Name of the API package.
organization:
type: object
properties:
id:
type: string
description: ID of the organization.
product:
type: array
items:
type: object
properties:
id:
type: string
description: ID of the API product.
description: List of API products to include in the API package.
status:
type: string
description: >-
Status indicator for the API package. Valid values include: `CREATED`, `ACTIVE , `INACTIVE`.
**Note**: This value is maintained but not currently used by the API package.
APIPackages:
type: object
properties:
monetizationPackage:
type: array
description: List of API packages.
items:
$ref: '#/components/schemas/APIPackage'
totalRecords:
type: integer
description: Total number of records.
APIProduct:
type: object
properties:
customAtt1Name:
type: string
description: Custom attribute name. There may be zero or more custom attributes. For example, `customAtt1Name`, `customAtt2Name`, `customAtt3Name`, and so on.
description:
type: string
description: Description of API product.
displayName:
type: string
description: User-friendly display name of the API product.
id:
type: string
description: ID of the API product.
name:
type: string
description: Name of the API product.
organization:
$ref: '#/components/schemas/Organization'
refundSuccessCriteria:
type: string
description: >-
Expression that is compared to the value of the Status attribute and is used to determine when the refund transaction is successful (for charging purposes). For example: `txProviderStatus == 'OK'`. Not applicable to `POST` operations.
status:
type: string
description: >-
Status indicator for the API product. Valid values include: `CREATED`, `ACTIVE`, `INACTIVE`. This value is maintained but not currently used by the API product.
transactionSuccessCriteria:
type: string
description: >-
Expression that is compared to the value of the Status attribute and is used to determine when the transaction is successful (for charging purposes). For example: `txProviderStatus == 'OK`'. Not applicable to `POST` operations.
Address:
type: object
properties:
address1:
type: string
description: Street address of the bank at which the account is held.
city:
type: string
description: City.
country:
type: string
description: Country.
id:
type: string
description: ID of the address. This value must be unique when creating an entity.
isPrimary:
type: boolean
description: Flag that specifies whether this is the primary address.
state:
type: string
description: State.
zip:
type: string
description: Zip code.
Rateplans:
type: object
properties:
ratePlan:
type: array
items:
$ref: '#/components/schemas/Rateplan'
total:
type: integer
description: Total number of rate plans.
totalRecords:
type: integer
description: Total number of records.
Rateplan:
type: object
properties:
advance:
type: boolean
description: Flag that specifies whether or not the recurring fee is charged in advance. For example, if set to true and the period is 1 month, the recurring fee is charged on the invoice generated when the prior billing month ends. Defaults to `false`.
contractDuration:
type: integer
description: Length of the contract for the plan together with `contractDurationType`. For example, to specify a contract duration of 6 months, set `contractDuration` to `6` and `contractDurationType` to `MONTH`.
contractDurationType:
type: string
description: >-
Length of the contract for the plan together with `contractDuration`. Valid values include: `DAY`, `WEEK`, `MONTH`, `QUARTER`, or `YEAR`.
currency:
type: object
properties:
id:
type: string
description: ISO 4217 code for the currency, such as `usd` for United States dollar or `chf` for Swiss franc.
description:
type: string
description: Description of the rate plan.
developer:
$ref: '#/components/schemas/DeveloperInfo'
developerCategory:
$ref: '#/components/schemas/DeveloperCategory'
displayName:
type: string
description: User-friendly display name for the rate plan.
earlyTerminationFee:
type: integer
description: One-time fee that is charged if the developer ends the plan before the renewal term.
endDate:
type: string
description: >-
Date and time that the plan ends in UTC. Use the following format: `YYYY-MM-DD HH:mm:ss`. If you do not specify a timestamp (not recommended), 00:00:00 (midnight) is used by default. Developers are not able to view the rate plan after this date. If you do not want the rate plan to end on a specific date, specify a null value.
freemiumDuration:
type: integer
description: >-
Period of time for the freemium period together with `freemiumDurationType`. For example, to specify that the freemium period is 30 days, set `freemiumDuration` to `30` and `freemiumDurationType` to `DAY`.
freemiumDurationType:
type: string
description: >-
Period of time for the freemium period together with freemiumDuration. Valid values include: `DAY`, `WEEK`, `MONTH`, `QUARTER`, or `YEAR`.
freemiumUnit:
type: string
description: Freemium quantity. The value can be the number of transactions or the number of units pertaining to a custom attribute recorded in the transaction recording policy.
frequencyDuration:
type: integer
description: >-
Together with `frequencyDurationType`, indicates the period of time between recurring fee charges. For example, to specify that the period of time between fee charges is 30 days, set `frequencyDuration` to `30` and `frequencyDurationTime` to `DAY`.
frequencyDurationType:
type: string
description: >-
Period of time between recurring fee charges. Valid values include: `DAY`, `WEEK`, `MONTH`, `QUARTER`, or `YEAR`.
id:
type: string
description: ID of the rate plan. Only required when updating a rate plan.
isPrivate:
type: boolean
description: Flag that specifies whether the rate plan is public or private. Defaults to false (public).
keepOriginalStartDate:
type: boolean
description: >-
Flag that specifies whether to maintain the start date of the parent rate plan. Defaults to `false`.
**Note**: This setting applies to future rate plans only.
monetizationPackage:
type: object
properties:
id:
type: string
description: ID of the API package.
name:
type: string
description: Name of the rate plan.
organization:
$ref: '#/components/schemas/Organization'
description: When creating a rate plan, specify only the `id` of the organization.
parentRatePlan:
type: object
description: Output only. Parent rate plan details.
paymentDueDays:
type: integer
description: Number of days at which time the fees are due.
prorate:
type: boolean
description: Flag that specifies whether the recurring fee is prorated. This flag pertains to the developer starting or ending the plan part of the way through a month. If set to `true`, the intial fee is prorated bsed on the number of days until the end of the period or the number of days used in the period. Defaults to `false`.
published:
type: boolean
description: Flag that specifies whether the rate plan should be published, making it available to developers.
ratePlanDetails:
type: array
items:
$ref: '#/components/schemas/RateplanDetails'
description: Details for the rate plan.
recurringFee:
type: integer
description: Fee that is charged to the developer on an ongoing basis until the developer ends the plan.
recurringStartUnit:
type: number
description: >-
Valid only if `recurringType` is set to `CALENDAR`. Day of the month to charge the recurring fee. For example, if the recurring fee is charged monthly and `recurringStartUnit` is set to `1`, the recurring fee is charged on the first day of each month.
recurringType:
type: string
description: >-
Schedule for the recurring fee. Valid values include: `CALENDAR` or `CUSTOM`.
setUpFee:
type: integer
description: One-time fee that is charged to each developer on the start date of the plan (that is, the date the developer purchases the plan).
startDate:
type: string
description: >-
Date and time when the rate plan starts in UTC. Use the following format: `YYYY-MM-DD HH:mm:ss`. If you do not specify a timestamp (not recommended), 00:00:00 (midnight) is used by default.
type:
type: string
description: >-
Type of rate plan. Valid values include: `STANDARD` (all developers), `DEVELOPER_CATEGORY` (developers within a category), or `DEVELOPER` (specific developer).'
RateplanDetails:
type: object
properties:
aggregateFreemiumCounters:
type: boolean
description: Flag that specifies whether or not aggregate counters are enabled to determine if usage of an API product is in the free range. Aggregate counters must be enabled to set up a freemium plan for a product.
aggregateStandardCounters:
type: boolean
description: Flag that specifies whether or not aggregate counters are used to determine the band of usage (such as a volume band for a rate card plan).
currency:
type: object
properties:
id:
type: string
description: ISO 4217 code for the currency, such as `usd` for United States dollar or `chf` for Swiss franc.
duration:
type: number
description: Period of time for the aggregation basis, together with `durationType`. For example, set `duration` to `30` and `durationType` to `DAY` to specify an aggregation basis of 30 days.
durationType:
type: string
description: >-
Period of time for the aggregation basis, together with durationType. Valid values include: `DAY`, `WEEK`, `MONTH`, `QUARTER`, or `YEAR`.
freemiumDuration:
type: integer
description: >-
Period of time for the freemium period for an individual API product together with `freemiumDurationType`. For example, to specify that the freemium period is 30 days, set `freemiumDuration` to `30` and `freemiumDurationType` to `DAY`.
freemiumDurationType:
type: string
description: >-
Period of time for the freemium period for an individual API product together with freemiumDuration. Valid values include: `DAY`, `WEEK`, `MONTH`, `QUARTER`, or `YEAR`.
freemiumUnit:
type: string
description: Freemium quantity for an API product. The value can be the number of transactions or the number of units pertaining to a custom attribute recorded in the transaction recording policy.
meteringType:
type: string
description: >-
Charging model for a rate card plan. Valid values include: `UNIT` (flat rate), `VOLUME` (volume-banded), `STAIR_STEP` (bundled), or `DEV_SPECIFIC` (adjustable notification revenue model only).
paymentDueDays:
type: number
description: Payment due date for a postpaid developer. For example, set the value to `30` to indicate that payment is due in 30 days.
ratePlanRates:
type: array
items:
$ref: '#/components/schemas/RateplanRates'
description: Rate plan rate details, such as the type of rate plan (`REVSHARE` or `RATECARD`), the rate for a rate card plan, the revenue share for a revenue share plan, and the range (starting unit and ending unit for which the rate plan rate applies).
ratingParameter:
type: string
description: >-
Basis for the rate plan. The rate plan is based on transactions or on a custom attribute. Valid values include: `VOLUME` (based on volume of transactions) or `MINT_CUSTOM_ATTRIBUTE_{num}`. If you set it to `MINT_CUSTOM_ATTRIBUTE_{num}`, then the rate plan is based on a custom attribute, where `{num}` is an integer for example, `MINT_CUSTOM_ATTRIBUTE_1`. This value is defined in the transaction recording policy for the API product and is valid for rate card plans only. The custom attribute name cannot be defined as `VOLUME`.
ratingParameterUnit:
type: string
description: Unit that applies to the `ratingParameter`.
revenueType:
type: string
description: >-
Basis of the revenue share in a revenue share plan. Valid values include: `GROSS` (based on percentage of the gross price of a transaction) and `NET` (based on a percentage of the net price of a transaction).
type:
type: string
description: >-
Revenue model for the plan. Valid values include: `REVSHARE`, `RATECARD`, `REVSHARE_RATECARD`, `USAGE_TARGET` (adjustable notifications).
AcceptRateplan:
required:
- developer
- startDate
- ratePlan
type: object
properties:
developer:
type: object
properties:
id:
type: string
description: ID of the developer or company accepting the rate plan.
endDate:
type: string
description: >-
Date and time that the rate plan ends in UTC. The rate plan will be in effect until the end of the day on the date specified. If you want to expire a rate plan on December 1, 2016, for example, you should set the `endDate` value to `2016-11-30`. In this case, the rate plan will expire at the end of the day on November 30, 2016; all requests on December 1, 2016 will be blocked.
**Note**: When viewing the rate plan using the API, the `endDate` time stamp is specified as `YYYY-MM-DD 00:00:00`, which may be misleading.
quotaTarget:
type: integer
description: >-
Target number of transactions allowed for the app developer. You can configure if and when notifications are sent based on what percentage of the target number has been reached, such as 90%, 100%, or 150%. Additional transactions are not blocked after the target number is reached. Set this value to a positive integer value or 0 to disable notifications for an app developer.
**Note**: This property is valid for adjustable notification rate plans only.
ratePlan:
type: object
properties:
id:
type: string
description: ID of the developer or company accepting the rate plan.
startDate:
type: string
description: >-
Date and time that the rate plan starts in UTC. Use the following format: `YYYY-MM-DD HH:mm:ss`. If you do not specify a timestamp (not recommended), 00:00:00 (midnight) is used by default.
suppressWarning:
type: string
description: >-
Flag that specifies whether to suppress the error if the developer attempts to accept a rate plan that overlaps another accepted rate plan. If set to `true`, monetization terminates all accepted rate plans that the developer has to API packages that contain the conflicting API products. It then accepts a new API package for the developer.
waveTerminationCharge:
type: boolean
description: Flag that specifies whether termination fees are waved when an active rate plan is terminated as part of activitating a new rate plan.
RateplanRates:
type: object
properties:
endUnit:
type: number
description: End unit.
id:
type: string
description: ID of the rate plan rate. Only valid and required when you are updating a draft rate plan rate.
rate:
type: number
description: Rate for the rate card plan. Specify for RATECARD plans only.
revshare:
type: number
description: Revenue share. Specify for REVSHARE plans only.
startUnit:
type: number
description: Start unit.
type:
type: string
description: >-
Type of the rate plan. Valid values include: `REVSHARE` or `RATECARD`.
DeveloperInfo:
properties:
id:
type: string
description: ID of the developer.
legalName:
type: string
description: Legal name of the developer.
name:
type: string
description: Name of the developer.
DeveloperCategory:
properties:
id:
type: string
description: Output only. ID of the developer category.
name:
type: string
description: Name of the developer category.
description:
type: string
description: Description of the developer category.
WebhookTest:
required:
- eventTriggerReason
- properties
type: object
properties:
eventTriggerReason:
type: string
description: Webhook notification trigger type.
properties:
type: array
items:
type: object
properties:
key:
type: string
description: Property used as key for notification trigger.
value:
type: string
description: Value that triggers the webhook notification.
WebhookSample:
type: object
properties:
eventTriggerReason:
type: string
description: Webhook notification trigger type.
properties:
type: array
items:
type: object
properties:
key:
type: string
description: Property used as key for notification trigger.
value:
type: string
description: Value that triggers the webhook notification.
TransactionsMigrate:
type: object
properties:
application:
type: object
properties:
id:
type: string
description: ID of the application. Required only when migrating a batch transaction; not required when charging fees.
batchSize:
type: integer
description: >-
When migrating transactions, specifies the number of transactions that you want to transfer. Defaults to 1. Required only when migrating a batch transaction; not required when charging fees.
custAttn:
type: number
description: >-
When migrating transactions, specifies the value of the custom attribute that is used with batchSize to calculate the transaction usage. The custom attribute number in the message must be specified as a positive whole or decimal (up to four decimal places) value. Negative values are not allowed. The custom attribute must be defined in either the transaction recording policy for the API product or the active rate plan for the API product. Required only when migrating a batch transaction; not required when charging fees.
currency:
properties:
id:
type: string
description: >-
Currency used for the rate plan. Specify the ISO 4217 code for the currency, such as `usd` for United States dollar or `chf` for Swiss franc. Required only when charging a setup or recurring fee; not required when migrating a batch transaction.
developer:
type: object
properties:
id:
type: string
description: ID of the developer. Required only when charging a setup or recurring fee; not required when migrating a batch transaction.
product:
type: object
properties:
id:
type: string
description: ID of the API product. Required only when migrating a batch transaction; not required when charging a setup or recurring fee.
rate:
type: number
description: Setup or recurring fee to charge. Required only when charging a setup or recurring fee; not required when migrating a batch transaction.
ratePlan:
type: object
properties:
id:
type: string
description: ID of the rate plan. Required only when charging a setup or recurring fee; not required when migrating a batch transaction.
type:
type: string
description: >-
Type of migration. Valid values include: `CHARGE`, `SETUPFEES`, or `RECURRINGFEES`. Defaults to `CHARGE`. Required only when charging setup or recurring fees.
NotificationRequest:
properties:
notificationCondition:
type: array
items:
$ref: '#/components/schemas/NotificationCondition'
actions:
type: array
items:
$ref: '#/components/schemas/NotificationAction'
NotificationCondition:
properties:
name:
type: string
description: Name of the notification condition. The name must be unique. Specify with attribute property only.
attribute:
type: string
description: Attribute used to define the notification condition. You can specify one or more attributes to refine the notification condition. Specify with either name or value property only.
limit:
type: object
properties:
id:
type: string
description: ID of the notification template. Specify with value property only.
value:
type: string
description: Value of the attribute used to trigger the action. Specify with either attribute or limit only.
ReportDefinitions:
type: object
properties:
reportDefinition:
type: array
items:
$ref: '#/components/schemas/ReportDefinition'
totalRecords:
type: integer
description: Total number of records.
ReportDefinition:
type: object
properties:
description:
type: string
description: Description of the report definition.
developer:
$ref: "#/components/schemas/DeveloperInfo"
description: Output only. Developer details or null if not a developer report definition.
id:
type: string
description: ID of the report definition. Required only when updating a report definition.
lastModified:
type: string
description: Output only. Time that the report definition was last modified in UTC.
mintCriteria:
$ref: '#/components/schemas/MintCriteria'
name:
type: string
description: Name of the report definition.
organization:
description: Output only. Organization details.
$ref: '#/components/schemas/Organization'
type:
type: string
description: >-
Type of report definition. Valid values include: `BILLING`, `PREPAID_BALANCE`, `REVENUE`, and `VARIANCE`.
MintCriteria:
type: object
properties:
appCriteria:
type: array
description: ID and organization for a specific application to be included in the report. If this property is not specified, all applications are included in the report.
items:
type: object
properties:
id:
type: string
description: App ID.
orgId:
type: string
description: Organization name.
billingMonth:
type: string
description: >-
Billing month of the report, such as `JULY`.
**Note**: This property is not valid for revenue reports.
billingYear:
type: string
description: >-
Billing year for the report, such as `2015`.
**Note**: This property is not valid for revenue reports.
currCriteria:
type: array
description: >-
ID and organization for a specific currency to be included in the report. If this property is not specified, all supported currencies are included in the report.
items:
type: object
properties:
id:
type: string
description: Currency ID.
orgId:
type: string
description: Organization name.
currencyOption:
type: string
description: >-
Currency for the report. Valid values include:
* `LOCAL`: Each line of the report is displayed using the applicable rate plan. This means that there may be multiple currencies in one report if the developers have plans that use different currencies.`EUR`: Local currency transactions are converted and displayed in Euros.
* `GPB`: Local currency transactions are converted and displayed in United Kingdom pounds.
* `USD`: Local currency transactions are converted and displayed in United States dollars.
**Note**: If you select `EUR`, `GBP`, or `USD`, the report displays all transactions using that single currency, based on the exchange rate in effect on the date of the transaction.
devCriteria:
type: array
description: Developer ID or email address, and organization name for a specific developer to be included in the report. If this property is not specified, all developers are included in the report.
items:
type: object
properties:
id:
type: string
description: Developer ID.
orgId:
type: string
description: Organization name.
devCustomAttribute:
type: array
description: >-
Custom attributes to include in the report, if defined for a developer.
**Note**: This property is not valid for revenue reports. Do not specify the predefined `MINT_*` and `ADMIN_*` attributes in the `devCustomAttributes` array.
items:
type: string
fromDate:
type: string
description: >-
Starting date and time of the report in UTC time. For example: `2017-01-15 01:30:00`. You can omit the timestamp; if not specified it defaults to `00:00:00`.
**Note**: This property applies only to revenue and variance reports.
groupBy:
type: array
description: >-
Order in which sections are grouped in the report. Enter the values in the desired order: `APPLICATION`, `BALANCE`, `DEVELOPER`, `ORG`, `PACKAGE`, `PRODUCT`, and `RATEPLAN`.
items:
type: string
monetizationPackageIds:
type: array
description: >-
ID of one or more API packages to include in the report. If this property is not specified, all API packages are included inthe report.
**Note**: This property is not valid when viewing transaction activity (`/transaction-search`).
items:
type: string
pkgCriteria:
type: string
description: >-
ID and organization for a specific API package to be included in the report. If this property is not specified, all API packages are included in the report. This property can be specified instead of the `monetizationpackageIds` property.
**Note**: This property is not valid when viewing transaction activity (`/transaction-search`).
prevFromDate:
type: string
description: >-
Starting date of a previous period in UTC. Used to create a report for a previous period for comparison against a current report.
**Note**: This property applies only to variance reports.
prevToDate:
type: string
description: >-
Ending date of a previous period in UTC. Used to create a report for a previous period for comparison against a current report.
**Note**: This property applies only to variance reports.
prodCriteria:
type: string
description: >-
ID and organization for a specific API product to be included in the report. If this property is not specified, all API products are included in the report. This property can be specified instead of the `productIds` property.
**Note**: This property is not valid when viewing transaction activity (`/transaction-search`).
productIds:
type: array
description: >-
ID of one or more API products to include in the report. If this property is not specified, all API products are included in the report.
API product IDs should be specified as `org-name@@@product-name`. For example: `"productIds": ["myorg@@@myproduct", "myorg@@@myproduct2"]`
items:
type: string
pricingTypes:
type: array
description: >-
Pricing type of rate plan to be included in the report. Valid values include:
* `REVSHARE`: Revenue share plan.
* `REVSHARE_RATECARD`: Revenue share and rate card rate plan.
* `RATECARD`: Rate card plan.
If this property is not specified, rate plans of all pricing types are included in the report.
items:
type: string
ratePlanLevels:
type: array
description: >-
Type of rate plan to be included in the report. Valid values include:
* `DEVELOPER`: Developer rate plan.
* `STANDARD`: Standard rate plan.
If this property is not specified, both developer-specific and standard rate plans are included in the report.
items:
type: string
showEntityId:
type: boolean
description: Flag that specifies whether the reports shows the entity ID.
showRevSharePct:
type: boolean
description: Flag that specifies whether the report shows revenue share percentages.
showSummary:
type: boolean
description: Flag that specifies whether the report is a summary.
showTxDetail:
type: boolean
description: >-
Flag that specifies whether the report shows transaction level details.
**Note**: This property applies only to revenue reports.
showTxType:
type: boolean
description: Flag that specifies whether the report shows the type of each transaction.
toDate:
type: string
description: >-
Ending date and time of the report in UTC time. For example: `2017-01-15 01:30:00`. You can omit the timestamp; if not specified it defaults to `00:00:00`.
**Note**: This property applies only to revenue and variance reports.
transactionStatus:
type: array
description: >-
Status of transactions to include in the report. Valid values include:
* `SUCCESS`: Successful transactions.
* `FAILED`: Failed transaction.
* `FINAL`: Transactions marked as final.
* `REVIEW`: Transaction marked as under review.
items:
type: string
transactionCustomAttributes:
type: array
description: Custom transaction attributes to include in summary revenue reports. You must enable this feature in your organization. See Including custom transaction attributes in revenue summary reports.
items:
type: string
transactionTypes:
type: array
description: >-
Type of transactions to be included in the report. Valid values include: `PURCHASE`, `CHARGE`, `REFUND`, `CREDIT`, `BALANCE`, `SETUPFEES`, `TERMINATIONFEES`, `RECURRINGFEES`, and `TRUEUP`. `TRUEUP`s are transactions that are used to readjust rated transactions. They are invoked when tax changes are made in the previous billing month. If this property is not specified, all transaction types are included in the report.
items:
type: string
CreditLimit:
$ref: '#/components/schemas/PrepaidBalanceDevelopers'
SupportedCurrencies:
type: object
properties:
SupportedCurrency:
type: array
items:
$ref: '#/components/schemas/SupportedCurrency'
description: Details of the supported currency.
totalRecords:
type: integer
description: Total number of records.
SupportedCurrency:
required:
- description
- displayName
- name
- organization
- status
- virtualCurrency
type: object
properties:
creditLimit:
type: number
description: >-
The credit limit for the supported currency. The credit limit can be overridden for a developer in the developer's postpaid balance.
**Note**: This property applies to postpaid developers only.
description:
type: string
description: Description of the supported currency.
displayName:
type: string
description: Name displayed in the UI.
id:
type: string
description: ID of the supported currency.
minimumTopupAmount:
type: number
description: >-
Minimum amount that developers can add to their prepaid account balance in the specified currency.
**Note**: This property applies to prepaid developers only.
name:
type: string
description: ISO 4217 code for the currency, such as `usd` for United States dollar.
organization:
type: object
properties:
id:
type: string
description: ID of the organization.
status:
type: string
description: >-
Status of the currency. Valid values include:
* `ACTIVE`: The currency is available for use.
* `INACTIVE`: The currency is not available for use.
virtualCurrency:
type: string
description: Flag that specifies whether or not the currency is virtual currency.
PrepaidBalanceReload:
required:
- providerID
- isRecurring
- replenishAmount
- recurringAmount
type: object
properties:
isRecurring:
type: boolean
description: Flag that specifies wehether to enable automatic reload.
providerId:
type: string
description: ID of the payment provider to use to reload the account.
recurringAmount:
type: number
description: >-
Amount to add automatically to the account. It is recommended that you set `recurringAmount` to a value that is large enough to cover fees incurred for the next 24-hour period. This value must be greater than the minimum reload value configured for the specified currency (`supportedCurrencyId` query parameter).
replenishAmount:
type: number
description: Threshold that the prepaid account balance must drop below in order to trigger automatic reload.
PrepaidBalances:
type: object
properties:
developerBalance:
type: array
items:
$ref: '#/components/schemas/PrepaidBalance'
description: List of account balances.
totalRecords:
type: integer
description: Total number of records.
PrepaidBalance:
type: object
properties:
amount:
type: number
description: Amount of the prepaid account balance.
chargePerUsage:
type: boolean
description: This attribute is deprecated.
id:
type: string
description: ID of the payment provider.
isRecurring:
type: boolean
description: Flag that specifies whether automatic reload of the prepaid account is enabled.
providerID:
type: string
description: ID of the payment provider to use to reload the account, if configured.
recurringAmount:
type: number
description: Amount to add automatically to the account, if configured.
replenishAmount:
type: number
description: Threshold that the prepaid account balance must drop below in order to trigger automatic reload, if configured.
supportedCurrency:
$ref: '#/components/schemas/SupportedCurrency'
usage:
type: number
description: Amount used.
PrepaidBalanceDevelopers:
type: object
properties:
developerBalance:
type: array
items:
$ref: '#/components/schemas/PrepaidBalanceDeveloper'
description: List of prepaid account balances.
totalRecords:
type: integer
description: Total number of records.
PrepaidBalanceDeveloper:
type: object
properties:
approxTaxRate:
type: number
description: Tax rate for developer.
currentBalance:
type: number
description: Current balance in account based on current usage.
currentTotalBalance:
type: number
description: Total balance in account without subtracting current usage.
currentUsage:
type: number
description: Current usage.
id:
type: string
description: ID of the payment provider.
month:
type: string
description: Billing month.
previousBalance:
type: number
description: Previous balance in account.
supportedCurrency:
$ref: '#/components/schemas/SupportedCurrency'
tax:
type: number
description: Usage tax.
topups:
type: number
description: Sum of top ups.
usage:
type: number
description: Amount used.
year:
type: integer
description: Billing year.
TNCs:
type: object
properties:
tnc:
type: array
description: Array of terms and conditions.
items:
$ref: '#/components/schemas/TNC'
totalRecords:
type: integer
description: Total number of records.
TNC:
type: object
properties:
id:
type: string
description: ID of the terms and conditions document. Required only when updating the terms and conditions.
organization:
description: Organization details. When creating a terms and conditions document, set the `id` for the organization.
$ref: '#/components/schemas/Organization'
startDate:
type: string
description: >-
Date and time that the rate plan starts in UTC. Use the following format: `YYYY-MM-DD HH:mm:ss`. If you do not specify a timestamp (not recommended), 00:00:00 (midnight) is used by default.
tncText:
type: string
description: Brief description of the terms and conditions.
url:
type: string
description: URL to the terms and conditions.
version:
type: string
description: Version number for the terms and conditions. The version number allows you to keep track of different terms and conditions.
DeveloperTNCs:
type: object
properties:
developerTnc:
type: array
items:
$ref: '#/components/schemas/DeveloperTNC'
description: Details of the terms and conditions agreement.
totalRecords:
type: integer
description: Total number of records.
DeveloperTNC:
type: object
properties:
action:
type: string
description: Action. Valid values are ACCEPTED or DECLINED.
auditDate:
type: string
description: Date accepted.
id:
type: string
description: ID of the developer.
tnc:
$ref: "#/components/schemas/TNC"
AcceptTNC:
type: object
properties:
action:
type: string
description: Action. Valid values are ACCEPTED or DECLINED.
auditDate:
type: string
description: >-
Date and time accepted in UTC format. Use the following format: `YYYY-MM-DD HH:mm:ss`.
SuspendedDevelopers:
type: array
items:
$ref: "#/components/schemas/SuspendedDeveloper"
description: List of suspended developers.
SuspendedDeveloper:
type: object
properties:
creationDate:
type: integer
description: Creation date in epoch format.
devId:
type: string
description: >-
ID of the developer using a format similar to the following: `{org_id}@@@{dev_id}`.
id:
type: string
description: ID of the suspended developer record.
message:
type: string
description: Message that describes the reason for the suspension.
orgId:
type: string
description: ID of the organization.
prodId:
type: string
description: ID of the API product.
reasonCode:
type: string
description: >-
Reason code for the suspension. Valid codes include: `INSUFFICIENT_FUNDS`, `LIMIT_VIOLATED`, `NO_CURRENT_PUBLISHABLE_ENTITY`, or `RATE_PLAN_RATE_BAND_EXCEEDED`.
ttlInSeconds:
type: integer
description: Amount of time (epoch format) in seconds that the suspension will be lifted. If the developer is suspended indefinitely, the value will be set to 2500 days in epoch format.
Developer:
type: object
properties:
address:
type: array
description: Developer address.
items:
$ref: "#/components/schemas/Address"
approxTaxRate:
type: number
description: Approximate tax rate for the developer.
billingType:
type: string
description: >-
Developer payment model used for billing. Valid values include:
* `PREPAID`: The developer pays in advance for the use of an API product. Funds are deducted from the developer's balance when the API product is used. The developer must maintain a prepaid balance sufficient to purchase the API product.
* `POSTPAID`: The developer is billed monthly (through an invoice) for the use of API products. The developer pays for the use of API products based on the payment terms set by the plan(s) included on the invoice.
* `BOTH`: In this case, the billing type defaults to `PREPAID`.
broker:
type: boolean
description: Flag that specifies whether the revenue is based on net.
email:
type: string
description: Email ID for the developer or company.
id:
type: string
description: Developer or company ID.
isCompany:
type: boolean
description: Flag that specifies whether this is a company.
legalName:
type: string
description: Legal name of the developer or company.
name:
type: string
description: Name of the developer or company.
organization:
description: Organization details.
$ref: '#/components/schemas/Organization'
registrationId:
type: string
description: Registration ID.
status:
type: string
description: >-
Status indicator for the developer. Valid values include: `ACTIV`E or `INACTIVE`.
type:
type: string
description: Developer type (TRUSTED or UNTRUSTED).
DeveloperCategories:
type: object
properties:
developerCategory:
type: array
items:
$ref: "#/components/schemas/DeveloperCategory"
NotificationEmailTemplates:
type: object
properties:
emailTemplates:
type: array
items:
$ref: "#/components/schemas/NotificationEmailTemplate"
NotificationEmailTemplate:
type: object
properties:
createdDate:
type: integer
description: Output only. Creation time in epoch format.
htmlImage:
type: string
description: Message body in HTML format. You can include one or more variables, using Spring Expression Language (SpEL), to represent values returned in the Transaction object.
id:
type: string
description: ID of the notification email template. Required only when updating a notification email template.
name:
type: string
description: Name of the notification email template.
orgId:
type: string
description: Name of the organization.
source:
type: string
description: Source of the notification.,
subject:
type: string
description: Subject line of the notification email template.
updatedDate:
type: integer
description: Date in epoch format that the template was updated.
NotificationConditionsActions:
type: object
properties:
notificationConditions:
type: array
items:
$ref: '#/components/schemas/NotificationConditionAction'
description: Details of the notification conditions.
totalRecords:
type: integer
description: Total number of records.
NotificationConditionAction:
type: object
properties:
actions:
type: array
description: Details of each notification action.
items:
$ref: "#/components/schemas/NotificationAction"
notificationCondition:
type: array
description: Details of each notification condition.
items:
$ref: "#/components/schemas/NotificationConditionDetails"
associated-condition:
type: object
properties:
attribute:
type: string
description: >-
Details of the notification condition. You can specify one or more attributes to refine the notification condition. Valid values include: `ADD_RATEPLAN`, `ADHOC_NOTIFY_DEVELOPERS`, `APP_ID`, `Balance`, `BILLING_DOCS_PUBLISHED`, `COMPANY_ACCEPTS_INVITATION`, `COMPANY_CANCELS_INVITATION`, `COMPANY_DECLINES_INVITATION`, `CREATE_APPLICATION`, `CREATE_DEVELOPER`, `CreditLimit`, `DATE`, `DEV_ID`, `DEVELOPER_ACCEPTS_INVITATION`, `DEVELOPER_CANCELS_INVITATION`, `DEVELOPER_DECLINES_INVITATION`, `EXPIRING_TNC`, `FeeExposure`, `FREEMIUMN_USED_UP`, `LIMIT_ID`, `NEW_PACKAGE`, `NEW_PRODUCT`, `NEW_TNC`, `ORG_ID`, `PUBLISHED`, `RATEPLAN`, `RATEPLAN_ACCEPTED`, `RATEPLAN_COUNT`, `RATEPLAN_ENDED`, `RATEPLAN_EXPIRED`, `RATEPLAN_RENEWED`, `RATEPLAN_REVISION`, `SpendLimit`, `TNC_ACCEPTANCE`, `Transactions`, `UPDATE_DEVELOPER`, and `VOLUME`.
id:
type: string
description: ID of the notification condition.
organization:
$ref: "#/components/schemas/Organization"
value:
type: string
description: "Value of the attribute."
NotificationConditionDetails:
type: object
properties:
attribute:
type: string
description: >-
Details of the notification condition. You can specify one or more attributes to refine the notification condition. Valid values include: `ADD_RATEPLAN`, `ADHOC_NOTIFY_DEVELOPERS`, `APP_ID`, `Balance`, `BILLING_DOCS_PUBLISHED`, `COMPANY_ACCEPTS_INVITATION`, `COMPANY_CANCELS_INVITATION`, `COMPANY_DECLINES_INVITATION`, `CREATE_APPLICATION`, `CREATE_DEVELOPER`, `CreditLimit`, `DATE`, `DEV_ID`, `DEVELOPER_ACCEPTS_INVITATION`, `DEVELOPER_CANCELS_INVITATION`, `DEVELOPER_DECLINES_INVITATION`, `EXPIRING_TNC`, `FeeExposure`, `FREEMIUMN_USED_UP`, `LIMIT_ID`, `NEW_PACKAGE`, `NEW_PRODUCT`, `NEW_TNC`, `ORG_ID`, `PUBLISHED`, `RATEPLAN`, `RATEPLAN_ACCEPTED`, `RATEPLAN_COUNT`, `RATEPLAN_ENDED`, `RATEPLAN_EXPIRED`, `RATEPLAN_RENEWED`, `RATEPLAN_REVISION`, `SpendLimit`, `TNC_ACCEPTANCE`, `Transactions`, `UPDATE_DEVELOPER`, and `VOLUME`.
id:
type: string
description: ID of the notification condition.
organization:
$ref: "#/components/schemas/Organization"
value:
type: string
description: "Value of the attribute."
NotificationAction:
type: object
properties:
actionAttribute:
type: string
description: >-
Type of action. Valid values include: `ORG_EMAIL` (recipient identified by email address), `DEV_ID` (recipient identified by developer ID), `COMPANY_ADMINS` (recipients are all company administrators), and `WEBHOOK` (recipient is webhook callback handler.
condition:
$ref: "#/components/schemas/Condition"
id:
type: string
description: ID of the action.
postURL:
type: string
description: >-
Callback handler for the webhook.
**Note**: This option is valid only if `actionAttribute` is set to `WEBHOOK`.
templateId:
type: string
description: >-
ID of the notification template.
**Note**: This option is not valid if `actionAttribute` is set to `WEBHOOK`.
value:
type: string
description: >-
Value of the action attribute. If `actionAttribute` is set to `ORG_EMAIL` or `DEV_ID`, a value of `ANY` sends ther notification to any appliable recipent, for example, any `ORG_EMAIL` address or any `DEV_ID`. If `actionAttribute` is set to `WEBHOOK`, set this value to the ID of the webhook.
Condition:
type: object
properties:
attribute:
type: string
description: >-
Details of the notification condition. You can specify one or more attributes to refine the notification condition. Valid values include: `ADD_RATEPLAN`, `ADHOC_NOTIFY_DEVELOPERS`, `APP_ID`, `Balance`, `BILLING_DOCS_PUBLISHED`, `COMPANY_ACCEPTS_INVITATION`, `COMPANY_CANCELS_INVITATION`, `COMPANY_DECLINES_INVITATION`, `CREATE_APPLICATION`, `CREATE_DEVELOPER`, `CreditLimit`, `DATE`, `DEV_ID`, `DEVELOPER_ACCEPTS_INVITATION`, `DEVELOPER_CANCELS_INVITATION`, `DEVELOPER_DECLINES_INVITATION`, `EXPIRING_TNC`, `FeeExposure`, `FREEMIUMN_USED_UP`, `LIMIT_ID`, `NEW_PACKAGE`, `NEW_PRODUCT`, `NEW_TNC`, `ORG_ID`, `PUBLISHED`, `RATEPLAN`, `RATEPLAN_ACCEPTED`, `RATEPLAN_COUNT`, `RATEPLAN_ENDED`, `RATEPLAN_EXPIRED`, `RATEPLAN_RENEWED`, `RATEPLAN_REVISION`, `SpendLimit`, `TNC_ACCEPTANCE`, `Transactions`, `UPDATE_DEVELOPER`, and `VOLUME`,
id:
type: string
description: ID of the notification condition.
name:
type: string
description: Name of the notification condition.
organization:
$ref: "#/components/schemas/Organization"
DeveloperRatePlans:
type: object
properties:
developerRatePlan:
type: array
items:
$ref: "#/components/schemas/DeveloperRatePlan"
totalRecords:
type: integer
description: Total number of records.
DeveloperRatePlan:
type: array
items:
properties:
created:
type: string
description: Date the rate plan was created.
developer:
$ref: "#/components/schemas/Developer"
endDate:
type: string
description: End date of the rate plan in UTC.
id:
type: string
description: ID of the developer rate plan.
nextCycleStartDate:
type: string
description: >-
Start date and time for the next cycle in UTC. Uses the following format: `YYYY-MM-DD HH:mm:ss`.
nextRecurringFeeDate:
type: string
description: >-
Date and time for the next recurring fee in UTC. This value is based on the `recurringStartUnit` value, which specifies the day of the month that recurring fees are charged. Uses the following format: `YYYY-MM-DD HH:mm:ss`.
prevRecurringFeeDate:
type: string
description: >-
Date and time of the previous recurring fee in UTC. This value is based on the `recurringStartUnit` value, which specifies the day of the month that recurring fees are charged. Except, for the first month, the date reflects the actual day of the month the rate plan was accepted. Uses the following format: `YYYY-MM-DD HH:mm:ss`.
quotaTarget:
type: integer
description: >-
Target number of transactions allowed for the app developer. You can configure if and when notifications are sent based on what percentage of the target number has been reached, such as 90%, 100%, or 150%. Additional transactions are not blocked after the target number is reached. Set this value to a positive integer value or 0 to disable notifications for an app developer. **Note**: This property is valid for adjustable notification rate plans only.
ratePlan:
$ref: "#/components/schemas/Rateplan"
startDate:
type: string
description: >-
Date and time that the rate plan starts in UTC. Use the following format: `YYYY-MM-DD HH:mm:ss`. If you do not specify a timestamp (not recommended), 00:00:00 (midnight) is used by default.
updated:
type: string
description: Date the rate plan was updated in UTC.
DeveloperRoles:
type: object
properties:
developerRole:
type: array
items:
$ref: '#/components/schemas/DeveloperRole'
description: List of developer roles.
totalRecords:
type: integer
description: Total number of records.
DeveloperRole:
type: object
properties:
description:
type: string
description: Description of the developer role.
id:
type: string
description: Output only. ID of the developer role.
name:
type: string
description: Name of thd developer role.
organization:
$ref: "#/components/schemas/Organization"
description: When creating a developer role, specify only the `id` of the organization.
Transactions:
type: object
properties:
totalRecords:
type: integer
description: Total number of records.
transaction:
type: array
items:
$ref: '#/components/schemas/Transaction'
description: Details of the transactions.
Transaction:
type: object
properties:
application:
$ref: "#/components/schemas/Application"
batchSize:
type: number
description: Batch size of the transaction, if applicable.
currency:
type: string
description: Type of currency. For example, `USD`.
developer:
$ref: "#/components/schemas/DeveloperInfo"
endTime:
type: string
description: Time that the transaction ended.
environment:
type: string
description: Environment, such as test or `prod`.
euroExchangeRate:
type: number
description: European exchange rate, if applicable.
gbpExchangeRate:
type: number
description: British pound exchange rate, if applicable.
id:
type: string
description: Type of the transaction.
isVirtualCurrency:
type: boolean
description: Flag that specifies whether the currency is virtual.
notes:
type: string
description: Notes about the transaction.
parentId:
type: string
description: ID of the purchase transaction that you are refunding. Applies to refunds only.
pkgId:
type: string
description: API package ID.
pkgRatePlanProductName:
type: string
description: Name of the API product in the API package.
product:
$ref: "#/components/schemas/APIProduct"
providerTxId:
type: string
description: Transaction provider ID.
rate:
type: number
description: Rate.
ratePlanLevel:
type: string
description: >-
Type of rate plan. Valid values include: `STANDARD` (all developers), `DEVELOPER_CATEGORY` (developers within a category), or `DEVELOPER` (specific developer).'
ratedVolume:
type: number
description: Rated volume.
revenueShareAmount:
type: number
description: Revenue share amount.
startTime:
type: string
description: Time that the transaction started.
status:
type: string
description: Status of the transaction.
taxModel:
type: string
description: >-
Tax model. Valid values include:
* `Disclosed`: In this tax model, the API provider acts as a disclosed agent of the developer. The gross revenue (including sales taxes) collected from the end user is passed to the developer. The API provider’s commission is collected from the developer in the form of a commission invoice. The API provider does not handle the sales tax collected from the end user, and it is the developer’s responsibility to report the sales tax.
* `Undisclosed`: In this tax model, the API provider acts as an undisclosed agent of the developer, and deducts the tax collected from the end users and pays it to the local tax authorities. The developer invoices the API provider for the net revenue share due to the developer (less sales taxes and the API provider’s commission).
* `Hybrid`: In this tax model, the API provider acts as a disclosed agent of the developer. However, the API provider pays the sales tax collected from their subscribers to the local tax authorities on the developer’s behalf. The API provider passes the remaining revenue to the developer, and then invoices for commission charges.
txProviderStatus:
type: string
description: Transaction provider status.
type:
type: string
description: >-
Type of transaction. Valid values include: `PURCHASE`, `CHARGE`, `REFUND`, `CREDIT`, `BALANCE`, `SETUPFEES`, `TERMINATIONFEES`, `TRUEUPS`. `TRUEUPS` are transacions that are used to adjust rated transactions; invoked when tax changes are made in the previous month.
usdExchangeRate:
type: number
description: US exchange rate.
utcEndTime:
type: string
description: Time that the transaction ended in UTC.
utcStartTime:
type: string
description: Time that the transaction started in UTC.
Application:
type: object
properties:
description:
type: string
description: Description of the application.
id:
type: string
description: ID of the application.
name:
type: string
description: Name of the application.
organization:
$ref: "#/components/schemas/Organization"
product:
type: array
items:
$ref: "#/components/schemas/APIProduct"
Developers:
type: object
properties:
developer:
type: array
description: List of developers.
items:
$ref: "#/components/schemas/Developer"
totalRecords:
type: integer
description: Total number of records.
APIProducts:
type: object
properties:
product:
type: array
items:
$ref: '#/components/schemas/APIProduct'
Webhooks:
type: object
properties:
totalRecords:
type: integer
description: Total number of records.
webhooks:
type: array
items:
$ref: '#/components/schemas/Webhook'
description: Details of the webhooks.
Webhook:
type: object
properties:
created:
type: integer
description: Output only. Time that the webhook was created in epoch format.
createdBy:
type: string
description: Output only. Email address of the developer that created the webhook.
enabled:
type: boolean
description: Flag that specifies whether the webhook is enabled or disabled.
id:
type: string
description: ID of the webhook.
name:
type: string
description: Name of the webhook.
postUrl:
type: string
description: URL of the callback handler.
updated:
type: integer
description: Output only. Time that the webhook was updated in epoch format.
updatedBy:
type: string
description: Output only. ID of the user that updated the webhook.
ScheduledJobs:
type: object
properties:
scheduled-job:
type: array
items:
$ref: '#/components/schemas/ScheduledJob'
description: Details of the scheduled job.
ScheduledJob:
type: object
properties:
createdDate:
type: integer
description: Output only. Job creation date in epoch format.
cronExpression:
type: string
description: >-
Cron expression to create a firing schedule for the trigger, such as: `At 8:00 A.M. every Monday through Friday` or `At 1:30 A.M. every last Friday of the month`. Specifying this property defines the trigger as a cron trigger. See also Building cron expressions.
endTime:
type: integer
description: Time in epoch format when the trigger's schedule is no longer in effect.
enabled:
type: boolean
description: Flag that indicates whether the trigger is enabled to execute. Set this value to true to enable execution of the trigger.
group:
type: string
description: >-
Type of server in which the trigger will execute. For example, if the trigger is supposed to execute in a management server, the value should be set to `management-server`. If the trigger is supposed to execute in a message processing server, the value should be set to `message-processor`.
id:
type: string
description: ID of the trigger.
jobId:
type: string
description: ID of the job that is to be executed.
name:
type: string
description: Unique name used to identify the trigger.
priority:
type: string
description: >-
Relative firing priority of the triggers if multiple triggers are scheduled to execute at the same. The lower the value, the higher the priority. For example, if two triggers are scheduled to execute at the same time, and if one trigger has a priority of 1 and the other a priority of 2, the trigger with priority 1 executes first. This property applies only if multiple triggers have exactly the same firing time.
startTime:
type: integer
description: >-
Time in epoch format when the trigger's schedule goes into effect.
**Note**: Applies to simple triggers only.
suiteId:
type: string
description: >-
Flag that specifies whether the notification part of the system-level or default-level suite of notifications. Valid values are `DEFAULT` or `SYSTEM`, or you can specify your own unique suite name.
triggerDataMap:
type: object
properties:
custom_lock_key:
type: string
description: Lock key that prevents multiple servers from executing the same job at the same time.
updatedDate:
type: integer
description: Date job was last updated in epoch format.
PaymentProviders:
type: object
properties:
provider:
type: array
items:
$ref: '#/components/schemas/PaymentProvider'
PaymentProvider:
type: object
properties:
authType:
type: string
description: Installation ID provided by the payment provider.
credential:
type: string
description: >-
Base64-encoded credentials (`username:XMLpassword`) for your Worldpay merchant account; `username ` is equivalent to the merchant code (in all caps) and `XMLpassword` specifies the XML password you set in the previous step, when setting up your Worldpay merchant account.
description:
type: string
description: Description of the payment provider.
endpoint:
type: string
description: Endpoint used to access the payment provider.
id:
type: string
description: ID of the payment provider. Required only when updating a payment provider.
merchantCode:
type: string
description: Merchant code provided by the payment provider to the API consumer.
name:
type: string
description: Name of the WorldPay payment provider.
Reload:
type: object
properties:
amount:
type: integer
description: Amount to reload the prepaid account.
supportedCurrency:
type: object
properties:
id:
type: string
description: Supported currency.
EligibleProducts:
type: object
properties:
product:
type: array
description: Product details.
items:
$ref: '#/components/schemas/APIProduct'