cloudflare

package
v0.5.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 27, 2026 License: Apache-2.0 Imports: 16 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Client

type Client struct {
	Token string

	BaseURL string
	// contains filtered or unexported fields
}

func NewClient

func NewClient(http core.HTTPContext, ctx core.IntegrationContext) (*Client, error)

func (*Client) CreateRedirectRule

func (c *Client) CreateRedirectRule(zoneID, rulesetID string, req CreateRedirectRuleRequest) (*RedirectRule, error)

CreateRedirectRule creates a new redirect rule in a zone's ruleset

func (*Client) GetRulesetForPhase

func (c *Client) GetRulesetForPhase(zoneID, phase string) (*Ruleset, error)

GetRulesetForPhase gets the ruleset ID for a specific phase in a zone

func (*Client) ListRedirectRules

func (c *Client) ListRedirectRules(zoneID string) ([]RedirectRule, error)

ListRedirectRules retrieves all redirect rules for a zone

func (*Client) ListZones

func (c *Client) ListZones() ([]Zone, error)

ListZones retrieves all zones accessible with the API token

func (*Client) UpdateRedirectRule

func (c *Client) UpdateRedirectRule(zoneID, rulesetID, ruleID string, req UpdateRedirectRuleRequest) (*RedirectRule, error)

UpdateRedirectRule updates a specific redirect rule in a zone's ruleset

type Cloudflare

type Cloudflare struct{}

func (*Cloudflare) CleanupWebhook

func (c *Cloudflare) CleanupWebhook(ctx core.CleanupWebhookContext) error

func (*Cloudflare) CompareWebhookConfig

func (c *Cloudflare) CompareWebhookConfig(a, b any) (bool, error)

func (*Cloudflare) Components

func (c *Cloudflare) Components() []core.Component

func (*Cloudflare) Configuration

func (c *Cloudflare) Configuration() []configuration.Field

func (*Cloudflare) Description

func (c *Cloudflare) Description() string

func (*Cloudflare) HandleRequest

func (c *Cloudflare) HandleRequest(ctx core.HTTPRequestContext)

func (*Cloudflare) Icon

func (c *Cloudflare) Icon() string

func (*Cloudflare) Instructions

func (c *Cloudflare) Instructions() string

func (*Cloudflare) Label

func (c *Cloudflare) Label() string

func (*Cloudflare) ListResources

func (c *Cloudflare) ListResources(resourceType string, ctx core.ListResourcesContext) ([]core.IntegrationResource, error)

func (*Cloudflare) Name

func (c *Cloudflare) Name() string

func (*Cloudflare) SetupWebhook

func (c *Cloudflare) SetupWebhook(ctx core.SetupWebhookContext) (any, error)

func (*Cloudflare) Sync

func (c *Cloudflare) Sync(ctx core.SyncContext) error

func (*Cloudflare) Triggers

func (c *Cloudflare) Triggers() []core.Trigger

type Configuration

type Configuration struct {
	APIToken string `json:"apiToken"`
}

type CreateRedirectRuleRequest

type CreateRedirectRuleRequest struct {
	Action      string              `json:"action"`
	Expression  string              `json:"expression"`
	Description string              `json:"description,omitempty"`
	Enabled     bool                `json:"enabled"`
	ActionParam *RedirectActionData `json:"action_parameters,omitempty"`
}

CreateRedirectRuleRequest is the payload for creating a new redirect rule

type Metadata

type Metadata struct {
	Zones []Zone `json:"zones"`
}

type RedirectActionData

type RedirectActionData struct {
	FromValue *RedirectFromValue `json:"from_value,omitempty"`
}

RedirectActionData contains the redirect configuration

type RedirectFromValue

type RedirectFromValue struct {
	StatusCode       int                `json:"status_code"`
	TargetURL        *RedirectTargetURL `json:"target_url,omitempty"`
	PreserveQueryStr bool               `json:"preserve_query_string,omitempty"`
}

RedirectFromValue defines the redirect target

type RedirectRule

