@appolabs/apps-api
v1.1.1
Published
## Installation
Downloads
19
Readme
Javascript Apps API
Installation
This package is not hosted in any Node package registry. The following approach is recommended.
Add the package's git repository to your project as a submodule:
git submodule add [email protected]:appolabs/javascript-apps-api .vendor/@appolabs/apps-apiInstall it as a local Node package:
npm i file:.vendor/@appolabs/apps-apiRemember to checkout your submodules in your GitHub actions:
A
Personal Access Tokenwithreadpermissions on this repository is required.
jobs:
job:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v3
with:
token: ${{ secrets.YOUR_GITHUB_TOKEN }}
submodules: 'true'Usage
Instantiate the AppsApi object with the API base URL and a token:
import AppsApi from '@appolabs/apps-api';
const api = new AppsApi({
baseUrl: 'https://apps.appolabs.io',
apiToken: APPS_API_TOKEN,
});Apps
const app = await api.apps.show(appId); // App
const { data } = await api.apps.store(appData); // create -> App
const updated = await api.apps.update(appId, appData);
await api.apps.publish(appId, appStores); // appStores: AppStore[]
await api.apps.delete(appId, appStores);
const config = await api.apps.showExpoConfig(appId);
const previewUrl = await api.apps.createPreviewUrl(appId);
const token = await api.apps.createApiToken(appId, name);
const status = await api.apps.getSubscriptionStatus(appId);
const links = await api.apps.getUniversalLinksIdentifiers(appId);Publication state (v1.1.0 — apps-web-app 175.1)
The App type exposes a single server-derived publication contract — consume these instead of
deriving state on the client:
app.publication_state // 'not_ready' | 'ready' | 'in_review' | 'live' | 'rejected' | 'removing' | 'blocked'
app.primary_action // 'setup' | 'publish' | 'resubmit' | null — the single next action to surface
app.stores // { apple: StoreToken; google: StoreToken }
// StoreToken: 'not_published' | 'in_review' | 'removing' | 'published' | 'rejected'The legacy per-store fields apple_appstore_publication_status / google_playstore_publication_status
remain for backward compatibility but are deprecated — they are removed once consumers migrate to
publication_state / primary_action / stores (apps-web-app Phase 175.2). Do not derive state from them.
Lint
npm run lintTest
npm run test