# Create a new Host.

Endpoint: POST /environments/{environmentId}/hosts
Version: 3.17.0
Security: ApiKeyAuth

## Security:

  - `ApiKeyAuth` (unknown)
    apiKey in header Authorization

## Path parameters:

  - `environmentId` (string, required)
    The ID of the environment.

## Request fields (application/json):

  - `name` (string)
    The name to associate with the host.

  - `hostname` (string)
    The hostname or IP address of this host.
    Example: db1.host.com

  - `nfs_addresses` (array)
    The list of host/IP addresses to use for NFS export.
    Example: ["192.168.10.2"]

  - `ssh_port` (integer)
    The port number used to connect to the host via SSH.
    Example: 22

  - `privilege_elevation_profile_reference` (string)
    Reference to a profile for escalating user privileges.

  - `dsp_keystore_alias` (string)
    The lowercase alias to use inside the user managed DSP keystore.

  - `dsp_keystore_password` (string)
    The password for the user managed DSP keystore.

  - `dsp_keystore_path` (string)
    The path to the user managed DSP keystore.

  - `dsp_truststore_password` (string)
    The password for the user managed DSP truststore.

  - `dsp_truststore_path` (string)
    The path to the user managed DSP truststore.

  - `java_home` (string)
    The path to the user managed Java Development Kit (JDK). If not specified, then the OpenJDK will be used.

  - `toolkit_path` (string)
    The path for the toolkit that resides on the host.

  - `oracle_jdbc_keystore_password` (string)
    The password for the user managed Oracle JDBC keystore.

  - `oracle_tde_keystores_root_path` (string)
    The path to the root of the Oracle TDE keystores artifact directories.

  - `ssh_verification_strategy` (object)
    Mechanism to use for ssh host verification.

  - `ssh_verification_strategy.name` (string, required)
    The name of the verification strategy.
    Enum: "RAW_KEY", "FINGERPRINT", "ACCEPT_ALWAYS"

  - `ssh_verification_strategy.key_type` (string)
    The type of SSH key.
    Enum: "RSA", "DSA", "ECDSA", "ED25519"

  - `ssh_verification_strategy.raw_key` (string)
    Base64-encoded ssh key of the host for RAW_KEY verification.

  - `ssh_verification_strategy.fingerprint_type` (string)
    Hash function for the fingerprint for FINGERPRINT verification.
    Enum: "SHA256", "SHA512"

  - `ssh_verification_strategy.fingerprint` (string)
    Base-64 encoded fingerprint of the ssh key of the host for FINGERPRINT verification.

  - `oracle_cluster_node_virtual_ips` (array)
    The Virtual IP addresses associated with the OracleClusterNode.

  - `oracle_cluster_node_virtual_ips.domain_name` (string)
    The domain name for the VirtualIP.
    Example: virtual.domain.com

  - `oracle_cluster_node_virtual_ips.ip` (string)
    The IP address for this VirtualIP.
    Example: 192.168.0.1

  - `oracle_cluster_node_virtual_ips.discovered` (boolean)
    Whether this VirtualIP was discovered.
    Example: true

## Response 201:

  - `201` (unknown)
    Host Creation initiated

## Response 201 fields (application/json):

  - `job` (object)
    An asynchronous task.

  - `job.id` (string)
    The Job entity ID.
    Example: job-123

  - `job.status` (string)
    The status of the job.
    Enum: "PENDING", "STARTED", "TIMEDOUT", "RUNNING", "CANCELED", "FAILED", "SUSPENDED", "WAITING", "COMPLETED", "ABANDONED"

  - `job.is_waiting_for_telemetry` (boolean)
    Indicates that the operations performed by this Job have completed successfully, but the object changes are not yet reflected. This is only set when when the JOB is in STARTED status, with the guarantee that the job will not transition to the FAILED status. Note that this flag will likely be replaced with a new status in future API versions and be deprecated.

  - `job.type` (string)
    The type of job being done.
    Example: DB_REFRESH

  - `job.localized_type` (string)
    The i18n translated type of job being done.
    Example: DB Refresh

  - `job.error_details` (string)
    Details about the failure for FAILED jobs.
    Example: Unable to connect to the engine.

  - `job.warning_message` (string)
    Warnings for the job.
    Example: Failed to remove local MaskingJob, engineId: 3 localMaskingJobId: 7.

  - `job.target_id` (string)
    A reference to the job's target.
    Example: vdb-123

  - `job.target_name` (string)
    A reference to the job's target name.
    Example: vdb

  - `job.start_time` (string)
    The time the job started executing.
    Example: 2022-01-02T05:11:24.148Z

  - `job.update_time` (string)
    The time the job was last updated.
    Example: 2022-01-02T06:11:24.148Z

  - `job.trace_id` (string)
    traceId of the request which created this Job

  - `job.engine_ids` (array)
    IDs of the engines this Job is executing on.

  - `job.tags` (array)

  - `job.tags.key` (string, required)
    Key of the tag
    Example: key-1

  - `job.tags.value` (string, required)
    Value of the tag
    Example: value-1

  - `job.engines` (array)

  - `job.engines.engine_id` (string)

  - `job.engines.engine_name` (string)

  - `job.account_id` (integer)
    The ID of the account who initiated this job.
    Example: 1

  - `job.account_name` (string)
    The account name which initiated this job. It can be either firstname and lastname combination or firstname or lastname or username or email address or Account-.
    Example: User 1

  - `job.percent_complete` (integer)
    Completion percentage of the Job.
    Example: 50

  - `job.virtualization_tasks` (array)

  - `job.virtualization_tasks.id` (string)

  - `job.virtualization_tasks.parent_job_id` (string)

  - `job.virtualization_tasks.start_time` (string)

  - `job.virtualization_tasks.end_time` (string)

  - `job.virtualization_tasks.title` (string)

  - `job.virtualization_tasks.percent_complete` (integer)

  - `job.virtualization_tasks.events` (array)

  - `job.virtualization_tasks.events.message_details` (string)

  - `job.virtualization_tasks.status` (string)
    Enum: "PENDING", "STARTED", "TIMEDOUT", "RUNNING", "CANCELED", "FAILED", "SUSPENDED", "WAITING", "COMPLETED", "ABANDONED"

  - `job.tasks` (array)

  - `job.tasks.id` (string)

  - `job.tasks.parent_job_id` (string)

  - `job.tasks.start_time` (string)

  - `job.tasks.end_time` (string)

  - `job.tasks.title` (string)

  - `job.tasks.percent_complete` (integer)

  - `job.tasks.events` (array)

  - `job.tasks.events.message_details` (string)

  - `job.tasks.status` (string)
    Enum: "PENDING", "STARTED", "TIMEDOUT", "RUNNING", "CANCELED", "FAILED", "SUSPENDED", "WAITING", "COMPLETED", "ABANDONED"

  - `job.execution_id` (string)
    The ID of the associated masking execution, if any.

  - `cluster_node_id` (string)
    The id of the created cluster node.
    Example: ORACLE_CLUSTER_NODE-7

