---
title: Get Rate Plan by Public Key
---

[Skip to content](#_top)

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

[Billing](https://developers.cloudflare.com/api/go/resources/billing)

[Rate Plans](https://developers.cloudflare.com/api/go/resources/billing/subresources/rate_plans)

Copy Markdown

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

---

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

# Get Rate Plan by Public Key

client.Billing.RatePlans.Get(ctx, publicKey) (\*[RatePlanGetResponse](<https://developers.cloudflare.com/api/go/resources/billing#(resource)%20billing.rate_plans%20%3E%20(model)%20RatePlanGetResponse%20%3E%20(schema)>), error)

GET/billing/rate\_plans/{public\_key}

Gets a rate plan’s details by its public key (e.g., ‘teams\_free’, ‘cf\_pro\_20\_20’). This is a public catalog endpoint, so authentication is not enforced and credentials are accepted but not required.

##### 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>

##### ParametersExpand Collapse

publicKey string

[Link to this property](<#(resource)%20billing.rate_plans%20%3E%20(method)%20get%20%3E%20(params)%20default%20%3E%20(param)%20public_key%20%3E%20(schema)>)

##### ReturnsExpand Collapse

<details>

<summary>

type RatePlanGetResponse struct{…}

</summary>

ID stringOptional

The uppercase rate plan public key.

<a href="#(resource)%20billing.rate_plans%20%3E%20(model)%20RatePlanGetResponse%20%3E%20(schema)%20%3E%20(property)%20id">Link to this property</a>

Components \[]map\[string, unknown]Optional

Pricing components that make up this rate plan.

<a href="#(resource)%20billing.rate_plans%20%3E%20(model)%20RatePlanGetResponse%20%3E%20(schema)%20%3E%20(property)%20components">Link to this property</a>

Currency stringOptional

Currency of the rate plan pricing.

<a href="#(resource)%20billing.rate_plans%20%3E%20(model)%20RatePlanGetResponse%20%3E%20(schema)%20%3E%20(property)%20currency">Link to this property</a>

PublicName stringOptional

Human-readable description of the rate plan.

<a href="#(resource)%20billing.rate_plans%20%3E%20(model)%20RatePlanGetResponse%20%3E%20(schema)%20%3E%20(property)%20public_name">Link to this property</a>

</details>

[Link to this property](<#(resource)%20billing.rate_plans%20%3E%20(model)%20RatePlanGetResponse%20%3E%20(schema)>)

### Get Rate Plan by Public Key

Go

HTTPTypeScriptPythonGoTerraform

```
package main

import (
  "context"
  "fmt"

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

func main() {
  client := cloudflare.NewClient(
    option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"),
  )
  ratePlan, err := client.Billing.RatePlans.Get(context.TODO(), "teams_free")
  if err != nil {
    panic(err.Error())
  }
  fmt.Printf("%+v\n", ratePlan.ID)
}
```

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"
      }
    }
  ],
  "result": {
    "id": "TEAMS_FREE",
    "components": [
      {
        "foo": "bar"
      }
    ],
    "currency": "USD",
    "public_name": "Cloudflare Teams Free"
  },
  "success": true
}
```

##### 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"
      }
    }
  ],
  "result": {
    "id": "TEAMS_FREE",
    "components": [
      {
        "foo": "bar"
      }
    ],
    "currency": "USD",
    "public_name": "Cloudflare Teams Free"
  },
  "success": true
}
```