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

ActiveLibrary[API Development](/categories/api)

keestash/php-sdk
================

SDK for interacting with Keestash

0.0.2(3y ago)013AGPL-3.0-or-laterPHPPHP &gt;=7.4

Since Jun 24Pushed 2y ago1 watchersCompare

[ Source](https://github.com/keestash/php-sdk)[ Packagist](https://packagist.org/packages/keestash/php-sdk)[ RSS](/packages/keestash-php-sdk/feed)WikiDiscussions master Synced today

READMEChangelog (2)Dependencies (2)Versions (3)Used By (0)

Keestash SDK
============

[](#keestash-sdk)

Keestash SDK is a collection of code that makes it easier to interact with Keestash instances. The basic idea is to configure the SDK once and create, update, delete resources on a remote Keestash server easily.

**The SDK is still under development. The service classes are added as needed. If you need something, please open a pull request or open a support ticket.**

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

[](#installation)

Use the package manager [composer](https://getcomposer.org/) to install Keestash SDK.

```
composer install keestash/sdk
```

Usage
-----

[](#usage)

First, you need to implement the `\Keestash\Sdk\Service\Api\ApiCredentialsInterface` interface in order to provide the API URL and credentials to the SDK. The API URL needs to be there for all requests sending to Keestash whereas the user hash and user token are not necessarily need to present.

```
class ApiCredentialsProvider implements \Keestash\Sdk\Login\Entity\ApiCredentialsInterface {

    public function getApiUrl(): string
    {
        return 'your-keestash.server/api.php';
    }

    public function getUserToken(): ?string
    {
        return ;
    }

    public function getUserHash(): ?string
    {
        return ;
    }
}
```

After providing the URL to your Keestash instance, you can call the login endpoint

```
$keestashClient = new \Keestash\Sdk\Client\KeestashClient(
    new GuzzleHttp\Client(),
    new ApiCredentialsProvider()
);

$login = new \Keestash\Sdk\Login\Login($keestashClient);
$data = $login->login(, );
var_dump($data);
```

The login endpoint returns a user hash and token in case of success. You need these for all authenticated requests to Keestash. Make sure that your class implementing `\Keestash\Sdk\Service\Api\ApiCredentialsInterface` uses the returned values for all subsequent requests.

```
require __DIR__ . '/vendor/autoload.php';

// create credential
$c = new \Keestash\Sdk\PasswordManager\Entity\Credential(
    'test-password',
    'theusername',
    'topsecret',
    'root',
    'https://keestash.com'
);

$credential = new \Keestash\Sdk\PasswordManager\Credential\Credential($keestashClient);
$credential->create($c);

// create folder
$folder = new \Keestash\Sdk\PasswordManager\Folder\Folder($keestashClient);
$folder->create(new \Keestash\Sdk\PasswordManager\Entity\Folder('test-folder', 'root'));
```

Contributing
------------

[](#contributing)

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Please make sure to update tests as appropriate.

License
-------

[](#license)

[AGPLv3](https://choosealicense.com/licenses/agpl-3.0/)

###  Health Score

18

—

LowBetter than 8% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity5

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity35

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.

###  Release Activity

Cadence

Every ~1 days

Total

2

Last Release

1105d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/f739366ceb76fea853fa3b179220bc9b68f9494afd4b9789c67e70017be87495?d=identicon)[doganoo](/maintainers/doganoo)

---

Top Contributors

[![doganoo](https://avatars.githubusercontent.com/u/6998611?v=4)](https://github.com/doganoo "doganoo (15 commits)")

### Embed Badge

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

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

###  Alternatives

[statamic/cms

The Statamic CMS Core Package

4.8k3.6M985](/packages/statamic-cms)[tencentcloud/tencentcloud-sdk-php

TencentCloudApi php sdk

3741.3M47](/packages/tencentcloud-tencentcloud-sdk-php)[neuron-core/neuron-ai

The PHP Agentic Framework.

2.0k656.1k38](/packages/neuron-core-neuron-ai)[avalara/avataxclient

Client library for Avalara's AvaTax suite of business tax calculation and processing services. Uses the REST v2 API.

528.5M7](/packages/avalara-avataxclient)[eslazarev/wildberries-sdk

Wildberries OpenAPI clients (generated).

273.0k](/packages/eslazarev-wildberries-sdk)[files.com/files-php-sdk

Files.com PHP SDK

2481.1k](/packages/filescom-files-php-sdk)

PHPackages © 2026

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