func ExampleClient_GetCandidates() { apiKey := os.Getenv("DATA_GOV_API_KEY") if apiKey == "" { apiKey = "DEMO_KEY" } client, err := openfec.NewClient(apiKey) if err != nil { log.Fatalln(client) } query := &openfec.CandidateQuery{ Sort: "name", Office: []openfec.Office{openfec.President}, Cycle: []int{2016}, } candidates, err := client.GetCandidates(query) if err != nil { log.Fatalln(err) } for candidates.Next() { c := candidates.Value() _ = c // do something with each candidate here } fmt.Println(err) // output: // <nil> }
func ExampleNewClient() { apiKey := os.Getenv("DATA_GOV_API_KEY") client, err := openfec.NewClient(apiKey) if err != nil { log.Fatalln(client) } candidates, err := client.GetCandidates(nil) fmt.Printf("err:%v\ntype1:%T\n", err, candidates) // output: // err:<nil> // type1:*openfec.CandidateIter }
func main() { apiKey := os.Getenv("DATA_GOV_API_KEY") if apiKey == "" { apiKey = "DEMO_KEY" } flag.Parse() client, err := openfec.NewClient(apiKey) if err != nil { log.Fatalln(client) } if *verbose { client.TraceOn(log.New(os.Stderr, "openfec: ", log.LstdFlags)) } query := &openfec.CandidateQuery{ Sort: "name", Office: []openfec.Office{openfec.President}, CandidateStatus: []openfec.CandidateStatus{openfec.PresentCandidate}, Cycle: []int{*year}, Party: *party, } candidates, err := client.GetCandidates(query) if err != nil { if err == openfec.ErrUnauthorized { fmt.Println("Authorization failure. Check the value of the 'DATA_GOV_API_KEY' environment variable.") os.Exit(1) } else { log.Fatalln(err) } } tmpl, err := template.New("format string").Parse(*format) if err != nil { log.Fatalln(err) } for candidates.Next() { value := candidates.Value() if *format == "json" { buf, _ := json.Marshal(value) fmt.Println(string(buf)) } else { tmpl.Execute(os.Stdout, value) fmt.Println() } } if candidates.Err() != nil { fmt.Println("Issue iterating candidates:", candidates.Err()) } }
func main() { apiKey := os.Getenv("DATA_GOV_API_KEY") if apiKey == "" { apiKey = "DEMO_KEY" } flag.Parse() client, err := openfec.NewClient(apiKey) if err != nil { log.Fatalln(client) } if *verbose { client.TraceOn(log.New(os.Stderr, "openfec: ", log.LstdFlags)) } filings, err := client.GetCandidateFilings(*candidate) if err != nil { if err == openfec.ErrUnauthorized { fmt.Println("Authorization failure. Check the value of the 'DATA_GOV_API_KEY' environment variable.") os.Exit(1) } else { log.Fatalln(err) } } tmpl, err := template.New("format string").Parse(*format) if err != nil { log.Fatalln(err) } for filings.Next() { value := filings.Value() if *format == "json" { buf, _ := json.Marshal(value) fmt.Println(string(buf)) } else { tmpl.Execute(os.Stdout, value) fmt.Println() } } if filings.Err() != nil { fmt.Println("Issue iterating filings:", filings.Err()) } }