Overview
  • Namespace
  • Class

Namespaces

  • APWG
    • API
      • Alerts
      • Groups
      • Index
      • MalIP
      • Phish
      • ReportPhishing

Classes

  • APWG\API\AbstractClient
  • APWG\API\Alerts\AlertsClient
  • APWG\API\Groups\GroupsClient
  • APWG\API\Index\IndexClient
  • APWG\API\MalIP\MalIPClient
  • APWG\API\Phish\PhishClient
  • APWG\API\ReportPhishing\ReportPhishingClient

Interfaces

  • APWG\API\ClientInterface
  1   2   3   4   5   6   7   8   9  10  11  12  13  14  15  16  17  18  19  20  21  22  23  24  25  26  27  28  29  30  31  32  33  34  35  36  37  38  39  40  41  42  43  44  45  46  47  48  49  50  51  52  53  54  55  56  57  58  59  60  61  62  63  64  65  66  67  68  69  70  71  72  73  74  75  76  77  78  79  80  81  82  83  84  85  86  87  88  89  90  91  92  93  94  95  96  97  98  99 100 101 102 
<?php


namespace APWG\API\Alerts;


use APWG\API\AbstractClient;
use Psr\Http\Message\ResponseInterface;

/**
 * Interact with the Alert API
 *
 * Class AlertsClient
 * @package APWG\API\Alerts
 * @author Andrew Breksa <andrew@apwg.org>
 * @copyright Copyright (c) 2017 The Anti-Phishing Working Group
 */
class AlertsClient extends AbstractClient {

    /**
     * Searches your Alerts
     *
     * @param array $options an associative array of query parameters
     *
     * @return ResponseInterface
     */
    public function search($options = []) {
        return $this->_call('get', 'alerts', [
            'query' => $options,
        ]);
    }

    /**
     * Gets a specific Alert
     *
     * @param int $id the Alert id
     * @param array $options an associative array of query parameters
     *
     * @return ResponseInterface
     */
    public function get($id, $options = []) {
        return $this->_call('get', 'alerts/' . $id, [
            'query' => $options,
        ]);
    }

    /**
     * Creates a new Alert
     *
     * @param array $data an associative array of Alert data
     * @param array $options an associative array pf query parameters
     *
     * @return ResponseInterface
     */
    public function create($data, $options = []) {
        return $this->_call('post', 'alerts', [
            'json'  => $data,
            'query' => $options,
        ]);
    }

    /**
     * Updates an Alert to status: inactive
     *
     * @param int $id the Alert id
     *
     * @return ResponseInterface
     */
    public function inactive($id, $options = []) {
        return $this->patch($id, [
            'status' => 'inactive',
        ], $options);
    }

    /**
     * Updates an Alert
     *
     * @param int $id the Alert id
     * @param  array $data
     *
     * @return ResponseInterface
     */
    public function patch($id, $data, $options = []) {
        return $this->_call('patch', 'alerts/' . $id, [
            'json'  => $data,
            'query' => $options,
        ]);
    }

    /**
     * Updates an Alert to status: active
     *
     * @param int $id the Alert id
     *
     * @return ResponseInterface
     */
    public function active($id, $options = []) {
        return $this->patch($id, [
            'status' => 'active',
        ], $options);
    }
}
API documentation generated by ApiGen