Effective date: 10 September 2026 Last updated: 10 September 2026 Register version: 1.0 API specification version: 1.0.0 (OpenAPI 3.1.0)
This register forms part of the Percher Terms of Service. It describes the switching interfaces, data structures, formats, standards, known technical limits and infrastructure information required by Articles 26 and 28 of Regulation (EU) 2023/2854 (the Data Act).
All paths below use https://api.percher.run as the base URL. "Bearer" means a Percher API token belonging to the Application owner. The machine-readable interface definition is the Percher OpenAPI specification.
| Export | Interface and authentication | Response format |
|---|---|---|
| Account snapshot | GET /account/export — Bearer | JSON object described in Section 2 |
| Application bundle | POST /apps/{appRef}/export/mint — Bearer; then one-time GET /export/download/{token} where the token is the download credential | gzip-compressed tar archive (.tar.gz) described in Section 2 |
| Application bundle with Environment Variable values | Dashboard Application export — authenticated browser session plus fresh password confirmation; then one-time download | Same .tar.gz layout, with the additional secret-value files described in Section 2. Secret values are not available through Bearer-authenticated API, CLI or MCP export. |
| Git history availability | GET /apps/{appRef}/export/git/check — Bearer, owner only | JSON with ok and estimatedBytes |
| Git history | GET /apps/{appRef}/export/git — Bearer, owner only | Git bundle (application/x-git-bundle, .bundle) |
| PocketBase snapshot availability | GET /apps/{appRef}/data/export/check — Bearer, owner only | JSON status |
| PocketBase data | GET /apps/{appRef}/data/export — Bearer, owner only | gzip-compressed tar archive (.tar.gz) of the available pb_data directory |
Self-service export can start immediately; assisted switching is requested as described in Terms Section 15.6. The destination provider or customer is responsible for importing and operating the Application.
The JSON root contains exportedAt, user, apiTokens, alertPreferences, sharedAccess, apps, supportCases, withdrawalReceipts, dataExportUrls, perAppExports and _note. Application entries contain the Application record, deploy records, Environment Variable names and custom domains. API-token secrets, Environment Variable values and large build logs are excluded; large or per-Application data is represented by authenticated export pointers.
The archive has one root directory named from the Application and export date:
<application>-YYYY-MM-DD/
source/**
README.md
percher.toml
env-keys.json
domains.json
deploy-history.json
env-values.json # only after fresh password confirmation
env-values-by-scope.json # only after fresh password confirmation
pocketbase/schema.json # where automated PocketBase export is available
pocketbase/pb_data.zip # where automated PocketBase backup is available
pocketbase/README.md # otherwise, manual export instructionsenv-keys.json contains keys and a note. domains.json contains verified. deploy-history.json is an array of objects with deploy identifier, status, type, commit references, note and timestamps. env-values.json is a key/value object. env-values-by-scope.json contains rows, each with key, scope and value. pocketbase/schema.json contains the exported PocketBase collections schema.
The Git export is the complete history available in Percher's Application repository, in Git bundle format, verifiable and clonable with native Git bundle commands. The direct PocketBase export preserves the available pb_data directory tree in a .tar.gz archive for import into a compatible PocketBase installation.
Percher updates this register when a supported structure, format or interface changes materially. No proprietary importer is required.
If a self-service limit prevents a complete export, contact support@percher.app for assisted switching.
Percher is operated by Kaizensu AB in Sweden. Core hosting, storage and backups are kept in the EEA, currently in Germany and Finland, and are subject to EU law and the laws of Sweden, Germany and Finland depending on the operation and location. Providers and processing locations are listed in the Privacy Policy and Subprocessor Notice.
For non-personal data stored in the Union, Percher uses EEA-based core storage, controlled and logged administrative access, tenant, workload and network separation, least privilege, encryption in transit, encryption of stored secret values and backups, data minimisation, limited retention, contractual provider review, and review of government requests for a valid legal basis, scope and authority. Requests are rejected or challenged where legally permitted and reasonably available. These measures do not prevent disclosure that binding EU or Member State law requires. Personal-data transfers are governed by the GDPR, the Privacy Policy and, where applicable, the DPA.
Questions about switching, formats or limitations: support@percher.app Legal and data-access questions: legal@percher.app
The English and Swedish versions are intended to have the same meaning. If they differ, the English version prevails, without limiting mandatory rights.
*Last updated: 10 September 2026* *© 2026 Kaizensu AB — Percher, percher.app*