bbb

package module
v0.6.0 Latest Latest
Warning

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

Go to latest
Published: Oct 14, 2026 License: MIT Imports: 12 Imported by: 0

README

Better Business Bureau clients for Crawlora

Official Crawlora client packages for the hosted Better Business Bureau API. Access 17 API endpoints covering business search, profiles, complaints, reviews, categories, and ScamTracker reports from JavaScript/TypeScript, Python, Go, Ruby, Java, and PHP. These clients call Crawlora's hosted API; they do not scrape Better Business Bureau locally. Requests use your Crawlora account and CRAWLORA_API_KEY; service usage follows your account billing plan. Crawlora is independent from and not affiliated with or endorsed by Better Business Bureau or its owners.

Language packages

For installation and runnable examples, use the README for your language. See the API endpoint and parameter reference for shared operation details.

Create an account at crawlora.net, open the Crawlora console to get an API key, or read the API documentation. Keep CRAWLORA_API_KEY out of source control.

API coverage and supported endpoints

The six language clients provide access to all 17 selected public Better Business Bureau API operations. Search or browse by endpoint path and operation ID below; the complete API reference adds parameters, enums, and response details.

Method Endpoint API operation Description
GET /bbb/article bbb-article Get a BBB article
GET /bbb/business bbb-business Get a Better Business Bureau business profile
GET /bbb/business/complaints bbb-business-complaints Get a Better Business Bureau business's complaint history
GET /bbb/business/more-info bbb-business-more-info Get a Better Business Bureau business's full rating reasons and service area
GET /bbb/business/reviews bbb-business-reviews Get a Better Business Bureau business's customer reviews
GET /bbb/category bbb-category Browse a Better Business Bureau category
GET /bbb/local-bbb bbb-local-bbb Get a local BBB chapter profile
GET /bbb/local-bbbs bbb-local-bbbs List local BBB chapters serving a region
GET /bbb/news bbb-news Get BBB newsroom stories
GET /bbb/news/topics bbb-news-topics List BBB newsroom topics
GET /bbb/page bbb-page Get a BBB evergreen page
GET /bbb/regions bbb-regions List Better Business Bureau directory regions
GET /bbb/scamtracker/search bbb-scamtracker-search Search Better Business Bureau Scam Tracker reports
GET /bbb/scamtracker/state-stats bbb-scamtracker-state-stats Get Better Business Bureau Scam Tracker state/province aggregate stats
GET /bbb/scamtracker/{id} bbb-scamtracker-detail Get a Better Business Bureau Scam Tracker report
GET /bbb/search bbb-search Search Better Business Bureau businesses
GET /bbb/search/filters bbb-search-filters Discover Better Business Bureau search filters

License

MIT. See LICENSE.

Documentation

Overview

Package bbb is Crawlora's Better Business Bureau API client for 17 endpoints, covering business search, profiles, complaints, reviews, categories, and ScamTracker reports. API documentation: https://crawlora.net/docs?utm_source=pkg.go.dev&utm_medium=referral&utm_campaign=platform-clients&utm_content=bbb-go-api-docs

Index

Examples

Constants

View Source
const (
	DefaultBaseURL = "https://api.crawlora.net/api/v1"
	Version        = "0.6.0"
)
View Source
const OperationCount = 17

OperationCount reports how many selected-platform operations this module exposes.

Variables

This section is empty.

Functions

func OperationIDs

func OperationIDs() []string

OperationIDs returns the selected operation IDs in stable sorted order.

Types

type Client

type Client struct {
	APIKey     string
	BaseURL    string
	Timeout    time.Duration
	HTTPClient *http.Client
}

Client calls only the operation IDs included in this platform module.

func NewClient

func NewClient(apiKey string) *Client

NewClient creates a client using the supplied API key, or CRAWLORA_API_KEY when empty.

func (*Client) Article added in v0.2.0

func (c *Client) Article(ctx context.Context, params Params) (any, error)

Article calls the bbb-article operation.

func (*Client) Business

func (c *Client) Business(ctx context.Context, params Params) (any, error)

Business calls the bbb-business operation.

func (*Client) BusinessComplaints

func (c *Client) BusinessComplaints(ctx context.Context, params Params) (any, error)

BusinessComplaints calls the bbb-business-complaints operation.

func (*Client) BusinessMoreInfo

func (c *Client) BusinessMoreInfo(ctx context.Context, params Params) (any, error)

BusinessMoreInfo calls the bbb-business-more-info operation.

func (*Client) BusinessReviews

func (c *Client) BusinessReviews(ctx context.Context, params Params) (any, error)

BusinessReviews calls the bbb-business-reviews operation.

func (*Client) Call

func (c *Client) Call(ctx context.Context, operationID string, params Params) (any, error)

Call executes a selected platform operation by operation ID.

Example
server := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, _ *http.Request) {
	w.Header().Set("Content-Type", "application/json")
	_, _ = w.Write([]byte(`{"ok":true}`))
}))
defer server.Close()

client := NewClient("your-crawlora-api-key")
client.BaseURL = server.URL + "/api/v1"
client.HTTPClient = server.Client()
result, err := client.Call(context.Background(), "bbb-article", Params{"url": "sample"})
if err != nil {
	panic(err)
}
fmt.Println(result.(map[string]any)["ok"])
Output:
true

func (*Client) Category

func (c *Client) Category(ctx context.Context, params Params) (any, error)

Category calls the bbb-category operation.

func (*Client) Close

func (c *Client) Close() error

Close releases idle connections held by the configured HTTP transport.

func (*Client) LocalBbb added in v0.2.0

func (c *Client) LocalBbb(ctx context.Context, params Params) (any, error)

LocalBbb calls the bbb-local-bbb operation.

func (*Client) LocalBbbs added in v0.2.0

func (c *Client) LocalBbbs(ctx context.Context, params Params) (any, error)

LocalBbbs calls the bbb-local-bbbs operation.

func (*Client) News added in v0.2.0

func (c *Client) News(ctx context.Context, params Params) (any, error)

News calls the bbb-news operation.

func (*Client) NewsTopics added in v0.2.0

func (c *Client) NewsTopics(ctx context.Context, params Params) (any, error)

NewsTopics calls the bbb-news-topics operation.

func (*Client) Page added in v0.6.0

func (c *Client) Page(ctx context.Context, params Params) (any, error)

Page calls the bbb-page operation.

func (*Client) Regions added in v0.2.0

func (c *Client) Regions(ctx context.Context, params Params) (any, error)

Regions calls the bbb-regions operation.

func (*Client) ScamtrackerDetail

func (c *Client) ScamtrackerDetail(ctx context.Context, params Params) (any, error)

ScamtrackerDetail calls the bbb-scamtracker-detail operation.

func (*Client) ScamtrackerSearch

func (c *Client) ScamtrackerSearch(ctx context.Context, params Params) (any, error)

ScamtrackerSearch calls the bbb-scamtracker-search operation.

func (*Client) ScamtrackerStateStats

func (c *Client) ScamtrackerStateStats(ctx context.Context, params Params) (any, error)

ScamtrackerStateStats calls the bbb-scamtracker-state-stats operation.

func (*Client) Search

func (c *Client) Search(ctx context.Context, params Params) (any, error)

Search calls the bbb-search operation.

func (*Client) SearchFilters added in v0.2.0

func (c *Client) SearchFilters(ctx context.Context, params Params) (any, error)

SearchFilters calls the bbb-search-filters operation.

type Params

type Params map[string]any

Params maps the exact OpenAPI parameter names expected by this platform client.

Jump to

Keyboard shortcuts

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