Vcenter NamespaceManagement Supervisors Certificates SigningRequests create

Vcenter NamespaceManagement Supervisors Certificates SigningRequests create

Create creates a Certificate Signing Request. Certificate issued using this request can be used to update the corresponding certificate in the Supervisor.

This operation was added in vSphere API 9.1.0.0.

Returns an authorization error if you do not have all of the privileges described as follows:

  • The resource com.vmware.vcenter.namespace_management.supervisor.Supervisor referenced by the parameter supervisor requires Namespaces.Manage.
Request
URI
POST
https://{host}/api/vcenter/namespace-management/supervisors/{supervisor}/certificates/signing-requests
COPY
Path Parameters
string
supervisor
Required  

Identifier of the Supervisor.

The parameter must be an identifier for the resource type: com.vmware.vcenter.namespace_management.supervisor.Supervisor.


Request Body

Specification for the new Certificate Signing Request to be created.

Show optional properties

{
    "csr_type": "string",
    "common_name": "string",
    "country": "string",
    "state_or_province": "string",
    "locality": "string",
    "organization_name": "string",
    "organization_unit_name": "string"
}
{
    "csr_type": "string",
    "key_size": 0,
    "common_name": "string",
    "country": "string",
    "state_or_province": "string",
    "locality": "string",
    "organization_name": "string",
    "organization_unit_name": "string",
    "email_address": "string",
    "subject_alternative_names": {
        "dns_names": [
            "string"
        ],
        "ip_addresses": [
            "string"
        ]
    }
}
string
csr_type
Required  

Certificate Signing Request kind.

For more information see: Vcenter NamespaceManagement Supervisors Certificates SigningRequests CSRType.

This property was added in vSphere API 9.1.0.0.

integer As int64 As int64
key_size
Optional

Size of key associated with the new Certificate Signing Request.

This property was added in vSphere API 9.1.0.0.

If missing or null, the generated key will be 3072 bits long.

string
common_name
Required  

Name identifying the machine. Its value will be set in Certificate Signing Request Subject's CN field.

This property was added in vSphere API 9.1.0.0.

string
country
Required  

Two-letter country code (as defined in ISO-3166) to be set in Certificate Signing Request Subject's C field.

This property was added in vSphere API 9.1.0.0.

string
state_or_province
Required  

State or province to be set in Certificate Signing Request Subject's ST field.

This property was added in vSphere API 9.1.0.0.

string
locality
Required  

Locality (city) to be set in Certificate Signing Request Subject's L field.

This property was added in vSphere API 9.1.0.0.

string
organization_name
Required  

Organization to be set in Certificate Signing Request Subject's O field.

This property was added in vSphere API 9.1.0.0.

string
organization_unit_name
Required  

Organizational Unit to be set in Certificate Signing Request Subject's OU field.

This property was added in vSphere API 9.1.0.0.

string
email_address
Optional

Email to be set in Certificate Signing Request Subject Alternative Names.

This property was added in vSphere API 9.1.0.0.

If missing or null, no email address will be set in the Certificate Signing Request.

subject_alternative_names
Optional

Subject Alternative Names (SAN) to be set in the Certificate Signing Request.

This property was added in vSphere API 9.1.1.0.

If missing or null, the behavior depends on the Vcenter NamespaceManagement Supervisors Certificates SigningRequests CreateSpec.csr_type:

  • For Vcenter NamespaceManagement Supervisors Certificates SigningRequests CSRType.KUBERNETES_API_SERVER: Both the IP address and the DNS names will be automatically populated using active Supervisor configurations. The DNS names are retrieved from Vcenter NamespaceManagement Supervisors Workloads KubeApiServerSettings Info.certificate_dns_names, and the IP addresses are retrieved from the Virtual IP (VIP) addresses configured under Vcenter NamespaceManagement Networks Edges Edge.load_balancer_address_ranges.
  • For Vcenter NamespaceManagement Supervisors Certificates SigningRequests CSRType.DEFAULT_NSX_INGRESS: No default Subject Alternative Names will be set.

If this structure is provided, the behavior is governed by the following rules:

  • For Vcenter NamespaceManagement Supervisors Certificates SigningRequests CSRType.KUBERNETES_API_SERVER:

    • If only Vcenter NamespaceManagement Supervisors Certificates SigningRequests SubjectAlternativeNames.dns_names are provided, the IP address will not be automatically populated.
    • If only Vcenter NamespaceManagement Supervisors Certificates SigningRequests SubjectAlternativeNames.ip_addresses are provided, the configured default DNS names will still be automatically populated.
    • If both fields are provided, the provided DNS names will be combined with the default configured DNS names, and only the provided IP addresses will be set.
  • For Vcenter NamespaceManagement Supervisors Certificates SigningRequests CSRType.DEFAULT_NSX_INGRESS: No automatic population of default values takes place; only the provided DNS names and/or IP addresses will be added to the Certificate Signing Request.

Authentication
This operation uses the following authentication methods.
Responses
200

Certificate Signing Request in PEM format.

{
    "csr": "string"
}
string
csr
Required  

Resulting Certificate Signing Request in PEM format.

This property was added in vSphere API 9.1.0.0.


400

if spec contain any errors.

Returns Vapi Std Errors InvalidArgument of type(s) application/json
This response body class contains all of the following: Vapi Std Errors Error
{
    "messages": [
        {
            "id": "string",
            "default_message": "string",
            "args": [
                "string"
            ],
            "params": {
                "params": {
                    "s": "string",
                    "dt": "string",
                    "i": 0,
                    "d": "number",
                    "l": {
                        "id": "string",
                        "params": {
                            "params": "Vapi Std LocalizationParam Object"
                        }
                    },
                    "format": "string",
                    "precision": 0
                }
            },
            "localized": "string"
        }
    ],
    "data": {},
    "error_type": "string"
}

