Download the PHP package juststeveking/tabstack without Composer

On this page you can find all versions of the php package juststeveking/tabstack. 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 tabstack

Tabstack PHP API Library

Packagist Version

This library provides convenient access to the Tabstack REST API from PHP.

Installation

Usage

Request & Response types

All request parameters are typed value objects and all responses are strongly-typed DTOs. You may import and use them directly:

Effort levels

The extract and generate endpoints accept an optional EffortLevel enum that controls the speed vs. capability tradeoff:

Value Speed Behaviour
Min 1–5s Fastest; no JS rendering fallback
Standard 3–15s Balanced reliability (default)
Max 15–60s Full browser rendering for JS-heavy sites

Geotargeting

Any request that accepts a GeoTarget will route the fetch through a proxy in the specified country (ISO 3166-1 alpha-2):

Agent endpoints (streaming)

agent()->automate() and agent()->research() always stream via Server-Sent Events. Instead of a raw PSR-7 response, they return a typed, iterable stream (AutomateStream / ResearchStream) that parses the SSE body incrementally and yields typed events as they arrive.

Three ways to consume a stream:

Typed results

result() consumes the stream and returns a typed view of the final complete event:

Resuming a stream

Each event exposes its SSE id and the stream tracks the latest via lastEventId(). If a connection drops, resume by passing it back — the SDK sends it as the Last-Event-ID header:

Event payloads

Each event exposes a string event name and a data payload. Object payloads are wrapped in an immutable Payload that supports both accessor and array syntax; scalar payloads are returned as-is.

There is no typed class per event type — the event set is open-ended, so payloads stay flexible.

Interactive mode

When an automate task is started with interactive: true, the stream emits interactive:form_data:request events carrying a requestId. Respond with agent()->automateInput() — supply field values or cancel. Input requests expire after two minutes.

Action firewall

automate runs behind an action firewall that guards against prompt injection. Two AgentAutomate parameters relax it — use with care:

⚠️ unsafeMode removes injection protection for every host. Only set trustedHostnames for hosts you fully control.

Configuration

Tabstack::make() works with just an API key, but accepts an optional base URI (to target a different environment) and your own PSR-18 client (to configure timeouts, retries, logging, or any middleware):

Every request is sent with a User-Agent: tabstack-php/{version} header.

Retries

By default the client retries rate-limited (429) and connection failures up to twice, honouring the Retry-After header and falling back to exponential backoff. Tune it with RetryConfig — including opt-in retries for 5xx server errors:

Error handling

Any non-2xx response throws a TabstackException subclass, mapped from the HTTP status. Transport failures (DNS, connection refused, timeouts) are wrapped in a ConnectionException. Every exception exposes the statusCode and the decoded response body.

Exception Status
BadRequestException 400
AuthenticationException 401
ForbiddenException 403
NotFoundException 404
ValidationException 422
RateLimitException 429 (exposes retryAfter)
ClientException other 4xx
ServerException 5xx
ConnectionException transport failure (no response)

All extend TabstackException, so catch that to handle everything. Streaming endpoints (automate, research) throw the same exceptions if the request fails before the stream begins.

Requirements

Semantic versioning

This package generally follows SemVer conventions, though certain backwards-incompatible changes may be released as minor versions:

  1. Changes that only affect static types, without breaking runtime behaviour.
  2. Changes to library internals which are technically public but not intended or documented for external use.
  3. Changes that we do not expect to impact the vast majority of users in practice.

We are keen for your feedback; please open an issue with questions, bugs, or suggestions.

Credits

LICENSE

The MIT License (MIT). Please see License File for more information.


All versions of tabstack with dependencies

PHP Build Version
Package Version
Requires php Version ^8.5
juststeveking/sdk-tools Version ^0.0.5
nyholm/psr7 Version ^1.8
php-http/client-common Version ^2.7
php-http/discovery Version ^1.20
psr/http-client Version ^1.0
psr/http-client-implementation Version *
psr/http-factory-implementation Version *
psr/http-message Version ^2.0
symfony/http-client Version ^8.0
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 juststeveking/tabstack contains the following files

Loading the files please wait ...