/** * Clear associations between subscriber and tag * * @link https://rule.se/apidoc/#tags-clear-tag-delete * * @param $id * @return array * @throws \Exception */ public function clear($id) { $request = new Request('tags'); $request->setIdParam(urlencode($id)); $request->addSubresource(['name' => 'clear']); $response = $this->client->delete($request); $this->assertSuccessResponse($response); return $response->getData(); }
/** * Schedule campaign. * * @link https://rule.se/apidoc/#campaigns-schedule-campaign-post * * @param array $campaign Campaign data formated according {@link https://rule.se/apidoc/#campaigns-send-campaign-post} * @return array * @throws \Exception, InvalidArgumentException */ public function schedule(array $campaign) { $this->assertValidCampaign($campaign); $this->assertScheduledCampaign($campaign); $request = new Request('campaigns'); $request->addSubresource(['name' => 'schedule']); $request->setParams($campaign); $response = $this->client->post($request); $this->assertSuccessResponse($response); return $response->getData(); }
/** * Removes subscriber tags * * @link https://rule.se/apidoc/#subscribers-delete-subscriber-tag-delete * * @param $id * @param $tag * @param string $identifyBy * @return array * @throws \Exception */ public function deleteTag($id, $tag, $identifyBy = "email") { $request = new Request('subscribers'); $request->setQuery(['identified_by' => $identifyBy]); $request->setIdParam($id); $request->addSubresource(['name' => 'tags', 'id' => urlencode($tag)]); $response = $this->client->delete($request); $this->assertSuccessResponse($response); return $response->getData(); }