Firmreader Docs Online logo

Go

Installez et utilisez le SDK Go de Firmreader (Go 1.21 ou version ultérieure) pour créer et lister des posts et gérer les erreurs d’API.

Le SDK Go nécessite Go 1.21 ou une version ultérieure. Chaque méthode accepte un context.Context, ce qui vous permet d’appliquer des délais d’expiration et d’annuler les opérations.

Installer

go get github.com/firmreader/firmreader-go

Initialiser le client

package main

import (
	"os"

	"github.com/firmreader/firmreader-go"
)

func main() {
	client := firmreader.NewClient(os.Getenv("FIRMREADER_API_KEY")) // fr_live_...
	_ = client
}

Créer un post

post, err := client.Posts.Create(ctx, &firmreader.PostParams{
	ChannelID: "ch_company_news",
	Title:     "Welcome to Firmreader",
	Body:      "We're excited to announce our new internal communications platform.",
	Priority:  "normal",
})
if err != nil {
	log.Fatal(err)
}

fmt.Printf("Published post %s\n", post.ID)

Lister les posts

posts, err := client.Posts.List(ctx, &firmreader.ListParams{
	ChannelID: "ch_company_news",
	Limit:     20,
})
if err != nil {
	log.Fatal(err)
}

for _, post := range posts.Data {
	fmt.Println(post.Title)
}

Gérer les erreurs

Le client renvoie une *firmreader.Error pour les réponses qui ne sont pas en 2xx. Utilisez errors.As pour lire le statut et le code.

var apiErr *firmreader.Error
if errors.As(err, &apiErr) {
	fmt.Printf("%d: %s\n", apiErr.Status, apiErr.Code)
}

Définissez firmreader.WithIdempotencyKey("...") lors de tout appel d’écriture afin que les nouvelles tentatives ne créent pas de posts en double.

Last updated on