Skip to content

Send a file straight to your phone

Attach a file to a send and it lands on your phone as a downloadable attachment.

Good for: generated PDFs and CSVs, log bundles when something breaks, APK builds to sideload, anything a script produces that you want in your hand.

bash
sp task --title "Nightly report" \
  --content "Numbers for $(date +%F)" \
  -f ./report.pdf
python
from simplepush import Client

client = Client(api_token="YOUR_API_TOKEN")

client.send_task(
    title="Nightly report",
    content="Numbers for today",
    files=["./report.pdf"],
)
ts
import { readFile } from 'node:fs/promises'
import { Client } from '@simplepush/sdk'

const client = new Client({ apiToken: 'YOUR_API_TOKEN' })

await client.sendTask({
  title: 'Nightly report',
  content: 'Numbers for today',
  files: [{
    filename: 'report.pdf',
    data: await readFile('./report.pdf'),
    contentType: 'application/pdf',
  }],
})
bash
curl -X POST https://api.simplepu.sh/v1/tasks \
  -H "API-Token: $SP_API_TOKEN" \
  -H "Title: Nightly report" \
  -H "Attachment: report.pdf" \
  --data-binary @./report.pdf

No topic means the send goes to your own devices. Add -t reports (or topic= / Topic:) to deliver the file to everyone holding a shared topic instead, and repeat the flag or list entry to attach several files at once.

When the send is encrypted — your personal password for self-sends, the topic password for topic sends — the file is encrypted on your machine before upload, and receivers decrypt on device. Free accounts can attach files up to 50 MB, paying accounts up to 100 MB.