shopify

package module
v3.0.5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 15, 2021 License: MIT Imports: 19 Imported by: 3

README

go-shopify-graphql

A simple client using the Shopify GraphQL Admin API.

Getting started

Hello World example

0. Setup
export STORE_API_KEY=<private_app_api_key>
export STORE_PASSWORD=<private_app_password>
export STORE_NAME=<store_name>
1. Program
package main

import (
    "fmt"

    shopify "github.com/r0busta/go-shopify-graphql/v3"
)

func main() {
    // Create client
    client := shopify.NewDefaultClient()

    // Get all collections
    collections, err := client.Collection.ListAll()
    if err != nil {
        panic(err)
    }

    // Print out the result
    for _, c := range collections {
        fmt.Println(c.Handle)
    }
}
3. Run
go run .

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type BulkOperationService

type BulkOperationService interface {
	BulkQuery(query string, v interface{}) error

	PostBulkQuery(query string) (null.String, error)
	GetCurrentBulkQuery() (*model.BulkOperation, error)
	GetCurrentBulkQueryResultURL() (string, error)
	WaitForCurrentBulkQuery(interval time.Duration) (*model.BulkOperation, error)
	ShouldGetBulkQueryResultURL(id null.String) (string, error)
	CancelRunningBulkQuery() error
}

type BulkOperationServiceOp

type BulkOperationServiceOp struct {
	// contains filtered or unexported fields
}

func (*BulkOperationServiceOp) BulkQuery

func (s *BulkOperationServiceOp) BulkQuery(query string, out interface{}) error

func (*BulkOperationServiceOp) CancelRunningBulkQuery

func (s *BulkOperationServiceOp) CancelRunningBulkQuery() (err error)

func (*BulkOperationServiceOp) GetCurrentBulkQuery

func (s *BulkOperationServiceOp) GetCurrentBulkQuery() (*model.BulkOperation, error)

func (*BulkOperationServiceOp) GetCurrentBulkQueryResultURL

func (s *BulkOperationServiceOp) GetCurrentBulkQueryResultURL() (url string, err error)

func (*BulkOperationServiceOp) PostBulkQuery

func (s *BulkOperationServiceOp) PostBulkQuery(query string) (null.String, error)

func (*BulkOperationServiceOp) ShouldGetBulkQueryResultURL

func (s *BulkOperationServiceOp) ShouldGetBulkQueryResultURL(id null.String) (string, error)

func (*BulkOperationServiceOp) WaitForCurrentBulkQuery

func (s *BulkOperationServiceOp) WaitForCurrentBulkQuery(interval time.Duration) (*model.BulkOperation, error)

type Client

type Client struct {
	Product       ProductService
	Variant       VariantService
	Inventory     InventoryService
	Collection    CollectionService
	Order         OrderService
	Fulfillment   FulfillmentService
	Location      LocationService
	Metafield     MetafieldService
	BulkOperation BulkOperationService
	// contains filtered or unexported fields
}

func NewClient

func NewClient(apiKey string, password string, storeName string) *Client

func NewDefaultClient

func NewDefaultClient() (shopClient *Client)

func (*Client) GraphQLClient

func (c *Client) GraphQLClient() *graphql.Client

type CollectionService

type CollectionService interface {
	ListAll() ([]*model.Collection, error)

	Get(id graphql.ID) (*model.Collection, error)

	Create(collection *model.CollectionInput) (string, error)
	CreateBulk(collections []*model.CollectionInput) error

	Update(collection *model.CollectionInput) error
}

type CollectionServiceOp

type CollectionServiceOp struct {
	// contains filtered or unexported fields
}

func (*CollectionServiceOp) Create

func (s *CollectionServiceOp) Create(collection *model.CollectionInput) (string, error)

func (*CollectionServiceOp) CreateBulk

func (s *CollectionServiceOp) CreateBulk(collections []*model.CollectionInput) error

func (*CollectionServiceOp) Get

func (*CollectionServiceOp) ListAll

func (s *CollectionServiceOp) ListAll() ([]*model.Collection, error)

func (*CollectionServiceOp) Update

func (s *CollectionServiceOp) Update(collection *model.CollectionInput) error

type FulfillmentService

type FulfillmentService interface {
	Create(input model.FulfillmentV2Input) error
}

type FulfillmentServiceOp

type FulfillmentServiceOp struct {
	// contains filtered or unexported fields
}

func (*FulfillmentServiceOp) Create

func (s *FulfillmentServiceOp) Create(fulfillment model.FulfillmentV2Input) error

type InventoryService

type InventoryService interface {
	Update(id graphql.ID, input *model.InventoryItemUpdateInput) error
	Adjust(locationID graphql.ID, input []*model.InventoryAdjustItemInput) error
	ActivateInventory(locationID graphql.ID, id graphql.ID) error
}

type InventoryServiceOp

type InventoryServiceOp struct {
	// contains filtered or unexported fields
}

func (*InventoryServiceOp) ActivateInventory

func (s *InventoryServiceOp) ActivateInventory(locationID graphql.ID, id graphql.ID) error

func (*InventoryServiceOp) Adjust

func (s *InventoryServiceOp) Adjust(locationID graphql.ID, input []*model.InventoryAdjustItemInput) error

func (*InventoryServiceOp) Update

type ListOptions

type ListOptions struct {
	Query   string
	First   int
	Last    int
	After   string
	Before  string
	Reverse bool
}

