Laravel Keywords Everywhere
A lightweight Keywords Everywhere API client for Laravel — keyword search volume/CPC/competition data, related and PASF keywords, domain/URL keyword & traffic data, and backlinks.
#Laravel Keywords Everywhere
A lightweight Keywords Everywhere API client for Laravel. It wraps the keyword research, domain/URL, and backlinks endpoints behind a small KeywordsEverywhere client/facade, threads your Bearer token, and returns the decoded JSON body — no DTOs, no response wrappers.
#Features
- Keyword data —
keywordData()(search volume, CPC, competition for up to 100 keywords) - Related keywords —
relatedKeywords() - PASF keywords —
pasfKeywords()("People Also Search For") - Domain keywords / traffic —
domainKeywords()anddomainTraffic() - Domain backlinks —
domainBacklinks()anddomainUniqueBacklinks() - URL keywords / traffic —
urlKeywords()andurlTraffic() - URL backlinks —
urlBacklinks()andurlUniqueBacklinks() - Account info —
credits(),countries(),currencies() - A non-2xx response throws
Illuminate\Http\Client\RequestException - Any
keywordsparameter accepts an array or a comma-separated string
#Installation
composer require jeffersongoncalves/laravel-keywords-everywhere
Optionally publish the config file:
php artisan vendor:publish --tag="keywords-everywhere-config"
#Configuration
Add to your .env:
KEYWORDS_EVERYWHERE_API_KEY=your-keywords-everywhere-api-token
Generate a token at https://keywordseverywhere.com/dashboard.
#Config Options
// config/keywords-everywhere.php return [ 'token' => env('KEYWORDS_EVERYWHERE_API_KEY'), 'base_url' => env('KEYWORDS_EVERYWHERE_BASE_URL', 'https://api.keywordseverywhere.com/v1'), ];
When keywords-everywhere.token is null the client falls back to config('services.keywords-everywhere.token').
#Usage
Via the facade:
use JeffersonGoncalves\KeywordsEverywhere\Facades\KeywordsEverywhere; // Keyword data — array or comma-separated string, max 100 keywords KeywordsEverywhere::keywordData(['laravel', 'php'], country: 'us', currency: 'USD'); KeywordsEverywhere::keywordData('laravel,php'); KeywordsEverywhere::relatedKeywords('laravel', country: 'us', currency: 'USD'); KeywordsEverywhere::pasfKeywords('laravel', country: 'us', currency: 'USD'); KeywordsEverywhere::domainKeywords('example.com', country: 'us', currency: 'USD'); KeywordsEverywhere::domainTraffic('example.com', country: 'us'); KeywordsEverywhere::domainBacklinks('example.com'); KeywordsEverywhere::domainUniqueBacklinks('example.com'); KeywordsEverywhere::urlKeywords('https://example.com/page', country: 'us', currency: 'USD'); KeywordsEverywhere::urlTraffic('https://example.com/page', country: 'us'); KeywordsEverywhere::urlBacklinks('https://example.com/page'); KeywordsEverywhere::urlUniqueBacklinks('https://example.com/page'); KeywordsEverywhere::credits(); KeywordsEverywhere::countries(); KeywordsEverywhere::currencies();
Or inject/resolve the underlying client:
use JeffersonGoncalves\KeywordsEverywhere\KeywordsEverywhere; $keywordsEverywhere = app(KeywordsEverywhere::class); $keywordsEverywhere->credits();
#Error handling
use Illuminate\Http\Client\RequestException; try { $data = KeywordsEverywhere::keywordData('laravel'); } catch (RequestException $e) { // $e->response->status(), $e->response->json(), ... }
#Testing
composer test
#Static Analysis
composer analyse
#Code Formatting
composer format
#Changelog
Please see CHANGELOG for more information on what has changed recently.
#Contributing
Please see CONTRIBUTING for details.
#Security Vulnerabilities
Please review our security policy on how to report security vulnerabilities.
#Credits
#License
The MIT License (MIT). Please see License File for more information.