Looking to hire Laravel developers? Try LaraJobs

laravel-content-detect-urls maintained by sharpapi

Description
AI URL Detection for Laravel powered by SharpAPI.com
Last update
2026/09/24 17:17 (dev-main)
License
Downloads
2

Comments
comments powered by Disqus

AI URL Detector for Laravel

Latest Version on Packagist Total Downloads

This package provides a Laravel integration for the SharpAPI URL Detection service. It allows you to automatically detect and extract URLs from text content, which is perfect for content moderation, data extraction, and link validation.

Installation

You can install the package via composer:

composer require sharpapi/laravel-content-detect-urls

Configuration

Publish the config file with:

php artisan vendor:publish --tag="sharpapi-content-detect-urls"

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

Usage

use SharpAPI\ContentDetectUrls\ContentDetectUrlsService;

$service = new ContentDetectUrlsService();

// Detect URLs in text
$detectedUrls = $service->detectUrls(
    'Check out these websites: example.com, https://github.com, and www.laravel.com/docs'
);

// detectUrls() returns a status URL; fetchResults() polls until the job is done
$job = $service->fetchResults($detectedUrls);
$urls = json_decode($job->getResultJson(), true); // list of ['url' => ..., 'protocol' => ...]

Parameters

  • text (string): The text content to analyze for URLs

Response Format

The response is a JSON string containing an array of detected URLs with their protocols:

[
  {
    "url": "http://example.com",
    "protocol": "http"
  },
  {
    "url": "https://github.com",
    "protocol": "https"
  },
  {
    "url": "http://www.laravel.com/docs",
    "protocol": "http"
  }
]

Features

  • Automatically detects URLs in text content
  • Works with various URL formats (with or without protocol, with or without www)
  • Identifies the protocol for each URL
  • Handles URLs with different TLDs (.com, .org, .io, etc.)
  • Useful for content moderation, data extraction, and link validation

AI agents (Laravel Boost)

This package ships a Laravel Boost skill, sharpapi-content-detect-urls. 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 Boost

Select sharpapi/laravel-content-detect-urls when Boost lists the packages it found. The skill loads on demand; no always-on guideline is added.

Credits

License

The MIT License (MIT). Please see License File for more information.