type LocationService

type LocationService interface {
	Get(id graphql.ID) (*model.Location, error)
}

type LocationServiceOp

type LocationServiceOp struct {
	// contains filtered or unexported fields
}

func (*LocationServiceOp) Get

type MetafieldService

type MetafieldService interface {
	ListAllShopMetafields() ([]*model.Metafield, error)
	ListShopMetafieldsByNamespace(namespace string) ([]*model.Metafield, error)

	GetShopMetafieldByKey(namespace, key string) (model.Metafield, error)

	Delete(metafield *model.MetafieldDeleteInput) error
	DeleteBulk(metafield []*model.MetafieldDeleteInput) error
}

type MetafieldServiceOp

type MetafieldServiceOp struct {
	// contains filtered or unexported fields
}

func (*MetafieldServiceOp) Delete

func (s *MetafieldServiceOp) Delete(metafield *model.MetafieldDeleteInput) error

func (*MetafieldServiceOp) DeleteBulk

func (s *MetafieldServiceOp) DeleteBulk(metafields []*model.MetafieldDeleteInput) error

func (*MetafieldServiceOp) GetShopMetafieldByKey

func (s *MetafieldServiceOp) GetShopMetafieldByKey(namespace, key string) (model.Metafield, error)

func (*MetafieldServiceOp) ListAllShopMetafields

func (s *MetafieldServiceOp) ListAllShopMetafields() ([]*model.Metafield, error)

func (*MetafieldServiceOp) ListShopMetafieldsByNamespace

func (s *MetafieldServiceOp) ListShopMetafieldsByNamespace(namespace string) ([]*model.Metafield, error)

type OrderService

type OrderService interface {
	Get(id graphql.ID) (*model.Order, error)

	List(opts ListOptions) ([]*model.Order, error)
	ListAll() ([]*model.Order, error)

	ListAfterCursor(opts ListOptions) ([]*model.Order, string, string, error)

	Update(input *model.OrderInput) error

	GetFulfillmentOrdersAtLocation(orderID graphql.ID, locationID graphql.ID) ([]*model.FulfillmentOrder, error)
}

type OrderServiceOp

type OrderServiceOp struct {
	// contains filtered or unexported fields
}

func (*OrderServiceOp) Get

func (s *OrderServiceOp) Get(id graphql.ID) (*model.Order, error)

func (*OrderServiceOp) GetFulfillmentOrdersAtLocation

func (s *OrderServiceOp) GetFulfillmentOrdersAtLocation(orderID graphql.ID, locationID graphql.ID) ([]*model.FulfillmentOrder, error)

func (*OrderServiceOp) List

func (s *OrderServiceOp) List(opts ListOptions) ([]*model.Order, error)

func (*OrderServiceOp) ListAfterCursor

func (s *OrderServiceOp) ListAfterCursor(opts ListOptions) ([]*model.Order, string, string, error)

func (*OrderServiceOp) ListAll

func (s *OrderServiceOp) ListAll() ([]*model.Order, error)

func (*OrderServiceOp) Update

func (s *OrderServiceOp) Update(input *model.OrderInput) error

type ProductCreate

type ProductCreate struct {
	ProductInput *model.ProductInput
	MediaInput   []*model.CreateMediaInput
}

type ProductService

type ProductService interface {
	List(query string) ([]*model.Product, error)
	ListAll() ([]*model.Product, error)

	Get(gid graphql.ID) (*model.Product, error)

	Create(product *model.ProductInput, media []*model.CreateMediaInput) (string, error)
	CreateBulk(products []*ProductCreate) error

	Update(product *model.ProductInput) error
	UpdateBulk(products []*model.ProductInput) error

	Delete(product *model.ProductDeleteInput) error
	DeleteBulk(products []*model.ProductDeleteInput) error
}

type ProductServiceOp

type ProductServiceOp struct {
	// contains filtered or unexported fields
}

func (*ProductServiceOp) Create

func (s *ProductServiceOp) Create(product *model.ProductInput, media []*model.CreateMediaInput) (string, error)

func (*ProductServiceOp) CreateBulk

func (s *ProductServiceOp) CreateBulk(products []*ProductCreate) error

func (*ProductServiceOp) Delete

func (s *ProductServiceOp) Delete(product *model.ProductDeleteInput) error

func (*ProductServiceOp) DeleteBulk

func (s *ProductServiceOp) DeleteBulk(products []*model.ProductDeleteInput) error

func (*ProductServiceOp) Get

func (s *ProductServiceOp) Get(id graphql.ID) (*model.Product, error)

func (*ProductServiceOp) List

func (s *ProductServiceOp) List(query string) ([]*model.Product, error)

func (*ProductServiceOp) ListAll

func (s *ProductServiceOp) ListAll() ([]*model.Product, error)

func (*ProductServiceOp) Update

func (s *ProductServiceOp) Update(product *model.ProductInput) error

func (*ProductServiceOp) UpdateBulk

func (s *ProductServiceOp) UpdateBulk(products []*model.ProductInput) error

type VariantService

type VariantService interface {
	Update(variant *model.ProductVariantInput) error
}

type VariantServiceOp

type VariantServiceOp struct {
	// contains filtered or unexported fields
}

func (*VariantServiceOp) Update

func (s *VariantServiceOp) Update(variant *model.ProductVariantInput) error

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL