SDK provides Certificates Manager that allows you to create, list, clone, install, activate, delete certificates and obtain new Let's Encrypt certificate for your Forge sites.
Documentation assumes that you've already retrieved site instance from SitesManager
class.
All operations are performed via Laravel\Forge\Certificates\CertificatesManager
instance.
All methods return either instance of Laravel\Forge\Certificates\Certificate
or array of Laravel\Forge\Certificates\Certificate
instances.
<?php
use Laravel\Forge\Certificates\CertificatesManager;
$certificates = new CertificatesManager();
$certificate = $certificates->create('example.org')
->ownedBy('My Company Name')
->locatedAt('US', 'NY', 'New York')
->assignedTo('Department Name')
->on($site);
<?php
use Laravel\Forge\Certificates\CertificatesManager;
$certificates = new CertificatesManager();
$certificate = $certificates->install('private-key', 'certificate-content')
->on($site);
<?php
use Laravel\Forge\Certificates\CertificatesManager;
$certificates = new CertificatesManager();
$certificateId = 1234;
$certificate = $certificates->clone($certificateId)->on($site);
<?php
use Laravel\Forge\Certificates\CertificatesManager;
$certificates = new CertificatesManager();
$domains = ['example.org', 'www.example.org'];
$certificate = $certificates->obtain($domains)->on($site);
<?php
use Laravel\Forge\Certificates\CertificatesManager;
$certificates = new CertificatesManager();
$siteCertificates = $certificates->list()->from($site);
<?php
use Laravel\Forge\Certificates\CertificatesManager;
$certificates = new CertificatesManager();
$certificateId = 1234;
$certificate = $certificates->get($certificateId)->from($site);
This method returns the full certificate signing request content.
<?php
use Laravel\Forge\Certificates\CertificatesManager;
$certificates = new CertificatesManager();
$certificate = $certificates->get(1234)->from($site);
$csr = $certificate->csr();
<?php
use Laravel\Forge\Certificates\CertificatesManager;
$certificates = new CertificatesManager();
$certificate = $certificates->get(1234)->from($site);
$certificateContent = 'content-here';
$addIntermediates = false;
$result = $certificate->install($certificateContent, $addIntermediates);
<?php
use Laravel\Forge\Certificates\CertificatesManager;
$certificates = new CertificatesManager();
$certificate = $certificates->get(1234)->from($site);
$result = $certificate->activate();
<?php
use Laravel\Forge\Certificates\CertificatesManager;
$certificates = new CertificatesManager();
$certificate = $certificates->get(1234)->from($site);
$result = $certificate->delete();