Firmreader Docs Online logo

Go

Узнайте, как установить и использовать Go SDK Firmreader (требуется Go 1.21+), чтобы создавать публикации, просматривать их список и обрабатывать ошибки API.

Для Go SDK требуется Go 1.21 или новее. Каждый метод принимает context.Context, чтобы вы могли применять тайм-ауты и отмену.

Установка

go get github.com/firmreader/firmreader-go

Инициализация клиента

package main

import (
	"os"

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

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

Создание публикации

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)

Получение списка публикаций

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)
}

Обработка ошибок

Клиент возвращает *firmreader.Error для ответов с кодами, отличными от 2xx. Используйте errors.As, чтобы получить статус и код.

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

Указывайте firmreader.WithIdempotencyKey("...") при любой операции записи, чтобы повторные попытки не создавали дубликаты публикаций.

Last updated on