This package provides a Laravel integration for the SharpAPI Content Keywords Generator. It allows you to generate keywords or tags from any text content, which is perfect for SEO optimization, content categorization, and more.
You can install the package via composer:
composer require sharpapi/laravel-content-keywordsPublish the config file with:
php artisan vendor:publish --tag="sharpapi-content-keywords"This is the contents of the published config file:
return [
'api_key' => env('SHARP_API_KEY'),
'base_url' => env('SHARP_API_BASE_URL', 'https://sharpapi.com/api/v1'),
'api_job_status_polling_wait' => env('SHARP_API_JOB_STATUS_POLLING_WAIT', 180),
'api_job_status_polling_interval' => env('SHARP_API_JOB_STATUS_POLLING_INTERVAL', 10),
'api_job_status_use_polling_interval' => env('SHARP_API_JOB_STATUS_USE_POLLING_INTERVAL', false),
];Make sure to set your SharpAPI key in your .env file:
SHARP_API_KEY=your-api-key
use SharpAPI\ContentKeywords\ContentKeywordsService;
$service = new ContentKeywordsService();
// Generate keywords from text
$keywords = $service->generateKeywords(
'Your text content here',
'English', // optional language
10, // optional max quantity
'professional', // optional voice tone
'technology blog' // optional context
);
// generateKeywords() returns a status URL; fetchResults() polls until the job is done
$job = $service->fetchResults($keywords);
$list = json_decode($job->getResultJson(), true); // list of keyword stringstext(string): The text content to generate keywords fromlanguage(string|null): The language of the content (default: English)maxQuantity(int|null): Maximum number of keywords to generatevoiceTone(string|null): The tone of voice for the keywords (e.g., professional, casual)context(string|null): Additional context to improve keyword relevance
The response is a JSON string containing an array of keywords:
{
"data": {
"type": "api_job_result",
"id": "b93aae27-87b8-4c68-925a-f6c991cc563c",
"attributes": {
"status": "success",
"type": "content_keywords",
"result": [
"Las Vegas Grand Prix",
"Max Verstappen",
"Formel 1",
"Lewis Hamilton",
"Fernando Alonso"
]
}
}
}This package ships a Laravel Boost skill, sharpapi-content-keywords. It teaches AI coding agents the async submit-then-fetchResults() flow, the queued-job recipe, the result shape and the testing approach. Boost 2 or newer is required. In your app:
composer require laravel/boost --dev
php artisan boost:install # first time
php artisan boost:update --discover # already using BoostSelect sharpapi/laravel-content-keywords when Boost lists the packages it found. The skill loads on demand; no always-on guideline is added.
The MIT License (MIT). Please see License File for more information.