yampi / anymarket-php-sdk
Biblioteca não oficial de integração com a API da Anymarket
Installs: 68 295
Dependents: 0
Suggesters: 0
Security: 0
Stars: 6
Watchers: 3
Forks: 1
Open Issues: 2
Requires
- guzzlehttp/guzzle: ^6.3
Requires (Dev)
- codeclimate/php-test-reporter: ~0.3
- larapack/dd: ^1.1
- mockery/mockery: ~0.9
- phpunit/phpunit: ^6.4
- squizlabs/php_codesniffer: ~2.3
This package is auto-updated.
Last update: 2024-10-25 23:44:39 UTC
README
Biblioteca que realiza integração com a API da Anymarket
Documentação oficial da API http://developers.anymarket.com.br/
Instalação via composer
$ composer require yampi/anymarket-php-sdk
Serviços
Este SDK suporta os seguintes serviços:
Configuração
Para utilizar este SDK, será necessário utilizar o token de acesso (GumgaToken) de sua conta na Anymarket, e setar qual o ambiente que será usado: sandbox
ou production
;
use Yampi\Anymarket\Anymarket; use Yampi\Anymarket\Services\Environment; use Yampi\Anymarket\Exceptions\AnymarketException; use Yampi\Anymarket\Exceptions\AnymarketValidationException; // Ambiente de sandbox $anymarket = new Anymarket('SEU_TOKEN', Environment::sandbox()); // Ambiente de produção $anymarket = new Anymarket('SEU_TOKEN', Environment::production());
Produtos
Buscar todos os produtos com um limite de 50 registros por página
$product = $anymarket->product()->get(0, 50);
Buscar produto
$product = $anymarket->product()->find('ID_PRODUTO');
Criar produto
$product = $anymarket->product()->create([ 'title '=> 'string', 'description '=> 'string', 'category '=> [ 'id '=> 0, 'name '=> 'string', 'path '=> 'string' ], 'brand '=> [ 'id '=> 0, 'name '=> 'string', 'partnerId '=> 'string' ], 'nbm '=> [ 'id '=> 'string' ], 'origin '=> [ 'id '=> 0 ], 'model '=> 'string', 'videoUrl '=> 'string', 'gender '=> 'string', 'warrantyTime '=> 0, 'warrantyText '=> 'string', 'height '=> 0, 'width '=> 0, 'weight '=> 0, 'length '=> 0, 'priceFactor '=> 0, 'calculatedPrice '=> true, 'definitionPriceScope '=> 'string', 'characteristics '=> [ [ 'index '=> 0, 'name '=> 'string', 'value '=> 'string' ] ], 'images '=> [ [ 'main '=> true, 'url '=> 'string', 'variation '=> 'string' ] ], 'skus '=> [ [ 'title '=> 'string ', 'partnerId '=> 'string ', 'ean '=> 'string ', 'amount '=> 0, 'price '=> 0, 'additionalTime '=> 0, 'variations '=> [ 'variationName '=> 'VariationValue ' ] ] ], 'allowAutomaticSkuMarketplaceCreation '=> true ]);
Atualizar produto
$product = $anymarket->product()->update('ID_PRODUTO', [ 'title' => 'string', 'description' => 'string', 'category' => [ 'id' => 0, 'name' => 'string', 'path' => 'string' ], 'brand' => [ 'id' => 0, 'name' => 'string', 'partnerId' => 'string' ], 'nbm' => [ 'id' => 'string' ], 'origin' => [ 'id' => 0 ], 'model' => 'string', 'videoUrl' => 'string', 'gender' => 'string', 'warrantyTime' => 0, 'warrantyText' => 'string', 'height' => 0, 'width' => 0, 'weight' => 0, 'length' => 0, 'priceFactor' => 0, 'calculatedPrice' => true, 'definitionPriceScope' => 'string', 'characteristics' => [ [ 'index' => 0, 'name' => 'string', 'value' => 'string' ] ], 'images' => [ [ 'main' => true, 'url' => 'string', 'variation' => 'string' ] ], 'skus' => [ [ 'title' => 'string', 'partnerId' => 'string', 'ean' => 'string', 'amount' => 0, 'price' => 0, 'variations' => [ 'variationName' => 'VariationValue' ] ] ], 'allowAutomaticSkuMarketplaceCreation' => true ]);
Atualizar título de um produto
$product = $anymarket->product()->updateTitle('ID_PRODUTO', 'TÍTULO');
Skus
É necessario utlizar setProduct para utlizar esse recurso
$anymarket->sku()->setProduct('ID_PRODUTO');
Buscar SKUS de um produto
$sku = $anymarket->sku()->setProduct('ID_PRODUTO')->get(0, 50);
Buscar SKU de um produto
$sku = $anymarket->sku()->setProduct('ID_PRODUTO')->find('ID_SKU');
Criar um SKU
$sku = $anymarket->sku()->setProduct('ID_PRODUTO')->create([ 'title' => 'string', 'partnerId' => 'string', 'ean' => 'string', 'amount' => 0, 'price' => 0, 'additionalTime' => 0, 'variations' => [ 'variationName' => 'VariationValue' ] ]);
Atualizar um SKU
$sku = $anymarket->sku()->setProduct('ID_PRODUTO')->update('ID_SKU', [ 'title ' => 'string ', 'partnerId ' => 'string ', 'ean ' => 'string ', 'price ' => 0, 'sellPrice ' => 0 ]);
Atualizar título de um SKU
$sku = $anymarket->sku()->setProduct('ID_PRODUTO')->updateTitle('ID_SKU', 'TÍTULO')
Atualizar preço de um SKU
$sku = $anymarket->sku()->setProduct('ID_PRODUTO')->updatePrice('ID_SKU', 12.00, 10.00);
Variações
Buscar todas as variações
Para realizar a busca de variações é necessário passar os parâmetros offset e limit
$variation = $anymarket->variation()->get(0, 50);
Buscar variação
$variation = $anymarket->variation()->find('ID_VARIAÇÃO');
Criar variação
$variation = $anymarket->variation()->create([ 'name' => 'string', 'partnerId' => 'string', 'visualVariation' => true, 'values' => [ [ 'description' => 'string' ] ] ]);
Atualizar variação
$variation = $anymarket->variation()->update('ID_VARIAÇÃO', [ 'name' => 'string', 'partnerId' => 'string', 'visualVariation' => true ]);
Excluir uma variação
$variation = $anymarket->variation()->delete('ID_VARIAÇÃO');
Valores de uma variação
É necessário utilizar o método setVariation()
neste recurso
$anymarket->variationValue()->setVariation('ID_VARIAÇÃO')
Buscar valores de uma variação
$value = $anymarket->variationValue()->setVariation('ID_VARIAÇÃO')->get(0, 50);
Buscar um valor de variação
$value = $anymarket->variationValue()->setVariation('ID_VARIAÇÃO')->find('ID_VALOR');
Criar um valor para uma variação
$value = $anymarket->variationValue()->setVariation('ID_VARIAÇÃO')->create([ 'description' => 'string', 'partnerId' => 'string' ])
Atualizar valor de uma variação
$value = $anymarket->variationValue()->setVariation('ID_VARIAÇÃO')->update('ID_VALOR', [ 'description' => 'string', 'partnerId' => 'string' ]);
Excluir valor de uma variação
$value = $anymarket->variationValue()->setVariation('ID_VARIAÇÃO')->find('ID_VALOR');
Estoques
Criar estoque
$stock = $anymarket->stock()->create([ 'id '=> 0, 'partnerId '=> 0, 'quantity '=> 0, 'cost '=> 0, 'additionalTime '=> 0, 'stockLocalId '=> 0 ]);
Atualizar estoque
$stock = $anymarket->stock()->update('ID_SKU', [ 'id '=> 0, 'partnerId '=> 0, 'quantity '=> 0, 'cost '=> 0, 'additionalTime '=> 0, 'stockLocalId '=> 0 ]);
Atualizar quantidade em estoque
$stock = $anymarket->stock()->updateStockQuantity('ID_SKU', 10);
Atualizar preço de estoque
$stock = $anymarket->stock()->updatePrice('ID_SKU', 100.00);
Buscar locais de estoque
$stock = $anymarket->stock()->getLocals()
Marcas
Buscar todas as marcas
Para realizar a busca das marcas é necessario passar os parâmetros offset e limit
$brands = $anymarket->brand()->get(0, 50);
Buscar marca
$brands = $anymarket->brand()->find('ID_MARCA');
Criar marca
$brand = $anymarket->brand()->create([ 'name' => 'Nome da marca', 'partnerId' => 'ID da marca no parceiro' ]);
Atualizar marca
$brand = $anymarket->brand()->update('ID_MARCA', [ 'name' => 'Atualização de marca' ]);
Excluir marca
$brand = $anymarket->brand()->delete('ID_MARCA');
Categorias
Buscar todas as categorias
Para realizar a busca das categorias é necessario passar os parâmetros offset e limit
$category = $anymarket->category()->get(0, 50);
Buscar categoria
$category = $anymarket->category()->find('ID_CATEGORIA');
Criar categoria
$category = $anymarket->category()->create([ 'name' => 'Categoria', 'partnerId' => '123', 'priceFactor' => 1, 'calculatedPrice' => true, 'definitionPriceScope' => 'SKU' ]);
Atualizar categoria
$category = $anymarket->category()->update('ID_CATEGORIA', [ 'name' => 'Atualizar categoria', 'partnerId' => '1234', 'priceFactor' => 1, 'calculatedPrice' => true, 'definitionPriceScope' => 'SKU' ]);
Excluir categoria
$category = $anymarket->category()->delete('ID_CATEGORIA');
Pedidos
Buscar todos os pedidos
Para realizar a busca dos pedidos é necessario passar os parâmetros offset e limit
$orders = $anymarket->order()->get(0, 50);
Buscar pedido
$orders = $anymarket->order()->find('ID_PEDIDO');
Atualizar status do pedido
$orders = $anymarket->order()->updateStatus('ID_PEDIDO', [ 'status' => 'string', 'invoice' => [ 'accessKey' => 'string', 'series' => 'string', 'number' => 'string', 'date' => '2019-04-23T13=>25=>53Z', 'cfop' => 'string', 'companyStateTaxId' => 'string' ] ]);
Consultar feed de pedidos
$orders = $anymarket->order()->feed()
Atualizar feed de pedidos
$orders = $anymarket->order()->feedUpdate('ID_FEED', 'TOKEN_FEED');
Callbacks
Buscar todas as callbacks
Para realizar a busca das callbacks é necessário passar os parâmetros offset e limit
$callbacks = $anymarket->callback()->get(0, 50);
Buscar callback
$callback = $anymarket->callback()->find('ID_CALLBACK');
Criar callback
$callback = $anymarket->callback()->create([ 'url' => 'URL de callback', ]);
Atualizar callback
$callback = $anymarket->callback()->update('ID_CALLBACK', [ 'url' => 'URL de callback' ]);
Excluir callback
$callback = $anymarket->callback()->delete('ID_CALLBACK');