Skip to content

dimuska139/rawg-sdk-go

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RAWG Video Games Database Golang client

Build Status codecov Go Report Card License Mentioned in Awesome Go

This is unofficial RAWG SDK GO. This library contains methods for interacting with RAWG API.

Installation

go get github.com/dimuska139/rawg-sdk-go

Usage

package main

import (
    "context"
    "fmt"
    "net/http"
    "strings"
    "time"
    "github.com/dimuska139/rawg-sdk-go/v3"
)

func main() {
    config := rawg.Config{
        ApiKey:  "yourapikey", // Your personal API key (see https://rawg.io/apidocs)
        Language: "ru",
        Rps:      5,
    }
    client := rawg.NewClient(http.DefaultClient, &config)
    
    filter := rawg.NewGamesFilter().
        SetSearch("Gta5").
        SetPage(1).
        SetPageSize(10).
        ExcludeCollection(1).
        WithoutParents()
    
    ctx, cancel := context.WithTimeout(context.Background(), time.Duration(time.Millisecond*500))
    defer cancel()
    data, total, err := client.GetGames(ctx, filter)

    ...
}

The tests should be considered a part of the documentation. Also you can read official docs.

API limitations

Only 5 requests per second allowed from one IP. The "Rps" parameter in configuration performs this limitation. So you don't worry about it.

License

RAWG SDK GO is released under the MIT License.