Documentation

Everything you need to run your drone business on SkyLens — setup, day-to-day workflows, billing, and troubleshooting, all on one page.

Last updated

Overview

Introduction

Dronrly is the all-in-one operations platform for drone-pilot businesses. This page covers everything from creating your workspace to integrating the API.

Use the navigation on the left to jump to a section, or scroll through the whole document. New here? Start with Getting Started.

Guides

Getting Started

Set up your Dronrly workspace and send your first client invoice in under ten minutes.

You can start on a 5-day trial — no credit card required — or subscribe instantly from /pricing.

Create your workspace

Head to /register, pick a plan, and create an admin account. Your workspace is provisioned immediately. See Billing & Plans for the tier limits.

Invite your team

From the admin dashboard, open Users → Invite and enter email addresses. Pro and Max plans include pilot seats.

Add your first client

Go to Clients → New and create the company record. Tick Send portal invitation to email the client a one-time link. Full flow: Invite a Client.

Accept a service request

Requests submitted through your public page or the client portal land in Requests. Quote, schedule, and assign a pilot — all from one screen.

Deliver and invoice

Upload footage (see Uploading Files), then generate an invoice — see Invoices & Payments.

Tip — use the floating help widget on every page for quick links and contact options.

Guides

Invite a Client

Create client records and give them a secure portal login in two clicks.

Clients are the companies or individuals you do work for. You can create a client record with or without a portal login.

Create the client record

  1. Open Clients → New.
  2. Enter company name, primary contact, email, and phone.
  3. Save. The record is now available for jobs, invoices, and file shares.

Invite to the client portal

Tick Send portal invitation on the new-client form. Dronrly emails a one-time link that lets the client set a password and access their own dashboard.

Heads up — invitations expire after 7 days. Re-send from the client detail page if the link goes stale.

What clients can see

Portal users only see their own requests, invoices, and shared files. Cross-reference Uploading Files for delivery scope.

Guides

Billing & Plans

Plan tiers, trials, direct subscriptions, upgrades, and cancellations — powered by Stripe.

Dronrly uses a transparent monthly subscription, billed through Stripe. Full pricing lives at /pricing.

Plan matrix

PlanPriceUsersClients
Starter$30/mo5Unlimited
Pro$45/mo10Unlimited
Max$60/mo20Unlimited
Customcontact20+200+

Trial accounts

New Starter, Pro, and Max sign-ups include a 5-day trial. Add a payment method before the trial ends to avoid interruption.

Subscribe directly

If you already know which plan fits, you can skip the trial and purchase a subscription from the pricing page. Click Subscribe now on any plan and you'll be taken to Stripe Checkout in subscription mode.

Note — subscription charges recur monthly on the card entered at checkout. Cancel any time from Settings → Billing; your workspace stays active until the end of the paid period.

Change your plan

Admins can upgrade or downgrade any time from Settings → Billing. Upgrades take effect immediately with a prorated charge; downgrades apply at the next renewal.

Cancel

Cancellation is self-service from Settings → Billing. We retain your data for 30 days so you can reactivate or export, then it's deleted.

For Pilots

Uploading Files

Deliver footage to clients, manage retention, and keep deliverables organized.

Pilots upload deliverables directly against a service request. Clients can upload reference material from their portal.

Supported formats

MP4, MOV, JPG, PNG, HEIC, DNG, and ZIP. Maximum 2 GB per file.

Warning — uploads larger than 2 GB are rejected at the edge. For bulk transfers, email support@dronrly.com.

Deliver to a client

  1. Open the request under Pilot → Requests.
  2. Drag files into the Deliverables section.
  3. Tick Share with client — the client is emailed a link.

Retention

Deliverables are retained per request (7, 30, or 90 days). See Invoices & Payments for how delivery ties to billing.

For Pilots

Invoices & Payments

Generate invoices from service requests or ad-hoc, and collect payment via Stripe.

Every service request can be converted into an invoice with one click — or you can create a stand-alone invoice for ad-hoc work.

Create an invoice

  1. From a completed request, click Generate invoice.
  2. Or from Invoices → New, pick a client and add line items manually.
  3. Review tax rate and due date, then Send.

Collect payment

When Stripe is connected, invoices include a pay link. Manual payments (cash, check, ACH) can be recorded on the invoice detail page.

Invoice lifecycle

invoice-lifecycletext
draft → sent → viewed → paid
             ↘ overdue (past due, unpaid)
             ↘ void    (manually cancelled)

Tip — overdue invoices surface at the top of the admin dashboard so they're never forgotten.

Help

Troubleshooting

