public function getSelf(array $fields = array(), array $params = array(), $pending = false)
 {
     $this->assureId();
     $param_types = array();
     $enums = array();
     $request = new ApiRequest($this->api, $this->data['id'], RequestInterface::METHOD_GET, '/', new AdAsyncRequestSet(), 'NODE', AdAsyncRequestSet::getFieldsEnum()->getValues(), new TypeChecker($param_types, $enums));
     $request->addParams($params);
     $request->addFields($fields);
     return $pending ? $request : $request->execute();
 }
 public function createAsyncAdRequestSet(array $fields = array(), array $params = array(), $pending = false)
 {
     $this->assureId();
     $param_types = array('ad_specs' => 'list<map>', 'name' => 'string', 'notification_mode' => 'notification_mode_enum', 'notification_uri' => 'string');
     $enums = array('notification_mode_enum' => array('OFF', 'ON_COMPLETE'));
     $request = new ApiRequest($this->api, $this->data['id'], RequestInterface::METHOD_POST, '/asyncadrequestsets', new AdAsyncRequestSet(), 'EDGE', AdAsyncRequestSet::getFieldsEnum()->getValues(), new TypeChecker($param_types, $enums));
     $request->addParams($params);
     $request->addFields($fields);
     return $pending ? $request : $request->execute();
 }