Import from Apify
Sign in or connect with Apify OAuth in the console, or import Actors with the CLI using an Apify token.
Bytewells can pull Actors you already publish on Apify — source, README, input schema, run defaults, and rental price — then build them and create draft Store listings. You review pricing and publish from the console.
There are two paths:
| Path | Auth | Best for |
|---|---|---|
| Console | Login / Connect with Apify (OAuth + PKCE) | Interactive import without pasting a token |
| CLI | APIFY_TOKEN or --apify-token | Automation, CI, private git sources |
Both only read from Apify. They do not change your Apify Actors.
Console: Login with Apify
On Log in / Sign up, choose Continue with Apify. Apify asks you to authorize Bytewells (profile + full_api_access). After consent:
- If you are new, Bytewells creates an account linked to that Apify user (no password required for that account).
- If you already connected this Apify user, you are signed into the same Bytewells account.
- You land in the console (default: Actors → New).
Password login is disabled for accounts that only signed up via Apify (no password hash). Use Continue with Apify again, or create an API key after signing in.
Console: Connect Apify (existing account)
If you already use email/password on Bytewells:
- Open Settings → Integrations · Apify, or Actors → New Actor.
- Click Connect Apify and complete consent.
- The console shows Connected as @your-apify-username.
Then on Actors → New Actor:
- Select one or more Actors from the list.
- Click Import selected.
- Each import uploads source, runs a hosted build, and creates a DRAFT listing under your Bytewells username.
Disconnect anytime from Settings (or revoke the app in Apify Console → Settings → Integrations). Stored OAuth tokens are encrypted at rest.
Prefer the CLI for Actors whose source is a private Git repo Apify cannot serve over HTTPS.
CLI
export APIFY_TOKEN=<your Apify API token>
bw login --url https://bytewells.com/api
bw import apify jane/google-maps-scraper
bw import apify --all --dry-runFull flags: CLI · import apify.
API (connected account)
Requires a Bytewells session JWT (or API key) and a connected Apify OAuth link (configured + connected from GET /v2/me/apify).
| Method | Endpoint | Description |
|---|---|---|
GET | /v2/auth/apify/start?intent=login|connect | Begin OAuth (redirect, or format=json + Bearer for connect) |
GET | /v2/auth/apify/callback | Apify redirect target (sets session / connection) |
GET | /v2/me/apify | Connection status |
DELETE | /v2/me/apify | Disconnect |
GET | /v2/me/apify/actors | List Actors on the connected Apify account |
POST | /v2/me/apify/import | Body { "actorIds": ["…"], "update"?: bool, "discountPct"?: 0–90 } |
OAuth start without credentials returns 503 with apify-oauth-not-configured when the deployment has no Apify OAuth client.
After import
Listings start as DRAFT. Set price, trial, and optional passes, complete Stripe Connect if paid, then publish — see Publish an Actor.