93 lines
3 KiB
PHP
93 lines
3 KiB
PHP
|
<?php
|
||
|
|
||
|
// File generated from our OpenAPI spec
|
||
|
|
||
|
namespace Stripe\Service;
|
||
|
|
||
|
class ProductService extends \Stripe\Service\AbstractService
|
||
|
{
|
||
|
/**
|
||
|
* Returns a list of your products. The products are returned sorted by creation
|
||
|
* date, with the most recently created products appearing first.
|
||
|
*
|
||
|
* @param null|array $params
|
||
|
* @param null|array|\Stripe\Util\RequestOptions $opts
|
||
|
*
|
||
|
* @throws \Stripe\Exception\ApiErrorException if the request fails
|
||
|
*
|
||
|
* @return \Stripe\Collection
|
||
|
*/
|
||
|
public function all($params = null, $opts = null)
|
||
|
{
|
||
|
return $this->requestCollection('get', '/v1/products', $params, $opts);
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* Creates a new product object.
|
||
|
*
|
||
|
* @param null|array $params
|
||
|
* @param null|array|\Stripe\Util\RequestOptions $opts
|
||
|
*
|
||
|
* @throws \Stripe\Exception\ApiErrorException if the request fails
|
||
|
*
|
||
|
* @return \Stripe\Product
|
||
|
*/
|
||
|
public function create($params = null, $opts = null)
|
||
|
{
|
||
|
return $this->request('post', '/v1/products', $params, $opts);
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* Delete a product. Deleting a product is only possible if it has no prices
|
||
|
* associated with it. Additionally, deleting a product with <code>type=good</code>
|
||
|
* is only possible if it has no SKUs associated with it.
|
||
|
*
|
||
|
* @param string $id
|
||
|
* @param null|array $params
|
||
|
* @param null|array|\Stripe\Util\RequestOptions $opts
|
||
|
*
|
||
|
* @throws \Stripe\Exception\ApiErrorException if the request fails
|
||
|
*
|
||
|
* @return \Stripe\Product
|
||
|
*/
|
||
|
public function delete($id, $params = null, $opts = null)
|
||
|
{
|
||
|
return $this->request('delete', $this->buildPath('/v1/products/%s', $id), $params, $opts);
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* Retrieves the details of an existing product. Supply the unique product ID from
|
||
|
* either a product creation request or the product list, and Stripe will return
|
||
|
* the corresponding product information.
|
||
|
*
|
||
|
* @param string $id
|
||
|
* @param null|array $params
|
||
|
* @param null|array|\Stripe\Util\RequestOptions $opts
|
||
|
*
|
||
|
* @throws \Stripe\Exception\ApiErrorException if the request fails
|
||
|
*
|
||
|
* @return \Stripe\Product
|
||
|
*/
|
||
|
public function retrieve($id, $params = null, $opts = null)
|
||
|
{
|
||
|
return $this->request('get', $this->buildPath('/v1/products/%s', $id), $params, $opts);
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* Updates the specific product by setting the values of the parameters passed. Any
|
||
|
* parameters not provided will be left unchanged.
|
||
|
*
|
||
|
* @param string $id
|
||
|
* @param null|array $params
|
||
|
* @param null|array|\Stripe\Util\RequestOptions $opts
|
||
|
*
|
||
|
* @throws \Stripe\Exception\ApiErrorException if the request fails
|
||
|
*
|
||
|
* @return \Stripe\Product
|
||
|
*/
|
||
|
public function update($id, $params = null, $opts = null)
|
||
|
{
|
||
|
return $this->request('post', $this->buildPath('/v1/products/%s', $id), $params, $opts);
|
||
|
}
|
||
|
}
|