PHPackages                             allyans3/protobuf-steam-auth - 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. [Authentication &amp; Authorization](/categories/authentication)
4. /
5. allyans3/protobuf-steam-auth

ActiveLibrary[Authentication &amp; Authorization](/categories/authentication)

allyans3/protobuf-steam-auth
============================

description

v1.0.12(1y ago)219.7k↓38.5%4[1 issues](https://github.com/Allyans3/protobuf-steam-auth/issues)2proprietaryPHP

Since Dec 4Pushed 1y ago1 watchersCompare

[ Source](https://github.com/Allyans3/protobuf-steam-auth)[ Packagist](https://packagist.org/packages/allyans3/protobuf-steam-auth)[ RSS](/packages/allyans3-protobuf-steam-auth/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (10)Dependencies (5)Versions (14)Used By (2)

[![Protobuf-Steam-Auth](https://raw.githubusercontent.com/Allyans3/protobuf-steam-auth/master/images/protobuf-steam-auth-logo.png)](https://github.com/Allyans3/protobuf-steam-auth)

[![Latest Stable Version](https://camo.githubusercontent.com/71adf48e7424c4168b5ed8d9d2a422829c9c879cdb1c41385d0c85daf10eddbb/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f616c6c79616e73332f70726f746f6275662d737465616d2d617574683f7374796c653d666c61742d737175617265266c6f676f3d436f6d706f736572)](https://packagist.org/packages/allyans3/protobuf-steam-auth)[![Total Downloads](https://camo.githubusercontent.com/c4f7f99d30672cf954ededc2feb0a6ded5d804855ac60e3edbd5ec343ddc9e6a/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f616c6c79616e73332f70726f746f6275662d737465616d2d617574683f7374796c653d666c61742d737175617265266c6f676f3d436f6d706f736572)](https://packagist.org/packages/allyans3/protobuf-steam-auth)[![Visitors count](https://camo.githubusercontent.com/f002811f4742d1f3e7ae53ad6d05ba3affa7ebd27267c85321bece78911dc8bf/68747470733a2f2f686974732e736565796f756661726d2e636f6d2f6170692f636f756e742f696e63722f62616467652e7376673f75726c3d68747470732533412532462532466769746875622e636f6d253246416c6c79616e733325324670726f746f6275662d737465616d2d6175746826636f756e745f62673d253233343443433130267469746c655f62673d2532333535353535352669636f6e3d6769746875622e7376672669636f6e5f636f6c6f723d253233453745374537267469746c653d76697369746f727326656467655f666c61743d74727565)](https://github.com/Allyans3/protobuf-steam-auth)[![License](https://camo.githubusercontent.com/8c6ffc0f8b37d889a05766350812c6a0545b526b91552b71f017a7b0920b65db/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f6c2f416c6c79616e73332f70726f746f6275662d737465616d2d617574683f7374796c653d666c61742d73717561726526636f6c6f723d33353535353535)](https://github.com/Allyans3/protobuf-steam-auth)

> To use this package you need to install php extension `protobuf`. Installation instructions are below.

About Protobuf Steam Auth
-------------------------

[](#about-protobuf-steam-auth)

This package provides the ability to authorize to the Steam using Google Protobuf. Support PHP 7+ and PHP 8+.

Installation
------------

[](#installation)

1. Run this text in a console to install this package from Packagist:

```
composer require allyans3/protobuf-steam-auth

```

2. Copy folder `protobuf-ext` from `/vendor/allyans3/protobuf-steam-auth` to your project:

```
cp -a /vendor/allyans3/protobuf-steam-auth/protobuf-ext .

```

3. Build php extension with next commands choosing between `php 7` and `php 8` (Thanks to [Tankonyako](https://github.com/Tankonyako)):

```
cd protobuf-ext/php7 // For PHP 7
cd protobuf-ext/php8 // For PHP 8

```

For Linux/Mac:

```
phpize
./configure
make
make install

```

For Windows see this [Youtube video](https://youtube.com/watch?v=wVnfw5exxGI&ab_channel=Dave):

4. Add line `extension=protobuf.so` to your php.ini file

Usage
-----

[](#usage)

```
use SteamAuth\SteamAuth;

require "vendor/autoload.php";

$auth = new SteamAuth('login', 'password', 'shared_secret');

// For proxy
$auth->setProxy($proxy);

// For WebBrowser
$auth->login();
// or for MobileApp
$auth->loginMobile();

// You can check if you are authorized
$auth->isAuthorized();

// If auth `true` you can get cookies
$auth->getCookies();
// or by host
$auth->getCookiesByHost();

// Getting data for platform type
$auth->getDataForPlatformType(1) // 1 => Steam Client, 2 => Web Browser, 3 => Mobile App

// Updating `access_token` with `refresh_token`
$auth->updateAccessToken($refreshToken)

// Decoding JWT
$auth->decodeJWT($token)
```

Cookie storage
--------------

[](#cookie-storage)

By default, cookie saves in `$cookieStorage` attribute and can be retrieved by `getCookies()` or `getCookiesByHost()` methods.

Optional, you can specify the path to your cookie file in `cookie_file` key.

Also, you can send your cookies as array to `cookie_storage` key.

```
use SteamAuth\SteamAuth;

require "vendor/autoload.php";

$cookieOptions = [
    'cookie_file' => 'path_to_cookie_file',

    'cookie_storage' => [
        "steamcommunity.com" => [
            "sessionid"         => "*******",
            "steamCountry"      => "*******",
            "steamLoginSecure"  => "*******"
        ],
        "store.steampowered.com" => [
            "sessionid"         => "*******",
            "steamLoginSecure"  => "*******"
        ],
        "help.steampowered.com" => [
            "sessionid"         => "*******",
            "steamLoginSecure"  => "*******"
        ],
        "steam.tv" => [
            "sessionid"         => "*******",
            "steamCountry"      => "*******",
            "steamLoginSecure"  => "*******"
        ],
        "checkout.steampowered.com" => [
            "steamLoginSecure"  => "*******"
        ]
    ]
];

$auth = new SteamAuth('login', 'password', 'shared_secret', $cookieOptions);
```

Handle Exceptions
-----------------

[](#handle-exceptions)

```
use SteamAuth\SteamAuth;

require "vendor/autoload.php";

$auth = new SteamAuth('login', 'password', 'shared_secret');

try {
    $auth->login();
} catch (\SteamAuth\Exceptions\SteamErrorException $e) {
    $e->getMessage();
} catch (\SteamAuth\Exceptions\SteamResponseException $e) {
    $e->getMessage();
}
```

Proxy
-----

[](#proxy)

**v1.0.9 or later is required to use proxy.**

Keys that can be in an array:

- `ip` + `port` or `domain_name` – `domain_name` used for rotating proxy
- `user` + `pass` – if proxy support auth
- `type` – you can pass constant variable or integer as explained in table below
- `timeout` – in seconds, default infinite
- `connect_timeout` – in seconds, default infinite
- `user_agent` – your Useragent

cURL Proxy TypeIntegerCURLPROXY\_HTTP0CURLPROXY\_HTTP\_1\_01CURLPROXY\_HTTPS2CURLPROXY\_SOCKS44CURLPROXY\_SOCKS4A6CURLPROXY\_SOCKS55CURLPROXY\_SOCKS5\_HOSTNAME7Example:

```
use SteamAuth\SteamAuth;

require "vendor/autoload.php";

$proxy = [
    'ip' => '49.12.181.264',
    'port' => 8000,
    'user' => 'user',
    'pass' => 'pass'
];

$auth = new SteamAuth('login', 'password', 'shared_secret');

$auth->setProxy($proxy);

$auth->login();
```

Support
-------

[](#support)

Report bugs on the [issue tracker](https://github.com/Allyans3/protobuf-steam-auth/issues).

License
-------

[](#license)

Protobuf Steam Auth is open-sourced Composer package licensed under the [MIT license](https://opensource.org/licenses/MIT).

###  Health Score

39

—

LowBetter than 86% of packages

Maintenance42

Moderate activity, may be stable

Popularity34

Limited adoption so far

Community17

Small or concentrated contributor base

Maturity53

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 89.7% 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 ~67 days

Recently: every ~150 days

Total

13

Last Release

457d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/7fee192742c069abf8c7b3240192d4df0dfc94b273f86bab992e7091c2b8fce2?d=identicon)[Allyans3](/maintainers/Allyans3)

---

Top Contributors

[![Allyans3](https://avatars.githubusercontent.com/u/43245513?v=4)](https://github.com/Allyans3 "Allyans3 (26 commits)")[![ftsu-ua](https://avatars.githubusercontent.com/u/47595573?v=4)](https://github.com/ftsu-ua "ftsu-ua (2 commits)")[![omniError](https://avatars.githubusercontent.com/u/1885212?v=4)](https://github.com/omniError "omniError (1 commits)")

---

Tags

protobufprotocol-bufferssteamsteam-authsteamauthsteamcommunitysteamlogin

### Embed Badge

![Health badge](/badges/allyans3-protobuf-steam-auth/health.svg)

```
[![Health](https://phpackages.com/badges/allyans3-protobuf-steam-auth/health.svg)](https://phpackages.com/packages/allyans3-protobuf-steam-auth)
```

###  Alternatives

[directorytree/ldaprecord-laravel

LDAP Authentication &amp; Management for Laravel.

5682.0M15](/packages/directorytree-ldaprecord-laravel)[vonage/jwt

A standalone package for creating JWTs for Vonage APIs

424.1M4](/packages/vonage-jwt)[amocrm/amocrm-api-library

amoCRM API Client

182728.5k6](/packages/amocrm-amocrm-api-library)[microsoft/kiota-authentication-phpleague

Authentication provider for Kiota using the PHP League OAuth 2.0 client to authenticate against the Microsoft Identity platform

153.2M7](/packages/microsoft-kiota-authentication-phpleague)[telesign/telesign

TeleSign SDK

162.1M2](/packages/telesign-telesign)

PHPackages © 2026

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