Publishing

Uploading Apps

Ship native Android, Windows, macOS and Linux builds

Native apps are distributed as signed binaries across four platforms. You can attach a build for each — buyers automatically get the right download for their OS.

Supported platforms & formats

PlatformAccepted formats
Android.apk, .aab
Windows.exe, .msi
macOS.dmg, .pkg
Linux.AppImage, .deb, .rpm

Every build is scanned

When you upload a binary, Theaimart performs two checks before it can be distributed:

  1. •Magic‑byte verification — the file's real type must match its extension (an .apk that isn't a ZIP archive is rejected).
  2. •Malware scan — the binary is submitted to VirusTotal; a positive detection blocks the release and notifies you.

Scanning is asynchronous. A newly uploaded build shows Scanning…, then Ready or Blocked. Only Ready builds go live.

Publish from the dashboard

  1. •Applications → Upload Apps.
  2. •Enter title, category, and description.
  3. •Upload icon (512×512 PNG) and screenshots (min 3, 16:9 or 9:16).
  4. •Add a build per platform. Set the version (see Releases & Versioning).
  5. •Choose pricing (see Monetization).
  6. •Submit for review.

Publish via API

# 1. Create the listing
curl -X POST https://api.theaimart.co/api/v1/apps \
  -H "Authorization: Bearer $THEAIMART_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "title": "Focus Timer AI",
    "category": "Productivity",
    "description": "A Pomodoro timer that plans your day with AI.",
    "pricing": { "model": "one_time", "amount": 499, "currency": "INR" }
  }'

# 2. Attach a build (multipart upload)
curl -X POST https://api.theaimart.co/api/v1/apps/$APP_ID/builds \
  -H "Authorization: Bearer $THEAIMART_API_KEY" \
  -F "platform=windows" \
  -F "version=1.0.0" \
  -F "file=@FocusTimer-1.0.0.exe"

The response returns a scan_status you can poll, or subscribe to the app.build.scanned webhook.

Checklist before submitting

  • • Icon and ≥3 screenshots uploaded
  • • A build for every platform you claim to support
  • • Version follows semver (MAJOR.MINOR.PATCH)
  • • Description leads with the outcome, not the tech
  • • Pricing and payout method configured

Next