Skip to main content
Version: v1

Introduction

This API is designed for managing CDN services for a partner.

Base DNS Zones

During operation, Arviol interacts with a DNS server (creating/deleting/updating A-records for zones, issuing SSL certificates), specifically using the PowerDNS API.
To manage CDN services, three DNS zones are required:

  • a zone for managing cname-domains, e.g. static-partner.arviol.com.
  • a zone for managing S3 resources, e.g. s3-partner.arviol.com.
  • a zone for managing VOD objects, e.g. vod-partner.arviol.com.

When end-users create objects in the system, unique domain names will be issued depending on the zones defined above, for example:

  • domains – d123.static-partner.arviol.com
  • S3 resources – s123.s3-partner.arviol.com
  • VOD objects – vd123.vod-partner.arviol.com or vs123.vod-partner.arviol.com

Choosing a DNS Server

Two options are available for choosing the DNS server:

  1. Using Arviol’s PDNS – in this case, all DNS zone actions will occur on Arviol's side.
note

In this setup, to manage CDN services for delegated domains, the partner must manually change the user’s domain A-records to those provided in advance by the system.

  1. Using the partner’s PDNS – the partner must provide a URL and secret key for API interaction. The advantage of this option is that the end-user will see a domain name chosen by the partner, e.g.: d123.static-cdn.partner-name.com.

Partner Integration Parameters

To connect to the system, the partner must provide a set of required parameters:

  1. An active email address and phone number for the partner.
  2. The base DNS zone names used to manage CDN services.
  3. The URL and token (API-KEY) of the partner’s PDNS server if the second DNS option is selected.
  4. Information about whether automatic certificate renewal is required for delegated client domains.

After the partner is registered in the system, a token is issued for API access.
When creating objects via the API, the partner must specify the id (integer) of the external (end) user making the request.
It's also possible to include PARTNER-NAME (string) and SUBJECT-ID (UUID) headers for request identification.

note

This API complies with the JSON-RPC 2.0 specification. More details are available at http://www.jsonrpc.org/specification.