replaycli-go/api/dataapi/lib.go

46 lines
993 B
Go
Raw Normal View History

2021-11-05 13:11:04 +00:00
package dataapi
import (
"go.digitalcircle.com.br/open/httpcli"
)
type DataApiOp string
const (
RETRIEVE DataApiOp = "R"
CREATE DataApiOp = "C"
DELETE DataApiOp = "D"
UPDATE DataApiOp = "U"
)
type DataAPIRequest struct {
Col string `json:"col"`
Q string `json:"q"`
Op DataApiOp `json:"op"`
Id string `json:"id"`
Data map[string]interface{} `json:"data"`
}
type DataAPIResponse struct {
Msg string `json:"msg"`
Id string `json:"id"`
Data []interface{} `json:"data"`
}
type Cli struct {
Httpcli *httpcli.Cli
}
func (c *Cli) Do(request *DataAPIRequest) (response *DataAPIResponse, err error) {
response = &DataAPIResponse{}
err = c.Httpcli.JsonPost("/", request, response)
return
}
2021-11-05 13:13:48 +00:00
func NewCli(apikey string) *Cli {
2021-11-05 13:11:04 +00:00
ret := &Cli{Httpcli: httpcli.NewCli()}
2021-11-05 13:13:48 +00:00
ret.Httpcli.AddHeader("X-API-KEY", apikey)
2021-11-05 13:11:04 +00:00
ret.Httpcli.SetBasePath("https://dataapi.digitalcircle.com.br")
return ret
}