401

if the user can not be authenticated.

Returns Vapi Std Errors Unauthenticated of type(s) application/json
This response body class contains all of the following: Vapi Std Errors Error
{
    "messages": [
        {
            "id": "string",
            "default_message": "string",
            "args": [
                "string"
            ],
            "params": {
                "params": {
                    "s": "string",
                    "dt": "string",
                    "i": 0,
                    "d": "number",
                    "l": "Vapi Std NestedLocalizableMessage Object",
                    "format": "string",
                    "precision": 0
                }
            },
            "localized": "string"
        }
    ],
    "data": {},
    "error_type": "string",
    "challenge": "string"
}
string
challenge
Optional

Indicates the authentication challenges applicable to the target API provider. It can be used by a client to discover the correct authentication scheme to use. The exact syntax of the value is defined by the specific provider, the protocol and authentication schemes used.

For example, a provider using REST may adhere to the WWW-Authenticate HTTP header specification, RFC7235, section 4.1. In this case an example challenge value may be: SIGN realm="27da1358-2ba4-11e9-b210-d663bd873d93",sts="http://vcenter/sso?vsphere.local", Basic realm="vCenter"

This property was added in vSphere API 7.0.0.0.

This property is optional because it was added in a newer version than its parent node.


403

if the user does not have Namespaces.Manage privilege.

Returns Vapi Std Errors Unauthorized of type(s) application/json
This response body class contains all of the following: Vapi Std Errors Error
{
    "messages": [
        {
            "id": "string",
            "default_message": "string",
            "args": [
                "string"
            ],
            "params": {
                "params": {
                    "s": "string",
                    "dt": "string",
                    "i": 0,
                    "d": "number",
                    "l": "Vapi Std NestedLocalizableMessage Object",
                    "format": "string",
                    "precision": 0
                }
            },
            "localized": "string"
        }
    ],
    "data": {},
    "error_type": "string",
    "challenge": "string"
}
string
challenge
Optional

Indicates the authentication challenges applicable to the target API provider. It can be used by a client to discover the correct authentication scheme to use. The exact syntax of the value is defined by the specific provider, the protocol and authentication schemes used.

For example, a provider using REST may adhere to the WWW-Authenticate HTTP header specification, RFC7235, section 4.1. In this case an example challenge value may be: SIGN realm="27da158-2ba4-11e9-b",sts="http://vcenter/sso?vsphere.local", Basic realm="vCenter"

This property was added in vSphere API 9.1.0.0.

This property is optional because it was added in a newer version than its parent node.


404

if Supervisor could not be located.

Returns Vapi Std Errors NotFound of type(s) application/json
This response body class contains all of the following: Vapi Std Errors Error
{
    "messages": [
        {
            "id": "string",
            "default_message": "string",
            "args": [
                "string"
            ],
            "params": {
                "params": {
                    "s": "string",
                    "dt": "string",
                    "i": 0,
                    "d": "number",
                    "l": "Vapi Std NestedLocalizableMessage Object",
                    "format": "string",
                    "precision": 0
                }
            },
            "localized": "string"
        }
    ],
    "data": {},
    "error_type": "string"
}

500

if the system reports an error while responding to the request.

Returns Vapi Std Errors Error of type(s) application/json
{
    "messages": [
        {
            "id": "string",
            "default_message": "string",
            "args": [
                "string"
            ],
            "params": {
                "params": {
                    "s": "string",
                    "dt": "string",
                    "i": 0,
                    "d": "number",
                    "l": "Vapi Std NestedLocalizableMessage Object",
                    "format": "string",
                    "precision": 0
                }
            },
            "localized": "string"
        }
    ],
    "data": {},
    "error_type": "string"
}
array of object
messages
Required  

Stack of one or more localizable messages for human error consumers.

The message at the top of the stack (first in the list) describes the error from the perspective of the operation the client invoked.

Each subsequent message in the stack describes the "cause" of the prior message.

object
data
Optional

Data to facilitate clients responding to the operation reporting a standard error to indicating that it was unable to complete successfully.

Operations may provide data that clients can use when responding to errors. Since the data that clients need may be specific to the context of the operation reporting the error, different operations that report the same error may provide different data in the error. The documentation for each each operation will describe what, if any, data it provides for each error it reports.

The Vapi Std Errors ArgumentLocations, Vapi Std Errors FileLocations, and Vapi Std Errors TransientIndication schemas are intended as possible values for this property. Vapi Std DynamicID may also be useful as a value for this property (although that is not its primary purpose). Some resources may provide their own specific schemas for use as the value of this property when reporting errors from their operations.

Some operations will not set this property when reporting errors.

string
error_type
Required  

Discriminator field to help API consumers identify the structure type.

For more information see: Vapi Std Errors Error Type.

This property was added in vSphere API 6.7.2.

Can be missing or null for compatibility with preceding implementations.


Code Samples
COPY
                    curl -X POST -H 'Authorization: <value>' -H 'Content-Type: application/json' -d '{"common_name":"string","country":"string","csr_type":"string","locality":"string","organization_name":"string","organization_unit_name":"string","state_or_province":"string"}' https://{api_host}/api/vcenter/namespace-management/supervisors/{supervisor}/certificates/signing-requests