Automate101, Level 27, PwC Tower 188 Quay Street Auckland 1010 sales@getatria.com
Select Page

Creating and sending the invoice is the easy part, but how can you make sure you’re billing the right quantities?

Managed Service Providers and IT companies, lose margin every month due to revenue impacting changes being missed as a part of everyday operations.  For recurring revenue businesses, this becomes a monthly margin leak. By using Atria to handle all core user related changes, Atria becomes an automatically updated source of truth for invoicing.

Find 100 IT companies, and you might find 20 different ways billing is handled (or maybe 100 different ways!) Our API allows you to get summarized or detailed billing data out of Atria – out of the box we have plug ins that will automatically update contracts in ConnectWise Manage, Datto Autotask and Kaseya BMS, but if you use a different system, or even want to do more analysis in excel, you can use our Rest API to make this easy.

Atria Rest API

Atria has two API’s the classic “CortexAPI” provides an XML based interface which can be used for automating provisioning processes.  More information on the CortexAPI here

The newer Rest API extracts billing and usage information from Atria.

This article explains the different API methods available in the Rest API.

Summary data for a specified billing period

/api/billing/{enddate}

  • This extracts a summarized view of the data for a billing period (as specified by the billing period end date), this refers to a customer, but does not provide detailed information for the customer (e.g. address details etc)
  • You can specify whether you want to retrieve only billable items (set billable flag).
  • Group output by customer with the AggregateByCustomer parameter.
  • This will also compare the data from the current period with the prior period, so handy for showing trends in data.

Show Detailed information (user level) for a billing period

/api/billing/{enddate}/detail

  • This extracts user level details for the specified billing period.  For example, data will show the customer, the user, the service and the duration of the month that they have had the service (via start and end date)
  • Filter the data to a specific customer, show billable or all data, or use additional parameters for service and user search.

Show data for creating invoices

/api/Billing/{endDate}/invoice

  • This retrieves additional information that may be useful for creating invoices.  The view aggregates by Customer.
  • Each invoice record has a Customer (who is consuming the service) and a Bill To Customer (who is paying for the service).  Channel oriented organizations can bill the correct organization for services (i.e. the channel partner, vs the end customer).
  • Within each Invoice record, the details needed to plug in the details for a contract update or invoice – Product/SKU code , Service Code/Name, Line Description and quantity.
  • Data from this API forms the basis of our integrations with PSA tools (ConnectWise Manage, Kaseya BMS, Datto Autotask)

Show detailed user level data for a billing period

/api/Billing/{endDate}/analysis

  • This retrieves the most detail regarding the billing period, this includes customer address details included on the invoice and line detail down to the user service level.
  • The DurationPercent value shows the proportion of the period that the service was in use for an individual user service.
  • The output includes both Billable and non-billable data.
  • Use this API if you want to carry out post processing to Atria data prior to feeding into another system.

Show Available Billing Periods and Customers

​/api​/Billing​/parameters

  • If you need to get a list of all available billing periods and customers, for use as parameters into other API calls, you can use this API.

Atria API Swagger

By default, each Atria API instance has a Swagger API interface enabled.  You can navigate to this by browsing to https://{Your-Atria-host-Name}/API/

This will show all schema details for each of the above API calls and will have all the information a developer might need.

More information