UsageRecord.php 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. <?php
  2. namespace Stripe;
  3. /**
  4. * Class UsageRecord
  5. *
  6. * @package Stripe
  7. *
  8. * @property string $id
  9. * @property string $object
  10. * @property bool $livemode
  11. * @property int $quantity
  12. * @property string $subscription_item
  13. * @property int $timestamp
  14. */
  15. class UsageRecord extends ApiResource
  16. {
  17. const OBJECT_NAME = "usage_record";
  18. /**
  19. * @param array|null $params
  20. * @param array|string|null $options
  21. *
  22. * @return \Stripe\ApiResource The created resource.
  23. */
  24. public static function create($params = null, $options = null)
  25. {
  26. self::_validateParams($params);
  27. if (!array_key_exists('subscription_item', $params)) {
  28. throw new Error\InvalidRequest("Missing subscription_item param in request", null);
  29. }
  30. $subscription_item = $params['subscription_item'];
  31. $url = "/v1/subscription_items/$subscription_item/usage_records";
  32. $request_params = $params;
  33. unset($request_params['subscription_item']);
  34. list($response, $opts) = static::_staticRequest('post', $url, $request_params, $options);
  35. $obj = \Stripe\Util\Util::convertToStripeObject($response->json, $opts);
  36. $obj->setLastResponse($response);
  37. return $obj;
  38. }
  39. }