---
title: Create Spectrum application using a name for the origin
---

[Skip to content](#_top)

[API Reference](https://developers.cloudflare.com/api/go)

[Spectrum](https://developers.cloudflare.com/api/go/resources/spectrum)

[Apps](https://developers.cloudflare.com/api/go/resources/spectrum/subresources/apps)

Copy Markdown

Open in **Claude**Open in **ChatGPT**Open in **Cursor**

---

**Copy Markdown****View as Markdown**

# Create Spectrum application using a name for the origin

client.Spectrum.Apps.New(ctx, params) (\*[AppNewResponse](<https://developers.cloudflare.com/api/go/resources/spectrum#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)>), error)

POST/zones/{zone\_id}/spectrum/apps

Creates a new Spectrum application from a configuration using a name for the origin.

##### Security

<details>

<summary>API Token</summary>



The preferred authorization scheme for interacting with the Cloudflare API. <a href="https://developers.cloudflare.com/fundamentals/api/get-started/create-token/">Create a token</a>.

**Example:**<code>Authorization: Bearer Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY</code>

</details>

<details>

<summary>API Email + API Key</summary>



The previous authorization scheme for interacting with the Cloudflare API, used in conjunction with a Global API key.

**Example:**<code>X-Auth-Email: user@example.com</code>

The previous authorization scheme for interacting with the Cloudflare API. When possible, use API tokens instead of Global API keys.

**Example:**<code>X-Auth-Key: 144c9defac04969c7bfad8efaa8ea194</code>

</details>

##### Accepted Permissions (at least one required)

`Zone Settings Write`

##### ParametersExpand Collapse

<details>

<summary>

params AppNewParams

</summary>

ZoneID param.Field\[string]

Path param: Zone identifier.

maxLength32

<a href="#(resource)%20spectrum.apps%20%3E%20(method)%20create%20%3E%20(params)%200%20%3E%20(param)%20zone_id">Link to this property</a>

DNS param.Field\[<a href="https://developers.cloudflare.com/api/go/resources/spectrum#(resource)%20spectrum%20%3E%20(model)%20dns%20%3E%20(schema)">DNS</a>]

Body param: The name and type of DNS record for the Spectrum application.

<a href="#(resource)%20spectrum.apps%20%3E%20(method)%20create%20%3E%20(params)%200%20%3E%20(param)%20dns">Link to this property</a>

Protocol param.Field\[string]

Body param: The port configuration at Cloudflare’s edge. May specify a single port, for example <code>"tcp/1000"</code>, or a range of ports, for example <code>"tcp/1000-2000"</code>.

<a href="#(resource)%20spectrum.apps%20%3E%20(method)%20create%20%3E%20(params)%200%20%3E%20(param)%20protocol">Link to this property</a>

<details>

<summary>

TrafficType param.Field\[<a href="https://developers.cloudflare.com/api/go/resources/spectrum/subresources/apps/methods/create#(resource)%20spectrum.apps%20%3E%20(method)%20create%20%3E%20(params)%200%20%3E%20(param)%20traffic_type%20%3E%20(schema)">AppNewParamsSpectrumConfigAppConfigTrafficType</a>]

Body param: Determines how data travels from the edge to your origin. When set to “direct”, Spectrum will send traffic directly to your origin, and the application’s type is derived from the <code>protocol</code>. When set to “http” or “https”, Spectrum will apply Cloudflare’s HTTP/HTTPS features as it sends traffic to your origin, and the application type matches this property exactly. When set to “worker”, traffic is sent to the Worker specified by <code>origin_worker_id</code>.

</summary>

const AppNewParamsSpectrumConfigAppConfigTrafficTypeDirect <a href="https://developers.cloudflare.com/api/go/resources/spectrum/subresources/apps/methods/create#(resource)%20spectrum.apps%20%3E%20(method)%20create%20%3E%20(params)%200%20%3E%20(param)%20traffic_type%20%3E%20(schema)">AppNewParamsSpectrumConfigAppConfigTrafficType</a> = "direct"

<a href="#(resource)%20spectrum.apps%20%3E%20(method)%20create%20%3E%20(params)%200%20%3E%20(param)%20traffic_type%20%3E%20(schema)%20%3E%20(member)%200">Link to this property</a>

const AppNewParamsSpectrumConfigAppConfigTrafficTypeHTTP <a href="https://developers.cloudflare.com/api/go/resources/spectrum/subresources/apps/methods/create#(resource)%20spectrum.apps%20%3E%20(method)%20create%20%3E%20(params)%200%20%3E%20(param)%20traffic_type%20%3E%20(schema)">AppNewParamsSpectrumConfigAppConfigTrafficType</a> = "http"

<a href="#(resource)%20spectrum.apps%20%3E%20(method)%20create%20%3E%20(params)%200%20%3E%20(param)%20traffic_type%20%3E%20(schema)%20%3E%20(member)%201">Link to this property</a>

const AppNewParamsSpectrumConfigAppConfigTrafficTypeHTTPS <a href="https://developers.cloudflare.com/api/go/resources/spectrum/subresources/apps/methods/create#(resource)%20spectrum.apps%20%3E%20(method)%20create%20%3E%20(params)%200%20%3E%20(param)%20traffic_type%20%3E%20(schema)">AppNewParamsSpectrumConfigAppConfigTrafficType</a> = "https"

<a href="#(resource)%20spectrum.apps%20%3E%20(method)%20create%20%3E%20(params)%200%20%3E%20(param)%20traffic_type%20%3E%20(schema)%20%3E%20(member)%202">Link to this property</a>

const AppNewParamsSpectrumConfigAppConfigTrafficTypeWorker <a href="https://developers.cloudflare.com/api/go/resources/spectrum/subresources/apps/methods/create#(resource)%20spectrum.apps%20%3E%20(method)%20create%20%3E%20(params)%200%20%3E%20(param)%20traffic_type%20%3E%20(schema)">AppNewParamsSpectrumConfigAppConfigTrafficType</a> = "worker"

<a href="#(resource)%20spectrum.apps%20%3E%20(method)%20create%20%3E%20(params)%200%20%3E%20(param)%20traffic_type%20%3E%20(schema)%20%3E%20(member)%203">Link to this property</a>

</details>

<a href="#(resource)%20spectrum.apps%20%3E%20(method)%20create%20%3E%20(params)%200%20%3E%20(param)%20traffic_type">Link to this property</a>

ArgoSmartRouting param.Field\[bool]Optional

Body param: Enables Argo Smart Routing for this application. Notes: Only available for TCP or UDP applications with traffic\_type set to “direct”.

<a href="#(resource)%20spectrum.apps%20%3E%20(method)%20create%20%3E%20(params)%200%20%3E%20(param)%20argo_smart_routing">Link to this property</a>

EdgeIPs param.Field\[<a href="https://developers.cloudflare.com/api/go/resources/spectrum#(resource)%20spectrum%20%3E%20(model)%20edge_ips%20%3E%20(schema)">EdgeIPs</a>]Optional

Body param: The anycast edge IP configuration for the hostname of this application.

<a href="#(resource)%20spectrum.apps%20%3E%20(method)%20create%20%3E%20(params)%200%20%3E%20(param)%20edge_ips">Link to this property</a>

IPFirewall param.Field\[bool]Optional

Body param: Enables IP Access Rules for this application. Notes: Only available for TCP applications.

<a href="#(resource)%20spectrum.apps%20%3E%20(method)%20create%20%3E%20(params)%200%20%3E%20(param)%20ip_firewall">Link to this property</a>

OriginDirect param.Field\[\[]string]Optional

Body param: List of origin IP addresses. Array may contain multiple IP addresses for load balancing.

<a href="#(resource)%20spectrum.apps%20%3E%20(method)%20create%20%3E%20(params)%200%20%3E%20(param)%20origin_direct">Link to this property</a>

OriginDNS param.Field\[<a href="https://developers.cloudflare.com/api/go/resources/spectrum#(resource)%20spectrum%20%3E%20(model)%20origin_dns%20%3E%20(schema)">OriginDNS</a>]Optional

Body param: The name and type of DNS record for the Spectrum application.

<a href="#(resource)%20spectrum.apps%20%3E%20(method)%20create%20%3E%20(params)%200%20%3E%20(param)%20origin_dns">Link to this property</a>

OriginPort param.Field\[<a href="https://developers.cloudflare.com/api/go/resources/spectrum#(resource)%20spectrum%20%3E%20(model)%20origin_port%20%3E%20(schema)">OriginPortUnion</a>]Optional

Body param: The destination port at the origin. Only specified in conjunction with origin\_dns. May use an integer to specify a single origin port, for example <code>1000</code>, or a string to specify a range of origin ports, for example <code>"1000-2000"</code>. Notes: If specifying a port range, the number of ports in the range must match the number of ports specified in the “protocol” field.

maximum65535

minimum1

<a href="#(resource)%20spectrum.apps%20%3E%20(method)%20create%20%3E%20(params)%200%20%3E%20(param)%20origin_port">Link to this property</a>

OriginWorkerID param.Field\[string]Optional

Body param: Optional Worker script tag (worker ID) to use as the application’s origin. Only supported for TCP applications with traffic\_type “worker”; mutually exclusive with origin\_direct, origin\_dns, origin\_port, proxy\_protocol, and argo\_smart\_routing. tls may only be “off” or “flexible”.

<a href="#(resource)%20spectrum.apps%20%3E%20(method)%20create%20%3E%20(params)%200%20%3E%20(param)%20origin_worker_id">Link to this property</a>

<details>

<summary>

ProxyProtocol param.Field\[<a href="https://developers.cloudflare.com/api/go/resources/spectrum/subresources/apps/methods/create#(resource)%20spectrum.apps%20%3E%20(method)%20create%20%3E%20(params)%200%20%3E%20(param)%20proxy_protocol%20%3E%20(schema)">AppNewParamsSpectrumConfigAppConfigProxyProtocol</a>]Optional

Body param: Enables Proxy Protocol to the origin. Refer to <a href="https://developers.cloudflare.com/spectrum/getting-started/proxy-protocol/">Enable Proxy protocol</a> for implementation details on PROXY Protocol V1, PROXY Protocol V2, and Simple Proxy Protocol.

</summary>

const AppNewParamsSpectrumConfigAppConfigProxyProtocolOff <a href="https://developers.cloudflare.com/api/go/resources/spectrum/subresources/apps/methods/create#(resource)%20spectrum.apps%20%3E%20(method)%20create%20%3E%20(params)%200%20%3E%20(param)%20proxy_protocol%20%3E%20(schema)">AppNewParamsSpectrumConfigAppConfigProxyProtocol</a> = "off"

<a href="#(resource)%20spectrum.apps%20%3E%20(method)%20create%20%3E%20(params)%200%20%3E%20(param)%20proxy_protocol%20%3E%20(schema)%20%3E%20(member)%200">Link to this property</a>

const AppNewParamsSpectrumConfigAppConfigProxyProtocolV1 <a href="https://developers.cloudflare.com/api/go/resources/spectrum/subresources/apps/methods/create#(resource)%20spectrum.apps%20%3E%20(method)%20create%20%3E%20(params)%200%20%3E%20(param)%20proxy_protocol%20%3E%20(schema)">AppNewParamsSpectrumConfigAppConfigProxyProtocol</a> = "v1"

<a href="#(resource)%20spectrum.apps%20%3E%20(method)%20create%20%3E%20(params)%200%20%3E%20(param)%20proxy_protocol%20%3E%20(schema)%20%3E%20(member)%201">Link to this property</a>

const AppNewParamsSpectrumConfigAppConfigProxyProtocolV2 <a href="https://developers.cloudflare.com/api/go/resources/spectrum/subresources/apps/methods/create#(resource)%20spectrum.apps%20%3E%20(method)%20create%20%3E%20(params)%200%20%3E%20(param)%20proxy_protocol%20%3E%20(schema)">AppNewParamsSpectrumConfigAppConfigProxyProtocol</a> = "v2"

<a href="#(resource)%20spectrum.apps%20%3E%20(method)%20create%20%3E%20(params)%200%20%3E%20(param)%20proxy_protocol%20%3E%20(schema)%20%3E%20(member)%202">Link to this property</a>

const AppNewParamsSpectrumConfigAppConfigProxyProtocolSimple <a href="https://developers.cloudflare.com/api/go/resources/spectrum/subresources/apps/methods/create#(resource)%20spectrum.apps%20%3E%20(method)%20create%20%3E%20(params)%200%20%3E%20(param)%20proxy_protocol%20%3E%20(schema)">AppNewParamsSpectrumConfigAppConfigProxyProtocol</a> = "simple"

<a href="#(resource)%20spectrum.apps%20%3E%20(method)%20create%20%3E%20(params)%200%20%3E%20(param)%20proxy_protocol%20%3E%20(schema)%20%3E%20(member)%203">Link to this property</a>

</details>

<a href="#(resource)%20spectrum.apps%20%3E%20(method)%20create%20%3E%20(params)%200%20%3E%20(param)%20proxy_protocol">Link to this property</a>

<details>

<summary>

TLS param.Field\[<a href="https://developers.cloudflare.com/api/go/resources/spectrum/subresources/apps/methods/create#(resource)%20spectrum.apps%20%3E%20(method)%20create%20%3E%20(params)%200%20%3E%20(param)%20tls%20%3E%20(schema)">AppNewParamsSpectrumConfigAppConfigTLS</a>]Optional

Body param: The type of TLS termination associated with the application.

</summary>

const AppNewParamsSpectrumConfigAppConfigTLSOff <a href="https://developers.cloudflare.com/api/go/resources/spectrum/subresources/apps/methods/create#(resource)%20spectrum.apps%20%3E%20(method)%20create%20%3E%20(params)%200%20%3E%20(param)%20tls%20%3E%20(schema)">AppNewParamsSpectrumConfigAppConfigTLS</a> = "off"

<a href="#(resource)%20spectrum.apps%20%3E%20(method)%20create%20%3E%20(params)%200%20%3E%20(param)%20tls%20%3E%20(schema)%20%3E%20(member)%200">Link to this property</a>

const AppNewParamsSpectrumConfigAppConfigTLSFlexible <a href="https://developers.cloudflare.com/api/go/resources/spectrum/subresources/apps/methods/create#(resource)%20spectrum.apps%20%3E%20(method)%20create%20%3E%20(params)%200%20%3E%20(param)%20tls%20%3E%20(schema)">AppNewParamsSpectrumConfigAppConfigTLS</a> = "flexible"

<a href="#(resource)%20spectrum.apps%20%3E%20(method)%20create%20%3E%20(params)%200%20%3E%20(param)%20tls%20%3E%20(schema)%20%3E%20(member)%201">Link to this property</a>

const AppNewParamsSpectrumConfigAppConfigTLSFull <a href="https://developers.cloudflare.com/api/go/resources/spectrum/subresources/apps/methods/create#(resource)%20spectrum.apps%20%3E%20(method)%20create%20%3E%20(params)%200%20%3E%20(param)%20tls%20%3E%20(schema)">AppNewParamsSpectrumConfigAppConfigTLS</a> = "full"

<a href="#(resource)%20spectrum.apps%20%3E%20(method)%20create%20%3E%20(params)%200%20%3E%20(param)%20tls%20%3E%20(schema)%20%3E%20(member)%202">Link to this property</a>

const AppNewParamsSpectrumConfigAppConfigTLSStrict <a href="https://developers.cloudflare.com/api/go/resources/spectrum/subresources/apps/methods/create#(resource)%20spectrum.apps%20%3E%20(method)%20create%20%3E%20(params)%200%20%3E%20(param)%20tls%20%3E%20(schema)">AppNewParamsSpectrumConfigAppConfigTLS</a> = "strict"

<a href="#(resource)%20spectrum.apps%20%3E%20(method)%20create%20%3E%20(params)%200%20%3E%20(param)%20tls%20%3E%20(schema)%20%3E%20(member)%203">Link to this property</a>

</details>

<a href="#(resource)%20spectrum.apps%20%3E%20(method)%20create%20%3E%20(params)%200%20%3E%20(param)%20tls">Link to this property</a>

VirtualNetworkID param.Field\[string]Optional

Body param: Optional UUID of a virtual network for routing origin traffic through tunnel virtual networks.

formatuuid

<a href="#(resource)%20spectrum.apps%20%3E%20(method)%20create%20%3E%20(params)%200%20%3E%20(param)%20virtual_network_id">Link to this property</a>

</details>

[Link to this property](<#(resource)%20spectrum.apps%20%3E%20(method)%20create%20%3E%20(params)%200>)

##### ReturnsExpand Collapse

<details>

<summary>

type AppNewResponse interface{…}

</summary>

One of the following:

<details>

<summary>

type AppNewResponseSpectrumConfigAppConfig struct{…}

</summary>

ID string

App identifier.

maxLength32

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20id">Link to this property</a>

CreatedOn Time

When the Application was created.

formatdate-time

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20created_on">Link to this property</a>

<details>

<summary>

DNS <a href="https://developers.cloudflare.com/api/go/resources/spectrum#(resource)%20spectrum%20%3E%20(model)%20dns%20%3E%20(schema)">DNS</a>

The name and type of DNS record for the Spectrum application.

</summary>

Name stringOptional

The name of the DNS record associated with the application.

formathostname

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20dns%20%2B%20(resource)%20spectrum%20%3E%20(model)%20dns%20%3E%20(schema)%20%3E%20(property)%20name">Link to this property</a>

<details>

<summary>

Type DNSTypeOptional

The type of DNS record associated with the application.

</summary>

One of the following:

const DNSTypeCNAME DNSType = "CNAME"

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20dns%20%2B%20(resource)%20spectrum%20%3E%20(model)%20dns%20%3E%20(schema)%20%3E%20(property)%20type%20%3E%20(member)%200">Link to this property</a>

const DNSTypeAddress DNSType = "ADDRESS"

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20dns%20%2B%20(resource)%20spectrum%20%3E%20(model)%20dns%20%3E%20(schema)%20%3E%20(property)%20type%20%3E%20(member)%201">Link to this property</a>

</details>

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20dns%20%2B%20(resource)%20spectrum%20%3E%20(model)%20dns%20%3E%20(schema)%20%3E%20(property)%20type">Link to this property</a>

</details>

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20dns">Link to this property</a>

ModifiedOn Time

When the Application was last modified.

formatdate-time

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20modified_on">Link to this property</a>

Protocol string

The port configuration at Cloudflare’s edge. May specify a single port, for example <code>"tcp/1000"</code>, or a range of ports, for example <code>"tcp/1000-2000"</code>.

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20protocol">Link to this property</a>

<details>

<summary>

TrafficType AppNewResponseSpectrumConfigAppConfigTrafficType

Determines how data travels from the edge to your origin. When set to “direct”, Spectrum will send traffic directly to your origin, and the application’s type is derived from the <code>protocol</code>. When set to “http” or “https”, Spectrum will apply Cloudflare’s HTTP/HTTPS features as it sends traffic to your origin, and the application type matches this property exactly. When set to “worker”, traffic is sent to the Worker specified by <code>origin_worker_id</code>.

</summary>

One of the following:

const AppNewResponseSpectrumConfigAppConfigTrafficTypeDirect AppNewResponseSpectrumConfigAppConfigTrafficType = "direct"

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20traffic_type%20%3E%20(member)%200">Link to this property</a>

const AppNewResponseSpectrumConfigAppConfigTrafficTypeHTTP AppNewResponseSpectrumConfigAppConfigTrafficType = "http"

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20traffic_type%20%3E%20(member)%201">Link to this property</a>

const AppNewResponseSpectrumConfigAppConfigTrafficTypeHTTPS AppNewResponseSpectrumConfigAppConfigTrafficType = "https"

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20traffic_type%20%3E%20(member)%202">Link to this property</a>

const AppNewResponseSpectrumConfigAppConfigTrafficTypeWorker AppNewResponseSpectrumConfigAppConfigTrafficType = "worker"

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20traffic_type%20%3E%20(member)%203">Link to this property</a>

</details>

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20traffic_type">Link to this property</a>

ArgoSmartRouting boolOptional

Enables Argo Smart Routing for this application. Notes: Only available for TCP or UDP applications with traffic\_type set to “direct”.

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20argo_smart_routing">Link to this property</a>

<details>

<summary>

EdgeIPs <a href="https://developers.cloudflare.com/api/go/resources/spectrum#(resource)%20spectrum%20%3E%20(model)%20edge_ips%20%3E%20(schema)">EdgeIPs</a>Optional

The anycast edge IP configuration for the hostname of this application.

</summary>

One of the following:

<details>

<summary>

type EdgeIPsDynamic struct{…}

</summary>

<details>

<summary>

Connectivity EdgeIPsDynamicConnectivityOptional

The IP versions supported for inbound connections on Spectrum anycast IPs.

</summary>

One of the following:

const EdgeIPsDynamicConnectivityAll EdgeIPsDynamicConnectivity = "all"

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20edge_ips%20%2B%20(resource)%20spectrum%20%3E%20(model)%20edge_ips%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20connectivity%20%3E%20(member)%200">Link to this property</a>

const EdgeIPsDynamicConnectivityIPV4 EdgeIPsDynamicConnectivity = "ipv4"

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20edge_ips%20%2B%20(resource)%20spectrum%20%3E%20(model)%20edge_ips%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20connectivity%20%3E%20(member)%201">Link to this property</a>

const EdgeIPsDynamicConnectivityIPV6 EdgeIPsDynamicConnectivity = "ipv6"

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20edge_ips%20%2B%20(resource)%20spectrum%20%3E%20(model)%20edge_ips%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20connectivity%20%3E%20(member)%202">Link to this property</a>

</details>

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20edge_ips%20%2B%20(resource)%20spectrum%20%3E%20(model)%20edge_ips%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20connectivity">Link to this property</a>

Type EdgeIPsDynamicTypeOptional

The type of edge IP configuration specified. Dynamically allocated edge IPs use Spectrum anycast IPs in accordance with the connectivity you specify. Only valid with CNAME DNS names.

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20edge_ips%20%2B%20(resource)%20spectrum%20%3E%20(model)%20edge_ips%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20type">Link to this property</a>

</details>

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20edge_ips%20%2B%20(resource)%20spectrum%20%3E%20(model)%20edge_ips%20%3E%20(schema)%20%3E%20(variant)%200">Link to this property</a>

<details>

<summary>

type EdgeIPsStatic struct{…}

</summary>

IPs \[]stringOptional

The array of customer owned IPs we broadcast via anycast for this hostname and application.

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20edge_ips%20%2B%20(resource)%20spectrum%20%3E%20(model)%20edge_ips%20%3E%20(schema)%20%3E%20(variant)%201%20%3E%20(property)%20ips">Link to this property</a>

Type EdgeIPsStaticTypeOptional

The type of edge IP configuration specified. Statically allocated edge IPs use customer IPs in accordance with the ips array you specify. Only valid with ADDRESS DNS names.

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20edge_ips%20%2B%20(resource)%20spectrum%20%3E%20(model)%20edge_ips%20%3E%20(schema)%20%3E%20(variant)%201%20%3E%20(property)%20type">Link to this property</a>

</details>

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20edge_ips%20%2B%20(resource)%20spectrum%20%3E%20(model)%20edge_ips%20%3E%20(schema)%20%3E%20(variant)%201">Link to this property</a>

</details>

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20edge_ips">Link to this property</a>

IPFirewall boolOptional

Enables IP Access Rules for this application. Notes: Only available for TCP applications.

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20ip_firewall">Link to this property</a>

OriginDirect \[]stringOptional

List of origin IP addresses. Array may contain multiple IP addresses for load balancing.

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20origin_direct">Link to this property</a>

<details>

<summary>

OriginDNS <a href="https://developers.cloudflare.com/api/go/resources/spectrum#(resource)%20spectrum%20%3E%20(model)%20origin_dns%20%3E%20(schema)">OriginDNS</a>Optional

The name and type of DNS record for the Spectrum application.

</summary>

Name stringOptional

The name of the DNS record associated with the origin.

formathostname

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20origin_dns%20%2B%20(resource)%20spectrum%20%3E%20(model)%20origin_dns%20%3E%20(schema)%20%3E%20(property)%20name">Link to this property</a>

TTL int64Optional

The TTL of our resolution of your DNS record in seconds.

minimum600

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20origin_dns%20%2B%20(resource)%20spectrum%20%3E%20(model)%20origin_dns%20%3E%20(schema)%20%3E%20(property)%20ttl">Link to this property</a>

<details>

<summary>

Type OriginDNSTypeOptional

The type of DNS record associated with the origin. "" is used to specify a combination of A/AAAA records.

</summary>

One of the following:

const OriginDNSTypeEmpty OriginDNSType = ""

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20origin_dns%20%2B%20(resource)%20spectrum%20%3E%20(model)%20origin_dns%20%3E%20(schema)%20%3E%20(property)%20type%20%3E%20(member)%200">Link to this property</a>

const OriginDNSTypeA OriginDNSType = "A"

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20origin_dns%20%2B%20(resource)%20spectrum%20%3E%20(model)%20origin_dns%20%3E%20(schema)%20%3E%20(property)%20type%20%3E%20(member)%201">Link to this property</a>

const OriginDNSTypeAAAA OriginDNSType = "AAAA"

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20origin_dns%20%2B%20(resource)%20spectrum%20%3E%20(model)%20origin_dns%20%3E%20(schema)%20%3E%20(property)%20type%20%3E%20(member)%202">Link to this property</a>

const OriginDNSTypeSRV OriginDNSType = "SRV"

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20origin_dns%20%2B%20(resource)%20spectrum%20%3E%20(model)%20origin_dns%20%3E%20(schema)%20%3E%20(property)%20type%20%3E%20(member)%203">Link to this property</a>

</details>

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20origin_dns%20%2B%20(resource)%20spectrum%20%3E%20(model)%20origin_dns%20%3E%20(schema)%20%3E%20(property)%20type">Link to this property</a>

</details>

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20origin_dns">Link to this property</a>

<details>

<summary>

OriginPort <a href="https://developers.cloudflare.com/api/go/resources/spectrum#(resource)%20spectrum%20%3E%20(model)%20origin_port%20%3E%20(schema)">OriginPortUnion</a>Optional

The destination port at the origin. Only specified in conjunction with origin\_dns. May use an integer to specify a single origin port, for example <code>1000</code>, or a string to specify a range of origin ports, for example <code>"1000-2000"</code>. Notes: If specifying a port range, the number of ports in the range must match the number of ports specified in the “protocol” field.

maximum65535

minimum1

</summary>

One of the following:

UnionInt

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20origin_port%20%2B%20(resource)%20spectrum%20%3E%20(model)%20origin_port%20%3E%20(schema)%20%3E%20(variant)%200">Link to this property</a>

UnionString

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20origin_port%20%2B%20(resource)%20spectrum%20%3E%20(model)%20origin_port%20%3E%20(schema)%20%3E%20(variant)%201">Link to this property</a>

</details>

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20origin_port">Link to this property</a>

OriginWorkerID stringOptional

Optional Worker script tag (worker ID) to use as the application’s origin. Only supported for TCP applications with traffic\_type “worker”; mutually exclusive with origin\_direct, origin\_dns, origin\_port, proxy\_protocol, and argo\_smart\_routing. tls may only be “off” or “flexible”.

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20origin_worker_id">Link to this property</a>

<details>

<summary>

ProxyProtocol AppNewResponseSpectrumConfigAppConfigProxyProtocolOptional

Enables Proxy Protocol to the origin. Refer to <a href="https://developers.cloudflare.com/spectrum/getting-started/proxy-protocol/">Enable Proxy protocol</a> for implementation details on PROXY Protocol V1, PROXY Protocol V2, and Simple Proxy Protocol.

</summary>

One of the following:

const AppNewResponseSpectrumConfigAppConfigProxyProtocolOff AppNewResponseSpectrumConfigAppConfigProxyProtocol = "off"

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20proxy_protocol%20%3E%20(member)%200">Link to this property</a>

const AppNewResponseSpectrumConfigAppConfigProxyProtocolV1 AppNewResponseSpectrumConfigAppConfigProxyProtocol = "v1"

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20proxy_protocol%20%3E%20(member)%201">Link to this property</a>

const AppNewResponseSpectrumConfigAppConfigProxyProtocolV2 AppNewResponseSpectrumConfigAppConfigProxyProtocol = "v2"

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20proxy_protocol%20%3E%20(member)%202">Link to this property</a>

const AppNewResponseSpectrumConfigAppConfigProxyProtocolSimple AppNewResponseSpectrumConfigAppConfigProxyProtocol = "simple"

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20proxy_protocol%20%3E%20(member)%203">Link to this property</a>

</details>

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20proxy_protocol">Link to this property</a>

<details>

<summary>

TLS AppNewResponseSpectrumConfigAppConfigTLSOptional

The type of TLS termination associated with the application.

</summary>

One of the following:

const AppNewResponseSpectrumConfigAppConfigTLSOff AppNewResponseSpectrumConfigAppConfigTLS = "off"

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20tls%20%3E%20(member)%200">Link to this property</a>

const AppNewResponseSpectrumConfigAppConfigTLSFlexible AppNewResponseSpectrumConfigAppConfigTLS = "flexible"

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20tls%20%3E%20(member)%201">Link to this property</a>

const AppNewResponseSpectrumConfigAppConfigTLSFull AppNewResponseSpectrumConfigAppConfigTLS = "full"

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20tls%20%3E%20(member)%202">Link to this property</a>

const AppNewResponseSpectrumConfigAppConfigTLSStrict AppNewResponseSpectrumConfigAppConfigTLS = "strict"

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20tls%20%3E%20(member)%203">Link to this property</a>

</details>

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20tls">Link to this property</a>

VirtualNetworkID stringOptional

Optional UUID of a virtual network for routing origin traffic through tunnel virtual networks.

formatuuid

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200%20%3E%20(property)%20virtual_network_id">Link to this property</a>

</details>

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%200">Link to this property</a>

<details>

<summary>

type AppNewResponseSpectrumConfigPaygoAppConfig struct{…}

</summary>

ID string

App identifier.

maxLength32

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%201%20%3E%20(property)%20id">Link to this property</a>

CreatedOn Time

When the Application was created.

formatdate-time

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%201%20%3E%20(property)%20created_on">Link to this property</a>

<details>

<summary>

DNS <a href="https://developers.cloudflare.com/api/go/resources/spectrum#(resource)%20spectrum%20%3E%20(model)%20dns%20%3E%20(schema)">DNS</a>

The name and type of DNS record for the Spectrum application.

</summary>

Name stringOptional

The name of the DNS record associated with the application.

formathostname

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%201%20%3E%20(property)%20dns%20%2B%20(resource)%20spectrum%20%3E%20(model)%20dns%20%3E%20(schema)%20%3E%20(property)%20name">Link to this property</a>

<details>

<summary>

Type DNSTypeOptional

The type of DNS record associated with the application.

</summary>

One of the following:

const DNSTypeCNAME DNSType = "CNAME"

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%201%20%3E%20(property)%20dns%20%2B%20(resource)%20spectrum%20%3E%20(model)%20dns%20%3E%20(schema)%20%3E%20(property)%20type%20%3E%20(member)%200">Link to this property</a>

const DNSTypeAddress DNSType = "ADDRESS"

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%201%20%3E%20(property)%20dns%20%2B%20(resource)%20spectrum%20%3E%20(model)%20dns%20%3E%20(schema)%20%3E%20(property)%20type%20%3E%20(member)%201">Link to this property</a>

</details>

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%201%20%3E%20(property)%20dns%20%2B%20(resource)%20spectrum%20%3E%20(model)%20dns%20%3E%20(schema)%20%3E%20(property)%20type">Link to this property</a>

</details>

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%201%20%3E%20(property)%20dns">Link to this property</a>

ModifiedOn Time

When the Application was last modified.

formatdate-time

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%201%20%3E%20(property)%20modified_on">Link to this property</a>

Protocol string

The port configuration at Cloudflare’s edge. May specify a single port, for example <code>"tcp/1000"</code>, or a range of ports, for example <code>"tcp/1000-2000"</code>.

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%201%20%3E%20(property)%20protocol">Link to this property</a>

OriginDirect \[]stringOptional

List of origin IP addresses. Array may contain multiple IP addresses for load balancing.

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%201%20%3E%20(property)%20origin_direct">Link to this property</a>

</details>

<a href="#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)%20%3E%20(variant)%201">Link to this property</a>

</details>

[Link to this property](<#(resource)%20spectrum.apps%20%3E%20(model)%20AppNewResponse%20%3E%20(schema)>)

### Create Spectrum application using a name for the origin

Go

HTTPTypeScriptPythonGoTerraform

```
package main

import (
  "context"
  "fmt"

  "github.com/cloudflare/cloudflare-go"
  "github.com/cloudflare/cloudflare-go/option"
  "github.com/cloudflare/cloudflare-go/spectrum"
)

func main() {
  client := cloudflare.NewClient(
    option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"),
  )
  app, err := client.Spectrum.Apps.New(context.TODO(), spectrum.AppNewParams{
    ZoneID: cloudflare.F("023e105f4ecef8ad9ca31a8372d0c353"),
    Body: spectrum.AppNewParamsBodySpectrumConfigAppConfig{
      DNS: cloudflare.F(spectrum.DNSParam{

      }),
      Protocol: cloudflare.F("tcp/22"),
      TrafficType: cloudflare.F(spectrum.AppNewParamsBodySpectrumConfigAppConfigTrafficTypeDirect),
    },
  })
  if err != nil {
    panic(err.Error())
  }
  fmt.Printf("%+v\n", app)
}
```

200 example

```
{
  "errors": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "messages": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "success": true,
  "result": {
    "id": "023e105f4ecef8ad9ca31a8372d0c353",
    "created_on": "2014-01-01T05:20:00.12345Z",
    "dns": {
      "name": "ssh.example.com",
      "type": "CNAME"
    },
    "modified_on": "2014-01-01T05:20:00.12345Z",
    "protocol": "tcp/22",
    "traffic_type": "direct",
    "argo_smart_routing": true,
    "edge_ips": {
      "connectivity": "all",
      "type": "dynamic"
    },
    "ip_firewall": false,
    "origin_direct": [
      "tcp://127.0.0.1:8080"
    ],
    "origin_dns": {
      "name": "origin.example.com",
      "ttl": 600,
      "type": ""
    },
    "origin_port": 22,
    "origin_worker_id": "277b7815c871434b960b60729659000a",
    "proxy_protocol": "off",
    "tls": "off",
    "virtual_network_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e"
  }
}
```

##### Returns Examples

200 example

```
{
  "errors": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "messages": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "success": true,
  "result": {
    "id": "023e105f4ecef8ad9ca31a8372d0c353",
    "created_on": "2014-01-01T05:20:00.12345Z",
    "dns": {
      "name": "ssh.example.com",
      "type": "CNAME"
    },
    "modified_on": "2014-01-01T05:20:00.12345Z",
    "protocol": "tcp/22",
    "traffic_type": "direct",
    "argo_smart_routing": true,
    "edge_ips": {
      "connectivity": "all",
      "type": "dynamic"
    },
    "ip_firewall": false,
    "origin_direct": [
      "tcp://127.0.0.1:8080"
    ],
    "origin_dns": {
      "name": "origin.example.com",
      "ttl": 600,
      "type": ""
    },
    "origin_port": 22,
    "origin_worker_id": "277b7815c871434b960b60729659000a",
    "proxy_protocol": "off",
    "tls": "off",
    "virtual_network_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e"
  }
}
```