class NgrokAPI::Services::SSHCertificateAuthoritiesClient
An SSH Certificate Authority is a pair of an SSH Certificate and its private
key that can be used to sign other SSH host and user certificates.
Constants
- LIST_PROPERTY
The List Property from the resulting API for list calls
- PATH
The API path for the requests
Attributes
Public Class Methods
# File lib/ngrokapi/services/ssh_certificate_authorities_client.rb, line 18 def initialize(client:) @client = client end
Public Instance Methods
Create a new SSH Certificate Authority
@param [string] description human-readable description of this SSH Certificate Authority. optional, max 255 bytes. @param [string] metadata arbitrary user-defined machine-readable data of this SSH Certificate Authority. optional, max 4096 bytes. @param [string] private_key_type the type of private key to generate. one of “rsa“, “ecdsa“, “ed25519“ @param [string] elliptic_curve the type of elliptic curve to use when creating an ECDSA key @param [int64] key_size the key size to use when creating an RSA key. one of “2048“ or “4096“ @return [NgrokAPI::Models::SSHCertificateAuthority] result from the API request
ngrok.com/docs/api#api-ssh-certificate-authorities-create
# File lib/ngrokapi/services/ssh_certificate_authorities_client.rb, line 33 def create(description: "", metadata: "", private_key_type: "", elliptic_curve: "", key_size: 0) path = '/ssh_certificate_authorities' replacements = { } data = {} data[:description] = description if description data[:metadata] = metadata if metadata data[:private_key_type] = private_key_type if private_key_type data[:elliptic_curve] = elliptic_curve if elliptic_curve data[:key_size] = key_size if key_size result = @client.post(path % replacements, data: data) NgrokAPI::Models::SSHCertificateAuthority.new(client: self, attrs: result) end
Create a new SSH Certificate Authority Throws an exception if API error.
@param [string] description human-readable description of this SSH Certificate Authority. optional, max 255 bytes. @param [string] metadata arbitrary user-defined machine-readable data of this SSH Certificate Authority. optional, max 4096 bytes. @param [string] private_key_type the type of private key to generate. one of “rsa“, “ecdsa“, “ed25519“ @param [string] elliptic_curve the type of elliptic curve to use when creating an ECDSA key @param [int64] key_size the key size to use when creating an RSA key. one of “2048“ or “4096“ @return [NgrokAPI::Models::SSHCertificateAuthority] result from the API request
ngrok.com/docs/api#api-ssh-certificate-authorities-create
# File lib/ngrokapi/services/ssh_certificate_authorities_client.rb, line 59 def create!(description: "", metadata: "", private_key_type: "", elliptic_curve: "", key_size: 0) path = '/ssh_certificate_authorities' replacements = { } data = {} data[:description] = description if description data[:metadata] = metadata if metadata data[:private_key_type] = private_key_type if private_key_type data[:elliptic_curve] = elliptic_curve if elliptic_curve data[:key_size] = key_size if key_size result = @client.post(path % replacements, data: data, danger: true) NgrokAPI::Models::SSHCertificateAuthority.new(client: self, attrs: result) end
Delete an SSH Certificate Authority
@param [string] id a resource identifier @return [NgrokAPI::Models::Empty] result from the API request
ngrok.com/docs/api#api-ssh-certificate-authorities-delete
# File lib/ngrokapi/services/ssh_certificate_authorities_client.rb, line 80 def delete(id: "") path = '/ssh_certificate_authorities/%{id}' replacements = { id: id, } @client.delete(path % replacements) end
Delete an SSH Certificate Authority Throws an exception if API error.
@param [string] id a resource identifier @return [NgrokAPI::Models::Empty] result from the API request
ngrok.com/docs/api#api-ssh-certificate-authorities-delete
# File lib/ngrokapi/services/ssh_certificate_authorities_client.rb, line 96 def delete!(id: "") path = '/ssh_certificate_authorities/%{id}' replacements = { id: id, } @client.delete(path % replacements, danger: true) end
Get detailed information about an SSH Certficate Authority
@param [string] id a resource identifier @return [NgrokAPI::Models::SSHCertificateAuthority] result from the API request
ngrok.com/docs/api#api-ssh-certificate-authorities-get
# File lib/ngrokapi/services/ssh_certificate_authorities_client.rb, line 111 def get(id: "") path = '/ssh_certificate_authorities/%{id}' replacements = { id: id, } data = {} result = @client.get(path % replacements, data: data) NgrokAPI::Models::SSHCertificateAuthority.new(client: self, attrs: result) end
Get detailed information about an SSH Certficate Authority Throws an exception if API error.
@param [string] id a resource identifier @return [NgrokAPI::Models::SSHCertificateAuthority] result from the API request
ngrok.com/docs/api#api-ssh-certificate-authorities-get
# File lib/ngrokapi/services/ssh_certificate_authorities_client.rb, line 129 def get!(id: "") path = '/ssh_certificate_authorities/%{id}' replacements = { id: id, } data = {} result = @client.get(path % replacements, data: data, danger: true) NgrokAPI::Models::SSHCertificateAuthority.new(client: self, attrs: result) end
List all SSH Certificate Authorities on this account
@param [string] before_id @param [string] limit @param [string] url optional and mutually exclusive from before_id and limit @return [NgrokAPI::Models::Listable] result from the API request
ngrok.com/docs/api#api-ssh-certificate-authorities-list
# File lib/ngrokapi/services/ssh_certificate_authorities_client.rb, line 148 def list(before_id: nil, limit: nil, url: nil) result = @client.list( before_id: before_id, limit: limit, url: url, path: PATH ) NgrokAPI::Models::Listable.new( client: self, attrs: result, list_property: LIST_PROPERTY, klass: NgrokAPI::Models::SSHCertificateAuthority ) end
List all SSH Certificate Authorities on this account Throws an exception if API error.
@param [string] before_id @param [string] limit @param [string] url optional and mutually exclusive from before_id and limit @return [NgrokAPI::Models::Listable] result from the API request
ngrok.com/docs/api#api-ssh-certificate-authorities-list
# File lib/ngrokapi/services/ssh_certificate_authorities_client.rb, line 174 def list!(before_id: nil, limit: nil, url: nil) result = @client.list( before_id: before_id, limit: limit, danger: true, url: url, path: PATH ) NgrokAPI::Models::Listable.new( client: self, attrs: result, list_property: LIST_PROPERTY, klass: NgrokAPI::Models::SSHCertificateAuthority, danger: true ) end
Update an SSH Certificate Authority
@param [string] id @param [string] description human-readable description of this SSH Certificate Authority. optional, max 255 bytes. @param [string] metadata arbitrary user-defined machine-readable data of this SSH Certificate Authority. optional, max 4096 bytes. @return [NgrokAPI::Models::SSHCertificateAuthority] result from the API request
ngrok.com/docs/api#api-ssh-certificate-authorities-update
# File lib/ngrokapi/services/ssh_certificate_authorities_client.rb, line 201 def update(id: "", description: nil, metadata: nil) path = '/ssh_certificate_authorities/%{id}' replacements = { id: id, } data = {} data[:description] = description if description data[:metadata] = metadata if metadata result = @client.patch(path % replacements, data: data) NgrokAPI::Models::SSHCertificateAuthority.new(client: self, attrs: result) end
Update an SSH Certificate Authority Throws an exception if API error.
@param [string] id @param [string] description human-readable description of this SSH Certificate Authority. optional, max 255 bytes. @param [string] metadata arbitrary user-defined machine-readable data of this SSH Certificate Authority. optional, max 4096 bytes. @return [NgrokAPI::Models::SSHCertificateAuthority] result from the API request
ngrok.com/docs/api#api-ssh-certificate-authorities-update
# File lib/ngrokapi/services/ssh_certificate_authorities_client.rb, line 223 def update!(id: "", description: nil, metadata: nil) path = '/ssh_certificate_authorities/%{id}' replacements = { id: id, } data = {} data[:description] = description if description data[:metadata] = metadata if metadata result = @client.patch(path % replacements, data: data, danger: true) NgrokAPI::Models::SSHCertificateAuthority.new(client: self, attrs: result) end