rapito/go-shopify

Companion struct-types package ?

Opened this issue · 0 comments

@rapito How useful would you –or anyone who cares– say about having a package of up-to-date Shopify API response objects prewritten in nested struct types like so :

type OrdersEnv struct {
	Orders []Order `json:"orders"`
}
type Order struct {
	ID                  int    `json:"id"`
	Email               string `json:"email"`
	ClosedAt            string `json:"closed_at"`
	CreatedAt           string `json:"created_at"`
	Number              int    `json:"number"`
	Note                string `json:"note"`
	...
}

Not entirely sure if this will be efficient or not (a lot of unused key - values) compared to writing your own with just the needed keys, learning by doing here, so 😄. I'm thinking this could be great for quick unmarshaling of the response. Also a quick way to explore the Shopify API while fleshing out a program.

Currently on a go-trip myself, and starting out I found it hard and time consuming manually unmarshaling the responses to get to my desired fields. So I found myself halfway through doing this anyway for my own usage.

Since this package uses gorequest which has .EndStruct() it shouldn't be too much work to import this struct type library and add an option to return structs instead of []byte

Let me know if you think this is stuff for PR or fork