Skip to content

joeychilson/edgar

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

edgar

A Go library for accessing the SEC's EDGAR database.

Installation

go get github.com/joeychilson/edgar

Example

package main

import (
	"context"
	"log"

	"github.com/joeychilson/edgar"
)

func main() {
	ctx := context.Background()

	// You should set a custom user agent or you will be rate limited.
	client := edgar.NewClient(edgar.WithUserAgent("CompanyName <contact@email.com>"))

	tickers, err := client.SearchCompanies(ctx, &edgar.CompanyFilterOptions{
		Tickers: []string{"AAPL"},
	})
	if err != nil {
		log.Fatal(err)
	}

	filings, err := client.Filings(ctx, tickers[0].CIK, &edgar.FilingFilterOptions{
		Forms: []string{"10-K"},
	})
	if err != nil {
		log.Fatal(err)
	}

	files, err := client.FilingDirectory(ctx, tickers[0].CIK, filings[0].AccessionNumber, &edgar.FilingDirectoryFilterOptions{
		DocumentName: filings[0].PrimaryDocument,
	})
	if err != nil {
		log.Fatal(err)
	}

	contents, err := client.FileContents(ctx, files[0].URL)
	if err != nil {
		log.Fatal(err)
	}

	log.Println(string(contents))
}

About

A Go library for accessing the SEC's EDGAR database.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages