Import third-party SSL certificate for an install
package main
import ( "fmt" "strings" "net/http" "io")
func main() {
url := "https://api.wpengineapi.com/v1/installs/example/ssl_certificates/third_party"
payload := strings.NewReader("{ \"certificate\": \"aGVsbG8K\", \"private_key\": \"d29ybGQK\" }")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Basic <credentials>") req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close() body, _ := io.ReadAll(res.Body)
fmt.Println(res) fmt.Println(string(body))
}const url = 'https://api.wpengineapi.com/v1/installs/example/ssl_certificates/third_party';const options = { method: 'POST', headers: {Authorization: 'Basic <credentials>', 'Content-Type': 'application/json'}, body: '{"certificate":"aGVsbG8K","private_key":"d29ybGQK"}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://api.wpengineapi.com/v1/installs/example/ssl_certificates/third_party \ --header 'Authorization: Basic <credentials>' \ --header 'Content-Type: application/json' \ --data '{ "certificate": "aGVsbG8K", "private_key": "d29ybGQK" }'Imports a third-party PEM formatted SSL certificate and key for an install
Authorizations
Section titled “Authorizations ”Parameters
Section titled “ Parameters ”Path Parameters
Section titled “Path Parameters ”ID of install
Request Body
Section titled “Request Body ”Properties
- certificate - required - Base64 encoded PEM certificate
- private_key - required - Base64 encoded PEM private key
object
Base64 encoded PEM certificate chain including the end-entity certificate and all intermediate CA certificates
The corresponding base64 encoded PEM private key
Example
{ "certificate": "aGVsbG8K", "private_key": "d29ybGQK"}Responses
Section titled “ Responses ”Successful import of third party certificate
object
Base64 encoded PEM certificate
Base64 encoded PEM private key
Example
{ "certificate": "aGVsbG8gd29ybGQK", "private_key": "aGVsbG8gd29ybGQK"}Bad Request
object
A message regarding the error that occurred on the server
(Optional) A URL where documentation regarding this specific error can be found
An array of error objects describing specific errors that arose when servicing the request
object
The name of the resource that was being processed when the error occurred
(Optional) The specific field associated with the error
(Optional) A type associated with the error. invalid_value, access_error, value_unavailable
(Optional) A machine code relating to the error that occurred with the field and resource
(Optional) A human-readable message relating to the error that occurred with the field and resource
Example
{ "message": "Invalid Site: Name cannot be empty.", "errors": [ { "resource": "Site", "field": "name", "type": "invalid_value", "code": "too_long", "message": "Name is too long (maximum is 40 characters)" } ]}Authentication Error
object
A message regarding the error that occurred on the server
(Optional) A URL where documentation regarding this specific error can be found
Example
{ "message": "Bad Credentials"}Not authorized
object
A message regarding the error that occurred on the server
(Optional) A URL where documentation regarding this specific error can be found
Example
{ "message": "You don't have permission to perform that action"}Not found
object
A message regarding the error that occurred on the server
(Optional) A URL where documentation regarding this specific error can be found
Example
{ "message": "Not Found"}Too many requests
Internal server error
object
A message regarding the error that occurred on the server
Example
{ "message": "An unexpected error occurred, please try again in a few minutes"}Service unavailable