PHP code example of vanilo / cloud-sdk
1. Go to this page and download the library: Download vanilo/cloud-sdk 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/ */
vanilo / cloud-sdk example snippets
$api = VaniloCloud\ApiClient::for('https://your.v-shop.cloud')->withCredentials('client id', 'client secret');
$api = VaniloCloud\ApiClient::sandbox();
ApiClient::for('https://your.shop.url')
->withBasicAuth('user', 'pass') // <- Add this line
->withCredentials('client id', 'client secret');
$api = VaniloCloud\ApiClient::for('https://your.v-shop.cloud')
->withCredentials('client id', 'client secret')
->useLaravelTokenStore();
$api = VaniloCloud\ApiClient::sandbox();
$api->rawGet('/taxonomies');
//=> Illuminate\Http\Client\Response {#2743
// +cookies: GuzzleHttp\Cookie\CookieJar {#2725},
// +transferStats: GuzzleHttp\TransferStats {#2765},
$response = $api->rawGet('/taxonomies');
foreach ($response->json('data') as $taxonomy) {
echo $taxonomy['name'];
}
// Category
$api = VaniloCloud\ApiClient::sandbox();
$taxonomy = $api->taxonomy(1);
// => VaniloCloud\Models\Taxonomy
// id: "1",
// name: "Category",
// slug: "category",
// created_at: "2022-12-06T16:23:34+00:00",
// updated_at: "2023-01-13T08:03:29+00:00"
$api = VaniloCloud\ApiClient::sandbox();
$api->product('WBB-030');
// => VaniloCloud\Models\Product
// name: "William Black Bookshelf"
// slug: "william-black-bookshelf"
// sku: "WBB-030"
// ...
$api = VaniloCloud\ApiClient::sandbox();
$api->products();
// Illuminate\Support\Collection {
// #items: array:2 [▼
// 1 => VaniloCloud\Models\Product
// ...
// ]
// ...
use VaniloCloud\Enums\ProductState;
use VaniloCloud\WriteModels\ProductCreate;
$api = VaniloCloud\ApiClient::sandbox();
$productCreate = new ProductCreate();
$productCreate
->setName('William Black Bookshelf')
->setSku('WBB-030')
->setState(ProductState::ACTIVE);
$api->createProduct($productCreate);
// "WBB-030"
use VaniloCloud\WriteModels\ProductUpdate;
$api = VaniloCloud\ApiClient::sandbox();
$productUpdate = new ProductUpdate();
$productUpdate
->setName('William Black Bookshelf 030')
->setStock(1337)
->setDescription('A black bookshelf.');
$api->updateProduct('WBB-030', $productUpdate);
// true
$api = VaniloCloud\ApiClient::sandbox();
$api->deleteProduct('WBB-030');
// true
$api = VaniloCloud\ApiClient::sandbox();
$api->masterProduct(1);
// => VaniloCloud\Models\MasterProduct
// name: "My Master Product"
// slug: "my-master-product"
// price: 1
// ...
$api = VaniloCloud\ApiClient::sandbox();
$api->masterProducts();
// Illuminate\Support\Collection {
// #items: array:2 [▼
// 1 => VaniloCloud\Models\MasterProduct
// ...
// ]
// ...
use VaniloCloud\Enums\ProductState;
use VaniloCloud\WriteModels\MasterProductCreate;
$api = VaniloCloud\ApiClient::sandbox();
$masterProductCreate = new MasterProductCreate();
$masterProductCreate
->setName('My Master Product');
$api->createMasterProduct($masterProductCreate);
// "1"
use VaniloCloud\WriteModels\MasterProductUpdate;
$api = VaniloCloud\ApiClient::sandbox();
$masterProductUpdate = new MasterProductUpdate();
$masterProductUpdate
->setDescription('This is my Master Product.');
$api->updateMasterProduct(1, $masterProductUpdate);
// true
$api = VaniloCloud\ApiClient::sandbox();
$api->deleteMasterProduct(1);
// true
$api = VaniloCloud\ApiClient::sandbox();
$api->order(1);
// => VaniloCloud\Models\Order
// number: "6YP-0K1A-BO06"
// status: VaniloCloud\Enums\OrderStatus { ...
// fulfillment_status: VaniloCloud\Enums\FulfillmentStatus { ...
// ...
$api = VaniloCloud\ApiClient::sandbox();
$api->orders();
// Illuminate\Support\Collection {
// #items: array:2 [▼
// 1 => VaniloCloud\Models\Order
// ...
// ]
// ...
use VaniloCloud\Enums\ProductType;
use VaniloCloud\WriteModels\OrderCreate;
use VaniloCloud\WriteModels\BillpayerWrite;
use VaniloCloud\WriteModels\OrderItemWrite;
$api = VaniloCloud\ApiClient::sandbox();
$billpayerWrite = new BillpayerWrite();
$billpayerWrite
->setEmail('[email protected] ')
->setFirstName('John')
->setLastName('Doe')
->setCountry('GB')
->setCity('London')
->setAddress('Oxford Street');
$orderCreate = new OrderCreate();
$orderItem1 = new OrderItemWrite();
$orderItem1
->setName('Order item 1')
->setProductId(1)
->setProductType(ProductType::default())
->setPrice(4);
$orderItem2 = new OrderItemWrite();
$orderItem2
->setName('Order Item 2')
->setProductType(ProductType::default())
->setProductId(2)
->setPrice(2.4);
$orderItems = [$orderItem1, $orderItem2];
$orderCreate
->setBillpayer($billpayerWrite)
->setItems(...$orderItems);
$api->createOrder($orderCreate);
// "1"
use VaniloCloud\WriteModels\OrderUpdate;
use VaniloCloud\Enums\OrderStatus;
$api = VaniloCloud\ApiClient::sandbox();
$orderUpdate = new OrderUpdate();
$orderUpdate
->setStatus(OrderStatus::PROCESSING);
$api->updateOrder(1, $orderUpdate);
// true
$api = VaniloCloud\ApiClient::sandbox();
$api->deleteOrder(1);
// true
$api = VaniloCloud\ApiClient::sandbox();
$api->customer(1);
// => VaniloCloud\Models\Customer {#4804
// default_shipping_address_id: ? ?string,
// default_billing_address_id: ? ?string,
// type: VaniloCloud\Enums\CustomerType {#4817
// name: "ORGANIZATION",
// value: "organization",
// },
// name: "Acme. Inc.",
// ...
$api = VaniloCloud\ApiClient::sandbox();
$api->customers();
// Illuminate\Support\Collection {#4807
// #items: array:2 [
// 1 => VaniloCloud\Models\Customer
// ...
// ]
// ...
use VaniloCloud\Enums\CustomerType;
use VaniloCloud\WriteModels\CustomerCreate;
$api = VaniloCloud\ApiClient::sandbox();
$customerCreate = new CustomerCreate()
->setCompanyName('Acme. Inc.');
$api->createCustomer($customerCreate);
// "1"
use VaniloCloud\WriteModels\CustomerUpdate;
$api = VaniloCloud\ApiClient::sandbox();
$customerUpdate = new CustomerUpdate();
$customerUpdate
->setCompanyName('Globex Corporation');
$api->updateCustomer(1, $customerUpdate);
// true
$api = VaniloCloud\ApiClient::sandbox();
$api->deleteCustomer(1);
// true
$api = VaniloCloud\ApiClient::sandbox();
$api->address(1);
// => VaniloCloud\Models\Address {#4635
// type: VaniloCloud\Enums\AddressType {#4662
// name: "PICKUP"
// value: "pickup"
// }
// name: "Jane Doe"
// firstname: "Jane"
// lastname: "Doe"
// ...
use VaniloCloud\WriteModels\AddressUpdate;
$api = VaniloCloud\ApiClient::sandbox();
$addressUpdate = new AddressUpdate();
$addressUpdate
->setName('John Doe');
$api->updateAddress(1, $addressUpdate);
// true
$api = VaniloCloud\ApiClient::sandbox();
$api->deleteAddress(1);
// true