Skip to content

alexraskin/thecatapi-gosdk

Repository files navigation

The Cat API Go SDK 🐱

Welcome to the The Cat API Go SDK! This purr-fectly crafted library allows you to interact with The Cat API.

Getting Started

client := thecatapi.NewClient(thecatapi.WithAPIKey("YOUR-API-KEY"))

Images

Search for some cats photos

cats, err := client.SearchCats(
    thecatapi.WithSize(thecatapi.SizeSmall),
    thecatapi.WithLimit(10),
)
if err != nil {
    log.Fatalf("Error fetching cats: %v", err)
}

for _, cat := range cats {
    fmt.Printf("Cat ID: %s, URL: %s\n", cat.ID, cat.URL)
}

Breeds

search for breeds

breeds, err := client.GetBreeds(thecatapi.WithBreedLimit(5))
if err != nil {
    log.Fatalf("Error fetching breeds: %v", err)
}

for _, breed := range breeds {
    fmt.Printf("Breed: %s, Origin: %s\n", breed.Name, breed.Origin)
}

Upload

upload cat photos :)

filePath := "testdata/cat.jpg"

image, err := os.ReadFile(filePath)
if err != nil {
    log.Fatal(err)
}

upload, err := client.UploadImage(image, "cosmo.jpg")
if err != nil {
    log.Fatal(err)
}

fmt.Println(upload.ID)

About

No description or website provided.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages