PHP code example of arrowsphere / catalog-graphql-client
1. Go to this page and download the library: Download arrowsphere/catalog-graphql-client library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
arrowsphere / catalog-graphql-client example snippets
use ArrowSphere\CatalogGraphQLClient\CatalogGraphQLClient;
use ArrowSphere\CatalogGraphQLClient\Input\SearchBody;
use ArrowSphere\CatalogGraphQLClient\Types\ArrowsphereIdentifier;
use ArrowSphere\CatalogGraphQLClient\Types\Identifiers;
use ArrowSphere\CatalogGraphQLClient\Types\Product;
use ArrowSphere\CatalogGraphQLClient\Types\Program;
use ArrowSphere\CatalogGraphQLClient\Types\VendorIdentifier;
const URL = 'https://your-url-to-arrowsphere.example.com';
$token = 'my token'; // The logic to get the token is not implemented in this package
$client = new CatalogGraphQLClient(URL, $token);
// The filters are defined as a nested array
// They allow you to limit the data you want to see
$filters = [
Product::CLASSIFICATION => 'SaaS',
Product::IDENTIFIERS => [
Identifiers::VENDOR => [
VendorIdentifier::SKU => '031C9E47-4802-4248-838E-778FB1D2CC05',
],
],
Product::PROGRAM => [
Program::LEGACY_CODE => 'microsoft',
],
];
// The fields are also defined as a nested array
// They allow you to limit the fields returned by the GraphQL API, to see only the necessary fields for your need
$fields = [
Product::NAME,
Product::IDENTIFIERS => [
Identifiers::ARROWSPHERE => [
ArrowsphereIdentifier::ORDERABLE_SKU,
],
Identifiers::VENDOR => [
VendorIdentifier::SKU,
]
]
];
$searchBody = [
SearchBody::MARKETPLACE => 'US',
SearchBody::FILTERS => $filters,
];
$result = $client->find($searchBody, $fields);
$products = $result->getProducts();
if (count($products) === 1) {
$product = $products[0];
echo sprintf(
"Product SKU %s : name = %s, orderable SKU = %s",
$product->getIdentifiers()->getVendor()->getSku(),
$product->getName(),
$product->getIdentifiers()->getArrowsphere()->getOrderableSku()
) . PHP_EOL;
}
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.