Skip to content

PHP client for the Openprovider REST API

Notifications You must be signed in to change notification settings

Savvii/openprovider-rest

Repository files navigation

PHP client for Openprovider REST API

Inspired by Openprovider's version which is unfortunately outdated at the moment of writing.

The code in this package is generated by the OpenAPI Generator project

Installation & Usage

Requirements

PHP 7.4 and later

Composer

Run composer require savvii/openprovider-rest

Getting Started

Example for PHP 8.0 or newer because it really helps to be able to use Named Arguments.

<?php
require_once(__DIR__ . '/vendor/autoload.php');

$config = \Savvii\OpenproviderRest\Configuration::getDefaultConfiguration();
$config->setApiKeyPrefix('Authorization', 'Bearer');
$config->setDebug(false);

$loginResult = (new \Savvii\OpenproviderRest\Api\AuthApi())->login(
    new \Savvii\OpenproviderRest\Model\AuthLoginRequest([
        'username' => '__FILL_ME__',
        'password' => '__FILL_ME__'
    ])
);

$config->setApiKey('Authorization', $loginResult->getData()->getToken());

$domainApi = new \Savvii\OpenproviderRest\Api\DomainServiceApi(config: $config);
$listResponse = $domainApi->listDomains(full_name: 'savvii.nl', limit: 1);
$data = $listResponse->getData();
if (1 == $data->getTotal())
{
    $result = $data->getResults()[0];
    printf("ID: %d, Auth Code: %s\n\n", $result->getId(), $result->getAuthCode());
    $arrayResult = json_decode($result, true);
    var_dump($arrayResult);
}

API Endpoints

All URIs are relative to https://api.openprovider.eu

