Application owners

Use application owner operations to register applications to the Rebilly App Store, and manage application instances. An application owner is a person or organization that submits an app to the Rebilly App Store. For more information on submitting apps, see Submit an app.

Register an application

Request

Registers an application and displays it publicly in the App Store. Before you submit an application, read the App Store documentation.

Security
SecretApiKey or JWT
Bodyapplication/json
namestringrequired

Name that is displayed for the application in the App Store.

logoIdstring, <= 50 charactersrequired

Unique identifier of the file that contains the application logo.

Example:"4f6cf35x-2c4y-483z-a0a9-158621f77a21"
authorNamestringrequired

Name of the person or organization that created the application.

authorLogoIdstring or null, <= 50 characters

Unique identifier of the file that contains the logo of the author.

Example:"4f6cf35x-2c4y-483z-a0a9-158621f77a21"
taglinestringrequired

Short descriptive tagline that is displayed for the application in the App Store.

descriptionstringrequired

Detailed description of the application. This field accepts markdown and simple text.

permissionsArray of strings, (operationId)required

List of permissions that are available to the application. To add permissions, contact Rebilly Support.

Items Enum:"DeleteApplicationInstance""GetApplicationInstanceConfiguration""GetCustomer""GetCustomerCollection""GetInvoice""GetInvoiceCollection""GetPlan""GetPlanCollection""GetProduct""GetProductCollection"
Example:
[ "GetInvoice", "GetInvoiceCollection", "GetCustomer", "GetCustomerCollection" ]
configurationUrlstring or null, (uri)

URL for configuring the application during installation.

propertiesobject

Defines settings that users complete when they install the application. This field accepts JSON-schema drafts 4, 6, and 7.

Example:
{ "type": "object", "properties": { "email": {}, "max": {} }, "required": [ "email" ] }
curl -i -X POST \
  https://www.rebilly.com/_mock/catalog/all/applications \
  -H 'Content-Type: application/json' \
  -H 'REB-APIKEY: YOUR_API_KEY_HERE' \
  -d '{
    "name": "string",
    "logoId": "4f6cf35x-2c4y-483z-a0a9-158621f77a21",
    "authorName": "string",
    "authorLogoId": "4f6cf35x-2c4y-483z-a0a9-158621f77a21",
    "tagline": "string",
    "description": "string",
    "permissions": [
      "GetInvoice",
      "GetInvoiceCollection",
      "GetCustomer",
      "GetCustomerCollection"
    ],
    "configurationUrl": "http://example.com",
    "properties": {
      "type": "object",
      "properties": {
        "email": {
          "type": "string"
        },
        "max": {
          "type": "integer",
          "minimum": 0,
          "exclusiveMaximum": 100
        }
      },
      "required": [
        "email"
      ]
    }
  }'

Responses

Application registered.

Headers
Locationstring, (uri)

Location of the related resource.

Example:"https://api.rebilly.com/example"
X-RateLimit-Limitinteger

Total number of rate limit tokens for this request within a rate limit period. For more information, see Rate limits.

Example:3600
X-RateLimit-Remaininginteger

Remaining number of rate limit tokens for this request within the rate limit period. For example, in the sandbox environment, rate limits for non-GET endpoints are set at 3000 requests per 10 minutes.

Example:3600
Bodyapplication/json
idstring, <= 50 charactersread-only

Unique identifier of the application.

Example:"app_01H0HT25X7XXCJGS4H8VJSYF2Y"
namestringrequired

Name that is displayed for the application in the App Store.

logoIdstring, <= 50 charactersrequired

Unique identifier of the file that contains the application logo.

Example:"4f6cf35x-2c4y-483z-a0a9-158621f77a21"
authorNamestringrequired

Name of the person or organization that created the application.

authorLogoIdstring or null, <= 50 characters

Unique identifier of the file that contains the logo of the author.

Example:"4f6cf35x-2c4y-483z-a0a9-158621f77a21"
taglinestringrequired

Short descriptive tagline that is displayed for the application in the App Store.

descriptionstringrequired

Detailed description of the application. This field accepts markdown and simple text.

statusstringread-only

Current status of the application in the App Store.

Enum:"pending-approval""available""disabled"
permissionsArray of strings, (operationId)required

List of permissions that are available to the application. To add permissions, contact Rebilly Support.

Items Enum:"DeleteApplicationInstance""GetApplicationInstanceConfiguration""GetCustomer""GetCustomerCollection""GetInvoice""GetInvoiceCollection""GetPlan""GetPlanCollection""GetProduct""GetProductCollection"
Example:
[ "GetInvoice", "GetInvoiceCollection", "GetCustomer", "GetCustomerCollection" ]
configurationUrlstring or null, (uri)

URL for configuring the application during installation.

configuredBystringread-only

Specifies who can configure the application.

Enum:"user""application"
propertiesobject

Defines settings that users complete when they install the application. This field accepts JSON-schema drafts 4, 6, and 7.

Example:
{ "type": "object", "properties": { "email": {}, "max": {} }, "required": [ "email" ] }
createdTimestring, (date-time)(CreatedTime)read-only

Date and time when the resource is created. This value is set automatically when the resource is created.

updatedTimestring, (date-time)(UpdatedTime)read-only

Date and time when the resource is updated. This value is set automatically when the resource is updated.

Response
{ "id": "app_01H0HT25X7XXCJGS4H8VJSYF2Y", "name": "string", "logoId": "4f6cf35x-2c4y-483z-a0a9-158621f77a21", "authorName": "string", "authorLogoId": "4f6cf35x-2c4y-483z-a0a9-158621f77a21", "tagline": "string", "description": "string", "status": "pending-approval", "permissions": [ "GetInvoice", "GetInvoiceCollection", "GetCustomer", "GetCustomerCollection" ], "configurationUrl": "http://example.com", "configuredBy": "user", "properties": { "type": "object", "properties": {}, "required": [] }, "createdTime": "2019-08-24T14:15:22Z", "updatedTime": "2019-08-24T14:15:22Z", "_links": [ {} ] }