Download the PHP package apermo/apermo-stash without Composer

On this page you can find all versions of the php package apermo/apermo-stash. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package apermo-stash

Apermo Stash

PHP CI

A self-hosted WordPress plugin for collecting links. Inspired by linkding. Stores URL + title + notes + tags as a custom post type and exposes a token-protected REST API so a browser extension can save links from anywhere.

Per-link public/private visibility, idempotent save (safe to re-submit), and CORS configured for chrome-extension://* origins out of the box.

Requirements

Installation

  1. Clone or download this repository into wp-content/plugins/apermo-stash/.
  2. Run composer install --no-dev to generate the autoloader.
  3. Activate the plugin through the WordPress "Plugins" screen.
  4. Visit Settings → Apermo Stash to generate an API token (see Authentication below).

Authentication

Apermo Stash accepts two equivalent authentication schemes; pick whichever fits your client.

WordPress Application Passwords (Basic Auth)

Available in WordPress core. Generate one under Users → Profile → Application Passwords and pass it as Basic Auth:

Apermo Stash Bearer Tokens

Better suited for browser extensions: generate at Settings → Apermo Stash → API Tokens. The plain token is shown once at creation time — copy it immediately. Send it as:

Each token is bound to a WordPress user; permission checks run against that user's capabilities (edit_posts for write endpoints).

REST API

Base path: /wp-json/apermo-stash/v1.

Method Path Description
GET /links List links (filters: tag, q, unread, archived, public/private, page, per_page)
POST /links Create a link (idempotent — same URL returns existing record with X-Apermo-Stash-Existing: 1)
GET /links/{id} Fetch a single link
PATCH /links/{id} Update fields
DELETE /links/{id} Delete a link
GET /tags List tags with link counts
GET /check?url=... Returns {exists: bool, id?: int} for a given URL

Examples

Save a link; let the server fetch the title and description:

Check whether a URL is already saved (browser-extension "already saved" badge):

Search and filter:

Public versus private links

Links use WordPress's native post_status:

Anonymous GET /links returns only public links. Authenticated users see their own links plus any public links owned by other users. POST, PATCH, DELETE always require authentication.

CORS

By default Apermo Stash sends CORS headers permitting chrome-extension://* origins. Add additional origins via the apermo_stash_allowed_origins filter:

To narrow the default allow-list once you know your extension's specific ID — defense-in-depth on top of the Bearer requirement — return only that origin:

Outbound HTTP

Apermo Stash makes one outbound HTTP request per saved link — to the saved URL itself, via wp_safe_remote_get (5 s timeout, up to three redirects, all re-validated). The fetched body is parsed for <title> and <meta name="description" / og:description>; on failure the link still saves and an "unreachable" warning is shown on next edit. wp_safe_remote_get blocks loopback and private IP ranges, so a hostile URL can't be used to probe internal services.

No third-party services are contacted. No analytics, no telemetry. The companion Chrome extension talks only to the host you configure on its options page.

Development

Local WordPress environment

License

GPL-2.0-or-later


All versions of apermo-stash with dependencies

PHP Build Version
Package Version
Requires php Version >=8.1
wearerequired/traduttore-registry Version ^2.1
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package apermo/apermo-stash contains the following files

Loading the files please wait ...