Documentation
¶
Overview ¶
Package reddit is Crawlora's Reddit API client for 12 endpoints, covering search, post and comment details, subreddit feeds, user history, domain listings, trends, and leads. API documentation: https://crawlora.net/docs?utm_source=pkg.go.dev&utm_medium=referral&utm_campaign=platform-clients&utm_content=reddit-go-api-docs
Index ¶
- Constants
- func OperationIDs() []string
- type Client
- func (c *Client) Call(ctx context.Context, operationID string, params Params) (any, error)
- func (c *Client) Close() error
- func (c *Client) Comments(ctx context.Context, params Params) (any, error)
- func (c *Client) DomainPosts(ctx context.Context, params Params) (any, error)
- func (c *Client) Leads(ctx context.Context, params Params) (any, error)
- func (c *Client) Post(ctx context.Context, params Params) (any, error)
- func (c *Client) Search(ctx context.Context, params Params) (any, error)
- func (c *Client) SubredditAbout(ctx context.Context, params Params) (any, error)
- func (c *Client) SubredditComments(ctx context.Context, params Params) (any, error)
- func (c *Client) SubredditPosts(ctx context.Context, params Params) (any, error)
- func (c *Client) SubredditsPosts(ctx context.Context, params Params) (any, error)
- func (c *Client) Trends(ctx context.Context, params Params) (any, error)
- func (c *Client) UserComments(ctx context.Context, params Params) (any, error)
- func (c *Client) UserPosts(ctx context.Context, params Params) (any, error)
- type Params
Examples ¶
Constants ¶
const ( DefaultBaseURL = "https://api.crawlora.net/api/v1" Version = "0.2.0" )
const OperationCount = 12
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 ¶
Client calls only the operation IDs included in this platform module.
func NewClient ¶
NewClient creates a client using the supplied API key, or CRAWLORA_API_KEY when empty.
func (*Client) Call ¶
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(), "reddit-comments", Params{"id": "sample-id"})
if err != nil {
panic(err)
}
fmt.Println(result.(map[string]any)["ok"])
Output: true
func (*Client) DomainPosts ¶
DomainPosts calls the reddit-domain-posts operation.
func (*Client) SubredditAbout ¶
SubredditAbout calls the reddit-subreddit-about operation.
func (*Client) SubredditComments ¶
SubredditComments calls the reddit-subreddit-comments operation.
func (*Client) SubredditPosts ¶
SubredditPosts calls the reddit-subreddit-posts operation.
func (*Client) SubredditsPosts ¶
SubredditsPosts calls the reddit-subreddits-posts operation.
func (*Client) UserComments ¶
UserComments calls the reddit-user-comments operation.