---
layout: docs
page_title: Inline Certificate Configuration Reference
description: Learn how to configure an inline certificate bound to an API Gateway on VMs.
---

# Inline certificate configuration reference

This topic provides reference information for the gateway inline certificate
configuration entry. For information about certificate configuration for Kubernetes environments, refer to [Gateway Resource Configuration](/consul/docs/api-gateway/configuration/gateway).

## Configuration model

The following list outlines field hierarchy, language-specific data types, and
requirements in an `inline-certificate` configuration entry. Click on a property name
to view additional details, including default values.

- [`Kind`](#kind): string | must be `"inline-certificate"`
- [`Name`](#name): string | no default
- [`Namespace`](#namespace): string | no default <EnterpriseAlert inline />
- [`Partition`](#partition): string | no default <EnterpriseAlert inline />
- [`Meta`](#meta): map | no default
- [`Certificate`](#certificate): string | no default
- [`PrivateKey`](#privatekey): string | no default

## Complete configuration

When every field is defined, an `inline-certificate` configuration entry has the following form:

<CodeTabs>

```HCL
Kind = "inline-certificate"
Name = "<name of certificate>"

Meta = {
	"<any key>" = "<any value>"
}

Certificate = "<public certificate>"
PrivateKey = "<private key>"
```

```JSON
{
	"Kind": "inline-certificate",
	"Name": "<name of certificate>",
	"Meta": {
		"any key": "any value"
	}
	"Certificate": "<public certificate>",
	"PrivateKey": "<private key>"
}
```

</CodeTabs>

## Specification

### `Kind`

Specifies the type of configuration entry to implement.

#### Values

- Default: none
- This field is required.
- Data type: string that must equal `"inline-certificate"`

### `Name`

Specifies a name for the configuration entry. The name is metadata that you can
use to reference the configuration entry when performing Consul operations, such
as applying a configuration entry to a specific cluster.

#### Values

- Default: none
- This field is required.
- Data type: string

### `Namespace` <EnterpriseAlert inline />

Specifies the Enterprise [namespace](/consul/docs/enterprise/namespaces) to apply to the configuration entry.

#### Values

- Default: `"default"` in Enterprise
- Data type: string

### `Partition` <EnterpriseAlert inline />

Specifies the Enterprise [admin partition](/consul/docs/enterprise/admin-partitions) to apply to the configuration entry.

#### Values

- Default: `"default"` in Enterprise
- Data type: string

### `Meta`

Specifies an arbitrary set of key-value pairs to associate with the gateway.

#### Values

- Default: none
- Data type: map containing one or more keys and string values.

### `Certificate`

Specifies the inline public certificate to use for TLS.

#### Values

- Default: none
- This field is required.
- Data type: string value of the public certificate

### `PrivateKey`

Specifies the inline private key to use for TLS.

#### Values

- Default: none
- This field is required.
- Data type: string value of the private key
