laposta/laposta-api-php

Laposta api, free api to laposta.nl

2.0.0 2025-05-27 14:08 UTC

This package is auto-updated.

Last update: 2025-05-27 14:59:03 UTC


README

Build Coverage Packagist Version PHP Version License

A PHP library for interacting with the Laposta API, compatible with PSR-18 and PSR-17 standards.

Requirements

To use the Laposta API, the following is required:

  • PHP >= 8.1
  • cURL PHP extension
  • JSON PHP extension

Composer Installation

The easiest way to install this library is by requiring it via Composer:

composer require laposta/laposta-api-php

Manual Installation

If you're not using Composer, include the autoloader:

require_once("/path/to/laposta-api-php/standalone/autoload.php");

Quick Example

$laposta = new LapostaApi\Laposta('your_api_key');
$member = $laposta->memberApi()->create($listId, ['email' => 'test@example.com', 'ip' => '123.123.123.123']);

Examples

This project includes a set of real, runnable examples organized by API resource (e.g., list, campaign, member).
Each example demonstrates a specific API operation and can be run via PHP CLI.
See examples/README.md for setup instructions and an overview of the available examples.

Extensibility

This library is built around PHP standards (PSR-18/17) and is designed to be flexible.
You can inject your own HTTP client and factories (e.g. Guzzle, Nyholm, Symfony components) via the constructor:

$laposta = new LapostaApi\Laposta(
    'your_api_key',
    httpClient: new \GuzzleHttp\Client(), // implements PSR-18
    requestFactory: ...,
    responseFactory: ...,
    streamFactory: ...,
    uriFactory: ...
);

If no client or factories are provided, the library uses its own lightweight implementations by default.

API Documentation

For the full API reference, see https://api.laposta.nl/doc.

Changelog

See CHANGELOG.md for a complete list of changes.

License

This library is open-sourced software licensed under the MIT license.