Billing API specification (f2abb08b3f61919387e92b7b5f17e72f3798772d)

Download OpenAPI specification:Download

The billing service implements the billing business logic

Authentication

API_Token

To use this API, you need an API-Token from the RBAC settings of your GroupAlarm organization. Place the token inside the HTTP-Header API-Token for every request, otherwise the API will return an "401 Unauthorized" error for your request.

Security Scheme Type API Key
Header parameter name: API-TOKEN

Personal-Access-Token

To use this API, you need a Personal Access Token from your profile settings. Place the token inside the HTTP-Header Personal-Access-Token for every request, otherwise the API will return an "401 Unauthorized" error for your request.

Security Scheme Type API Key
Header parameter name: Personal-Access-Token

billing

UpdateBilling

Updates a billing configuration for an organization

Request Body schema: application/json
object (BillingAddress)

BillingAddress is the definition of a billing address

object (OrganizationBillingInformation)

OrganizationBillingInformation contains information about an organization's billing

object (OrganizationLock)

OrganizationLock describes the state of a locked organization

organizationName
string

Name of the organization, only set on creation to set in on the invoice

object (PaymentOption)

PaymentOption is the definition of a payment option

Responses

Request samples

Content type
application/json
{
  • "billingAddress": {
    },
  • "organizationBillingInformation": {
    },
  • "organizationLock": {
    },
  • "organizationName": "string",
  • "paymentOption": {
    }
}

Response samples

Content type
application/json
{
  • "billingAddress": {
    },
  • "organizationBillingInformation": {
    },
  • "organizationLock": {
    },
  • "organizationName": "string",
  • "paymentOption": {
    }
}

CreateBilling

Creates a billing configuration for an organization

Request Body schema: application/json
object (BillingAddress)

BillingAddress is the definition of a billing address

object (OrganizationBillingInformation)

OrganizationBillingInformation contains information about an organization's billing

object (OrganizationLock)

OrganizationLock describes the state of a locked organization

organizationName
string

Name of the organization, only set on creation to set in on the invoice

object (PaymentOption)

PaymentOption is the definition of a payment option

Responses

Request samples

Content type
application/json
{
  • "billingAddress": {
    },
  • "organizationBillingInformation": {
    },
  • "organizationLock": {
    },
  • "organizationName": "string",
  • "paymentOption": {
    }
}

Response samples

Content type
application/json
{
  • "billingAddress": {
    },
  • "organizationBillingInformation": {
    },
  • "organizationLock": {
    },
  • "organizationName": "string",
  • "paymentOption": {
    }
}

GetBilling

Get an organizations billing details

path Parameters
organizationID
required
integer

Responses

Response samples

Content type
application/json
{
  • "billingAddress": {
    },
  • "organizationBillingInformation": {
    },
  • "organizationLock": {
    },
  • "organizationName": "string",
  • "paymentOption": {
    }
}

ReactivateOrganization

Reactivates a terminated organization payment option

path Parameters
organizationID
required
integer

Responses

Response samples

Content type
application/json
{
  • "billingAddress": {
    },
  • "organizationBillingInformation": {
    },
  • "organizationLock": {
    },
  • "organizationName": "string",
  • "paymentOption": {
    }
}

TerminateOrganization

Terminates an organization payment option due the next billing

path Parameters
organizationID
required
integer
query Parameters
reason
string

reason for terminating our services

Responses

Response samples

Content type
application/json
{
  • "billingAddress": {
    },
  • "organizationBillingInformation": {
    },
  • "organizationLock": {
    },
  • "organizationName": "string",
  • "paymentOption": {
    }
}

Removes all remaining organization billing data after a successful termination.

Afterwards you are free to use inheritance or an existing account.

path Parameters
organizationID
required
integer

Responses

GetBillingPreview

Get a preview of the organization's current billing cycle

path Parameters
organizationID
required
integer

Responses

Response samples

Content type
application/json
{
  • "cycleEnd": null,
  • "cycleStart": null,
  • "duplicates": 0,
  • "inheritingBillingPreviews": [
    ],
  • "items": [
    ],
  • "minUserLicenses": 0,
  • "organizationID": 0,
  • "organizationName": "string",
  • "recurringItems": [
    ],
  • "timestamp": null,
  • "total": 0,
  • "totalRecurring": 0,
  • "usedUserLicenses": 0,
  • "userLicenseUnitPrice": 0
}

SwitchBetweenBillingInheritanceAndWHMCS

Instantaniously switch between an inherited billing from a parent organization or a new / existing whmcs billing account. Organization has to be active already and not terminated. Performing user has to be an owner of the organization and (if applicable) the parent organization. Switching to a new or existing whmcs account requires the organization to be billed through its parent organization. Switching to an inherited billing requires the organization to be billed through its own whmcs account.

Request Body schema: application/json
object (ExistingCustomerRequest)

ExistingCustomerRequest is the definition of a billing request payload

object (BillingInheritanceRequest)

BillingInheritanceRequest is used to request the inheritance of billing information

object (BillingRequest)

BillingRequest is the definition of a billing request payload

Responses

Request samples

Content type
application/json
{
  • "existingWHMCSAccount": {
    },
  • "inheritance": {
    },
  • "newWHMCSAccount": {