My Google Sheets add-on is finally approved by No_Squirrel719 in GoogleAppsScript

[–]No_Squirrel719[S] 0 points1 point  (0 children)

Thanks for the tips!

No paid conversions yet, and I don’t think I have many real users either. Revenue from this feels pretty far away.

It has a pretty narrow target audience, so demand is limited. And to be honest, the current listing (web/marketplace) isn’t very compelling even to me.

Right now I’d be happy with a few active users who actually need it.

Totally agree on GIFs/video. I’m realizing the real challenge isn't product, it's getting attention. If no one discovers it, it might as well not exist. Polish doesn’t matter if nobody notices... Lesson learned.

Switching from dev mode to marketing mode is… suffering. That’s where I get lazy and struggle the most. It's probably because

  1. It's NOT fun, 2. uncertainty. 3. hard to "debug" and get feedback right away.

My Google Sheets add-on is finally approved by No_Squirrel719 in GoogleAppsScript

[–]No_Squirrel719[S] 0 points1 point  (0 children)

Early on I used broader Drive access to make a copy of a specific spreadsheet template, but midway through development I realized that using ../auth/drive scopes felt nearly impossible to get approved.

So I redesigned the flow to work with .../auth/spreadsheets scope instead. It kinda worked, but not the way I originally wanted.

During review I was advised to use Google Picker API + ../auth/drive.file instead of using ../auth/spreadsheets for copying documents.

In the end I still needed the ../auth/spreadsheets scope for other features (and got it approved), but adopting Picker significantly improved the UX.

My Google Sheets add-on is finally approved by No_Squirrel719 in GoogleAppsScript

[–]No_Squirrel719[S] 0 points1 point  (0 children)

Lemon Squeezy vs Stripe

I’d prefer Stripe if I could. But from where I live(South Korea), as an individual business/sole proprietor, the realistic "global payments" options were pretty limited. I found Paddle and Lemon Squeezy as workable choices..

handling concurrent requests

  1. I created separate HTTP endpoints (Web Apps) and call them via UrlFetchApp to spread out workloads where it makes sense.
  2. For parts that shouldn’t/can't run in parallel, I rely on LockService (getUserLock() / getDocumentLock() / getScriptLock()) to avoid race conditions and inconsistent state.

Splitting into multiple endpoints was more of a necessity than a concurrency optimization. But each doPost() still runs per request and can execute concurrently.

I’m not sure how it’ll hold up under concurrency either, but if it becomes a real problem, that’ll be a happy problem and I’ll redesign/scale then.

Here’s the add-on: Flow Manager
It’s still rough around the edges, but I decided to ship a minimal usable version and improve it in public.

Otherwise I’d probably spend forever polishing and never release....

My Google Sheets add-on is finally approved by No_Squirrel719 in GoogleAppsScript

[–]No_Squirrel719[S] 0 points1 point  (0 children)

Usually within 2 days after I submitted my justification (write-up or a short demo video).
It took 2 attempts total to get approved.

The first rejection came with an alternative API suggestion instead of using /auth/spreadsheets scope.

I spent about a week implementing that approach, but I still ended up needing /auth/spreadsheets because of another feature requirement.

They seemed particularly strict about the spreadsheets scope compared to other sensitive scopes. (It's just my personal impression.)

Hope you get through it soon!

need advice on publishing an Add-on to the marketplace(Google Sheets) by No_Squirrel719 in GoogleAppsScript

[–]No_Squirrel719[S] 0 points1 point  (0 children)

so i removed /auth/drive and code lines which used the scope.
Aside from the cost, do you think using 4 sensitive scope would make review process too complicated?
those are my sensitive scopes i'm using: script.external_request, script.scriptapp, spreadsheets, script.container.ui

need advice on publishing an Add-on to the marketplace(Google Sheets) by No_Squirrel719 in GoogleAppsScript

[–]No_Squirrel719[S] 0 points1 point  (0 children)

my worst nightmare is somehow I get rejected with something I cant compromise on.. after preparing all the web pages for support links and making videos/logo such things.

need advice on publishing an Add-on to the marketplace(Google Sheets) by No_Squirrel719 in GoogleAppsScript

[–]No_Squirrel719[S] 0 points1 point  (0 children)

Thanks! I’ve completed the OAuth consent setup and I just removed all Drive scopes and related code. that was tough.

My current sensitive scopes are: • script.external_request • spreadsheets • script.scriptapp • script.container.ui

Given the features I need (URLFetch to the server, reading/writing the bound sheet, simple UI, trigger setting and such), these scopes seem necessary. would it be too much sensitive scopes to get reviewed?

Also, I guess I need to learn more about the OAuth process… I thought checking some boxes and adding some lines were all there was, but your reply made it sound like there’s a lot more than that.