Skip to content

Send a file straight to your phone ​

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

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

bash
export SP_API_TOKEN="your-token"

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

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

When the send is encrypted, the file is encrypted on your machine before upload, and receivers decrypt it on their device. Sends to your own devices use your personal password, topic sends use the topic password. Free accounts can attach files up to 50 MB, paying accounts up to 100 MB.