Download the PHP package inboxcom/mailcore-php without Composer
On this page you can find all versions of the php package inboxcom/mailcore-php. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download inboxcom/mailcore-php
More information about inboxcom/mailcore-php
Files in inboxcom/mailcore-php
Package mailcore-php
Short Description PHP client for the Mailcore mail-server API (third-party, unofficial).
License MIT
Informations about the package mailcore-php
inboxcom/mailcore-php
PHP client for the Mailcore mail-server control API (users, mailboxes, domains, filters, reports).
Unofficial. Third-party client; not published by Mailcore.
AI-assisted. Code, tests, and docs were written largely by AI (Claude Code) under human direction and review. Review it before relying on it in production.
This is the core package — a PSR-18 client with no framework dependency. For the command-line tool see inboxcom/mailcore-cli; for the Laravel bridge see inboxcom/mailcore-laravel.
Install
Requires PHP >= 8.4. Guzzle is used by default (it is itself a PSR-18 client), but you can inject any PSR-18 client + PSR-17 request factory.
The default client uses a 30s request timeout and 10s connect timeout; override per client (seconds, 0 disables):
A whole dump from datadump()->fetch() can be large — raise timeout (or pass 0) for it. These options apply only to the default Guzzle client; when you inject your own (below), configure timeouts on it.
Usage
Injecting your own HTTP client (e.g. in Roundcube)
The core carries no Console/Laravel dependency, so it drops into any host:
Error handling
Every non-2xx response throws a subclass of Inboxcom\Mailcore\Exception\ApiException, chosen by HTTP status (NotFoundException, ConflictException, NotAcceptableException, …). The API's statusmsg is preserved on $e->statusMsg for finer branching. Catch MailcoreException to catch everything this package throws. The API key is never included in any exception message.
Scope
The core covers all 54 operations of the live Mailcore API, grouped by tag onto resource accessors:
| Accessor | Operations |
|---|---|
users() |
34 — CRUD, aliases (+ list), forwards (+ list), passwords, flags, snapshots/restores, logins, limits, spam tolerance, temporary access |
domains() |
5 — count, add, add alias, list, remove |
mailboxplans() |
1 — list |
mailfilter() |
12 — SMTP-limit/spam-flag feeds, white/blacklists, RBL + CDL lookups |
reports() |
1 — suspicious mailbox activity |
datadump() |
1 — fetch latest (raw bytes) |
Object responses come back as typed models in src/Model; list endpoints return list<Model>. A few binary-outcome endpoints are exposed as predicates (isAvailable(), isReserved(), verifyPassword(), mailfilter()->isListedOnRbl(), mailfilter()->isListedOnCdl()).
OpenAPI
The OpenAPI document is generated from #[OA\*] attributes on the resource methods plus the holders in src/Doc, so the spec can't drift from the client. swagger-php is a dev-only dependency and the attributes are inert at runtime.
Development & full docs
This package is developed in the Fjordmail/mailcore-sdk monorepo (this repository is a read-only subtree split). Issues, contributions, the live contract suite, and the full compatibility notes against the official v1.23 docs all live there.
License
MIT — see LICENSE.
All versions of mailcore-php with dependencies
ext-json Version *
guzzlehttp/guzzle Version ^7.10 || ^8.0
psr/http-client Version ^1.0
psr/http-factory Version ^1.0
psr/http-message Version ^1.1 || ^2.0