renoki-co/aws-elastic-client

Just a simple Elasticsearch Client handler that signs the requests for AWS Elasticsearch service with the provided credentials.
41,723 7
Install
composer require renoki-co/aws-elastic-client
Latest Version:1.3.0
License:Apache-2.0
Last Updated:Feb 3, 2026
Links: GitHub  ·  Packagist
Maintainer: rennokki

AWS Elastic Client Handler

CI codecov StyleCI Latest Stable Version Total Downloads Monthly Downloads License

Just a simple Elasticsearch Client handler that signs the requests for AWS Elasticsearch service with the provided credentials.

🤝 Supporting

If you are using one or more Renoki Co. open-source packages in your production apps, in presentation demos, hobby projects, school projects or so, sponsor our work with Github Sponsors. 📦

🚀 Installation

You can install the package via composer:

composer require renoki-co/aws-elastic-client

🙌 Usage

To authenticate to AWS, you will need to set the handler that comes with this package:

use RenokiCo\AwsElasticHandler\AwsHandler;

$awsHandler = new AwsHandler([
    'enabled' => true,
    'aws_access_key_id' => '...',
    'aws_secret_access_key' => '...',
    'aws_region' => 'us-east-1',
    'aws_session_token' => '...', // optional
]);

$client = ClientBuilder::create()
    ->setHosts(...)
    ->setHandler($awsHandler)
    ->build();

If you are building th client statically using fromConfig(), pass the handler parameter:

use RenokiCo\AwsElasticHandler\AwsHandler;

$awsHandler = new AwsHandler([
    'enabled' => true,
    'aws_access_key_id' => '...',
    'aws_secret_access_key' => '...',
    'aws_region' => 'us-east-1',
    'aws_session_token' => '...', // optional
]);

$client = ClientBuilder::fromConfig([
    'hosts' => [
        //
    ],
    'handler' => $awsHandler,
]);

The package will make sure to sign each subsequent request that goes through with the IAM credentials you have provided.

🐛 Testing

vendor/bin/phpunit

🤝 Contributing

Please see CONTRIBUTING for details.

🔒 Security

If you discover any security related issues, please email alex@renoki.org instead of using the issue tracker.

🎉 Credits

Related Packages

babenkoivan/elastic-client

The official PHP Elasticsearch client integrated with Laravel

4,820,157 54
babenkoivan/elastic-migrations

Elasticsearch migrations for Laravel

2,932,230 195
phenix/phenix

Elasticsearch ORM for Laravel/Lumen

87,951 0
babenkoivan/elastic-scout-driver

Elasticsearch driver for Laravel Scout

4,512,458 275
babenkoivan/elastic-scout-driver-plus

Extension for Elastic Scout Driver

3,389,168 286