Quick fixes for the issues real users hit most — login trouble, stuck uploads, missing emails, payment errors, and more.

Most issues fall into one of a handful of buckets. Try the matching section below.

Before you start — a hard refresh (Ctrl/Cmd + Shift + R) fixes about a third of "the page looks weird" reports. Worth a try first.

I can't log in

  1. Double-check the email — it's the one you registered with, not necessarily the one you receive notifications at.
  2. Use Forgot password to send a reset link. The link is good for 30 minutes.
  3. If your account is locked after several failed attempts, wait 15 minutes — the rate limit clears automatically.
  4. Check your spam folder for the reset email. We send from noreply@dronrly.com.

Heads up — if your workspace admin disabled your account, the reset link won't help. Contact them, or email us and we'll route the request.

My invitation email never arrived

  1. Check spam and "Promotions" tabs — invitations are sent from noreply@dronrly.com.
  2. Ask the admin to re-send from Settings → Users → Pending invitations. Re-sending generates a fresh link.
  3. Allow-list our domain at your email provider if you keep missing them: dronrly.com.

My upload is stuck or failed

  • File too large? Single files are capped at 2 GB. Split larger deliverables, or email support@dronrly.com for a one-off transfer link.
  • Network dropped? Refresh the page and re-drop the file — partial uploads are discarded, so you won't end up with corrupt media.
  • Wrong format? Supported types are MP4, MOV, JPG, PNG, HEIC, DNG, ZIP. Anything else is rejected at the edge.
  • Slow uploads? Try a wired connection. Mobile uploads of 4K footage typically time out before completing.

A payment didn't go through

  1. Check that the card hasn't expired and that the billing ZIP/postcode matches the card issuer's records — Stripe rejects mismatches by default.
  2. Some banks block first-time SaaS charges. A quick call to authorize Dronrly, Inc. usually clears it.
  3. The customer can retry from the same invoice link — it doesn't expire on a failed attempt.
  4. If the charge succeeded but the invoice still shows unpaid, give it a minute — the receipt webhook normally lands within seconds, but can be delayed during Stripe incidents. Refresh the invoice page.

I paid but no receipt arrived

Receipts are sent automatically when Stripe confirms payment. Check spam first. If it's still missing after 5 minutes, the invoice itself will show Paid in the customer portal — you can download a PDF from there. We also keep an audit trail.

I lost access to my two-factor device

Use one of the recovery codes you saved when 2FA was enabled. If you didn't save them, ask your workspace admin to reset 2FA from Settings → Users → [your account] → Reset 2FA.

My trial expired and I want to keep my data

Don't panic — your data is retained for 30 days after trial expiry. Subscribe from Settings → Billing and everything reactivates instantly, including invitations, uploads, and invoices.

My logo / branding isn't showing on client emails

  1. Go to Settings → Branding and confirm the logo uploaded successfully (you should see a preview).
  2. The first email after a branding change can take up to 5 minutes to pick up the new asset due to template caching.
  3. If clients see "dronrly.com" in the from-address, that's expected — custom sending domains are a Pro plan feature. See Billing & Plans.

The app feels slow

  • Try a different browser. We test against current Chrome, Firefox, Safari, and Edge — Internet Explorer and very old Safari builds are not supported.
  • Disable ad-blockers just for our domain and reload. A few aggressive blockers strip our HTMX requests and leave the UI in a half-loaded state.

I want to export my data

Admins can export clients, requests, invoices, and audit logs as CSV from Settings → Data & Privacy → Export. Media files (uploads) can be downloaded one at a time from the deliverable view.

Developer

API Reference

Authenticate, list resources, and integrate Dronrly with your own tooling.

The Dronrly API is a REST interface under /api/v1. All authenticated endpoints require a JWT obtained from POST /api/v1/auth/login.

Authentication

JWTs are returned in an httpOnly cookie. Server-to-server integrations should forward the Cookie header on subsequent requests.

example.shbash
curl -c cookie.txt -X POST https://dronrly.com/api/v1/auth/login \
    -H "Content-Type: application/json" \
    -d '{"email":"admin@acme.com","password":"..."}'

curl -b cookie.txt https://dronrly.com/api/v1/clients

Common endpoints

  • GET /api/v1/clients — list clients in the active tenant
  • POST /api/v1/requests — submit a service request
  • GET /api/v1/invoices — list invoices
  • POST /api/v1/invoices/:id/send — email an invoice
  • POST /api/v1/subscriptions/checkout — start a subscription checkout (admin only)

Rate limits

Authenticated requests are limited to 120 req/min per user. Login attempts are limited more aggressively — back off on 429.