Skip to content

Commit

Permalink
feat(api): OpenAPI spec update
Browse files Browse the repository at this point in the history
  • Loading branch information
stainless-bot committed Feb 1, 2024
1 parent 59dc389 commit fce499f
Show file tree
Hide file tree
Showing 59 changed files with 246 additions and 119 deletions.
5 changes: 3 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,8 +39,9 @@ import (

func main() {
client := cloudflare.NewClient(
option.WithAPIKey("my-cloudflare-api-key"), // defaults to os.LookupEnv("CLOUDFLARE_API_KEY")
option.WithEmail("dev@cloudflare.com"), // defaults to os.LookupEnv("CLOUDFLARE_EMAIL")
option.WithAPIKey("144c9defac04969c7bfad8efaa8ea194"), // defaults to os.LookupEnv("CLOUDFLARE_API_KEY")
option.WithEmail("dev@cloudflare.com"), // defaults to os.LookupEnv("CLOUDFLARE_EMAIL")
option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"), // defaults to os.LookupEnv("CLOUDFLARE_API_TOKEN")
)
zoneNewResponse, err := client.Zones.New(context.TODO(), cloudflare.ZoneNewParams{
Account: cloudflare.F(cloudflare.ZoneNewParamsAccount{
Expand Down
9 changes: 6 additions & 3 deletions client.go
Original file line number Diff line number Diff line change
Expand Up @@ -18,9 +18,9 @@ type Client struct {
}

// NewClient generates a new client with the default option read from the
// environment (CLOUDFLARE_API_KEY, CLOUDFLARE_EMAIL). The option passed in as
// arguments are applied after these default arguments, and all option will be
// passed down to the services and requests that this client makes.
// environment (CLOUDFLARE_API_KEY, CLOUDFLARE_EMAIL, CLOUDFLARE_API_TOKEN). The
// option passed in as arguments are applied after these default arguments, and all
// option will be passed down to the services and requests that this client makes.
func NewClient(opts ...option.RequestOption) (r *Client) {
defaults := []option.RequestOption{option.WithEnvironmentProduction()}
if o, ok := os.LookupEnv("CLOUDFLARE_API_KEY"); ok {
Expand All @@ -29,6 +29,9 @@ func NewClient(opts ...option.RequestOption) (r *Client) {
if o, ok := os.LookupEnv("CLOUDFLARE_EMAIL"); ok {
defaults = append(defaults, option.WithEmail(o))
}
if o, ok := os.LookupEnv("CLOUDFLARE_API_TOKEN"); ok {
defaults = append(defaults, option.WithAPIToken(o))
}
opts = append(defaults, opts...)

r = &Client{Options: opts}
Expand Down
1 change: 1 addition & 0 deletions internal/requestconfig/requestconfig.go
Original file line number Diff line number Diff line change
Expand Up @@ -148,6 +148,7 @@ type RequestConfig struct {
Middlewares []middleware
APIKey string
Email string
APIToken string
// If ResponseBodyInto not nil, then we will attempt to deserialize into
// ResponseBodyInto. If Destination is a []byte, then it will return the body as
// is.
Expand Down
8 changes: 8 additions & 0 deletions option/requestoption.go
Original file line number Diff line number Diff line change
Expand Up @@ -202,3 +202,11 @@ func WithEmail(value string) RequestOption {
return r.Apply(WithHeader("x-auth-email", value))
}
}

// WithAPIToken returns a RequestOption that sets the client setting "api_token".
func WithAPIToken(value string) RequestOption {
return func(r *requestconfig.RequestConfig) error {
r.APIToken = value
return r.Apply(WithHeader("authoriazaion", value))
}
}
3 changes: 2 additions & 1 deletion usage_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -22,8 +22,9 @@ func TestUsage(t *testing.T) {
}
client := cloudflare.NewClient(
option.WithBaseURL(baseURL),
option.WithAPIKey("my-cloudflare-api-key"),
option.WithAPIKey("144c9defac04969c7bfad8efaa8ea194"),
option.WithEmail("dev@cloudflare.com"),
option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"),
)
zoneNewResponse, err := client.Zones.New(context.TODO(), cloudflare.ZoneNewParams{
Account: cloudflare.F(cloudflare.ZoneNewParamsAccount{
Expand Down
15 changes: 10 additions & 5 deletions zone_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,9 @@ func TestZoneNewWithOptionalParams(t *testing.T) {
}
client := cloudflare.NewClient(
option.WithBaseURL(baseURL),
option.WithAPIKey("my-cloudflare-api-key"),
option.WithAPIKey("144c9defac04969c7bfad8efaa8ea194"),
option.WithEmail("dev@cloudflare.com"),
option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"),
)
_, err := client.Zones.New(context.TODO(), cloudflare.ZoneNewParams{
Account: cloudflare.F(cloudflare.ZoneNewParamsAccount{
Expand Down Expand Up @@ -52,8 +53,9 @@ func TestZoneGet(t *testing.T) {
}
client := cloudflare.NewClient(
option.WithBaseURL(baseURL),
option.WithAPIKey("my-cloudflare-api-key"),
option.WithAPIKey("144c9defac04969c7bfad8efaa8ea194"),
option.WithEmail("dev@cloudflare.com"),
option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"),
)
_, err := client.Zones.Get(context.TODO(), "023e105f4ecef8ad9ca31a8372d0c353")
if err != nil {
Expand All @@ -75,8 +77,9 @@ func TestZoneUpdateWithOptionalParams(t *testing.T) {
}
client := cloudflare.NewClient(
option.WithBaseURL(baseURL),
option.WithAPIKey("my-cloudflare-api-key"),
option.WithAPIKey("144c9defac04969c7bfad8efaa8ea194"),
option.WithEmail("dev@cloudflare.com"),
option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"),
)
_, err := client.Zones.Update(
context.TODO(),
Expand Down Expand Up @@ -108,8 +111,9 @@ func TestZoneListWithOptionalParams(t *testing.T) {
}
client := cloudflare.NewClient(
option.WithBaseURL(baseURL),
option.WithAPIKey("my-cloudflare-api-key"),
option.WithAPIKey("144c9defac04969c7bfad8efaa8ea194"),
option.WithEmail("dev@cloudflare.com"),
option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"),
)
_, err := client.Zones.List(context.TODO(), cloudflare.ZoneListParams{
Account: cloudflare.F(cloudflare.ZoneListParamsAccount{
Expand Down Expand Up @@ -144,8 +148,9 @@ func TestZoneDelete(t *testing.T) {
}
client := cloudflare.NewClient(
option.WithBaseURL(baseURL),
option.WithAPIKey("my-cloudflare-api-key"),
option.WithAPIKey("144c9defac04969c7bfad8efaa8ea194"),
option.WithEmail("dev@cloudflare.com"),
option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"),
)
_, err := client.Zones.Delete(context.TODO(), "023e105f4ecef8ad9ca31a8372d0c353")
if err != nil {
Expand Down
6 changes: 4 additions & 2 deletions zonednssec_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,9 @@ func TestZoneDnssecGet(t *testing.T) {
}
client := cloudflare.NewClient(
option.WithBaseURL(baseURL),
option.WithAPIKey("my-cloudflare-api-key"),
option.WithAPIKey("144c9defac04969c7bfad8efaa8ea194"),
option.WithEmail("dev@cloudflare.com"),
option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"),
)
_, err := client.Zones.Dnssecs.Get(context.TODO(), "023e105f4ecef8ad9ca31a8372d0c353")
if err != nil {
Expand All @@ -46,8 +47,9 @@ func TestZoneDnssecUpdateWithOptionalParams(t *testing.T) {
}
client := cloudflare.NewClient(
option.WithBaseURL(baseURL),
option.WithAPIKey("my-cloudflare-api-key"),
option.WithAPIKey("144c9defac04969c7bfad8efaa8ea194"),
option.WithEmail("dev@cloudflare.com"),
option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"),
)
_, err := client.Zones.Dnssecs.Update(
context.TODO(),
Expand Down
15 changes: 10 additions & 5 deletions zoneloadbalancer_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,9 @@ func TestZoneLoadBalancerNewWithOptionalParams(t *testing.T) {
}
client := cloudflare.NewClient(
option.WithBaseURL(baseURL),
option.WithAPIKey("my-cloudflare-api-key"),
option.WithAPIKey("144c9defac04969c7bfad8efaa8ea194"),
option.WithEmail("dev@cloudflare.com"),
option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"),
)
_, err := client.Zones.LoadBalancers.New(
context.TODO(),
Expand Down Expand Up @@ -333,8 +334,9 @@ func TestZoneLoadBalancerGet(t *testing.T) {
}
client := cloudflare.NewClient(
option.WithBaseURL(baseURL),
option.WithAPIKey("my-cloudflare-api-key"),
option.WithAPIKey("144c9defac04969c7bfad8efaa8ea194"),
option.WithEmail("dev@cloudflare.com"),
option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"),
)
_, err := client.Zones.LoadBalancers.Get(
context.TODO(),
Expand All @@ -360,8 +362,9 @@ func TestZoneLoadBalancerUpdateWithOptionalParams(t *testing.T) {
}
client := cloudflare.NewClient(
option.WithBaseURL(baseURL),
option.WithAPIKey("my-cloudflare-api-key"),
option.WithAPIKey("144c9defac04969c7bfad8efaa8ea194"),
option.WithEmail("dev@cloudflare.com"),
option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"),
)
_, err := client.Zones.LoadBalancers.Update(
context.TODO(),
Expand Down Expand Up @@ -672,8 +675,9 @@ func TestZoneLoadBalancerList(t *testing.T) {
}
client := cloudflare.NewClient(
option.WithBaseURL(baseURL),
option.WithAPIKey("my-cloudflare-api-key"),
option.WithAPIKey("144c9defac04969c7bfad8efaa8ea194"),
option.WithEmail("dev@cloudflare.com"),
option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"),
)
_, err := client.Zones.LoadBalancers.List(context.TODO(), "699d98642c564d2e855e9661899b7252")
if err != nil {
Expand All @@ -695,8 +699,9 @@ func TestZoneLoadBalancerDelete(t *testing.T) {
}
client := cloudflare.NewClient(
option.WithBaseURL(baseURL),
option.WithAPIKey("my-cloudflare-api-key"),
option.WithAPIKey("144c9defac04969c7bfad8efaa8ea194"),
option.WithEmail("dev@cloudflare.com"),
option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"),
)
_, err := client.Zones.LoadBalancers.Delete(
context.TODO(),
Expand Down
6 changes: 4 additions & 2 deletions zoneratelimit_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,9 @@ func TestZoneRateLimitGet(t *testing.T) {
}
client := cloudflare.NewClient(
option.WithBaseURL(baseURL),
option.WithAPIKey("my-cloudflare-api-key"),
option.WithAPIKey("144c9defac04969c7bfad8efaa8ea194"),
option.WithEmail("dev@cloudflare.com"),
option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"),
)
_, err := client.Zones.RateLimits.Get(
context.TODO(),
Expand All @@ -50,8 +51,9 @@ func TestZoneRateLimitListWithOptionalParams(t *testing.T) {
}
client := cloudflare.NewClient(
option.WithBaseURL(baseURL),
option.WithAPIKey("my-cloudflare-api-key"),
option.WithAPIKey("144c9defac04969c7bfad8efaa8ea194"),
option.WithEmail("dev@cloudflare.com"),
option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"),
)
_, err := client.Zones.RateLimits.List(
context.TODO(),
Expand Down
6 changes: 4 additions & 2 deletions zonesetting_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,9 @@ func TestZoneSettingList(t *testing.T) {
}
client := cloudflare.NewClient(
option.WithBaseURL(baseURL),
option.WithAPIKey("my-cloudflare-api-key"),
option.WithAPIKey("144c9defac04969c7bfad8efaa8ea194"),
option.WithEmail("dev@cloudflare.com"),
option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"),
)
_, err := client.Zones.Settings.List(context.TODO(), "023e105f4ecef8ad9ca31a8372d0c353")
if err != nil {
Expand All @@ -47,8 +48,9 @@ func TestZoneSettingEdit(t *testing.T) {
}
client := cloudflare.NewClient(
option.WithBaseURL(baseURL),
option.WithAPIKey("my-cloudflare-api-key"),
option.WithAPIKey("144c9defac04969c7bfad8efaa8ea194"),
option.WithEmail("dev@cloudflare.com"),
option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"),
)
_, err := client.Zones.Settings.Edit(
context.TODO(),
Expand Down
3 changes: 2 additions & 1 deletion zonesettingadvancedddo_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,9 @@ func TestZoneSettingAdvancedDdoList(t *testing.T) {
}
client := cloudflare.NewClient(
option.WithBaseURL(baseURL),
option.WithAPIKey("my-cloudflare-api-key"),
option.WithAPIKey("144c9defac04969c7bfad8efaa8ea194"),
option.WithEmail("dev@cloudflare.com"),
option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"),
)
_, err := client.Zones.Settings.AdvancedDdos.List(context.TODO(), "023e105f4ecef8ad9ca31a8372d0c353")
if err != nil {
Expand Down
6 changes: 4 additions & 2 deletions zonesettingalwaysonline_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,9 @@ func TestZoneSettingAlwaysOnlineUpdate(t *testing.T) {
}
client := cloudflare.NewClient(
option.WithBaseURL(baseURL),
option.WithAPIKey("my-cloudflare-api-key"),
option.WithAPIKey("144c9defac04969c7bfad8efaa8ea194"),
option.WithEmail("dev@cloudflare.com"),
option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"),
)
_, err := client.Zones.Settings.AlwaysOnlines.Update(
context.TODO(),
Expand Down Expand Up @@ -52,8 +53,9 @@ func TestZoneSettingAlwaysOnlineList(t *testing.T) {
}
client := cloudflare.NewClient(
option.WithBaseURL(baseURL),
option.WithAPIKey("my-cloudflare-api-key"),
option.WithAPIKey("144c9defac04969c7bfad8efaa8ea194"),
option.WithEmail("dev@cloudflare.com"),
option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"),
)
_, err := client.Zones.Settings.AlwaysOnlines.List(context.TODO(), "023e105f4ecef8ad9ca31a8372d0c353")
if err != nil {
Expand Down
6 changes: 4 additions & 2 deletions zonesettingalwaysusehttp_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,9 @@ func TestZoneSettingAlwaysUseHTTPUpdate(t *testing.T) {
}
client := cloudflare.NewClient(
option.WithBaseURL(baseURL),
option.WithAPIKey("my-cloudflare-api-key"),
option.WithAPIKey("144c9defac04969c7bfad8efaa8ea194"),
option.WithEmail("dev@cloudflare.com"),
option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"),
)
_, err := client.Zones.Settings.AlwaysUseHTTPs.Update(
context.TODO(),
Expand Down Expand Up @@ -52,8 +53,9 @@ func TestZoneSettingAlwaysUseHTTPList(t *testing.T) {
}
client := cloudflare.NewClient(
option.WithBaseURL(baseURL),
option.WithAPIKey("my-cloudflare-api-key"),
option.WithAPIKey("144c9defac04969c7bfad8efaa8ea194"),
option.WithEmail("dev@cloudflare.com"),
option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"),
)
_, err := client.Zones.Settings.AlwaysUseHTTPs.List(context.TODO(), "023e105f4ecef8ad9ca31a8372d0c353")
if err != nil {
Expand Down
6 changes: 4 additions & 2 deletions zonesettingautomatichttpsrewrite_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,9 @@ func TestZoneSettingAutomaticHTTPsRewriteUpdate(t *testing.T) {
}
client := cloudflare.NewClient(
option.WithBaseURL(baseURL),
option.WithAPIKey("my-cloudflare-api-key"),
option.WithAPIKey("144c9defac04969c7bfad8efaa8ea194"),
option.WithEmail("dev@cloudflare.com"),
option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"),
)
_, err := client.Zones.Settings.AutomaticHTTPsRewrites.Update(
context.TODO(),
Expand Down Expand Up @@ -52,8 +53,9 @@ func TestZoneSettingAutomaticHTTPsRewriteList(t *testing.T) {
}
client := cloudflare.NewClient(
option.WithBaseURL(baseURL),
option.WithAPIKey("my-cloudflare-api-key"),
option.WithAPIKey("144c9defac04969c7bfad8efaa8ea194"),
option.WithEmail("dev@cloudflare.com"),
option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"),
)
_, err := client.Zones.Settings.AutomaticHTTPsRewrites.List(context.TODO(), "023e105f4ecef8ad9ca31a8372d0c353")
if err != nil {
Expand Down
6 changes: 4 additions & 2 deletions zonesettingautomaticplatformoptimization_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,9 @@ func TestZoneSettingAutomaticPlatformOptimizationUpdate(t *testing.T) {
}
client := cloudflare.NewClient(
option.WithBaseURL(baseURL),
option.WithAPIKey("my-cloudflare-api-key"),
option.WithAPIKey("144c9defac04969c7bfad8efaa8ea194"),
option.WithEmail("dev@cloudflare.com"),
option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"),
)
_, err := client.Zones.Settings.AutomaticPlatformOptimizations.Update(
context.TODO(),
Expand Down Expand Up @@ -59,8 +60,9 @@ func TestZoneSettingAutomaticPlatformOptimizationList(t *testing.T) {
}
client := cloudflare.NewClient(
option.WithBaseURL(baseURL),
option.WithAPIKey("my-cloudflare-api-key"),
option.WithAPIKey("144c9defac04969c7bfad8efaa8ea194"),
option.WithEmail("dev@cloudflare.com"),
option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"),
)
_, err := client.Zones.Settings.AutomaticPlatformOptimizations.List(context.TODO(), "023e105f4ecef8ad9ca31a8372d0c353")
if err != nil {
Expand Down
6 changes: 4 additions & 2 deletions zonesettingbrotli_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,9 @@ func TestZoneSettingBrotliUpdate(t *testing.T) {
}
client := cloudflare.NewClient(
option.WithBaseURL(baseURL),
option.WithAPIKey("my-cloudflare-api-key"),
option.WithAPIKey("144c9defac04969c7bfad8efaa8ea194"),
option.WithEmail("dev@cloudflare.com"),
option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"),
)
_, err := client.Zones.Settings.Brotli.Update(
context.TODO(),
Expand Down Expand Up @@ -52,8 +53,9 @@ func TestZoneSettingBrotliList(t *testing.T) {
}
client := cloudflare.NewClient(
option.WithBaseURL(baseURL),
option.WithAPIKey("my-cloudflare-api-key"),
option.WithAPIKey("144c9defac04969c7bfad8efaa8ea194"),
option.WithEmail("dev@cloudflare.com"),
option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"),
)
_, err := client.Zones.Settings.Brotli.List(context.TODO(), "023e105f4ecef8ad9ca31a8372d0c353")
if err != nil {
Expand Down
6 changes: 4 additions & 2 deletions zonesettingbrowsercachettls_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,9 @@ func TestZoneSettingBrowserCacheTTLSUpdate(t *testing.T) {
}
client := cloudflare.NewClient(
option.WithBaseURL(baseURL),
option.WithAPIKey("my-cloudflare-api-key"),
option.WithAPIKey("144c9defac04969c7bfad8efaa8ea194"),
option.WithEmail("dev@cloudflare.com"),
option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"),
)
_, err := client.Zones.Settings.BrowserCacheTTLS.Update(
context.TODO(),
Expand Down Expand Up @@ -52,8 +53,9 @@ func TestZoneSettingBrowserCacheTTLSList(t *testing.T) {
}
client := cloudflare.NewClient(
option.WithBaseURL(baseURL),
option.WithAPIKey("my-cloudflare-api-key"),
option.WithAPIKey("144c9defac04969c7bfad8efaa8ea194"),
option.WithEmail("dev@cloudflare.com"),
option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"),
)
_, err := client.Zones.Settings.BrowserCacheTTLS.List(context.TODO(), "023e105f4ecef8ad9ca31a8372d0c353")
if err != nil {
Expand Down
Loading

0 comments on commit fce499f

Please sign in to comment.