/**
  * @summary Write a config item
  *
  * @param $itemName
  * @param $value
  *
  * @return ApiRequest
  */
 public function create($itemName, $value)
 {
     $request = new ApiRequest();
     $request->setConnection($this->_getConnection());
     $request->setEndpoint($this);
     $detail = new ApiRequestDetail();
     $detail->setRequireAuth(true);
     $detail->setUrl($this->_buildUrl(str_replace(array_keys($this->_replacements), array_values($this->_replacements), 'entities/{entityFid}/config/{sectionName}')));
     $detail->addPostField('itemName', $itemName);
     $detail->addPostField('value', $value);
     $detail->setMethod('POST');
     $request->setRequestDetail($detail);
     return $request;
 }
 /**
  * @summary Unsubscribe an email based on the delivery fid
  *
  * @param $userAgent
  * @param $encoding
  * @param $language
  * @param $clientIp
  *
  * @return ApiRequest
  */
 public function setUnsubscribe($userAgent = null, $encoding = null, $language = null, $clientIp = null)
 {
     $request = new ApiRequest();
     $request->setConnection($this->_getConnection());
     $request->setEndpoint($this);
     $detail = new ApiRequestDetail();
     $detail->setRequireAuth(true);
     $detail->setUrl($this->_buildUrl(str_replace(array_keys($this->_replacements), array_values($this->_replacements), 'messenger/deliveries/{deliveryFid}/unsubscribe')));
     $detail->addPostField('userAgent', $userAgent);
     $detail->addPostField('encoding', $encoding);
     $detail->addPostField('language', $language);
     $detail->addPostField('clientIp', $clientIp);
     $detail->setMethod('PUT');
     $request->setRequestDetail($detail);
     return $request;
 }
 /**
  * @summary Add an offer to an order
  *
  * @param $offerFid
  * @param $productFid
  * @param $orderItemFid
  * @param $replace
  *
  * @return ApiRequest
  */
 public function create($offerFid, $productFid = null, $orderItemFid = null, $replace = null)
 {
     $request = new ApiRequest();
     $request->setConnection($this->_getConnection());
     $request->setEndpoint($this);
     $detail = new ApiRequestDetail();
     $detail->setRequireAuth(true);
     $detail->setUrl($this->_buildUrl(str_replace(array_keys($this->_replacements), array_values($this->_replacements), 'orders/{orderFid}/offers')));
     $detail->addPostField('offerFid', $offerFid);
     $detail->addPostField('productFid', $productFid);
     $detail->addPostField('orderItemFid', $orderItemFid);
     $detail->addPostField('replace', $replace);
     $detail->setMethod('POST');
     $request->setRequestDetail($detail);
     return $request;
 }
 /**
  * @summary Unsubscribe an email address
  *
  * @param $brandFid
  *
  * @return ApiRequest
  */
 public function setUnsubscribe($brandFid = null)
 {
     $request = new ApiRequest();
     $request->setConnection($this->_getConnection());
     $request->setEndpoint($this);
     $detail = new ApiRequestDetail();
     $detail->setRequireAuth(true);
     $detail->setUrl($this->_buildUrl(str_replace(array_keys($this->_replacements), array_values($this->_replacements), 'contacts/emails/{emailAddress}/unsubscribe')));
     $detail->addPostField('brandFid', $brandFid);
     $detail->setMethod('PUT');
     $request->setRequestDetail($detail);
     return $request;
 }
 /**
  * @summary Add a phone number to a customer
  *
  * @param $phoneNumber
  * @param $displayName
  *
  * @return ApiRequest
  */
 public function createPhone($phoneNumber, $displayName = null)
 {
     $request = new ApiRequest();
     $request->setConnection($this->_getConnection());
     $request->setEndpoint($this);
     $detail = new ApiRequestDetail();
     $detail->setRequireAuth(true);
     $detail->setUrl($this->_buildUrl(str_replace(array_keys($this->_replacements), array_values($this->_replacements), 'customers/{customerFid}/phones')));
     $detail->addPostField('phoneNumber', $phoneNumber);
     $detail->addPostField('displayName', $displayName);
     $detail->setMethod('POST');
     $request->setRequestDetail($detail);
     return $request;
 }