netbox-php/src/Api/IPAM/Prefixes.php
Christian Bönning 9a5bb016bc Add Support for PATCH method
For now implementation is done in Prefixes only, more to come.
2022-06-01 14:46:47 +02:00

117 lines
2.7 KiB
PHP

<?php
namespace port389\NetBox\Api\IPAM;
use GuzzleHttp\Exception\GuzzleException;
use port389\NetBox\Api\AbstractApi;
class Prefixes extends AbstractApi
{
/**
* @param array $params
* @return array
* @throws GuzzleException
*/
public function add(array $params = []): array
{
return $this->post("/ipam/prefixes/", $params);
}
/**
* @param int $id
* @param array $params
* @return bool
* @throws GuzzleException
*/
public function remove(int $id, array $params = []): bool
{
return $this->delete("/ipam/prefixes/" . $id . "/", $params);
}
/**
* @param int $id
* @param array $params
* @return array
* @throws GuzzleException
*/
public function edit(int $id, array $params = []): array
{
return $this->put("/ipam/prefixes/" . $id . "/", $params);
}
/**
* @param int $id
* @param array $params
* @return array
* @throws GuzzleException
*/
public function update(int $id, array $params = []): array
{
return $this->patch("/ipam/prefixes/" . $id . "/", $params);
}
/**
* @param array $params
* @return mixed
* @throws GuzzleException
*/
public function list(array $params = [])
{
return $this->get("/ipam/prefixes/", $params);
}
/**
* @param int $id
* @param array $params
* @return mixed
* @throws GuzzleException
*/
public function show(int $id, array $params = [])
{
return $this->get("/ipam/prefixes/" . $id . "/", $params);
}
/**
* @param int $id
* @param array $params
* @return mixed
* @throws GuzzleException
*/
public function showAvailableIps(int $id, array $params = [])
{
return $this->get("/ipam/prefixes/" . $id . "/available-ips/", $params);
}
/**
* @param int $id
* @param array $params
* @return array
* @throws GuzzleException
*/
public function addAvailableIps(int $id, array $params = []): array
{
return $this->post("/ipam/prefixes/" . $id . "/available-ips/", $params);
}
/**
* @param int $id
* @param array $params
* @return mixed
* @throws GuzzleException
*/
public function showAvailable(int $id, array $params = [])
{
return $this->get("/ipam/prefixes/" . $id . "/available-prefixes/", $params);
}
/**
* @param int $id
* @param array $params
* @return array
* @throws GuzzleException
*/
public function addAvailable(int $id, array $params = []): array
{
return $this->post("/ipam/prefixes/" . $id . "/available-prefixes/", $params);
}
}