type RedirectRule struct {
	ID          string              `json:"id,omitempty"`
	Action      string              `json:"action"`
	Expression  string              `json:"expression"`
	Description string              `json:"description,omitempty"`
	Enabled     bool                `json:"enabled"`
	ActionParam *RedirectActionData `json:"action_parameters,omitempty"`
}

RedirectRule represents a single redirect rule in a ruleset

type RedirectTargetURL

type RedirectTargetURL struct {
	Value      string `json:"value,omitempty"`
	Expression string `json:"expression,omitempty"`
}

RedirectTargetURL defines the target URL for redirect

type Ruleset

type Ruleset struct {
	ID          string         `json:"id"`
	Name        string         `json:"name"`
	Description string         `json:"description"`
	Kind        string         `json:"kind"`
	Phase       string         `json:"phase"`
	Rules       []RedirectRule `json:"rules"`
}

Ruleset represents a Cloudflare ruleset

type UpdateRedirectRule

type UpdateRedirectRule struct{}

func (*UpdateRedirectRule) Actions

func (c *UpdateRedirectRule) Actions() []core.Action

func (*UpdateRedirectRule) Cancel

func (*UpdateRedirectRule) Color

func (c *UpdateRedirectRule) Color() string

func (*UpdateRedirectRule) Configuration

func (c *UpdateRedirectRule) Configuration() []configuration.Field

func (*UpdateRedirectRule) Description

func (c *UpdateRedirectRule) Description() string

func (*UpdateRedirectRule) Documentation

func (c *UpdateRedirectRule) Documentation() string

func (*UpdateRedirectRule) ExampleOutput

func (c *UpdateRedirectRule) ExampleOutput() map[string]any

func (*UpdateRedirectRule) Execute

func (*UpdateRedirectRule) HandleAction

func (c *UpdateRedirectRule) HandleAction(ctx core.ActionContext) error

func (*UpdateRedirectRule) HandleWebhook

func (c *UpdateRedirectRule) HandleWebhook(ctx core.WebhookRequestContext) (int, error)

func (*UpdateRedirectRule) Icon

func (c *UpdateRedirectRule) Icon() string

func (*UpdateRedirectRule) Label

func (c *UpdateRedirectRule) Label() string

func (*UpdateRedirectRule) Name

func (c *UpdateRedirectRule) Name() string

func (*UpdateRedirectRule) OutputChannels

func (c *UpdateRedirectRule) OutputChannels(configuration any) []core.OutputChannel

func (*UpdateRedirectRule) ProcessQueueItem

func (c *UpdateRedirectRule) ProcessQueueItem(ctx core.ProcessQueueContext) (*uuid.UUID, error)

func (*UpdateRedirectRule) Setup

func (c *UpdateRedirectRule) Setup(ctx core.SetupContext) error

type UpdateRedirectRuleMetadata

type UpdateRedirectRuleMetadata struct {
	Zone *Zone `json:"zone"`
}

type UpdateRedirectRuleRequest

type UpdateRedirectRuleRequest struct {
	Action      string              `json:"action"`
	Expression  string              `json:"expression"`
	Description string              `json:"description,omitempty"`
	Enabled     bool                `json:"enabled"`
	ActionParam *RedirectActionData `json:"action_parameters,omitempty"`
}

UpdateRedirectRuleRequest is the payload for updating a redirect rule

type UpdateRedirectRuleSpec

type UpdateRedirectRuleSpec struct {
	Zone             string `json:"zone"`
	RuleID           string `json:"ruleId"`
	Description      string `json:"description"`
	MatchType        string `json:"matchType"`
	SourceURLPattern string `json:"sourceUrlPattern"`
	Expression       string `json:"expression"`
	TargetURL        string `json:"targetUrl"`
	StatusCode       string `json:"statusCode"`
	PreserveQueryStr bool   `json:"preserveQueryString"`
	Enabled          bool   `json:"enabled"`
}

type Zone

type Zone struct {
	ID     string `json:"id"`
	Name   string `json:"name"`
	Status string `json:"status"`
}

Zone represents a Cloudflare zone

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL