Go client for retailCRM API
Go to file
2018-04-22 20:44:53 +03:00
errs Add additional project-level error handler to separate runtime & api errors in one struct 2018-04-22 20:39:22 +03:00
v5 Add additional project-level error handler to separate runtime & api errors in one struct 2018-04-22 20:39:22 +03:00
.gitignore Travis CI configuration (#2) 2018-02-27 13:51:19 +03:00
.travis.yml minimal refactoring due to linter warnings, update .travis configuration 2018-03-19 23:18:36 +03:00
LICENSE remove pointers from response, update license, minor refactoring 2018-03-21 00:54:37 +03:00
README.md update readme 2018-04-22 20:44:53 +03:00

Build Status GitHub release GoLang version

retailCRM API Go client

This is golang retailCRM API client.

Install

go get -x github.com/retailcrm/api-client-go

Usage

package main

import (
	"fmt"
	"net/http"

	"github.com/retailcrm/api-client-go/v5"
)

func main() {
	var client = v5.New("https://demo.retailcrm.pro", "09jIJ09j0JKhgyfvyuUIKhiugF")

	data, status, err := client.Orders(v5.OrdersRequest{
		Filter: v5.OrdersFilter{},
		Limit: 20,
		Page: 1,
	},)
	if err.RuntimeErr != nil {
		fmt.Printf("%v", err.ErrorMsg)
	}

	if status >= http.StatusBadRequest {
		fmt.Printf("%v", err.ApiError())
	}

	for _, value := range data.Orders {
		fmt.Printf("%v\n", value.Email)
	}

	fmt.Println(data.Orders[1].FirstName)

	idata, status, err := c.InventoriesUpload(
        []InventoryUpload{
            {
                XMLID: "pTKIKAeghYzX21HTdzFCe1",
                Stores: []InventoryUploadStore{
                    {Code: "test-store-v5", Available: 10, PurchasePrice: 1500},
                    {Code: "test-store-v4", Available: 20, PurchasePrice: 1530},
                    {Code: "test-store", Available: 30, PurchasePrice: 1510},
                },
            },
            {
                XMLID: "JQIvcrCtiSpOV3AAfMiQB3",
                Stores: []InventoryUploadStore{
                    {Code: "test-store-v5", Available: 45, PurchasePrice: 1500},
                    {Code: "test-store-v4", Available: 32, PurchasePrice: 1530},
                    {Code: "test-store", Available: 46, PurchasePrice: 1510},
                },
            },
        },
    )
    if err.RuntimeErr != nil {
        fmt.Printf("%v", err.ErrorMsg)
    }

    if status >= http.StatusBadRequest {
        fmt.Printf("%v", err.ApiError())
    }

    fmt.Println(idata.processedOffersCount)
}

Documentation