assureId(); $param_types = array( ); $enums = array( ); $request = new ApiRequest( $this->api, $this->data['id'], RequestInterface::METHOD_GET, '/boost_ads_list', new IGBoostMediaAd(), 'EDGE', IGBoostMediaAd::getFieldsEnum()->getValues(), new TypeChecker($param_types, $enums) ); $request->addParams($params); $request->addFields($fields); return $pending ? $request : $request->execute(); } public function getBrandedContentPartnerPromote(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, '/branded_content_partner_promote', new BrandedContentShadowIGUserID(), 'EDGE', BrandedContentShadowIGUserID::getFieldsEnum()->getValues(), new TypeChecker($param_types, $enums) ); $request->addParams($params); $request->addFields($fields); return $pending ? $request : $request->execute(); } public function createBrandedContentPartnerPromote(array $fields = array(), array $params = array(), $pending = false) { $this->assureId(); $param_types = array( 'permission' => 'bool', 'sponsor_id' => 'unsigned int', ); $enums = array( ); $request = new ApiRequest( $this->api, $this->data['id'], RequestInterface::METHOD_POST, '/branded_content_partner_promote', new BrandedContentShadowIGUserID(), 'EDGE', BrandedContentShadowIGUserID::getFieldsEnum()->getValues(), new TypeChecker($param_types, $enums) ); $request->addParams($params); $request->addFields($fields); return $pending ? $request : $request->execute(); } public function getChildren(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, '/children', new IGMedia(), 'EDGE', IGMedia::getFieldsEnum()->getValues(), new TypeChecker($param_types, $enums) ); $request->addParams($params); $request->addFields($fields); return $pending ? $request : $request->execute(); } public function getCollaborators(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, '/collaborators', new ShadowIGMediaCollaborators(), 'EDGE', ShadowIGMediaCollaborators::getFieldsEnum()->getValues(), new TypeChecker($param_types, $enums) ); $request->addParams($params); $request->addFields($fields); return $pending ? $request : $request->execute(); } public function getComments(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, '/comments', new IGComment(), 'EDGE', IGComment::getFieldsEnum()->getValues(), new TypeChecker($param_types, $enums) ); $request->addParams($params); $request->addFields($fields); return $pending ? $request : $request->execute(); } public function createComment(array $fields = array(), array $params = array(), $pending = false) { $this->assureId(); $param_types = array( 'ad_id' => 'string', 'message' => 'string', ); $enums = array( ); $request = new ApiRequest( $this->api, $this->data['id'], RequestInterface::METHOD_POST, '/comments', new IGComment(), 'EDGE', IGComment::getFieldsEnum()->getValues(), new TypeChecker($param_types, $enums) ); $request->addParams($params); $request->addFields($fields); return $pending ? $request : $request->execute(); } public function getInsights(array $fields = array(), array $params = array(), $pending = false) { $this->assureId(); $param_types = array( 'breakdown' => 'list', 'metric' => 'list', 'period' => 'list', ); $enums = array( 'breakdown_enum' => InstagramInsightsResultBreakdownValues::getInstance()->getValues(), 'metric_enum' => InstagramInsightsResultMetricValues::getInstance()->getValues(), 'period_enum' => InstagramInsightsResultPeriodValues::getInstance()->getValues(), ); $request = new ApiRequest( $this->api, $this->data['id'], RequestInterface::METHOD_GET, '/insights', new InstagramInsightsResult(), 'EDGE', InstagramInsightsResult::getFieldsEnum()->getValues(), new TypeChecker($param_types, $enums) ); $request->addParams($params); $request->addFields($fields); return $pending ? $request : $request->execute(); } public function deletePartnershipAdCode(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_DELETE, '/partnership_ad_code', new AbstractCrudObject(), 'EDGE', array(), new TypeChecker($param_types, $enums) ); $request->addParams($params); $request->addFields($fields); return $pending ? $request : $request->execute(); } public function createPartnershipAdCode(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_POST, '/partnership_ad_code', new AbstractCrudObject(), 'EDGE', array(), new TypeChecker($param_types, $enums) ); $request->addParams($params); $request->addFields($fields); return $pending ? $request : $request->execute(); } public function getProductTags(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, '/product_tags', new ShadowIGMediaProductTags(), 'EDGE', ShadowIGMediaProductTags::getFieldsEnum()->getValues(), new TypeChecker($param_types, $enums) ); $request->addParams($params); $request->addFields($fields); return $pending ? $request : $request->execute(); } public function createProductTag(array $fields = array(), array $params = array(), $pending = false) { $this->assureId(); $param_types = array( 'child_index' => 'unsigned int', 'updated_tags' => 'list', ); $enums = array( ); $request = new ApiRequest( $this->api, $this->data['id'], RequestInterface::METHOD_POST, '/product_tags', new ShadowIGMediaProductTags(), 'EDGE', ShadowIGMediaProductTags::getFieldsEnum()->getValues(), new TypeChecker($param_types, $enums) ); $request->addParams($params); $request->addFields($fields); return $pending ? $request : $request->execute(); } public function getSelf(array $fields = array(), array $params = array(), $pending = false) { $this->assureId(); $param_types = array( 'ad_account_id' => 'unsigned int', 'boostable_media_callsite' => 'boostable_media_callsite_enum', 'business_id' => 'string', 'primary_fb_page_id' => 'string', 'primary_ig_user_id' => 'string', 'secondary_fb_page_id' => 'string', 'secondary_ig_user_id' => 'string', ); $enums = array( 'boostable_media_callsite_enum' => array( 'ADS_MANAGER_L1_EDITOR_DYNAMIC_ADS_WITH_EXISTING_POST', 'PA_HUB_CATALOG_INGESTION_CREATOR_ASSET', ), ); $request = new ApiRequest( $this->api, $this->data['id'], RequestInterface::METHOD_GET, '/', new IGMedia(), 'NODE', IGMedia::getFieldsEnum()->getValues(), new TypeChecker($param_types, $enums) ); $request->addParams($params); $request->addFields($fields); return $pending ? $request : $request->execute(); } public function updateSelf(array $fields = array(), array $params = array(), $pending = false) { $this->assureId(); $param_types = array( 'comment_enabled' => 'bool', ); $enums = array( ); $request = new ApiRequest( $this->api, $this->data['id'], RequestInterface::METHOD_POST, '/', new IGMedia(), 'NODE', IGMedia::getFieldsEnum()->getValues(), new TypeChecker($param_types, $enums) ); $request->addParams($params); $request->addFields($fields); return $pending ? $request : $request->execute(); } }