Help us shape the future of Go! Take the 2026 Go Developer Survey

botcheckapi

package
v1.152.1 Latest Latest
Warning

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

Go to latest
Published: Oct 29, 2026 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Overview

Package botcheckapi is the admin REST surface for the named bot checks a bot_check endpoint picks from (#2173, #2259): each check's provider, its site key and the stored secret its key is in, and the proof of work's difficulty and how a flood raises it.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Register

func Register(mux *http.ServeMux, wrap func(http.Handler) http.Handler, cfg Config)

Register mounts the routes, each behind wrap, the admin API's authentication.

Types

type Config

type Config struct {
	Checks botcheck.Store
	// KeyAvailable is whether the deployment can sign a proof-of-work
	// challenge (auth.browser_session.signing_key).
	KeyAvailable bool
	// Secret reads the stored secret a provider's key is in, refusing one
	// the bot check may not use (botcheck.SecretUse).
	Secret func(ctx context.Context, name string) (string, error)
	// Author resolves the acting admin.
	Author func(*http.Request) string
}

Config carries the checks and what verifies them.

type List added in v1.152.0

type List struct {
	Checks []View `json:"checks"`
	// KeyAvailable is whether a proof-of-work challenge can be signed: a
	// deployment with no browser-session signing key cannot.
	KeyAvailable bool `json:"key_available"`
}

List is the list route's answer.

type View

type View struct {
	botcheck.Check
	// UsedBy is the endpoints that name the check; a check any endpoint names
	// cannot be deleted.
	UsedBy []string `json:"used_by"`
	// Usable is false for a proof of work on a deployment that cannot sign
	// one, which no endpoint can be bound to.
	Usable bool `json:"usable"`
}

View is one check as the settings page reads it.

Jump to

Keyboard shortcuts

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