PHPackages                             beyerz/api-adapter-bundle - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. beyerz/api-adapter-bundle

ActiveSymfony-bundle[API Development](/categories/api)

beyerz/api-adapter-bundle
=========================

Symfony bundle to act as an api connector and adapter for third party apis

1.2.2(7y ago)12.1kMITPHPPHP &gt;=7.0

Since Sep 13Pushed 7y ago1 watchersCompare

[ Source](https://github.com/beyerz/ApiAdapterBundle)[ Packagist](https://packagist.org/packages/beyerz/api-adapter-bundle)[ RSS](/packages/beyerz-api-adapter-bundle/feed)WikiDiscussions master Synced 5d ago

READMEChangelog (7)Dependencies (5)Versions (11)Used By (0)

Api Adapter Bundle
==================

[](#api-adapter-bundle)

About
-----

[](#about)

Api Adapter Bundle for Symfony2

This bundle provides a gateway and adapter pattern for connecting to thrid party apis.

Using JMSSerializer, you will simply need to provide the data class to be populated with the api response.

Installation
============

[](#installation)

### Composer (Recommended)

[](#composer-recommended)

```
composer require beyerz/api-adapter-bundle

```

### Application Kernel

[](#application-kernel)

Add BeyerzApiAdapterBundle to the `registerBundles()` method of your application kernel: Due to the way that this bundle is compiled and the fact that other bundles could require it, please ensure that the bundle is the last parameter in the array.

```
public function registerBundles()
{
    return array(
        new Beyerz\ApiAdapterBundle\BeyerzApiAdapterBundle(),
    );
}
```

Usage
=====

[](#usage)

Config
------

[](#config)

config.yml

```
beyerz_api_adapter:
  json:
    my_client: #name of your client to be used, this will be accessable through container as beyerz_api_adapter.client.YOUR_CUSTOM_NAME
      base_url: "first_base_url"
      options:
        - "an option"
        - "another option"
```

Files and their purpose
-----------------------

[](#files-and-their-purpose)

\###Manager In the manager you would write any business logic that is related to api, but not directly connected to the api. For example, if you wanted to save a copy of every response that the api returns, you could do this here.

The manager is essentially the only class that your system should work against in order to interact with the api.

The manager should have the gateway in the constructor

\###Adapter The adapters job is to translate the api response into a php class. You select the adapter based on your api response type. For rest apis it is most common to use the JsonAdapter.

\###Gateway We provide base gateway classes, but it is suggested that you extend from one of our base classes and add the api functions that you intend on using.

\###Response Entity A response entity, is a data class that used JMSSeriliazer definitions to translate the API response. This is the class that will be passed to the gateway request from the manager.

In the event that a class is not passed, the plain Response will be returned to the manager. Sometimes this is useful when building out the api.

\#TODO #Add a sample of how it works

###  Health Score

31

—

LowBetter than 68% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity18

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity64

Established project with proven stability

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~50 days

Recently: every ~80 days

Total

9

Last Release

2771d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/3812d8934a9934b62846482516124b3cd6c95a1e7457d9f693ddd0fefd9b79dd?d=identicon)[beyerz](/maintainers/beyerz)

---

Top Contributors

[![beyerz](https://avatars.githubusercontent.com/u/4946849?v=4)](https://github.com/beyerz "beyerz (20 commits)")

---

Tags

apisymfonySymfony2REST APIsoap apiapi adapter

### Embed Badge

![Health badge](/badges/beyerz-api-adapter-bundle/health.svg)

```
[![Health](https://phpackages.com/badges/beyerz-api-adapter-bundle/health.svg)](https://phpackages.com/packages/beyerz-api-adapter-bundle)
```

###  Alternatives

[nilportugues/jsonapi-bundle

Symfony 2 &amp; 3 JSON API Transformer Package

11446.0k](/packages/nilportugues-jsonapi-bundle)[deepseek-php/deepseek-php-client

deepseek PHP client is a robust and community-driven PHP client library for seamless integration with the Deepseek API, offering efficient access to advanced AI and data processing capabilities.

47073.9k5](/packages/deepseek-php-deepseek-php-client)[welp/mailchimp-bundle

MailChimp API V3 Symfony Bundle

45360.3k1](/packages/welp-mailchimp-bundle)[rekalogika/mapper

An object mapper for PHP and Symfony. Maps an object to another object. Primarily used for transforming an entity to a DTO and vice versa.

3847.7k1](/packages/rekalogika-mapper)[nanofelis/json-rpc-bundle

This bundle provides a JSON RPC 2.0 implementation for Symfony

1176.1k](/packages/nanofelis-json-rpc-bundle)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