Class Method HTTP request Description
AdditionalDataApi getAdditionalData GET /v1beta/domains/additional-data Get additional data
ApproverEmailApi listApproverEmails GET /v1beta/ssl/approver-emails List approver emails
AuthApi login POST /v1beta/auth/login Login with username and password
AuthCodeApi getAuthCode GET /v1beta/domains/{id}/authcode Get auth code
AuthCodeApi resetAuthCode POST /v1beta/domains/{id}/authcode/reset Reset auth code
ContactServiceApi createContact POST /v1beta/contacts Create contact
ContactServiceApi deleteContact DELETE /v1beta/contacts/{id} Delete contact
ContactServiceApi getContact GET /v1beta/contacts/{id} Get contact
ContactServiceApi listContacts GET /v1beta/contacts List contacts
ContactServiceApi updateContact PUT /v1beta/contacts/{id} Update contact
CsrApi createCsr POST /v1beta/ssl/csr Create csr
CsrApi decodeCsr POST /v1beta/ssl/csr/decode Decode csr
CustomerApi createCustomer POST /v1beta/customers Create customer
CustomerApi deleteCustomer DELETE /v1beta/customers/{handle} Delete customer
CustomerApi getCustomer GET /v1beta/customers/{handle} Get customer
CustomerApi listCustomers GET /v1beta/customers List customers
CustomerApi updateCustomer PUT /v1beta/customers/{handle} Update customer
CustomerAdditionalDataApi getData GET /v1beta/domains/additional-data/customers Get data
DomainPriceServiceApi getPrice GET /v1beta/domains/prices Get price
DomainServiceApi approveTransfer POST /v1beta/domains/{id}/transfer/approve Approve transfer
DomainServiceApi checkDomain POST /v1beta/domains/check Check domain
DomainServiceApi createDomain POST /v1beta/domains Create domain
DomainServiceApi deleteDomain DELETE /v1beta/domains/{id} Delete domain
DomainServiceApi getDomain GET /v1beta/domains/{id} Get domain
DomainServiceApi listDomains GET /v1beta/domains List domains
DomainServiceApi renewDomain POST /v1beta/domains/{id}/renew Renew domain
DomainServiceApi restoreDomain POST /v1beta/domains/{id}/restore Restore domain
DomainServiceApi sendFoa1 POST /v1beta/domains/{id}/transfer/send-foa1 Send foa1
DomainServiceApi suggestNameDomain POST /v1beta/domains/suggest-name Suggest name domain
DomainServiceApi tradeDomain POST /v1beta/domains/trade Trade domain
DomainServiceApi transferDomain POST /v1beta/domains/transfer Transfer domain
DomainServiceApi tryAgainLastOperation POST /v1beta/domains/{id}/last-operation/restart Try again last operation
DomainServiceApi updateDomain PUT /v1beta/domains/{id} Update domain
DomainTokenApi createToken POST /v1beta/dns/domain-token Create token
EasydmarcOrderApi createEasyDmarc POST /v1beta/easydmarcs Create easy dmarc
EasydmarcOrderApi deleteEasyDmarc DELETE /v1beta/easydmarcs/{id} Delete easy dmarc
EasydmarcOrderApi getEasyDmarc GET /v1beta/easydmarcs Get easy dmarc
EasydmarcOrderApi getEasyDmarcSso GET /v1beta/easydmarcs/{id}/sso Get easy dmarc sso
EasydmarcOrderApi listEasyDmarc GET /v1beta/easydmarcs/list List easy dmarc
EasydmarcOrderApi retryEasyDmarc POST /v1beta/easydmarcs/{id}/retry Retry easy dmarc
EmailApi createEmail POST /v1beta/emails Create email
EmailApi deleteEmail DELETE /v1beta/emails/{id} Delete email
EmailApi listEmails GET /v1beta/emails List emails
EmailApi updateEmail PUT /v1beta/emails/{id} Update email
EmailVerificationApi listDomainEmailVerifications GET /v1beta/customers/verifications/emails/domains List domain email verifications
EmailVerificationApi restartEmailVerification POST /v1beta/customers/verifications/emails/restart Restart email verification
EmailVerificationApi startEmailVerification POST /v1beta/customers/verifications/emails/start Start email verification
InvoiceServiceApi listInvoices GET /v1beta/invoices List invoices
LicenseServiceApi createPleskLicense POST /v1beta/licenses/plesk Create plesk license
LicenseServiceApi createVirtuozzoLicense POST /v1beta/licenses/virtuozzo Create virtuozzo license
LicenseServiceApi deletePleskLicense DELETE /v1beta/licenses/plesk/{key_id} Delete plesk license
LicenseServiceApi deleteVirtuozzoLicense DELETE /v1beta/licenses/virtuozzo/{key_id} Delete virtuozzo license
LicenseServiceApi getPleskKey GET /v1beta/licenses/plesk/key/{key_id} Get plesk key
LicenseServiceApi getPleskLicense GET /v1beta/licenses/plesk/{key_id} Get plesk license
LicenseServiceApi getVirtuozzoKey GET /v1beta/licenses/virtuozzo/{key_id}/key Get virtuozzo key
LicenseServiceApi getVirtuozzoLicense GET /v1beta/licenses/virtuozzo/{key_id} Get virtuozzo license
LicenseServiceApi listItems GET /v1beta/licenses/items List items
LicenseServiceApi listLicensesWithPriceVersion GET /v1beta/licenses List licenses with price version
LicenseServiceApi listPleskLicenses GET /v1beta/licenses/plesk List plesk licenses
LicenseServiceApi listVirtuozzoLicenses GET /v1beta/licenses/virtuozzo List virtuozzo licenses
LicenseServiceApi resetHwid POST /v1beta/licenses/hwids/reset/{product}/{key_id} Reset hwid
LicenseServiceApi updatePleskLicense PUT /v1beta/licenses/plesk/{key_id} Update plesk license
LicenseServiceApi updateVirtuozzoLicense PUT /v1beta/licenses/virtuozzo/{key_id} Update virtuozzo license
NameserverServiceApi createNameserver POST /v1beta/dns/nameservers Create nameserver
NameserverServiceApi deleteNameserver DELETE /v1beta/dns/nameservers/{name} Delete nameserver
NameserverServiceApi getNameserver GET /v1beta/dns/nameservers/{name} Get nameserver
NameserverServiceApi listNameservers GET /v1beta/dns/nameservers List nameservers
NameserverServiceApi updateNameserver PUT /v1beta/dns/nameservers/{name} Update nameserver
NsGroupServiceApi createGroup POST /v1beta/dns/nameservers/groups Create group
NsGroupServiceApi deleteGroup DELETE /v1beta/dns/nameservers/groups/{ns_group} Delete group
NsGroupServiceApi getGroup GET /v1beta/dns/nameservers/groups/{ns_group} Get group
NsGroupServiceApi listGroups GET /v1beta/dns/nameservers/groups List groups
NsGroupServiceApi updateGroup PUT /v1beta/dns/nameservers/groups/{ns_group} Update group
OrderApi cancelOrder POST /v1beta/ssl/orders/{id}/cancel Cancel order
OrderApi createOrder POST /v1beta/ssl/orders Create order
OrderApi getOrder GET /v1beta/ssl/orders/{id} Get order
OrderApi listOrders GET /v1beta/ssl/orders List orders
OrderApi reissueOrder POST /v1beta/ssl/orders/{id}/reissue Reissue order
OrderApi renewOrder POST /v1beta/ssl/orders/{id}/renew Renew order
OrderApi updateOrder PUT /v1beta/ssl/orders/{id} Update order
OrderApproverEmailApi resendApproverEmail POST /v1beta/ssl/orders/{id}/approver-email/resend Resend approver email
OrderApproverEmailApi updateApproverEmailAddress PUT /v1beta/ssl/orders/{id}/approver-email Update approver email address
OtpTokenApi createOtpToken POST /v1beta/ssl/orders/{id}/otp-tokens Create otp token
PaymentApi listPayments GET /v1beta/payments List payments
ProductApi getProduct GET /v1beta/ssl/products/{id} Get product
ProductApi listProducts GET /v1beta/ssl/products List products
ResellerServiceApi getReseller GET /v1beta/resellers Get reseller
ResellerServiceApi updateReseller PUT /v1beta/resellers/{id} Update reseller
SEDomainApi createDomainMixin8 POST /v1beta/spam-expert/domains Create domain
SEDomainApi deleteDomainMixin8 DELETE /v1beta/spam-expert/domains/{domain_name} Delete domain
SEDomainApi getDomainMixin8 GET /v1beta/spam-expert/domains/{domain_name} Get domain
SEDomainApi updateDomainMixin8 PUT /v1beta/spam-expert/domains/{domain_name} Update domain
SettingsApi getSettings GET /v1beta/resellers/settings Get settings
SpamExpertApi generateLoginURL POST /v1beta/spam-expert/generate-login-url Generate login url
StatisticsApi getStatistics GET /v1beta/resellers/statistics Get statistics
TagServiceApi createTag POST /v1beta/tags Create tag
TagServiceApi deleteTag DELETE /v1beta/tags Delete tag
TagServiceApi listTags GET /v1beta/tags List tags
TemplateServiceApi createTemplate POST /v1beta/dns/templates Create template
TemplateServiceApi deleteTemplate DELETE /v1beta/dns/templates/{id} Delete template
TemplateServiceApi getTemplate GET /v1beta/dns/templates/{id} Get template
TemplateServiceApi listTemplates GET /v1beta/dns/templates List templates
TldServiceApi getTld GET /v1beta/tlds/{name} Get tld
TldServiceApi listTlds GET /v1beta/tlds List tlds
TransactionApi listTransactions GET /v1beta/transactions List transactions
ZoneRecordServiceApi listZoneRecords GET /v1beta/dns/zones/{name}/records List zone records
ZoneServiceApi createZone POST /v1beta/dns/zones Create zone
ZoneServiceApi deleteZone DELETE /v1beta/dns/zones/{name} Delete zone
ZoneServiceApi getZone GET /v1beta/dns/zones/{name} Get zone
ZoneServiceApi listZones GET /v1beta/dns/zones List zones
ZoneServiceApi updateZone PUT /v1beta/dns/zones/{name} Update zone

Models

Tests

To run the tests, use:

composer install
vendor/bin/phpunit

About this package

This PHP package is automatically generated by the OpenAPI Generator project:

  • API version: 1.0.0-beta
    • Package version: 1.0.0
  • Build package: org.openapitools.codegen.languages.PhpClientCodegen

About

PHP client for the Openprovider REST API

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages