Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Eprel Api Client Bundle Laravel Package

asm/eprel-api-client-bundle

View on GitHub
Deep Wiki
Context7

EPREL Public API Client Bundle

A Symfony 7 compatible bundle for the EPREL Public API Client.

Installation

Install the bundle via Composer:

composer require asm/eprel-api-client-bundle

If you don't use Symfony Flex, you must enable the bundle manually in your config/bundles.php:

// config/bundles.php
return [
    // ...
    Asm\EprelApiClientBundle\AsmEprelApiClientBundle::class => ['all' => true],
];

Configuration

Configure the bundle in config/packages/asm_eprel_api_client.yaml:

asm_eprel_api_client:
    # Your EPREL API Key (optional but recommended)
    api_key: '%env(EPREL_API_KEY)%'
    
    # Base URI of the EPREL API (optional)
    uri: 'https://eprel.ec.europa.eu/api'
    
    # Assets URI (optional)
    assets_uri: 'https://ec.europa.eu/assets/move-ener/eprel/EPREL%20Public/Nested-labels%20thumbnails/'
    
    # API Version (optional)
    version: 'latest'
    
    # Cache TTL in seconds (optional, default: 3600)
    cache_ttl: 3600
    
    # Custom PSR-6 Cache Service ID (optional)
    cache_service: 'cache.app'
    
    # Custom PSR-3 Logger Service ID (optional)
    logger_service: 'logger'
    
    # Custom PSR-18 HTTP Client Service ID (optional)
    http_client_service: 'http_client'

Usage

You can now inject the Asm\EprelApiClient\EprelClient into your services or controllers:

<?php

namespace App\Controller;

use Asm\EprelApiClient\EprelClient;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;

class EprelController extends AbstractController
{
    #[Route('/eprel/product/{registrationNumber}', name: 'eprel_product')]
    public function show(string $registrationNumber, EprelClient $client): Response
    {
        $product = $client->getProduct($registrationNumber);
        
        return $this->json($product->toArray());
    }
}

License

This bundle is released under the MIT License. See the LICENSE file for details.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
milito/query-filter
apiboxsym/user-bundle
apiboxsym/health-check-bundle
jayeshmepani/jpl-moshier-ephemeris-php
elnasnato/laraliveui
labrodev/rest-sdk
sampaui/sampaui
babelqueue/php-sdk
facebook/capi-param-builder-php
babelqueue/symfony
hamzi/corewatch
minionfactory/raw-hydrator
hexters/coinpayment
rjcodes/rjcms
act-training/laravel-permissions-manager
alimarchal/laravel-chart-of-accounts
babenkoivan/elastic-scout-driver
mkwebdesign/filament-watchdog-v5
renatomarinho/laravel-page-speed
zedmagdy/filament-business-hours