PHPackages                             anthraxisbr/rd-php-sdk - 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. anthraxisbr/rd-php-sdk

ActiveLibrary[API Development](/categories/api)

anthraxisbr/rd-php-sdk
======================

Unofficial RD Station PHP SDK

142PHPCI failing

Since Oct 8Pushed 6y ago2 watchersCompare

[ Source](https://github.com/AnthraxisBR/rd-station-php-sdk)[ Packagist](https://packagist.org/packages/anthraxisbr/rd-php-sdk)[ RSS](/packages/anthraxisbr-rd-php-sdk/feed)WikiDiscussions master Synced 3w ago

READMEChangelogDependenciesVersions (1)Used By (0)

Unofficial RD Station PHP SDK
-----------------------------

[](#unofficial-rd-station-php-sdk)

Considerações:
--------------

[](#considerações)

Fiz esse projeto como parte de outro projeto 'Gerador de SDK automático', que ainda não está pronto para ser publicado.

Como não tenho nenhuma conta na RD Station, essa SDK nunca foi testada em produção (até 03 de outubro 2019).

Instalação
----------

[](#instalação)

```
composer require composer require anthraxisbr/rd-php-sdk

```

Configuração
------------

[](#configuração)

Crie o arquivo '.env'

```
cp .env.example .env

```

Preencha os valores do arquivo com seu client id e client secret, e sua url de redirecionamento.

Gerar o Access Token
--------------------

[](#gerar-o-access-token)

Para gerar o token, chame o método autorize da classe `src/Client/Authentication.php`, e tenha um rota que chame a a função `callback` da mesma classe.

Autenticando:

```
$AuthClient = new AnthraxisBR\Client\Authentication();
$AuthClient->authorize();

```

Solicitando Access Token:

```
$code = $_GET['code'];
$AuthClient->callback($code);

```

Autenticando com sucesso, a resposta de ´callback´ será um objeto de `Response`;

Revogando um token:

```
$AuthClient->revoke($token, $token_type_hint);

```

Informações da conta
--------------------

[](#informações-da-conta)

[https://developers.rdstation.com/pt-BR/reference/account\_infos](https://developers.rdstation.com/pt-BR/reference/account_infos)

Para utilizar a SDK com rotas que ginecessitam de autenticação, apenas instancia a classe informando o valor de access token como argumento:

```
$AccountInfoClient = new AnthraxisBR\Client\AccountInfo('access token');

```

Localizando nome da conta:

```
$AccountInfoClient->getAccountInfo()

```

Localizando Tracking Code:

```
$AccountInfoClient->getTrackingCode()

```

Contatos
--------

[](#contatos)

Instanciando o client:

```
$ContactsClient = new AnthraxisBR\Client\Contacts('access token');

```

Localizando o contato pelo uui:

```
$ContactsClient->getContactFromUuid('uuid');

```

Localizando o contato pelo e-mail:

```
$ContactsClient->getContactFromEmail('email');

```

Atualizando o usuário pelo uuid:

```
Veja o corpo: https://developers.rdstation.com/pt-BR/reference/contacts

$ContactsClient->updateUserFromUuid('uuid', $data);

```

Atualizando o usuário pelo e-mail:

```
Veja o corpo: https://developers.rdstation.com/pt-BR/reference/contacts

$ContactsClient->updateUserFromEmail('email', $data);

```

Funil de Contato
----------------

[](#funil-de-contato)

Instanciando o client:

```
$ContactsFunnelsClient = new AnthraxisBR\Client\ContactsFunnels('access token');

```

Recuperar os funis atrelados a um contato pelo uuid:

```
$ContactsFunnelsClient->getUserFunnelsFromUuid('uuid');

```

Recuperar os funis atrelados a um contato pelo e-mail:

```
Veja o corpo: https://developers.rdstation.com/pt-BR/reference/contacts/funnels

$ContactsFunnelsClient->updateUserFunnel($funnelName, $uuid ,$email, $data);

```

Eventos
-------

[](#eventos)

O disparo de evento, é chamado de trigger:

```
Veja o corpo: https://developers.rdstation.com/pt-BR/reference/events

```

Instanciando o client:

```
$Events = new AnthraxisBR\Client\Events('access token');

```

Exemplo do corpo

```
{
    "email": "email@email.com",
    "funnel_name": "default"
}

```

Nova oportunidade:

```
$Events->newOpportunity({
    "email": "email@email.com",
    "funnel_name": "default"
});

```

Ganhar Oportunidade:

```
$Events->wonOpportunity({
    "email": "email@email.com",
    "funnel_name": "default"
});

```

Perder Oportunidade:

```
$Events->lostOpportunity({
    "email": "email@email.com",
    "funnel_name": "default"
});

```

Receber pedido:

```
$Events->orderPlaced({
    "email": "email@email.com",
    "funnel_name": "default"
});

```

Incluir item no pedido:

```
$Events->orderPlacedItem({
    "email": "email@email.com",
    "funnel_name": "default"
});

```

Carrinho abandonado:

```
$Events->cartAbandoned({
    "email": "email@email.com",
    "funnel_name": "default"
});

```

Item abandonado no carrinho:

```
$Events->cartAbandonedItem({
    "email": "email@email.com",
    "funnel_name": "default"
});

```

Item abandonado no carrinho:

```
$Events->cartAbandonedItem({
    "email": "email@email.com",
    "funnel_name": "default"
});

```

Chat iniciado:

```
$Events->chatStarted({
    "email": "email@email.com",
    "funnel_name": "default"
});

```

Chat Encerrado:

```
$Events->chatFinished({
    "email": "email@email.com",
    "funnel_name": "default"
});

```

Ligação finalizada:

```
$Events->callFinished({
    "email": "email@email.com",
    "funnel_name": "default"
});

```

Interação de midia:

```
$Events->mediaPlaybackStarted({
    "email": "email@email.com",
    "funnel_name": "default"
});

```

TODO
----

[](#todo)

- Melhorar documentação
- Implementar os testes das classes
- Testar SDK com uma conta de verdade
- Implementar recurso para validar as requisições
- Implementar tratamento de errosg

###  Health Score

19

—

LowBetter than 9% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity7

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity36

Early-stage or recently created project

 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.

### Community

Maintainers

![](https://www.gravatar.com/avatar/21bdbb570f061e0dc18dd98f31827c5f942127d2550e3b76eec2e262ecbbdf7c?d=identicon)[AnthraxisBR](/maintainers/AnthraxisBR)

---

Top Contributors

[![AnthraxisBR](https://avatars.githubusercontent.com/u/21253530?v=4)](https://github.com/AnthraxisBR "AnthraxisBR (23 commits)")

### Embed Badge

![Health badge](/badges/anthraxisbr-rd-php-sdk/health.svg)

```
[![Health](https://phpackages.com/badges/anthraxisbr-rd-php-sdk/health.svg)](https://phpackages.com/packages/anthraxisbr-rd-php-sdk)
```

###  Alternatives

[exsyst/swagger

A php library to manipulate Swagger specifications

35816.3M7](/packages/exsyst-swagger)[hubspot/api-client

Hubspot API client

24015.5M18](/packages/hubspot-api-client)[pocketmine/bedrock-protocol

An implementation of the Minecraft: Bedrock Edition protocol in PHP

172437.8k11](/packages/pocketmine-bedrock-protocol)[botman/driver-telegram

Telegram driver for BotMan

93452.6k6](/packages/botman-driver-telegram)

PHPackages © 2026

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