2017-02-08 22 views
-1

Я ищу образцы PHP в Sales Maximizes API для ebay. (Формально называемый API связанных элементов).Ebay SalesMaximizerAPI PHP-пример

Однако детали для этого конкретного API, кажется, рассеиваются в отличие от других eBay API. Есть ли источник с простым вызовом PHP для создания пакета продуктов или получения пакета продуктов?

+0

Пожалуйста, прочтите [Какие темы я могу спросить о] (http://stackoverflow.com/help/on-topic) и [Как задать хороший вопрос] (http://stackoverflow.com/help/how-to-ask) и [идеальный вопрос] (http://codeblog.jonskeet.uk/2010/08/29/ write-the-perfect-question /) – RiggsFolly

+0

Спасибо за комментарий @RiggsFolly. Пожалуйста, прочитайте [Как написать хороший ответ] (http://stackoverflow.com/help/how-to-answer) :-) – hitwill

+0

Я сделал, спасибо за комментарий. Но вот проблема. _Questions, предлагающие нам рекомендовать или находить книгу, инструмент, библиотеку программного обеспечения, учебное пособие или другой ресурс вне сайта, не относятся к теме для переполнения стека, поскольку они, как правило, привлекают упрямые ответы и спам. Вместо этого опишите проблему_ ___ и то, что было сделано до сих пор, чтобы ее решить .___ – RiggsFolly

ответ

0

Если вы знакомы с использованием Composer for PHP, есть SDK, доступный по адресу https://github.com/davidtsadler/ebay-sdk-php, что поможет с использованием eBay API. (Полное раскрытие: я являюсь автором SDK).

Ниже приведен пример того, как создать пакет, используя службу связанных элементов. Для использования примера вам понадобятся ваши приложения App, Cert и Dev ID для среды песочницы. Вам также нужен токен аутентификации для продавца электронной почты eBay, для которого вы хотите создать пакеты.

Обратите внимание, что, хотя SDK упрощает интеграцию с API, он не научит вас всему этому. Важно, чтобы вы прочитали документацию для операции createBundles, чтобы узнать, какие поля и параметры доступны.

Примеры того, как найти и удалить пакеты также можно найти на https://github.com/davidtsadler/ebay-sdk-examples/tree/master/related-items

<?php 

require __DIR__.'/vendor/autoload.php'; 

use \DTS\eBaySDK\Constants; 
use \DTS\eBaySDK\RelatedItemsManagement\Services; 
use \DTS\eBaySDK\RelatedItemsManagement\Types; 
use \DTS\eBaySDK\RelatedItemsManagement\Enums; 

/** 
* Request to the API are made through a service object. 
*/ 
$service = new Services\RelatedItemsManagementService([ 
    'credentials' => [ 
     'appId' => 'your-app-id', 
     'certId' => 'your-cert-id', 
     'devId' => 'your-dev-id' 
    ], 
    'authToken' => 'your-auth-token', 
    'globalId' => Constants\GlobalIds::US, 
    'sandbox'  => true 
]); 

$request = new Types\CreateBundlesRequest(); 

/** 
* A bundle has a primary product and related products in the bundle. 
*/ 
$bundle = new Types\Bundle(); 
$bundle->bundleName = "Example Bundle"; 
$bundle->primarySKU = ['123456789']; 
$bundle->scheduledStartTime = new \DateTime('2017-03-01 00:00:00', new \DateTimeZone('UTC')); 
$bundle->scheduledEndTime = new \DateTime('2017-03-07 00:00:00', new \DateTimeZone('UTC')); 

/** 
* Add two products that will be bundled with the main product. 
*/ 
$group = new Types\RelatedProductGroup(); 
$group->groupName = "Example Group"; 

$product = new Types\RelatedProduct(); 
$product->SKU = 'AAABBBCCC'; 
$group->relatedProduct[] = $product; 

$product = new Types\RelatedProduct(); 
$product->SKU = 'DDDEEEFFF'; 
$group->relatedProduct[] = $product; 

$bundle->relatedProductGroup[] = $group; 

$request->bundle[] = $bundle; 

/** 
* Send the request. 
*/ 
$response = $service->createBundles($request); 

/** 
* Output the result of the operation. 
*/ 
foreach ($response->bundleStatus as $bundleStatus) { 
    if ($bundleStatus->ack !== 'Failure') { 
     printf(
      "Bundle Created (%s) %s\n", 
      $bundleStatus->bundleID, 
      $bundleStatus->bundleName 
     ); 
    } 
} 
+0

Спасибо, что это фантастика! Это именно то, что я искал, и я чувствовал, что документация ebay на связках была немного лишена. – hitwill

+0

@ david-t-sadler. Это действительно отличный инструмент. Однако, похоже, я искал следующую ошибку от eBay : _ Uncaught исключение 'GuzzleHttp \ Exception \ ServerException' с сообщением «ошибка сервера:' POST https: // svcs.ebay.com/услуги/sellerinventory/v1/BundleManagementService' привело к '500 Внутренняя ошибка сервера Есть предположения? – hitwill

+0

На данный момент я предлагаю вам убедиться, что вы используете правильные учетные данные для среды. Учетные записи Sandbox и authtokens не будут работать на производственном сервере и наоборот. –