{ "swagger": "2.0", "info": { "description": "Our HTTP [REST API](https:\/\/en.wikipedia.org\/wiki\/Representational_state_transfer) allows you to manage vital details of your account and services in client portal. [JSON](http:\/\/www.json.org\/) is used for all API returns.\n\n## Authentication\n\n## JSON Web Token Authentication\n\n```bash\ncurl 'https:\/\/cp.clyvovoip.com\/api\/login' \\\n -d username=\"username\"\\\n -d password=\"password\"\n\n# grab authentication token from the response and pass it in Authorization header\ncurl 'https:\/\/cp.clyvovoip.com\/api\/details' \\\n -H \"Authorization: Bearer $token\"\n```\n\n```php\n$resp = $client->post('login', [\n 'form_params' => [\n 'username' => 'username',\n 'password' => 'password'\n ]\n]);\n\n$token = $resp->json()['token'];\n\n$resp = $client->get('details', [\n 'headers' => [\n 'Authorization' => 'Bearer ' . $token\n ]\n]);\n\necho $resp->getBody();\n```\n\n> Make sure to replace `username` and `password` with your client area details.\n\nTo authenticate, you need to send a [JSON Web Token (JWT)](https:\/\/jwt.io\/) in the authorization header of the HTTP request.\n\nTo obtain the authorization `token` you need to submit a request with your username and password to `POST https:\/\/cp.clyvovoip.com\/api\/login` API method.\n\nAll API calls that require authentication expect HTTP header in the form of `Authorization: Bearer `.\n\nFor example: `Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJpc3MiOiJodHRw...`\n\n## Basic Authentication\n\n```bash\n# pass the correct header with each request (-u option)\ncurl 'https:\/\/cp.clyvovoip.com\/api\/details' \\\n -u \"username:password\"\n```\n\n```php\nuse GuzzleHttp\\Client;\n\n$client = new Client([\n 'base_uri' => 'https:\/\/cp.clyvovoip.com\/api\/',\n 'auth' => ['username', 'password']\n]);\n\n$resp = $client->get('details');\n```\n\n> Make sure to replace `username` and `password` with your client area details.\n\nThis authentication method requires that you send your client area username (email address) and password with each request.\n\nAPI calls that require authentication expect a header in the form of `Authorization: Basic `, where credentials is the Base64 encoding of username and password joined by a single colon `:`.\n\nFor example: `Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==`\n\nYou can find more info on this authentication method here: [Basic HTTP Authentication](https:\/\/en.wikipedia.org\/wiki\/Basic_access_authentication)\n\n> You must replace `QWxhZGRpbjpvcGVuIHNlc2FtZQ==` with base64 encoded version of your access details.\n\n> For security, we highly recommend to issue API calls over [HTTPS](http:\/\/en.wikipedia.org\/wiki\/HTTP_Secure)\n\n", "version": "4.20260225", "title": "Clyvo VOIP User API" }, "host": "cp.clyvovoip.com", "basePath": "\/api", "tags": [ { "name": "Clientarea" }, { "name": "Billing" }, { "name": "Support" }, { "name": "Domains" }, { "name": "SSL Certificates" }, { "name": "Services" }, { "name": "Cart" }, { "name": "DNS" } ], "schemes": [ "https" ], "paths": { "\/login": { "post": { "tags": [ "Clientarea" ], "summary": "Login", "description": "Generate new authorization token", "operationId": "getToken", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "username": { "type": "string", "description": "Your acount email address ", "example": "user@example.com" }, "password": { "type": "string", "description": "Account password ", "example": "secret" } }, "example": { "username": "user@example.com", "password": "secret" } } } ], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJpc3MiOiJodHRw(...)5lZ9T79ft9uwOkqRRmIBbtR51_w", "refresh": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJzdWIiOiIzMD(...)ChwIAb3zvxBu6kvULa2AwAt9U-I" } }, "schema": { "type": "object", "example": { "token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJpc3MiOiJodHRw(...)5lZ9T79ft9uwOkqRRmIBbtR51_w", "refresh": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJzdWIiOiIzMD(...)ChwIAb3zvxBu6kvULa2AwAt9U-I" } } } } } }, "\/logout": { "post": { "tags": [ "Clientarea" ], "summary": "Logout", "description": "Invalidate authorization token", "operationId": "dropToken", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "status": true } }, "schema": { "type": "object", "example": { "status": true } } } } } }, "\/token": { "post": { "tags": [ "Clientarea" ], "summary": "Refresh Token", "description": "Generate new authorization token using refresh token", "operationId": "refreshToken", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "refresh_token": { "type": "string", "description": "Refresh token previously obtained from `POST \/login`", "example": "refresh_tokenValue" } }, "example": { "refresh_token": "refresh_tokenValue" } } } ], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJpc3MiOiJodHR(...)vY2xlYiHGvauCWZD9B0VwXgHEzXDllqY", "refresh": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJzdWIiOiJBQ(...)Rmivc_u3YA_kgDqOPtUuGNXOzueXYtZw" } }, "schema": { "type": "object", "example": { "token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJpc3MiOiJodHR(...)vY2xlYiHGvauCWZD9B0VwXgHEzXDllqY", "refresh": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJzdWIiOiJBQ(...)Rmivc_u3YA_kgDqOPtUuGNXOzueXYtZw" } } } } } }, "\/revoke": { "post": { "tags": [ "Clientarea" ], "summary": "Revoke Token", "description": "Invalidate authorization and refresh token.\nPass refresh token or call this method with valid access token", "operationId": "revokeToken", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "refresh_token": { "type": "string", "example": "refresh_tokenValue" } }, "example": { "refresh_token": "refresh_tokenValue" } } } ], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "status": true } }, "schema": { "type": "object", "example": { "status": true } } } } } }, "\/details": { "get": { "tags": [ "Clientarea" ], "summary": "User Details", "description": "Return registration details for my account", "operationId": "getDetails", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "client": { "id": "26", "email": "api@example.com", "lastlogin": "2016-12-30 12:24:28", "ip": "172.100.2.1", "host": "hostname", "firstname": "Joe", "lastname": "Doe", "companyname": "", "address1": "Pretty View Lane", "address2": "3294", "city": "Santa Rosa", "state": "California", "postcode": "95401", "country": "US", "phonenumber": "+1.24123123" } } }, "schema": { "type": "object", "example": { "client": { "id": "26", "email": "api@example.com", "lastlogin": "2016-12-30 12:24:28", "ip": "172.100.2.1", "host": "hostname", "firstname": "Joe", "lastname": "Doe", "companyname": "", "address1": "Pretty View Lane", "address2": "3294", "city": "Santa Rosa", "state": "California", "postcode": "95401", "country": "US", "phonenumber": "+1.24123123" } } } } } }, "put": { "tags": [ "Clientarea" ], "summary": "Update User Details", "description": "Update registration details under my account", "operationId": "postDetails", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "type": { "type": "string", "description": "Account Type", "enum": [ "Private", "Company" ] }, "companyname": { "type": "string", "description": "Organization" }, "coc": { "type": "string", "description": "CoC" }, "vateu": { "type": "string", "description": "VAT EU - If you have valid VAT-EU registered number please provide it here" }, "firstname": { "type": "string", "description": "First Name" }, "lastname": { "type": "string", "description": "Last Name" }, "email": { "type": "string", "description": "Email Address" }, "address1": { "type": "string", "description": "Address 1" }, "address2": { "type": "string", "description": "Address 2" }, "city": { "type": "string", "description": "City" }, "state": { "type": "string", "description": "State" }, "postcode": { "type": "string", "description": "Post code" }, "country": { "type": "string", "description": "Country" }, "phonenumber": { "type": "string", "description": "Phone" }, "ripetech": { "type": "string", "description": "RipeTech", "enum": [ "ripetech" ] }, "ripeadmin": { "type": "string", "description": "RipeAdmin", "enum": [ "ripeadmin" ] }, "ripeperson": { "type": "string", "description": "RipePerson" }, "riperole": { "type": "string", "description": "RipeRole" }, "ticketsubmitters": { "type": "string", "description": "Allowed ticket domain submitters" } } } } ], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "client": { "id": "26", "email": "api@example.com", "lastlogin": "2016-12-30 12:34:20", "ip": "172.100.2.1", "host": "hostname", "firstname": "Joe", "lastname": "Doe", "companyname": "", "address1": "Pretty View Lane", "address2": "3194", "city": "Santa Rosa", "state": "California", "postcode": "95401", "country": "US", "phonenumber": "+1.24123123" }, "info": [ "client_info_updated" ] } }, "schema": { "type": "object", "example": { "client": { "id": "26", "email": "api@example.com", "lastlogin": "2016-12-30 12:34:20", "ip": "172.100.2.1", "host": "hostname", "firstname": "Joe", "lastname": "Doe", "companyname": "", "address1": "Pretty View Lane", "address2": "3194", "city": "Santa Rosa", "state": "California", "postcode": "95401", "country": "US", "phonenumber": "+1.24123123" }, "info": [ "client_info_updated" ] } } } } } }, "\/logs": { "get": { "tags": [ "Clientarea" ], "summary": "User Logs", "description": "Returns logs from history", "operationId": "getLogs", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [], "responses": { "200": { "description": "`Success`" } } } }, "\/affiliates\/summary": { "get": { "tags": [ "Clientarea" ], "summary": "Get Affiliate summary", "description": "", "operationId": "affiliates_summary", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [], "responses": { "200": { "description": "`Success`" } } } }, "\/affiliates\/campaigns": { "get": { "tags": [ "Clientarea" ], "summary": "Get Affiliate campaigns", "description": "", "operationId": "affiliates_campaigns", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [], "responses": { "200": { "description": "`Success`" } } } }, "\/affiliates\/commissions": { "get": { "tags": [ "Clientarea" ], "summary": "Get Affiliate commissions", "description": "", "operationId": "affiliates_commissions", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [], "responses": { "200": { "description": "`Success`" } } } }, "\/affiliates\/payouts": { "get": { "tags": [ "Clientarea" ], "summary": "Get Affiliate payouts", "description": "", "operationId": "affiliates_payouts", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [], "responses": { "200": { "description": "`Success`" } } } }, "\/affiliates\/vouchers": { "get": { "tags": [ "Clientarea" ], "summary": "Get Affiliate vouchers", "description": "", "operationId": "affiliates_vouchers", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [], "responses": { "200": { "description": "`Success`" } } } }, "\/affiliates\/commissionplans": { "get": { "tags": [ "Clientarea" ], "summary": "Get Affiliate commission plans", "description": "", "operationId": "affiliates_commission_plans", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [], "responses": { "200": { "description": "`Success`" } } } }, "\/contact": { "get": { "tags": [ "Clientarea" ], "summary": "List contacts", "description": "Return a list of contacts on this account", "operationId": "profiles", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "contacts": [ { "email": "mary@example.com", "id": "49", "firstname": "Mary", "lastname": "Sue", "companyname": "", "company": "0", "lastlogin": "0000-00-00 00:00:00" } ] } }, "schema": { "type": "object", "example": { "contacts": [ { "email": "mary@example.com", "id": "49", "firstname": "Mary", "lastname": "Sue", "companyname": "", "company": "0", "lastlogin": "0000-00-00 00:00:00" } ] } } } } }, "post": { "tags": [ "Clientarea" ], "summary": "Add contact", "description": "Create new contact account, if password is provided you\ncan use provided email addres to login as that contact.", "operationId": "profiles_add", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "password": { "type": "string", "description": "Optional, allows you to login as contact", "example": "passwordValue" }, "privileges": { "type": "array", "description": "Array with privileges that you want to enable. Formatted the same way as output from GET \/contact\/privileges<\/code>", "items": { "type": "string" }, "example": "privilegesValue" }, "type": { "type": "string", "description": "Account Type", "enum": [ "Private", "Company" ] }, "companyname": { "type": "string", "description": "Organization" }, "coc": { "type": "string", "description": "CoC" }, "vateu": { "type": "string", "description": "VAT EU - If you have valid VAT-EU registered number please provide it here" }, "firstname": { "type": "string", "description": "First Name" }, "lastname": { "type": "string", "description": "Last Name" }, "email": { "type": "string", "description": "Email Address" }, "address1": { "type": "string", "description": "Address 1" }, "address2": { "type": "string", "description": "Address 2" }, "city": { "type": "string", "description": "City" }, "state": { "type": "string", "description": "State" }, "postcode": { "type": "string", "description": "Post code" }, "country": { "type": "string", "description": "Country" }, "phonenumber": { "type": "string", "description": "Phone" }, "ripetech": { "type": "string", "description": "RipeTech", "enum": [ "ripetech" ] }, "ripeadmin": { "type": "string", "description": "RipeAdmin", "enum": [ "ripeadmin" ] }, "ripeperson": { "type": "string", "description": "RipePerson" }, "riperole": { "type": "string", "description": "RipeRole" }, "ticketsubmitters": { "type": "string", "description": "Allowed ticket domain submitters" } }, "example": { "password": "passwordValue", "privileges": "privilegesValue" } } } ], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "contact_id": "1", "info": [ "profile_added" ] } }, "schema": { "type": "object", "example": { "contact_id": "1", "info": [ "profile_added" ] } } } } } }, "\/contact\/privileges": { "get": { "tags": [ "Clientarea" ], "summary": "Contact privileges", "description": "List possible contact privileges.\nEach domain and service may list additional privileges, depending on available features.
", "operationId": "profile_privs", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [], "responses": { "200": { "description": "`Success`" } } } }, "\/contact\/{id}": { "get": { "tags": [ "Clientarea" ], "summary": "Get contacts details", "description": "Return array with contact details", "operationId": "profile_data", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "integer", "in": "path", "description": "Contact ID", "required": true } ], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "contact": { "id": "49", "email": "mary@example.com", "firstname": "Mary", "lastname": "Sue", "companyname": "", "address1": "Pretty View Lane", "address2": "3194", "city": "Santa Rosa", "state": "California", "postcode": "95401", "country": "US", "phonenumber": "+1.24123123", "type": "Private", "privileges": { "support": [ "tickets", "newticket" ] } } } }, "schema": { "type": "object", "example": { "contact": { "id": "49", "email": "mary@example.com", "firstname": "Mary", "lastname": "Sue", "companyname": "", "address1": "Pretty View Lane", "address2": "3194", "city": "Santa Rosa", "state": "California", "postcode": "95401", "country": "US", "phonenumber": "+1.24123123", "type": "Private", "privileges": { "support": [ "tickets", "newticket" ] } } } } } } }, "put": { "tags": [ "Clientarea" ], "summary": "Edit contact", "description": "Change contact details`", "operationId": "profile_edit", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "id": { "type": "integer", "description": "Contact ID", "example": "idValue" }, "privileges": { "type": "array", "description": "Array with privileges that you want to enable. Formatted the same way as output from GET \/contact\/privileges<\/code>", "items": { "type": "string" }, "example": "privilegesValue" }, "type": { "type": "string", "description": "Account Type", "enum": [ "Private", "Company" ] }, "companyname": { "type": "string", "description": "Organization" }, "coc": { "type": "string", "description": "CoC" }, "vateu": { "type": "string", "description": "VAT EU - If you have valid VAT-EU registered number please provide it here" }, "firstname": { "type": "string", "description": "First Name" }, "lastname": { "type": "string", "description": "Last Name" }, "email": { "type": "string", "description": "Email Address" }, "address1": { "type": "string", "description": "Address 1" }, "address2": { "type": "string", "description": "Address 2" }, "city": { "type": "string", "description": "City" }, "state": { "type": "string", "description": "State" }, "postcode": { "type": "string", "description": "Post code" }, "country": { "type": "string", "description": "Country" }, "phonenumber": { "type": "string", "description": "Phone" }, "ripetech": { "type": "string", "description": "RipeTech", "enum": [ "ripetech" ] }, "ripeadmin": { "type": "string", "description": "RipeAdmin", "enum": [ "ripeadmin" ] }, "ripeperson": { "type": "string", "description": "RipePerson" }, "riperole": { "type": "string", "description": "RipeRole" }, "ticketsubmitters": { "type": "string", "description": "Allowed ticket domain submitters" } }, "example": { "id": "idValue", "privileges": "privilegesValue" } } }, { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "info": [ "profile_updated" ] } }, "schema": { "type": "object", "example": { "info": [ "profile_updated" ] } } } } } }, "\/notifications": { "get": { "tags": [ "Clientarea" ], "summary": "List all portal notifications", "description": "Return a list of all portal notifications.", "operationId": "notifications", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "rel_type", "type": "string", "in": "query", "description": "Optional, return only by relation type" }, { "name": "rel_id", "type": "string", "in": "query", "description": "Optional, return only by relation id" } ], "responses": { "200": { "description": "`Success`" } } } }, "\/notifications\/new": { "get": { "tags": [ "Clientarea" ], "summary": "List new portal notifications", "description": "Return only new portal notifications.", "operationId": "notifications_new", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "rel_type", "type": "string", "in": "query", "description": "Optional, return only by relation type" }, { "name": "rel_id", "type": "string", "in": "query", "description": "Optional, return only by relation id" } ], "responses": { "200": { "description": "`Success`" } } } }, "\/notifications\/{id}\/ack": { "put": { "tags": [ "Clientarea" ], "summary": "Acknowledge notification", "description": "Marks the notification as read", "operationId": "notifications_set_seen", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/statuses": { "get": { "tags": [ "Clientarea" ], "summary": "Returns a list of all statuses with specific status", "description": "", "operationId": "status_updates_specific", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "status", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/statuses\/{id}": { "put": { "tags": [ "Clientarea" ], "summary": "Returns details of status", "description": "", "operationId": "status_updates_details", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "integer", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/balance": { "get": { "tags": [ "Billing" ], "summary": "Account balance", "description": "Get current account balance(unpaid invoices total), account credit", "operationId": "getBalance", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [], "responses": { "200": { "description": "`Success`" } } } }, "\/invoice": { "get": { "tags": [ "Billing" ], "summary": "List Invoices", "description": "List all invoices under my account", "operationId": "getInvoices", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "invoices": [ { "id": "308976", "date": "2016-12-30", "dateorig": "2016-12-30", "duedate": "2017-01-06", "paybefore": "2017-01-06", "total": "19.65", "datepaid": "2016-12-30 12:40:47", "status": "Paid", "merge_id": null, "number": "2016\/12\/1", "currency": "USD" } ] } }, "schema": { "type": "object", "example": { "invoices": [ { "id": "308976", "date": "2016-12-30", "dateorig": "2016-12-30", "duedate": "2017-01-06", "paybefore": "2017-01-06", "total": "19.65", "datepaid": "2016-12-30 12:40:47", "status": "Paid", "merge_id": null, "number": "2016\/12\/1", "currency": "USD" } ] } } } } } }, "\/invoice\/{id}": { "get": { "tags": [ "Billing" ], "summary": "Invoice Details", "description": "Get invoice details", "operationId": "getInvoiceDetails", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "invoice": { "id": "308976", "status": "Paid", "date": "2016-12-30", "duedate": "2017-01-06", "paybefore": "2017-01-06", "datepaid": "2016-12-30 12:40:47", "subtotal": 16.24, "credit": 0, "tax": 3.41, "taxrate": 21, "tax2": 0, "taxrate2": 0, "taxexempt": "0", "total": 19.65, "rate": 1, "rate2": 0, "rate3": 1, "notes": "", "items": [ { "id": "12305", "invoice_id": "308976", "type": "Other", "item_id": "0", "description": "Example Service", "amount": "15.00", "taxed": "1", "qty": "1.00", "linetotal": "15.00" }, { "id": "12309", "invoice_id": "308976", "type": "Other", "item_id": "-2", "description": "PayPal Payment Fee", "amount": "1.24", "taxed": "1", "qty": "1.00", "linetotal": "1.24" } ], "client": { "id": "26", "email": "api@example.com", "firstname": "Joe", "lastname": "Doe", "companyname": "", "address1": "Pretty View Lane", "address2": "3194", "city": "Santa Rosa", "state": "California", "postcode": "95401", "country": "US", "phonenumber": "+1.24123123" }, "number": "2016\/12\/1", "currency": "USD" } } }, "schema": { "type": "object", "example": { "invoice": { "id": "308976", "status": "Paid", "date": "2016-12-30", "duedate": "2017-01-06", "paybefore": "2017-01-06", "datepaid": "2016-12-30 12:40:47", "subtotal": 16.24, "credit": 0, "tax": 3.41, "taxrate": 21, "tax2": 0, "taxrate2": 0, "taxexempt": "0", "total": 19.65, "rate": 1, "rate2": 0, "rate3": 1, "notes": "", "items": [ { "id": "12305", "invoice_id": "308976", "type": "Other", "item_id": "0", "description": "Example Service", "amount": "15.00", "taxed": "1", "qty": "1.00", "linetotal": "15.00" }, { "id": "12309", "invoice_id": "308976", "type": "Other", "item_id": "-2", "description": "PayPal Payment Fee", "amount": "1.24", "taxed": "1", "qty": "1.00", "linetotal": "1.24" } ], "client": { "id": "26", "email": "api@example.com", "firstname": "Joe", "lastname": "Doe", "companyname": "", "address1": "Pretty View Lane", "address2": "3194", "city": "Santa Rosa", "state": "California", "postcode": "95401", "country": "US", "phonenumber": "+1.24123123" }, "number": "2016\/12\/1", "currency": "USD" } } } } } } }, "\/invoice\/{id}\/credit": { "post": { "tags": [ "Billing" ], "summary": "Apply credit", "description": "Apply account credit to invoice", "operationId": "applyCreditToInvoice", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "amount": { "type": "number", "description": "Optional credit amount, when no value is specified maximum amount to fully pay the invoice will be used", "example": "amountValue" } }, "example": { "amount": "amountValue" } } }, { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "success": true, "invoice_status": "Paid", "applied": 2.1 } }, "schema": { "type": "object", "example": { "success": true, "invoice_status": "Paid", "applied": 2.1 } } } } } }, "\/invoice\/{id}\/pdf": { "post": { "tags": [ "Billing" ], "summary": "Invoice PDF", "description": "Get specific invoice PDF", "operationId": "getInvoicePdf", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "success": true, "invoice": "Paid" } }, "schema": { "type": "object", "example": { "success": true, "invoice": "Paid" } } } } } }, "\/payment": { "get": { "tags": [ "Billing" ], "summary": "Payment Methods", "description": "List available payment methods", "operationId": "paymethod", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "payments": { "10": "BankTransfer", "9": "PayPal" } } }, "schema": { "type": "object", "example": { "payments": { "10": "BankTransfer", "9": "PayPal" } } } } } } }, "\/payment\/fees": { "get": { "tags": [ "Billing" ], "summary": "Payment Methods Fees", "description": "List available payment methods with fees", "operationId": "paymethod_fee", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [], "responses": { "200": { "description": "`Success`" } } } }, "\/tickets": { "get": { "tags": [ "Support" ], "summary": "List Tickets", "description": "List support tickets under my account", "operationId": "getTickets", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "tickets": [ { "client_read": "1", "ticket_number": "736633", "date": "2016-12-30 12:48:13", "deptname": "Billing", "subject": "Lore Ipsum", "status": "Open", "lastreply": "2020-09-12 11:10:03" } ] } }, "schema": { "type": "object", "example": { "tickets": [ { "client_read": "1", "ticket_number": "736633", "date": "2016-12-30 12:48:13", "deptname": "Billing", "subject": "Lore Ipsum", "status": "Open", "lastreply": "2020-09-12 11:10:03" } ] } } } } }, "post": { "tags": [ "Support" ], "summary": "Create Ticket", "description": "Submit new ticket", "operationId": "createTicket", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "dept_id": { "type": "integer", "description": "Department id ", "example": 1 }, "subject": { "type": "string", "description": "Ticket subject ", "example": "Subject" }, "body": { "type": "string", "description": "Ticket message ", "example": "Message ..." } }, "example": { "dept_id": 1, "subject": "Subject", "body": "Message ..." } } } ], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "ticket": 865650 } }, "schema": { "type": "object", "example": { "ticket": 865650 } } } } } }, "\/tickets\/{number}": { "get": { "tags": [ "Support" ], "summary": "Ticket details", "description": "Get ticket details, including all replies", "operationId": "getTicketDetails", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "number", "type": "integer", "in": "path", "description": "Ticket number", "required": true } ], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "ticket": { "date": "2016-12-30 12:48:13", "ticket_number": "736633", "name": "Joe Doe", "email": "api@example.com", "subject": "Lore Ipsum", "body": "Donec sollicitudin molestie malesuada. \r\nSed porttitor lectus nibh. Vivamus magna justo, \r\nlacinia eget consectetur sed, convallis at tellus.", "status": "Answered", "client_read": "1", "deptname": "Billing" }, "replies": [ { "id": "929", "name": "Suppport Staff", "date": "2016-12-30 12:51:04", "body": "Vestibulum ac diam sit amet quam \r\nvehicula elementum sed sit amet dui. \r\nPraesent sapien massa\r\n\r\n-- Maecenas efficitur elit est --", "status": "Sent", "type": "Admin" } ] } }, "schema": { "type": "object", "example": { "ticket": { "date": "2016-12-30 12:48:13", "ticket_number": "736633", "name": "Joe Doe", "email": "api@example.com", "subject": "Lore Ipsum", "body": "Donec sollicitudin molestie malesuada. \r\nSed porttitor lectus nibh. Vivamus magna justo, \r\nlacinia eget consectetur sed, convallis at tellus.", "status": "Answered", "client_read": "1", "deptname": "Billing" }, "replies": [ { "id": "929", "name": "Suppport Staff", "date": "2016-12-30 12:51:04", "body": "Vestibulum ac diam sit amet quam \r\nvehicula elementum sed sit amet dui. \r\nPraesent sapien massa\r\n\r\n-- Maecenas efficitur elit est --", "status": "Sent", "type": "Admin" } ] } } } } }, "post": { "tags": [ "Support" ], "summary": "Create Reply", "description": "Reply to ticket", "operationId": "createTicketReply", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "number": { "type": "integer", "description": "Ticket number", "example": "numberValue" }, "body": { "type": "string", "description": "Reply message ", "example": "reply text .." } }, "example": { "number": "numberValue", "body": "reply text .." } } }, { "name": "number", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "info": [ "reply_added" ] } }, "schema": { "type": "object", "example": { "info": [ "reply_added" ] } } } } } }, "\/ticket\/attachment\/{file}": { "get": { "tags": [ "Support" ], "summary": "Ticket attachment", "description": "Get ticket attachment", "operationId": "getTicketAttachment", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "number", "type": "integer", "in": "query", "description": "Ticket number" }, { "name": "file", "type": "string", "in": "path", "description": "Attachment id", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/tickets\/{number}\/open": { "put": { "tags": [ "Support" ], "summary": "Re-open ticket", "description": "Try to re-open closed ticket", "operationId": "reopenTicket", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "number": { "type": "integer", "description": "Ticket number", "example": "numberValue" } }, "example": { "number": "numberValue" } } }, { "name": "number", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "status": true } }, "schema": { "type": "object", "example": { "status": true } } } } } }, "\/tickets\/{number}\/close": { "put": { "tags": [ "Support" ], "summary": "Close ticket", "description": "Send request to close a ticket", "operationId": "closeTicket", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "number": { "type": "integer", "description": "Ticket number", "example": "numberValue" } }, "example": { "number": "numberValue" } } }, { "name": "number", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "status": true } }, "schema": { "type": "object", "example": { "status": true } } } } } }, "\/ticket\/departments": { "get": { "tags": [ "Support" ], "summary": "List ticket departments", "description": "Get the list of ticket departments", "operationId": "listTicketDepartments", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [], "responses": { "200": { "description": "`Success`" } } } }, "\/news": { "get": { "tags": [ "Support" ], "summary": "List News", "description": "List News", "operationId": "getNews", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [], "responses": { "200": { "description": "`Success`" } } } }, "\/news\/{news_id}": { "get": { "tags": [ "Support" ], "summary": "Get news item", "description": "Returns details of the news item", "operationId": "getNewsItem", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "news_id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/knowledgebase": { "get": { "tags": [ "Support" ], "summary": "List all knowledgebase categories", "description": "Returns list all knowledgebase categories", "operationId": "getKnowledgebaseCategories", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [], "responses": { "200": { "description": "`Success`" } } } }, "\/knowledgebase\/{category_id}": { "get": { "tags": [ "Support" ], "summary": "Get knowledgebase category details", "description": "Returns subcategories and articles of the knowledgebase category", "operationId": "getKnowledgebaseCategoryDetails", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "category_id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/knowledgebase\/article\/{article_id}": { "get": { "tags": [ "Support" ], "summary": "Get knowledgebase article", "description": "Returns an article details", "operationId": "getKnowledgebaseArticleDetails", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "article_id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/domain": { "get": { "tags": [ "Domains" ], "summary": "List Domains", "description": "List domains under your account", "operationId": "domain", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "domains": [ { "id": "47", "name": "testname.com", "expires": "2017-12-30", "recurring_amount": "15.00", "date_created": "2016-12-30", "status": "Active", "period": "1", "autorenew": "1", "daytoexpire": "365" } ] } }, "schema": { "type": "object", "example": { "domains": [ { "id": "47", "name": "testname.com", "expires": "2017-12-30", "recurring_amount": "15.00", "date_created": "2016-12-30", "status": "Active", "period": "1", "autorenew": "1", "daytoexpire": "365" } ] } } } } } }, "\/domain\/{id}": { "get": { "tags": [ "Domains" ], "summary": "Domain details", "description": "Get domain details", "operationId": "domainDetails", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "integer", "in": "path", "description": "Domain id", "required": true } ], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "details": { "id": "47", "name": "testname.com", "date_created": "2016-12-30", "firstpayment": "10.00", "recurring_amount": "15.00", "period": "1", "expires": "2017-12-30", "status": "Active", "next_due": "2017-12-30", "next_invoice": "2017-11-30", "idprotection": "0", "nameservers": [ "ns1.example.com", "ns2.example.com", "ns3.example.com", "ns4.example.com" ], "autorenew": "1" } } }, "schema": { "type": "object", "example": { "details": { "id": "47", "name": "testname.com", "date_created": "2016-12-30", "firstpayment": "10.00", "recurring_amount": "15.00", "period": "1", "expires": "2017-12-30", "status": "Active", "next_due": "2017-12-30", "next_invoice": "2017-11-30", "idprotection": "0", "nameservers": [ "ns1.example.com", "ns2.example.com", "ns3.example.com", "ns4.example.com" ], "autorenew": "1" } } } } } } }, "\/domain\/name\/{name}": { "get": { "tags": [ "Domains" ], "summary": "Domain details by name", "description": "Get domain details by name", "operationId": "domainNameDetails", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "name", "type": "string", "in": "path", "description": "Domain name", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/domain\/{id}\/ns": { "get": { "tags": [ "Domains" ], "summary": "Get domain nameservers", "description": "", "operationId": "domain_ns_get", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "integer", "in": "path", "description": "Domain id", "required": true } ], "responses": { "200": { "description": "`Success`" } } }, "put": { "tags": [ "Domains" ], "summary": "Update domain nameservers", "description": "Change domain nameservers, if `$nameservers` is left empty, default namesevers will be used", "operationId": "domain_ns", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "id": { "type": "integer", "description": "Domain id", "example": "idValue" }, "nameservers": { "type": "array", "description": "List of nameservers to use", "items": { "type": "string" }, "example": "nameserversValue" } }, "example": { "id": "idValue", "nameservers": "nameserversValue" } } }, { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "info": [ "success_changes_save" ] } }, "schema": { "type": "object", "example": { "info": [ "success_changes_save" ] } } } } } }, "\/domain\/{id}\/reg": { "post": { "tags": [ "Domains" ], "summary": "Register domain nameservers", "description": "", "operationId": "domain_ns_reg", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "id": { "type": "integer", "description": "Domain id", "example": "idValue" } }, "example": { "id": "idValue" } } }, { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/domain\/{id}\/dns": { "get": { "tags": [ "Domains" ], "summary": "DNS Records\nDNS Records", "description": "List DNS records", "operationId": "domain_dns", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "integer", "in": "path", "description": "Domain id", "required": true } ], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "records": [ { "id": 1, "name": "test", "ttl": 0, "priority": 0, "type": "A", "content": "100.100.10.1" } ] } }, "schema": { "type": "object", "example": { "records": [ { "id": 1, "name": "test", "ttl": 0, "priority": 0, "type": "A", "content": "100.100.10.1" } ] } } } } }, "post": { "tags": [ "Domains" ], "summary": "Create DNS Records", "description": "Add a new DNS record", "operationId": "domain_dns_add", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "id": { "type": "integer", "description": "Domain id", "example": "idValue" }, "name": { "type": "string", "description": "Reord name", "example": "nameValue" }, "type": { "type": "string", "description": "Reord type", "example": "typeValue" }, "priority": { "type": "string", "description": "Reord priority", "example": "priorityValue" }, "content": { "type": "string", "description": "Reord content eg. IP addres for A records", "example": "contentValue" } }, "example": { "id": "idValue", "name": "nameValue", "type": "typeValue", "priority": "priorityValue", "content": "contentValue" } } }, { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "info": [ "DNS Management updated successfully" ] } }, "schema": { "type": "object", "example": { "info": [ "DNS Management updated successfully" ] } } } } } }, "\/domain\/{id}\/dns\/{index}": { "put": { "tags": [ "Domains" ], "summary": "Update DNS Records", "description": "Change a DNS record", "operationId": "domain_dns_upd", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "id": { "type": "integer", "description": "Domain id", "example": "idValue" }, "record_id": { "type": "integer", "description": "Recod index", "example": "record_idValue" }, "name": { "type": "string", "description": "Record name", "example": "nameValue" }, "type": { "type": "string", "description": "Record type", "example": "typeValue" }, "priority": { "type": "string", "description": "Record priority", "example": "priorityValue" }, "content": { "type": "string", "description": "Record content eg. IP address for A records", "example": "contentValue" } }, "example": { "id": "idValue", "record_id": "record_idValue", "name": "nameValue", "type": "typeValue", "priority": "priorityValue", "content": "contentValue" } } }, { "name": "id", "type": "string", "in": "path", "required": true }, { "name": "index", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "info": [ "DNS Management updated successfully" ] } }, "schema": { "type": "object", "example": { "info": [ "DNS Management updated successfully" ] } } } } }, "delete": { "tags": [ "Domains" ], "summary": "Remove DNS Records", "description": "Remove a DNS record", "operationId": "domain_dns_del", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "integer", "in": "path", "description": "Domain id", "required": true }, { "name": "record_id", "type": "integer", "in": "query", "description": "Recod index" }, { "name": "index", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "info": [ "DNS Management updated successfully" ] } }, "schema": { "type": "object", "example": { "info": [ "DNS Management updated successfully" ] } } } } } }, "\/domain\/{id}\/dns\/types": { "get": { "tags": [ "Domains" ], "summary": "DNS Records Types", "description": "List supported records type", "operationId": "domain_dns_suported", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "integer", "in": "path", "description": "Domain id", "required": true } ], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "types": [ "A", "CNAME", "URL", "FRAME", "MX", "MXE", "TXT" ] } }, "schema": { "type": "object", "example": { "types": [ "A", "CNAME", "URL", "FRAME", "MX", "MXE", "TXT" ] } } } } } }, "\/domain\/{id}\/epp": { "get": { "tags": [ "Domains" ], "summary": "Get domain EPP Code", "description": "", "operationId": "domain_eppcode", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "integer", "in": "path", "description": "Domain id", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/domain\/{id}\/sync": { "get": { "tags": [ "Domains" ], "summary": "Synchronize domain", "description": "", "operationId": "domain_sync", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "integer", "in": "path", "description": "Domain id", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/domain\/{id}\/reglock": { "get": { "tags": [ "Domains" ], "summary": "Get domain lock", "description": "", "operationId": "domain_reglock", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "integer", "in": "path", "description": "Domain id", "required": true } ], "responses": { "200": { "description": "`Success`" } } }, "put": { "tags": [ "Domains" ], "summary": "Update domain lock", "description": "", "operationId": "domain_reglock_update", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "id": { "type": "integer", "description": "Domain id", "example": "idValue" }, "switch": { "type": "boolean", "description": "Enable or disable domain lock, use true to enable. ", "example": true } }, "example": { "id": "idValue", "switch": true } } }, { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/domain\/{id}\/idprotection": { "put": { "tags": [ "Domains" ], "summary": "Update domain ID Protection", "description": "", "operationId": "domain_idprotection_update", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "id": { "type": "integer", "description": "Domain id", "example": "idValue" }, "switch": { "type": "boolean", "description": "Enable or disable ID orotection, use true to enable. ", "example": true } }, "example": { "id": "idValue", "switch": true } } }, { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/domain\/{id}\/contact": { "get": { "tags": [ "Domains" ], "summary": "Get domain contact info", "description": "", "operationId": "domain_contact_get", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "integer", "in": "path", "description": "Domain id", "required": true } ], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "success": true, "domain_id": "428", "contact_info": { "registrant": { "firstname": "", "lastname": "", "companyname": "", "email": "", "phonenumber": "", "address1": "", "address2": "", "city": "", "state": "", "postcode": "", "country": "" }, "tech": { "firstname": "", "lastname": "", "companyname": "", "email": "", "phonenumber": "", "address1": "", "address2": "", "city": "", "state": "", "postcode": "", "country": "" }, "admin": { "firstname": "", "lastname": "", "companyname": "", "email": "", "phonenumber": "", "address1": "", "address2": "", "city": "", "state": "", "postcode": "", "country": "" }, "billing": { "firstname": "", "lastname": "", "companyname": "", "email": "", "phonenumber": "", "address1": "", "address2": "", "city": "", "state": "", "postcode": "", "country": "" } } } }, "schema": { "type": "object", "example": { "success": true, "domain_id": "428", "contact_info": { "registrant": { "firstname": "", "lastname": "", "companyname": "", "email": "", "phonenumber": "", "address1": "", "address2": "", "city": "", "state": "", "postcode": "", "country": "" }, "tech": { "firstname": "", "lastname": "", "companyname": "", "email": "", "phonenumber": "", "address1": "", "address2": "", "city": "", "state": "", "postcode": "", "country": "" }, "admin": { "firstname": "", "lastname": "", "companyname": "", "email": "", "phonenumber": "", "address1": "", "address2": "", "city": "", "state": "", "postcode": "", "country": "" }, "billing": { "firstname": "", "lastname": "", "companyname": "", "email": "", "phonenumber": "", "address1": "", "address2": "", "city": "", "state": "", "postcode": "", "country": "" } } } } } } }, "put": { "tags": [ "Domains" ], "summary": "Update domain contact info", "description": "", "operationId": "domain_contact_update", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "id": { "type": "integer", "description": "Domain id", "example": "idValue" }, "contact_info": { "type": "array", "items": { "type": "string" }, "example": "contact_infoValue" } }, "example": { "id": "idValue", "contact_info": "contact_infoValue" } } }, { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "success": true, "domain_id": "428", "info": [ "request_contacts_sent" ] } }, "schema": { "type": "object", "example": { "success": true, "domain_id": "428", "info": [ "request_contacts_sent" ] } } } } } }, "\/domain\/{id}\/emforwarding": { "get": { "tags": [ "Domains" ], "summary": "Get email forwarding", "description": "", "operationId": "domain_email_forwarding", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "integer", "in": "path", "description": "Domain id", "required": true } ], "responses": { "200": { "description": "`Success`" } } }, "put": { "tags": [ "Domains" ], "summary": "Update email forwarding", "description": "", "operationId": "domain_email_forwarding_update", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "id": { "type": "integer", "description": "Domain id", "example": "idValue" }, "from": { "type": "string", "description": "Email address that you want to forward ", "example": "info@domain.com" }, "to": { "type": "string", "description": "Email address that will receive forwarded emails ", "example": "destination@domain.com" } }, "example": { "id": "idValue", "from": "info@domain.com", "to": "destination@domain.com" } } }, { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/domain\/{id}\/forwarding": { "put": { "tags": [ "Domains" ], "summary": "Update domain forwarding", "description": "", "operationId": "domain_forwarding_update", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "id": { "type": "integer", "description": "Domain id", "example": "idValue" } }, "example": { "id": "idValue" } } }, { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/domain\/{id}\/autorenew": { "get": { "tags": [ "Domains" ], "summary": "Get domain autorenew", "description": "", "operationId": "domain_autorenew", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "integer", "in": "path", "description": "Domain id", "required": true } ], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "success": true, "autorenew": null } }, "schema": { "type": "object", "example": { "success": true, "autorenew": null } } } } }, "put": { "tags": [ "Domains" ], "summary": "Enable\/disable domain autorenew", "description": "", "operationId": "domain_autorenew_update", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "id": { "type": "integer", "description": "Domain id", "example": "idValue" }, "autorenew": { "type": "boolean", "example": "autorenewValue" } }, "example": { "id": "idValue", "autorenew": "autorenewValue" } } }, { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "success": true, "info": [ "success_changes_save" ] } }, "schema": { "type": "object", "example": { "success": true, "info": [ "success_changes_save" ] } } } } } }, "\/domain\/{id}\/dnssec\/flags": { "get": { "tags": [ "Domains" ], "summary": "Returns the available flags", "description": "", "operationId": "domain_dnssec_get_flags", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "integer", "in": "path", "description": "Domain id", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/domain\/{id}\/dnssec": { "get": { "tags": [ "Domains" ], "summary": "Returns the list of DNSSEC keys", "description": "", "operationId": "domain_dnssec_get", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "integer", "in": "path", "description": "Domain id", "required": true } ], "responses": { "200": { "description": "`Success`" } } }, "put": { "tags": [ "Domains" ], "summary": "Adds the DNSSEC key", "description": "", "operationId": "domain_dnssec_add", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "id": { "type": "integer", "description": "Domain id", "example": "idValue" } }, "example": { "id": "idValue" } } }, { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/domain\/{id}\/dnssec\/{key}": { "delete": { "tags": [ "Domains" ], "summary": "", "description": "", "operationId": "domain_dnssec_remove", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "integer", "in": "path", "description": "Domain id", "required": true }, { "name": "key", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/domain\/lookup": { "post": { "tags": [ "Domains" ], "summary": "Domain availability", "description": "Check if domain is available for registration. Returns status: \"ok\" if domain is available, empty response otherwise", "operationId": "domain_lookup", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "name": { "type": "string", "description": "Domain name ", "example": "example.com" } }, "example": { "name": "example.com" } } } ], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "available": false, "name": "example.com", "premium": false, "periods": [ { "id": "6", "period": "1", "register": "10.00", "transfer": "0.00", "renew": "15.00", "redemption": "40.00" }, { "id": "6", "period": "2", "register": "20.00", "transfer": "20.00", "renew": "20.00", "redemption": "80.00" } ] } }, "schema": { "type": "object", "example": { "available": false, "name": "example.com", "premium": false, "periods": [ { "id": "6", "period": "1", "register": "10.00", "transfer": "0.00", "renew": "15.00", "redemption": "40.00" }, { "id": "6", "period": "2", "register": "20.00", "transfer": "20.00", "renew": "20.00", "redemption": "80.00" } ] } } } } } }, "\/domain\/order": { "get": { "tags": [ "Domains" ], "summary": "Available TLDs", "description": "List TLDs available for registration and transfer", "operationId": "domain_tlds", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [], "responses": { "200": { "description": "`Success`" } } }, "post": { "tags": [ "Domains" ], "summary": "Order new domain", "description": "Create new order for a domain, please check if requested domain is available first,\notherwise your order may get cancelled.", "operationId": "domain_order", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "name": { "type": "string", "description": "Domain name ", "example": "example.com" }, "years": { "type": "string", "description": "Number of years", "example": "yearsValue" }, "action": { "type": "string", "description": "register|transfer ", "example": "register" }, "tld_id": { "type": "string", "description": "TLD id ", "example": 42 }, "pay_method": { "type": "integer", "description": "Payment method ID ", "example": 5 }, "epp": { "type": "string", "description": "EPP Transfer code, required when transfering some domains ", "example": "Syntax error" }, "nameservers": { "type": "array", "description": "Optional array with 2 - 4 nameservers that you want to use ", "items": { "type": "string" } }, "registrant": { "type": "integer", "description": "Optional contact ID to use for registrant contact this domain ", "example": 42 }, "admin": { "type": "integer", "description": "Optional contact ID to use for admin contact this domain ", "example": 43 }, "tech": { "type": "integer", "description": "Optional contact ID to use for tech contact this domain ", "example": 43 }, "billing": { "type": "integer", "description": "Optional contact ID to use for billing contact this domain ", "example": 42 }, "data": { "type": "array", "description": "Addditional data required for some TLDs ", "items": { "type": "string" } } }, "example": { "name": "example.com", "years": "yearsValue", "action": "register", "tld_id": 42, "pay_method": 5, "epp": "Syntax error", "nameservers": [ "ns1.example.com", { "host": "ns2.example.com", "ip": "123.234.123.234" } ], "registrant": 42, "admin": 43, "tech": 43, "billing": 42, "data": { "1618": { "10330": "bar" } } } } } ], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "order_num": 563647679, "invoice_id": "308977", "total": "10.00", "items": { "id": "10", "type": "Domain Register", "name": "test.com", "product_id": "3" } } }, "schema": { "type": "object", "example": { "order_num": 563647679, "invoice_id": "308977", "total": "10.00", "items": { "id": "10", "type": "Domain Register", "name": "test.com", "product_id": "3" } } } } } } }, "\/domain\/order\/{id}\/form": { "get": { "tags": [ "Domains" ], "summary": "Additinal data for TLD", "description": "Get additional forms required for some TLDs", "operationId": "domain_tld_froms", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "tld_id", "type": "integer", "in": "query", "description": "TLD ID" }, { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/domain\/{id}\/renew": { "post": { "tags": [ "Domains" ], "summary": "Renew domain", "description": "Create new renew order for a domain, please check if requested domain is available first, otherwise your order may get cancelled.", "operationId": "domain_renew", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "years": { "type": "string", "description": "Number of years", "example": "yearsValue" }, "pay_method": { "type": "integer", "description": "Payment method ID", "example": "pay_methodValue" } }, "example": { "years": "yearsValue", "pay_method": "pay_methodValue" } } }, { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/certificate": { "get": { "tags": [ "SSL Certificates" ], "summary": "List SSL Certificates", "description": "List all ssl services under your account", "operationId": "certificate", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "sslservices": [ { "id": "300", "domain": "examplename.com", "total": "27.85", "status": "Pending", "billingcycle": "Annually", "next_due": "2017-12-30", "category": "GoGetSSL", "category_url": "gogetssl", "name": "Comodo InstantSSL", "cert_email": "admin@example.com", "cert_status": "", "cert_expires": "2017-12-30 13:43:12" } ] } }, "schema": { "type": "object", "example": { "sslservices": [ { "id": "300", "domain": "examplename.com", "total": "27.85", "status": "Pending", "billingcycle": "Annually", "next_due": "2017-12-30", "category": "GoGetSSL", "category_url": "gogetssl", "name": "Comodo InstantSSL", "cert_email": "admin@example.com", "cert_status": "", "cert_expires": "2017-12-30 13:43:12" } ] } } } } } }, "\/certificate\/{id}": { "get": { "tags": [ "SSL Certificates" ], "summary": "Certificate details", "description": "Return details for certificate `@id`", "operationId": "certificate_details", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "integer", "in": "path", "description": "Service id", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/certificate\/{id}\/crt": { "get": { "tags": [ "SSL Certificates" ], "summary": "Download certificate", "description": "Return X.509 certificate data", "operationId": "certificate_crt", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "integer", "in": "path", "description": "Service id", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/certificate\/order": { "get": { "tags": [ "SSL Certificates" ], "summary": "List available certificates", "description": "Return a list with certificate available for purchase", "operationId": "certificate_products", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [], "responses": { "200": { "description": "`Success`" } } }, "post": { "tags": [ "SSL Certificates" ], "summary": "Order new certificates", "description": "Create new order for a certificate", "operationId": "certificate_order", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "product_id": { "type": "integer", "description": "Certificate product ID", "example": "product_idValue" }, "csr": { "type": "string", "description": "Domain name ", "example": "example.com" }, "years": { "type": "integer", "description": "Number of years", "example": "yearsValue" }, "pay_method": { "type": "integer", "description": "Payment method ID", "example": "pay_methodValue" }, "approver_email": { "type": "string", "description": "Email addres used in domain validation", "example": "approver_emailValue" }, "admin": { "type": "integer", "description": "Admin contact ID", "example": "adminValue" }, "tech": { "type": "integer", "description": "Tech contact ID", "example": "techValue" }, "billing": { "type": "integer", "description": "Billing contact ID", "example": "billingValue" }, "organization": { "type": "array", "description": "Organization details", "items": { "type": "string" }, "example": "organizationValue" }, "software": { "type": "integer", "description": "Server\/Software ID", "example": "softwareValue" }, "data": { "type": "array", "description": "Addditional data required for some products", "items": { "type": "string" }, "example": "dataValue" } }, "example": { "product_id": "product_idValue", "csr": "example.com", "years": "yearsValue", "pay_method": "pay_methodValue", "approver_email": "approver_emailValue", "admin": "adminValue", "tech": "techValue", "billing": "billingValue", "organization": "organizationValue", "software": "softwareValue", "data": "dataValue" } } } ], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "order_num": 873340994, "invoice_id": "308978", "total": "27.85", "items": { "id": "10", "type": "Hosting", "name": "test.com", "product_id": "3" } } }, "schema": { "type": "object", "example": { "order_num": 873340994, "invoice_id": "308978", "total": "27.85", "items": { "id": "10", "type": "Hosting", "name": "test.com", "product_id": "3" } } } } } } }, "\/certificate\/order\/{product_id}\/software": { "get": { "tags": [ "SSL Certificates" ], "summary": "List server software for certificates", "description": "Return a list with software IDs required or certificate", "operationId": "certificate_software", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "product_id", "type": "integer", "in": "path", "description": "Certificate product ID", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/service": { "get": { "tags": [ "Services" ], "summary": "List services", "description": "List all services under your account", "operationId": "service", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "services": [ { "id": "301", "domain": "examplename.com", "total": "9.99", "status": "Pending", "billingcycle": "Monthly", "next_due": "2017-12-30", "category": "Hosting", "category_url": "hosting", "name": "Starter Hosting" } ] } }, "schema": { "type": "object", "example": { "services": [ { "id": "301", "domain": "examplename.com", "total": "9.99", "status": "Pending", "billingcycle": "Monthly", "next_due": "2017-12-30", "category": "Hosting", "category_url": "hosting", "name": "Starter Hosting" } ] } } } } } }, "\/service\/{id}": { "get": { "tags": [ "Services" ], "summary": "Service details", "description": "Return details for service `@id`", "operationId": "serviceDetails", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "integer", "in": "path", "description": "Service id", "required": true } ], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "service": { "id": "301", "date_created": "2016-12-30", "domain": "examplename.com", "firstpayment": "9.99", "total": "9.99", "billingcycle": "Monthly", "next_due": "2017-12-30", "next_invoice": "2017-01-27", "status": "Active", "label": "", "username": "examplen", "password": "pdtzc", "name": "Starter Hosting" } } }, "schema": { "type": "object", "example": { "service": { "id": "301", "date_created": "2016-12-30", "domain": "examplename.com", "firstpayment": "9.99", "total": "9.99", "billingcycle": "Monthly", "next_due": "2017-12-30", "next_invoice": "2017-01-27", "status": "Active", "label": "", "username": "examplen", "password": "pdtzc", "name": "Starter Hosting" } } } } } } }, "\/service\/{id}\/methods": { "get": { "tags": [ "Services" ], "summary": "List service methods", "description": "List methods available for service", "operationId": "serviceMethods", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "methods": [ { "name": "Upgrade Request", "method": "POST", "route": "\/service\/@id\/upgrade" }, { "name": "Upgrade Options", "method": "GET", "route": "\/service\/@id\/upgrade" }, { "name": "Change service label", "method": "POST", "route": "\/service\/@id\/label" }, { "name": "Service label", "method": "GET", "route": "\/service\/@id\/label" }, { "name": "Cancel Service", "method": "POST", "route": "\/service\/@id\/cancel" } ] } }, "schema": { "type": "object", "example": { "methods": [ { "name": "Upgrade Request", "method": "POST", "route": "\/service\/@id\/upgrade" }, { "name": "Upgrade Options", "method": "GET", "route": "\/service\/@id\/upgrade" }, { "name": "Change service label", "method": "POST", "route": "\/service\/@id\/label" }, { "name": "Service label", "method": "GET", "route": "\/service\/@id\/label" }, { "name": "Cancel Service", "method": "POST", "route": "\/service\/@id\/cancel" } ] } } } } } }, "\/service\/{id}\/upgrade": { "get": { "tags": [ "Services" ], "summary": "Upgrade Options", "description": "List upgrade options", "operationId": "upgrade", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "resources": [ { "id": 1557, "name": "Bandwidth", "type": "select", "items": [ { "id": "9953", "name": "100 GB", "price": 1, "setup_price": 0, "selected": true }, { "id": "10103", "name": "500 GB", "price": 5, "setup_price": 0, "selected": false }, { "id": "10104", "name": "1 TB", "price": 10, "setup_price": 0, "selected": false } ] } ], "package": [] } }, "schema": { "type": "object", "example": { "resources": [ { "id": 1557, "name": "Bandwidth", "type": "select", "items": [ { "id": "9953", "name": "100 GB", "price": 1, "setup_price": 0, "selected": true }, { "id": "10103", "name": "500 GB", "price": 5, "setup_price": 0, "selected": false }, { "id": "10104", "name": "1 TB", "price": 10, "setup_price": 0, "selected": false } ] } ], "package": [] } } } } }, "post": { "tags": [ "Services" ], "summary": "Upgrade Request", "description": "Estimate or request upgrade\n\n```json\n\/\/ Format of ''resources'' paremeter\n{\n \"resource_id\" : \"qty_value\", \/\/ sliders & qty fields\n \"resource_id\" : \"item_id\", \/\/ dropdown & radio fields\n \"resource_id\" : {\n \"item_id\": \"qty_value\" \/\/ dropdown with qty field\n }\n}\n```", "operationId": "upgrade_test", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "id": { "type": "integer", "description": "Service id", "example": "idValue" }, "resources": { "type": "array", "description": "array with resource values", "items": { "type": "string" }, "example": "resourcesValue" }, "package": { "type": "integer", "description": "New package id, optonal when upgrading resources", "example": "packageValue" }, "cycle": { "type": "string", "description": "New billing cycle, optonal when upgrading resources", "example": "cycleValue" }, "send": { "type": "boolean", "description": "Set to true when you want to send your upgrade request", "example": "sendValue" } }, "example": { "id": "idValue", "resources": "resourcesValue", "package": "packageValue", "cycle": "cycleValue", "send": "sendValue" } } }, { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/service\/{id}\/cancel": { "post": { "tags": [ "Services" ], "summary": "Cancel Service", "description": "Request service cancellation", "operationId": "service_cancel", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "id": { "type": "integer", "description": "Service id", "example": "idValue" }, "immediate": { "type": "string", "description": "set to false<\/code> to terminate service at the end of billing date, true<\/code> - terminate immediately", "example": "immediateValue" }, "reason": { "type": "string", "description": "Reason for this request", "example": "reasonValue" } }, "example": { "id": "idValue", "immediate": "immediateValue", "reason": "reasonValue" } } }, { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "info": [ "cancell_sent" ] } }, "schema": { "type": "object", "example": { "info": [ "cancell_sent" ] } } } } } }, "\/service\/{id}\/label": { "get": { "tags": [ "Services" ], "summary": "Service label", "description": "Show current service label", "operationId": "service_get_label", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "integer", "in": "path", "description": "Service id", "required": true } ], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "label": "example" } }, "schema": { "type": "object", "example": { "label": "example" } } } } }, "post": { "tags": [ "Services" ], "summary": "Change service label", "description": "Set new custom label to identify this service", "operationId": "service_set_label", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "id": { "type": "integer", "description": "Service id", "example": "idValue" }, "label": { "type": "string", "description": "New label", "example": "labelValue" } }, "example": { "id": "idValue", "label": "labelValue" } } }, { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "success": true, "info": [ "label_updated" ] } }, "schema": { "type": "object", "example": { "success": true, "info": [ "label_updated" ] } } } } } }, "\/service\/{id}\/renew": { "post": { "tags": [ "Services" ], "summary": "Manual Service Renew", "description": "Generate an invoice to renew the service.", "operationId": "service_renew", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "id": { "type": "integer", "description": "Service id", "example": "idValue" } }, "example": { "id": "idValue" } } }, { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "status": true, "invoice_id": "504426", "info": [ "manualrenew_ok" ] } }, "schema": { "type": "object", "example": { "status": true, "invoice_id": "504426", "info": [ "manualrenew_ok" ] } } } } } }, "\/service\/{id}\/cycle": { "get": { "tags": [ "Services" ], "summary": "List Billing Cycle", "description": "Get recurring billing cycle options", "operationId": "service_cycle", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "integer", "in": "path", "description": "Service id", "required": true } ], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "current": "m", "cycles": { "m": "14.95", "a": "179.40", "b": "358.80" } } }, "schema": { "type": "object", "example": { "current": "m", "cycles": { "m": "14.95", "a": "179.40", "b": "358.80" } } } } } }, "post": { "tags": [ "Services" ], "summary": "Change Billing Cycle", "description": "Change recurring billing cycle for the service", "operationId": "service_cycle_set", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "id": { "type": "integer", "description": "Service id", "example": "idValue" }, "cycle": { "type": "string", "description": "New billing cycle", "example": "cycleValue" } }, "example": { "id": "idValue", "cycle": "cycleValue" } } }, { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "success": true, "info": [ "changebillingcycle_ok" ] } }, "schema": { "type": "object", "example": { "success": true, "info": [ "changebillingcycle_ok" ] } } } } } }, "\/service\/{id}\/vms": { "get": { "tags": [ "Services" ], "summary": "List VMs", "description": "List virtual servers", "operationId": "vms", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } }, "post": { "tags": [ "Services" ], "summary": "Create VM", "description": "Add new virtual server", "operationId": "vms_create", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "label": { "type": "string", "description": "VM label", "example": "labelValue" }, "template": { "type": "string", "description": "Template ID", "example": "templateValue" }, "memory": { "type": "string", "description": "Amount of RAM memory in MB", "example": "memoryValue" }, "cpu": { "type": "string", "description": "Amount of CPU cores", "example": "cpuValue" }, "disk": { "type": "string", "description": "Disk Space in GB", "example": "diskValue" }, "interface": { "type": "array", "description": "Interface configuration", "items": { "type": "string" }, "example": "interfaceValue" } }, "example": { "label": "labelValue", "template": "templateValue", "memory": "memoryValue", "cpu": "cpuValue", "disk": "diskValue", "interface": "interfaceValue" } } }, { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/service\/{id}\/vms\/{vmid}": { "get": { "tags": [ "Services" ], "summary": "Get VM Details", "description": "Get the details of a particular virtual server", "operationId": "vms_get", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "vmid", "type": "string", "in": "path", "description": "Virtual server id", "required": true }, { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } }, "delete": { "tags": [ "Services" ], "summary": "Destroy VM", "description": "Remove virtual server", "operationId": "vms_delete", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "vmid", "type": "string", "in": "path", "description": "Virtual server id", "required": true }, { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } }, "put": { "tags": [ "Services" ], "summary": "Resize VM", "description": "Edit a virtual server", "operationId": "vms_edit", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "vmid": { "type": "string", "description": "Virtual server id", "example": "vmidValue" }, "memory": { "type": "string", "description": "Amount of RAM in MB", "example": "memoryValue" }, "cpu": { "type": "string", "description": "Amount of CPU cores", "example": "cpuValue" } }, "example": { "vmid": "vmidValue", "memory": "memoryValue", "cpu": "cpuValue" } } }, { "name": "id", "type": "string", "in": "path", "required": true }, { "name": "vmid", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/service\/{id}\/vms\/{vmid}\/stop": { "post": { "tags": [ "Services" ], "summary": "Stop VM", "description": "Stop virtual server", "operationId": "vms_stop", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "vmid": { "type": "string", "description": "Virtual server id", "example": "vmidValue" } }, "example": { "vmid": "vmidValue" } } }, { "name": "id", "type": "string", "in": "path", "required": true }, { "name": "vmid", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/service\/{id}\/vms\/{vmid}\/start": { "post": { "tags": [ "Services" ], "summary": "Start VM", "description": "Start virtual server", "operationId": "vms_start", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "vmid": { "type": "string", "description": "Virtual server id", "example": "vmidValue" } }, "example": { "vmid": "vmidValue" } } }, { "name": "id", "type": "string", "in": "path", "required": true }, { "name": "vmid", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/service\/{id}\/vms\/{vmid}\/shutdown": { "post": { "tags": [ "Services" ], "summary": "Shutdown VM", "description": "Perform graceful shutdown", "operationId": "vms_shutdown", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "vmid": { "type": "string", "description": "Virtual server id", "example": "vmidValue" } }, "example": { "vmid": "vmidValue" } } }, { "name": "id", "type": "string", "in": "path", "required": true }, { "name": "vmid", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/service\/{id}\/vms\/{vmid}\/reboot": { "post": { "tags": [ "Services" ], "summary": "Reboot VM", "description": "Reboot virtual server", "operationId": "vms_reboot", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "vmid": { "type": "string", "description": "Virtual server id", "example": "vmidValue" } }, "example": { "vmid": "vmidValue" } } }, { "name": "id", "type": "string", "in": "path", "required": true }, { "name": "vmid", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/service\/{id}\/vms\/{vmid}\/reset": { "post": { "tags": [ "Services" ], "summary": "Reset VM", "description": "Reset virtual server power", "operationId": "vms_reset", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "vmid": { "type": "string", "description": "Virtual server id", "example": "vmidValue" } }, "example": { "vmid": "vmidValue" } } }, { "name": "id", "type": "string", "in": "path", "required": true }, { "name": "vmid", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/service\/{id}\/vms\/{vmid}\/hostname": { "post": { "tags": [ "Services" ], "summary": "Change VM Hostname", "description": "Update virtual machine hostname", "operationId": "vms_hostname", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "hostname": { "type": "string", "description": "New hostname for the VM", "example": "hostnameValue" } }, "example": { "hostname": "hostnameValue" } } }, { "name": "id", "type": "string", "in": "path", "required": true }, { "name": "vmid", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/service\/{id}\/vms\/{vmid}\/rebuild": { "post": { "tags": [ "Services" ], "summary": "Rebuild VM", "description": "Rebuild server, you can get list of templates supported by this server\nusing '''\/service\/$id\/templates'''", "operationId": "vms_rebuild", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "template": { "type": "string", "description": "Template ID", "example": "templateValue" } }, "example": { "template": "templateValue" } } }, { "name": "id", "type": "string", "in": "path", "required": true }, { "name": "vmid", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/service\/{id}\/vms\/{vmid}\/ips": { "get": { "tags": [ "Services" ], "summary": "List IPs", "description": "List virtual machine IPs", "operationId": "vm_interface_list_ip", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "type", "type": "string", "in": "query", "description": "ipv4 or ipv6" }, { "name": "iface", "type": "integer", "in": "query", "description": "Interface number [optional]" }, { "name": "bridge", "type": "string", "in": "query", "description": "Bridge name [optional, ignored if interface provided]" }, { "name": "id", "type": "string", "in": "path", "required": true }, { "name": "vmid", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/service\/{id}\/vms\/{vmid}\/ippool": { "get": { "tags": [ "Services" ], "summary": "List IP Pools", "description": "List IP pools for a specific interface or network bridge", "operationId": "vm_interface_list_iplist", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "iface", "type": "integer", "in": "query", "description": "Interface number [optional]" }, { "name": "bridge", "type": "string", "in": "query", "description": "Bridge name [optional, ignored if interface provided]" }, { "name": "id", "type": "string", "in": "path", "required": true }, { "name": "vmid", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/service\/{id}\/vms\/{vmid}\/ippool\/{pool}": { "post": { "tags": [ "Services" ], "summary": "Allocate IPs", "description": "Allocate new IP for network interface.", "operationId": "vm_interface_allocate_ip", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "pool": { "type": "string", "description": "List ID to allocate new IP from", "example": "poolValue" }, "type": { "type": "string", "description": "ipv4 or ipv6", "example": "typeValue" }, "iface": { "type": "integer", "description": "Interface number", "example": "ifaceValue" }, "bridge": { "type": "string", "description": "Bridge name [optional, ignored if interface provided]", "example": "bridgeValue" }, "number": { "type": "integer", "description": "Number of IPs to allocate", "example": "numberValue" } }, "example": { "pool": "poolValue", "type": "typeValue", "iface": "ifaceValue", "bridge": "bridgeValue", "number": "numberValue" } } }, { "name": "id", "type": "string", "in": "path", "required": true }, { "name": "vmid", "type": "string", "in": "path", "required": true }, { "name": "pool", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/service\/{id}\/networks": { "get": { "tags": [ "Services" ], "summary": "List available networks", "description": "List of networks and IP pools that can be used for VM creation", "operationId": "networks", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/service\/{id}\/vms\/{vmid}\/interfaces": { "get": { "tags": [ "Services" ], "summary": "List VM Network Interfaces", "description": "Get network interfaces assigned to virtual server", "operationId": "vm_interface_list", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "string", "in": "path", "required": true }, { "name": "vmid", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } }, "post": { "tags": [ "Services" ], "summary": "Add Network Interface", "description": "Add new network interface to VM", "operationId": "vm_interface_create", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "bridge": { "type": "string", "description": "Network bridge", "example": "bridgeValue" }, "firewall": { "type": "integer", "description": "Enable or disable firewall (may require specific permissions)", "example": "firewallValue" }, "ipv4": { "type": "array", "description": "List of IP v4 IDs", "items": { "type": "string" }, "example": "ipv4Value" }, "ipv6": { "type": "array", "description": "List of IP v6 IDs", "items": { "type": "string" }, "example": "ipv6Value" } }, "example": { "bridge": "bridgeValue", "firewall": "firewallValue", "ipv4": "ipv4Value", "ipv6": "ipv6Value" } } }, { "name": "id", "type": "string", "in": "path", "required": true }, { "name": "vmid", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/service\/{id}\/vms\/{vmid}\/interfaces\/{iface}": { "get": { "tags": [ "Services" ], "summary": "Get Network Interfaces", "description": "Get network Interface details", "operationId": "vm_interface_details", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "iface", "type": "string", "in": "path", "description": "Interface name or id, ie '0' or 'net0'", "required": true }, { "name": "id", "type": "string", "in": "path", "required": true }, { "name": "vmid", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } }, "put": { "tags": [ "Services" ], "summary": "Update Network Interface", "description": "Update network interface details", "operationId": "vm_interface_update", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "iface": { "type": "integer", "description": "Interface number", "example": "ifaceValue" }, "firewall": { "type": "integer", "description": "Enable or disable firewall (may require specific permissions)", "example": "firewallValue" }, "ipv4": { "type": "array", "description": "List of IP v4 IDs", "items": { "type": "string" }, "example": "ipv4Value" }, "ipv6": { "type": "array", "description": "List of IP v6 IDs", "items": { "type": "string" }, "example": "ipv6Value" } }, "example": { "iface": "ifaceValue", "firewall": "firewallValue", "ipv4": "ipv4Value", "ipv6": "ipv6Value" } } }, { "name": "id", "type": "string", "in": "path", "required": true }, { "name": "vmid", "type": "string", "in": "path", "required": true }, { "name": "iface", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } }, "delete": { "tags": [ "Services" ], "summary": "Remove Network Interface", "description": "Remove network interface from VM", "operationId": "vm_interface_remove", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "iface", "type": "string", "in": "path", "description": "Interface name or id to remove", "required": true }, { "name": "id", "type": "string", "in": "path", "required": true }, { "name": "vmid", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/service\/{id}\/templates": { "get": { "tags": [ "Services" ], "summary": "List OS templates", "description": "List templates that can be used to create virtual server", "operationId": "templates", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/service\/{id}\/resources": { "get": { "tags": [ "Services" ], "summary": "Resources", "description": "Show available and used resources", "operationId": "resources", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/service\/{id}\/bandwidth-graphs": { "get": { "tags": [ "Services" ], "summary": "Bandwidth Graph", "description": "Return base64 encoded images representing bandwidth usage for last day, week and month", "operationId": "graph", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "integer", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/service\/{id}\/bandwidth": { "get": { "tags": [ "Services" ], "summary": "Bandwidth Usage", "description": "Return bandwidth usage and billing details", "operationId": "details", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "integer", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/service\/{id}\/ip": { "get": { "tags": [ "Services" ], "summary": "IP Addresses", "description": "List Service IP Addresses", "operationId": "ip", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "integer", "in": "path", "description": "Service ID", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/service\/{id}\/rdns": { "get": { "tags": [ "Services" ], "summary": "Reverse DNS", "description": "Get reverse DNS entries for service's IP addresses", "operationId": "rdns", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "integer", "in": "path", "description": "Service ID", "required": true } ], "responses": { "200": { "description": "`Success`" } } }, "post": { "tags": [ "Services" ], "summary": "Update rDNS", "description": "Update reverse DNS entries service's IP addresses", "operationId": "uprdns", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "id": { "type": "integer", "description": "Service ID", "example": "idValue" }, "ipaddress": { "type": "array", "description": "Use Ip address as parameter key and hostname as value", "items": { "type": "string" }, "example": "ipaddressValue" } }, "example": { "id": "idValue", "ipaddress": "ipaddressValue" } } }, { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/service\/{id}\/pdu": { "get": { "tags": [ "Services" ], "summary": "PDU ports", "description": "List PDU ports assigned to service", "operationId": "outlets", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "integer", "in": "path", "description": "Service id", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/service\/{id}\/pdu\/{port}": { "get": { "tags": [ "Services" ], "summary": "PDU Port state", "description": "Get PDU port\/outlet state", "operationId": "status", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "integer", "in": "path", "description": "Service id", "required": true }, { "name": "port", "type": "integer", "in": "path", "description": "Port id", "required": true } ], "responses": { "200": { "description": "`Success`" } } }, "post": { "tags": [ "Services" ], "summary": "Set PDU port status", "description": "Set PDU port\/outlet state", "operationId": "setStatus", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "integer", "in": "path", "description": "Service id", "required": true }, { "name": "port", "type": "integer", "in": "path", "description": "Port id", "required": true }, { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "power": { "type": "boolean", "description": "Desired power state - 'true' for ON or 'false' for OFF" } } } } ], "responses": { "200": { "description": "`Success`" } } } }, "\/service\/{id}\/reinstall\/templates": { "get": { "tags": [ "Services" ], "summary": "List OS templates and recipes", "description": "Lists templates that can be installed on server.\nLists recipes that can be used for additional configuration, check\n`usablefor` key to find which templates are supported by recipe.", "operationId": "Services_templates", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/service\/{id}\/reinstall": { "get": { "tags": [ "Services" ], "summary": "Reinstall Status", "description": "Get reinstall operation status", "operationId": "reinstall", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } }, "post": { "tags": [ "Services" ], "summary": "Reinstall", "description": "Start reinstall operation on a server", "operationId": "reinstallPost", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "hostname": { "type": "string", "description": "New hostname for server", "example": "hostnameValue" }, "template": { "type": "string", "description": "Template ID", "example": "templateValue" }, "recipe": { "type": "string", "description": "Recipe ID [Optional]", "example": "recipeValue" }, "password": { "type": "string", "description": "New password for server [Optional, will be generated automatically if left empty]", "example": "passwordValue" } }, "example": { "hostname": "hostnameValue", "template": "templateValue", "recipe": "recipeValue", "password": "passwordValue" } } }, { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/service\/{id}\/diag\/cancel": { "post": { "tags": [ "Services" ], "summary": "Cancel Diagnostics", "description": "Cancel this operation", "operationId": "diagstop", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/service\/{id}\/diag\/templates": { "get": { "tags": [ "Services" ], "summary": "List Diagnostics templates", "description": "List templates that can be used fr diagnostics operation", "operationId": "diag", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/service\/{id}\/diag": { "get": { "tags": [ "Services" ], "summary": "Diagnostics Status", "description": "Show diagnostic operation status", "operationId": "diagstatus", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } }, "post": { "tags": [ "Services" ], "summary": "Run Diagnostics", "description": "Start new diagnostic operation", "operationId": "diagstart", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "template": { "type": "string", "description": "Diagnostic Template ID", "example": "templateValue" }, "clearhdd": { "type": "boolean", "description": "Clear disks", "example": "clearhddValue" }, "fullhddclear": { "type": "boolean", "description": "Full hard drive erase ($clearhdd also has to be set to True)", "example": "fullhddclearValue" } }, "example": { "template": "templateValue", "clearhdd": "clearhddValue", "fullhddclear": "fullhddclearValue" } } }, { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/service\/{id}\/rescue\/templates": { "get": { "tags": [ "Services" ], "summary": "List Rescue templates", "description": "List templates that can be used start rescue operation", "operationId": "recovery", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/service\/{id}\/rescue": { "get": { "tags": [ "Services" ], "summary": "Rescue Status", "description": "Show rescue operation status", "operationId": "recoverystatus", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } }, "post": { "tags": [ "Services" ], "summary": "Rescue", "description": "Start rescue operation on a server", "operationId": "recoverystart", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "template": { "type": "string", "description": "Rescue Template ID", "example": "templateValue" }, "password": { "type": "string", "description": "Password for rescue operation", "example": "passwordValue" } }, "example": { "template": "templateValue", "password": "passwordValue" } } }, { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/service\/{id}\/rescue\/cancel": { "post": { "tags": [ "Services" ], "summary": "Cancel Rescue", "description": "Cancel rescue operation", "operationId": "recoverystop", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/service\/{id}\/info": { "get": { "tags": [ "Services" ], "summary": "Server Info", "description": "Get server hardware and os details", "operationId": "serverinfo", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/service\/{id}\/hostname": { "post": { "tags": [ "Services" ], "summary": "Update Hostname", "description": "Update server hostname", "operationId": "hostname", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "hostname": { "type": "string", "description": "New Hostname", "example": "hostnameValue" } }, "example": { "hostname": "hostnameValue" } } }, { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/service\/{id}\/ips": { "get": { "tags": [ "Services" ], "summary": "List IPs", "description": "List server ips", "operationId": "ips", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } }, "post": { "tags": [ "Services" ], "summary": "Add IP", "description": "Add new ip to server", "operationId": "ipsadd", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "vlan": { "type": "string", "description": "VLAN ID", "example": "vlanValue" }, "domain": { "type": "string", "description": "IP Domain", "example": "domainValue" }, "num": { "type": "string", "description": "Number of IPs to add [Optional]", "example": "numValue" } }, "example": { "vlan": "vlanValue", "domain": "domainValue", "num": "numValue" } } }, { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/service\/{id}\/vlans": { "get": { "tags": [ "Services" ], "summary": "List VLANs", "description": "List available VLANs", "operationId": "vlans", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/service\/{id}\/ips\/{ip}": { "get": { "tags": [ "Services" ], "summary": "IP Details", "description": "Get details about IP", "operationId": "Services_ip", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "ip", "type": "string", "in": "path", "description": "IP Address ID", "required": true }, { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } }, "post": { "tags": [ "Services" ], "summary": "Edit IP", "description": "Update IP domain", "operationId": "ipsedit", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "ip": { "type": "string", "description": "IP Address ID", "example": "ipValue" }, "domain": { "type": "string", "description": "Domain name", "example": "domainValue" } }, "example": { "ip": "ipValue", "domain": "domainValue" } } }, { "name": "id", "type": "string", "in": "path", "required": true }, { "name": "ip", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } }, "delete": { "tags": [ "Services" ], "summary": "Delete IP", "description": "Remove IP from server", "operationId": "ipsdel", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "ip", "type": "string", "in": "path", "description": "IP Address ID", "required": true }, { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/service\/{id}\/reboot": { "post": { "tags": [ "Services" ], "summary": "Reboot", "description": "Request server reboot", "operationId": "reboot", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/service\/{id}\/poweroff": { "post": { "tags": [ "Services" ], "summary": "Power OFF", "description": "Power off server", "operationId": "poweroff", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/service\/{id}\/poweron": { "post": { "tags": [ "Services" ], "summary": "Power ON", "description": "Power on server", "operationId": "poweron", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/category": { "get": { "tags": [ "Cart" ], "summary": "List product categories", "description": "Return a list of product categories.", "operationId": "cart_categories", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "categories": [ { "id": "10", "name": "Hosting", "description": "", "slug": "hosting" }, { "id": "6", "name": "Domains", "description": "", "slug": "domains" }, { "id": "16", "name": "Dedicated", "description": "", "slug": "dedicated" } ] } }, "schema": { "type": "object", "example": { "categories": [ { "id": "10", "name": "Hosting", "description": "", "slug": "hosting" }, { "id": "6", "name": "Domains", "description": "", "slug": "domains" }, { "id": "16", "name": "Dedicated", "description": "", "slug": "dedicated" } ] } } } } } }, "\/category\/{category_id}\/product": { "get": { "tags": [ "Cart" ], "summary": "List products in category", "description": "Return a list of product available for purchase under requested category", "operationId": "cart_products", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "category_id", "type": "integer", "in": "path", "description": "Category ID", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/order\/{product_id}": { "get": { "tags": [ "Cart" ], "summary": "Get product configuration details", "description": "Return product details with form configuration, addons and subproducts if available.", "operationId": "cart_product", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "product_id", "type": "integer", "in": "path", "description": "Product ID", "required": true } ], "responses": { "200": { "description": "`Success`" } } }, "post": { "tags": [ "Cart" ], "summary": "Order new service", "description": "Create and submit new order for selected product.\n\nTo get available cycle and configuration options lookup product details\nusing `GET \/order\/@product_id`", "operationId": "cart_order", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "product_id": { "type": "integer", "description": "Product ID ", "example": 12 }, "domain": { "type": "string", "description": "Domain name, ie. example.com, may be optional", "example": "domainValue" }, "cycle": { "type": "string", "description": "Billing period symbol", "example": "cycleValue" }, "pay_method": { "type": "integer", "description": "Payment method ID", "example": "pay_methodValue" }, "custom": { "type": "array", "description": "Additional options data available for sop products", "items": { "type": "string" }, "example": "customValue" }, "promocode": { "type": "string", "description": "Promotion code", "example": "promocodeValue" } }, "example": { "product_id": 12, "domain": "domainValue", "cycle": "cycleValue", "pay_method": "pay_methodValue", "custom": "customValue", "promocode": "promocodeValue" } } }, { "name": "product_id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "order_num": 873340995, "invoice_id": "308979", "total": "9.99", "items": { "id": "10", "type": "Hosting", "name": "test.com", "product_id": "3" } } }, "schema": { "type": "object", "example": { "order_num": 873340995, "invoice_id": "308979", "total": "9.99", "items": { "id": "10", "type": "Hosting", "name": "test.com", "product_id": "3" } } } } } } }, "\/order": { "post": { "tags": [ "Cart" ], "summary": "Order multiple services", "description": "Create and submit new order for multiple services\n\nEach item in the `items` array needs to include order `type` and parameters used\nby one of the method listed below:\n
• `POST \/order\/$product_id` - use `product` for item type
• `POST \/domain\/order` - use `domain` for item type
• `POST \/certificate\/order` - use `certificate` for item type", "operationId": "cart_order_multi", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "pay_method": { "type": "integer", "description": "Payment method ID ", "example": 1 }, "ignore_errors": { "type": "boolean", "description": "Process order even if some of the items were rejected due to errors ", "example": "No error" }, "items": { "type": "array", "description": "list with order items", "items": { "type": "string" } } }, "example": { "pay_method": 1, "ignore_errors": "No error", "items": [ { "type": "product", "product_id": 1080, "domain": "hosting.com", "cycle": "a" }, { "type": "certificate", "product_id": 840, "csr": "-----BEGIN CERTIFICATE REQUEST----- (...)", "years": 1, "approver_email": "admin@hosting.com" }, { "type": "domain", "tld_id": 6, "name": "hosting.com", "action": "register", "years": 1, "nameservers": [], "registrar": 42, "data": [] }, { "type": "domain", "domain_id": 1002, "action": "renew", "years": 1 } ] } } } ], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "order_num_list": [ 179534732, 179534732, 179534732 ], "invoice_id": "503425", "total": "94.40", "items": [ { "type": "Hosting", "id": "1025", "name": "hosting.com", "product_id": "1080" }, { "type": "Hosting", "id": "1026", "name": "hosting.com", "product_id": "840" }, { "type": "Domain Register", "id": "354", "name": "hosting.com", "product_id": "6" } ] } }, "schema": { "type": "object", "example": { "order_num_list": [ 179534732, 179534732, 179534732 ], "invoice_id": "503425", "total": "94.40", "items": [ { "type": "Hosting", "id": "1025", "name": "hosting.com", "product_id": "1080" }, { "type": "Hosting", "id": "1026", "name": "hosting.com", "product_id": "840" }, { "type": "Domain Register", "id": "354", "name": "hosting.com", "product_id": "6" } ] } } } } } }, "\/quote": { "post": { "tags": [ "Cart" ], "summary": "Get order quote", "description": "Calculate order cost and recurring prices for selected items.\nUse the same parameters as for `POST \/order`", "operationId": "cart_order_quote", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "pay_method": { "type": "integer", "description": "Payment method ID", "example": "pay_methodValue" }, "output": { "type": "string", "description": "Type of output, default is short. Possible options\n
    \n
  • short<\/code> - Basic details about the item in cart<\/li>\n
  • config<\/code>- Basic details and form components<\/li>\n
  • full<\/code> - All details available in cart<\/li>\n<\/ul> ", "example": "short" }, "items": { "type": "array", "description": "list with order items", "items": { "type": "string" } } }, "example": { "pay_method": "pay_methodValue", "output": "short", "items": [ { "type": "product", "product_id": 1080, "domain": "hosting.com", "cycle": "a" }, { "type": "certificate", "product_id": 840, "csr": "-----BEGIN CERTIFICATE REQUEST----- (...)", "years": 1, "approver_email": "admin@hosting.com" }, { "type": "domain", "tld_id": 6, "name": "hosting.com", "action": "register", "years": 1, "nameservers": [], "registrar": 42, "data": [] }, { "type": "domain", "domain_id": 1002, "action": "renew", "years": 1 } ] } } } ], "responses": { "200": { "description": "`Success`" } } } }, "\/service\/{id}\/status": { "get": { "tags": [ "Cart" ], "summary": "Get server state", "description": "Return details about server power state", "operationId": "powerstate", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`" } } } }, "\/serverstock": { "get": { "tags": [ "Cart" ], "summary": "List Servers In-stock", "description": "Rebuild the network for a particular virtual server", "operationId": "stock", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [], "responses": { "200": { "description": "`Success`" } } } }, "\/dns": { "get": { "tags": [ "DNS" ], "summary": "List DNS", "description": "Returns a list of all DNS", "operationId": "dns_get", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "service_ids": [ "10", "20" ], "zones": [ { "domain_id": "60", "name": "qwerty.com", "service_id": "10" }, { "domain_id": "61", "name": "bgg12ooble.com", "service_id": "20" } ] } }, "schema": { "type": "object", "example": { "service_ids": [ "10", "20" ], "zones": [ { "domain_id": "60", "name": "qwerty.com", "service_id": "10" }, { "domain_id": "61", "name": "bgg12ooble.com", "service_id": "20" } ] } } } } } }, "\/service\/{service_id}\/dns": { "post": { "tags": [ "DNS" ], "summary": "Add DNS Zone", "description": "Creates a new DNS zone", "operationId": "dns_add_zone", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "service_id": { "type": "integer", "description": "Service ID", "example": "service_idValue" }, "name": { "type": "string", "description": "Zone name ", "example": "testzone.com" } }, "example": { "service_id": "service_idValue", "name": "testzone.com" } } }, { "name": "service_id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "info": [ "Domain zone testzone.com was created successfully." ] } }, "schema": { "type": "object", "example": { "info": [ "Domain zone testzone.com was created successfully." ] } } } } }, "get": { "tags": [ "DNS" ], "summary": "List DNS for service", "description": "Returns a list of DNS zones under the service", "operationId": "dns_list_zones", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "service_id", "type": "integer", "in": "path", "description": "Service ID", "required": true } ], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "error": [ "invalid method" ] } }, "schema": { "type": "object", "example": { "error": [ "invalid method" ] } } } } } }, "\/service\/{service_id}\/dns\/{zone_id}": { "get": { "tags": [ "DNS" ], "summary": "Get DNS details", "description": "Returns details of the DNS zone", "operationId": "dns_get_zone", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "service_id", "type": "integer", "in": "path", "description": "Service ID", "required": true }, { "name": "zone_id", "type": "integer", "in": "path", "description": "Zone ID", "required": true } ], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "service_id": 10, "name": "qwerty.com", "records": [ { "id": "10", "name": "qwerty", "ttl": 1800, "priority": 0, "content": "127.0.0.1", "type": "A" }, { "id": "11", "name": "qwerty", "ttl": 1800, "priority": 0, "content": "ns1.qwerty.com", "type": "NS" } ] } }, "schema": { "type": "object", "example": { "service_id": 10, "name": "qwerty.com", "records": [ { "id": "10", "name": "qwerty", "ttl": 1800, "priority": 0, "content": "127.0.0.1", "type": "A" }, { "id": "11", "name": "qwerty", "ttl": 1800, "priority": 0, "content": "ns1.qwerty.com", "type": "NS" } ] } } } } }, "delete": { "tags": [ "DNS" ], "summary": "Remove DNS zone", "description": "Deletes the selected DNS zone", "operationId": "dns_delete_zone", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "service_id", "type": "integer", "in": "path", "description": "Service ID", "required": true }, { "name": "zone_id", "type": "integer", "in": "path", "description": "Zone ID", "required": true } ], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "info": [ "Domain zone testzone.com was deleted successfully." ] } }, "schema": { "type": "object", "example": { "info": [ "Domain zone testzone.com was deleted successfully." ] } } } } } }, "\/service\/{service_id}\/dns\/{zone_id}\/records": { "post": { "tags": [ "DNS" ], "summary": "Add DNS Record", "description": "Creates a new record in the DNS zone", "operationId": "dns_add_record", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "service_id": { "type": "integer", "description": "Service ID", "example": "service_idValue" }, "zone_id": { "type": "integer", "description": "Zone ID", "example": "zone_idValue" }, "name": { "type": "string", "description": "Record name ", "example": "example.com" }, "ttl": { "type": "integer", "description": "Record ttl ", "example": 3600 }, "priority": { "type": "integer", "description": "Priority of the record ", "example": 10 }, "type": { "type": "string", "description": "Record type ", "example": "A" }, "content": { "type": "string", "description": "Contents of the record ", "example": "192.168.1.2" } }, "example": { "service_id": "service_idValue", "zone_id": "zone_idValue", "name": "example.com", "ttl": 3600, "priority": 10, "type": "A", "content": "192.168.1.2" } } }, { "name": "service_id", "type": "string", "in": "path", "required": true }, { "name": "zone_id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "record": { "name": "_sip._tcp.example.com", "type": "SRV", "ttl": "3600", "priority": "10", "content": [ 10, 5060, "vc01.example.com" ] }, "info": [ "dnsnewrecordadded", "SRV" ] } }, "schema": { "type": "object", "example": { "record": { "name": "_sip._tcp.example.com", "type": "SRV", "ttl": "3600", "priority": "10", "content": [ 10, 5060, "vc01.example.com" ] }, "info": [ "dnsnewrecordadded", "SRV" ] } } } } } }, "\/service\/{service_id}\/dns\/{zone_id}\/records\/{record_id}": { "put": { "tags": [ "DNS" ], "summary": "Edit DNS Record", "description": "Edits the selected DNS zone record", "operationId": "dns_edit_record", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "body", "in": "body", "schema": { "type": "object", "properties": { "service_id": { "type": "integer", "description": "Service ID", "example": "service_idValue" }, "zone_id": { "type": "integer", "description": "Zone ID", "example": "zone_idValue" }, "record_id": { "type": "integer", "description": "Record ID", "example": "record_idValue" }, "name": { "type": "string", "description": "Record name ", "example": "example.com" }, "ttl": { "type": "integer", "description": "Record ttl ", "example": 3600 }, "priority": { "type": "integer", "description": "Priority of the record ", "example": 10 }, "type": { "type": "string", "description": "Record type ", "example": "A" }, "content": { "type": "string", "description": "Contents of the record ", "example": "192.168.1.2" } }, "example": { "service_id": "service_idValue", "zone_id": "zone_idValue", "record_id": "record_idValue", "name": "example.com", "ttl": 3600, "priority": 10, "type": "A", "content": "192.168.1.2" } } }, { "name": "service_id", "type": "string", "in": "path", "required": true }, { "name": "zone_id", "type": "string", "in": "path", "required": true }, { "name": "record_id", "type": "string", "in": "path", "required": true } ], "responses": { "200": { "description": "`Success`", "examples": { "application\/json": { "record": { "id": "55", "type": "A", "ttl": "3600", "name": "test", "priority": 0, "content": "192.168.1.2" }, "info": [ "The record was updated successfully." ] } }, "schema": { "type": "object", "example": { "record": { "id": "55", "type": "A", "ttl": "3600", "name": "test", "priority": 0, "content": "192.168.1.2" }, "info": [ "The record was updated successfully." ] } } } } }, "delete": { "tags": [ "DNS" ], "summary": "Remove DNS Record", "description": "Removes the selected DNS zone record", "operationId": "dns_delete_record", "consumes": [ "application\/json" ], "produces": [ "application\/json" ], "parameters": [ { "name": "service_id", "type": "integer", "in": "path", "description": "Service ID", "required": true }, { "name": "zone_id", "type": "integer", "in": "path", "description": "Zone ID", "required": true }, { "name": "record_id", "type": "integer", "in": "path", "description": "Record ID", "required": true } ], "responses": { "200": { "description": "`Success`" } } } } }, "securityDefinitions": { "basicAuth": { "type": "basic" }, "bearerAuth": { "type": "apiKey", "name": "Authorization", "in": "header", "description": "Enter: Bearer {token}" } }, "security": [ { "basicAuth": [] }, { "bearerAuth": [] } ], "definitions": { "Clientarea": { "type": "object", "properties": { "username": { "type": "string", "description": "Your acount email address " }, "password": { "type": "string", "description": "Optional, allows you to login as contact" }, "refresh_token": { "type": "string" }, "type": { "type": "string", "description": "Account Type" }, "companyname": { "type": "string", "description": "Organization" }, "coc": { "type": "string", "description": "CoC" }, "vateu": { "type": "string", "description": "VAT EU - If you have valid VAT-EU registered number please provide it here" }, "firstname": { "type": "string", "description": "First Name" }, "lastname": { "type": "string", "description": "Last Name" }, "email": { "type": "string", "description": "Email Address" }, "address1": { "type": "string", "description": "Address 1" }, "address2": { "type": "string", "description": "Address 2" }, "city": { "type": "string", "description": "City" }, "state": { "type": "string", "description": "State" }, "postcode": { "type": "string", "description": "Post code" }, "country": { "type": "string", "description": "Country" }, "phonenumber": { "type": "string", "description": "Phone" }, "ripetech": { "type": "string", "description": "RipeTech" }, "ripeadmin": { "type": "string", "description": "RipeAdmin" }, "ripeperson": { "type": "string", "description": "RipePerson" }, "riperole": { "type": "string", "description": "RipeRole" }, "ticketsubmitters": { "type": "string", "description": "Allowed ticket domain submitters" }, "privileges": { "type": "array", "items": { "type": "string" }, "description": "Array with privileges that you want to enable. Formatted the same way as output from GET \/contact\/privileges<\/code>" }, "id": { "type": "integer" }, "rel_type": { "type": "string", "description": "Optional, return only by relation type" }, "rel_id": { "type": "string", "description": "Optional, return only by relation id" }, "status": { "type": "string" } } }, "Billing": { "type": "object", "properties": { "amount": { "type": "number", "description": "Optional credit amount, when no value is specified maximum amount to fully pay the invoice will be used" } } }, "Support": { "type": "object", "properties": { "number": { "type": "integer", "description": "Ticket number" }, "file": { "type": "string", "description": "Attachment id" }, "dept_id": { "type": "integer", "description": "Department id " }, "subject": { "type": "string", "description": "Ticket subject " }, "body": { "type": "string", "description": "Reply message " } } }, "Domains": { "type": "object", "properties": { "id": { "type": "integer", "description": "Domain id" }, "name": { "type": "string", "description": "Domain name " }, "nameservers": { "type": "array", "items": { "type": "string" }, "description": "Optional array with 2 - 4 nameservers that you want to use " }, "type": { "type": "string", "description": "Record type" }, "priority": { "type": "string", "description": "Record priority" }, "content": { "type": "string", "description": "Record content eg. IP address for A records" }, "record_id": { "type": "integer", "description": "Recod index" }, "switch": { "type": "boolean", "description": "Enable or disable ID orotection, use true to enable. " }, "contact_info": { "type": "array", "items": { "type": "string" } }, "from": { "type": "string", "description": "Email address that you want to forward " }, "to": { "type": "string", "description": "Email address that will receive forwarded emails " }, "autorenew": { "type": "boolean" }, "tld_id": { "type": "string", "description": "TLD id " }, "years": { "type": "string", "description": "Number of years" }, "action": { "type": "string", "description": "register|transfer " }, "pay_method": { "type": "integer", "description": "Payment method ID" }, "epp": { "type": "string", "description": "EPP Transfer code, required when transfering some domains " }, "registrant": { "type": "integer", "description": "Optional contact ID to use for registrant contact this domain " }, "admin": { "type": "integer", "description": "Optional contact ID to use for admin contact this domain " }, "tech": { "type": "integer", "description": "Optional contact ID to use for tech contact this domain " }, "billing": { "type": "integer", "description": "Optional contact ID to use for billing contact this domain " }, "data": { "type": "array", "items": { "type": "string" }, "description": "Addditional data required for some TLDs " } } }, "SSL Certificates": { "type": "object", "properties": { "id": { "type": "integer", "description": "Service id" }, "product_id": { "type": "integer", "description": "Certificate product ID" }, "csr": { "type": "string", "description": "Domain name " }, "years": { "type": "integer", "description": "Number of years" }, "pay_method": { "type": "integer", "description": "Payment method ID" }, "approver_email": { "type": "string", "description": "Email addres used in domain validation" }, "admin": { "type": "integer", "description": "Admin contact ID" }, "tech": { "type": "integer", "description": "Tech contact ID" }, "billing": { "type": "integer", "description": "Billing contact ID" }, "organization": { "type": "array", "items": { "type": "string" }, "description": "Organization details" }, "software": { "type": "integer", "description": "Server\/Software ID" }, "data": { "type": "array", "items": { "type": "string" }, "description": "Addditional data required for some products" } } }, "Services": { "type": "object", "properties": { "id": { "type": "integer", "description": "Service id" }, "resources": { "type": "array", "items": { "type": "string" }, "description": "array with resource values" }, "package": { "type": "integer", "description": "New package id, optonal when upgrading resources" }, "cycle": { "type": "string", "description": "New billing cycle" }, "send": { "type": "boolean", "description": "Set to true when you want to send your upgrade request" }, "immediate": { "type": "string", "description": "set to false<\/code> to terminate service at the end of billing date, true<\/code> - terminate immediately" }, "reason": { "type": "string", "description": "Reason for this request" }, "label": { "type": "string", "description": "VM label" }, "vmid": { "type": "string", "description": "Virtual server id" }, "template": { "type": "string", "description": "Rescue Template ID" }, "memory": { "type": "string", "description": "Amount of RAM in MB" }, "cpu": { "type": "string", "description": "Amount of CPU cores" }, "disk": { "type": "string", "description": "Disk Space in GB" }, "interface": { "type": "array", "items": { "type": "string" }, "description": "Interface configuration" }, "hostname": { "type": "string", "description": "New Hostname" }, "type": { "type": "string", "description": "ipv4 or ipv6" }, "iface": { "type": "string", "description": "Interface name or id to remove" }, "bridge": { "type": "string", "description": "Network bridge" }, "pool": { "type": "string", "description": "List ID to allocate new IP from" }, "number": { "type": "integer", "description": "Number of IPs to allocate" }, "firewall": { "type": "integer", "description": "Enable or disable firewall (may require specific permissions)" }, "ipv4": { "type": "array", "items": { "type": "string" }, "description": "List of IP v4 IDs" }, "ipv6": { "type": "array", "items": { "type": "string" }, "description": "List of IP v6 IDs" }, "ipaddress": { "type": "array", "items": { "type": "string" }, "description": "Use Ip address as parameter key and hostname as value" }, "port": { "type": "integer", "description": "Port id" }, "power": { "type": "boolean", "description": "Desired power state - 'true' for ON or 'false' for OFF" }, "recipe": { "type": "string", "description": "Recipe ID [Optional]" }, "password": { "type": "string", "description": "Password for rescue operation" }, "clearhdd": { "type": "boolean", "description": "Clear disks" }, "fullhddclear": { "type": "boolean", "description": "Full hard drive erase ($clearhdd also has to be set to True)" }, "vlan": { "type": "string", "description": "VLAN ID" }, "domain": { "type": "string", "description": "Domain name" }, "num": { "type": "string", "description": "Number of IPs to add [Optional]" }, "ip": { "type": "string", "description": "IP Address ID" } } }, "Cart": { "type": "object", "properties": { "category_id": { "type": "integer", "description": "Category ID" }, "product_id": { "type": "integer", "description": "Product ID " }, "domain": { "type": "string", "description": "Domain name, ie. example.com, may be optional" }, "cycle": { "type": "string", "description": "Billing period symbol" }, "pay_method": { "type": "integer", "description": "Payment method ID" }, "custom": { "type": "array", "items": { "type": "string" }, "description": "Additional options data available for sop products" }, "promocode": { "type": "string", "description": "Promotion code" }, "ignore_errors": { "type": "boolean", "description": "Process order even if some of the items were rejected due to errors " }, "items": { "type": "array", "items": { "type": "string" }, "description": "list with order items" }, "output": { "type": "string", "description": "Type of output, default is short. Possible options\n
      \n
    • short<\/code> - Basic details about the item in cart<\/li>\n
    • config<\/code>- Basic details and form components<\/li>\n
    • full<\/code> - All details available in cart<\/li>\n<\/ul> " } } }, "DNS": { "type": "object", "properties": { "service_id": { "type": "integer", "description": "Service ID" }, "name": { "type": "string", "description": "Record name " }, "zone_id": { "type": "integer", "description": "Zone ID" }, "ttl": { "type": "integer", "description": "Record ttl " }, "priority": { "type": "integer", "description": "Priority of the record " }, "type": { "type": "string", "description": "Record type " }, "content": { "type": "string", "description": "Contents of the record " }, "record_id": { "type": "integer", "description": "Record ID" } } } }, "externalDocs": { "description": "Find out more about UserAPI", "url": "https:\/\/cp.clyvovoip.com\/?cmd=userapi" } }