Files
m3o-go/qr/qr.go
2021-12-29 13:41:36 +00:00

42 lines
884 B
Go
Executable File

package qr
import (
"go.m3o.com/client"
)
type Qr interface {
Generate(*GenerateRequest) (*GenerateResponse, error)
}
func NewQrService(token string) *QrService {
return &QrService{
client: client.NewClient(&client.Options{
Token: token,
}),
}
}
type QrService struct {
client *client.Client
}
// Generate a QR code with a specific text and size
func (t *QrService) Generate(request *GenerateRequest) (*GenerateResponse, error) {
rsp := &GenerateResponse{}
return rsp, t.client.Call("qr", "Generate", request, rsp)
}
type GenerateRequest struct {
// the size (height and width) in pixels of the generated QR code. Defaults to 256
Size int64 `json:"size,string"`
// the text to encode as a QR code (URL, phone number, email, etc)
Text string `json:"text"`
}
type GenerateResponse struct {
// link to the QR code image in PNG format
Qr string `json:"qr"`
}