result[0]->items as $item) { $candidate_domain = CandidateDomain::where('from_domain', $item->domain_from)->first(); if (is_null($candidate_domain)) { $candidate_domain = new CandidateDomain; $candidate_domain->to_url = $item->url_to; $candidate_domain->from_domain = $item->domain_from; $candidate_domain->from_tld = get_tld_from_url($item->url_from); if (is_array($item->domain_from_platform_type)) { $candidate_domain->platform_type = implode(',', $item->domain_from_platform_type); } else { $candidate_domain->platform_type = $item->domain_from_platform_type; } $candidate_domain->from_url = $item->url_from; $candidate_domain->from_title = $item->page_from_title; $candidate_domain->from_image_alt = $item->alt; $candidate_domain->from_image_url = $item->image_url; $candidate_domain->save(); } } } } } public static function backlinksPaginationLive($target, $search_after_token, $value = 1000) { $api_url = config('dataforseo.url'); $api_version = config('dataforseo.api_version'); $api_timeout = config('dataforseo.timeout'); $query = [ 'target' => $target, 'search_after_token' => $search_after_token, 'value' => $value, 'mode' => 'as_is', ]; try { $response = Http::timeout($api_timeout)->withBasicAuth(config('dataforseo.login'), config('dataforseo.password'))->withBody( json_encode([(object) $query]) )->post("{$api_url}{$api_version}backlinks/backlinks/live"); if ($response->successful()) { return $response->body(); } } catch (Exception $e) { return null; } return null; } }