[{"data":1,"prerenderedAt":504},["ShallowReactive",2],{"project-15427891":3},{"id":4,"name":5,"line":6,"line_source":7,"title":8,"url":9,"domain":10,"maker":11,"posted_at":12,"year":13,"points":14,"comments":15,"rank_in_year":16,"shown_in_year":17,"top":18,"tier":19,"category":20,"subcategory":21,"format":22,"keywords":23,"reception":28,"sentiment":29,"stance_mix":30,"scored_comments":34,"aspects":35,"strip":47,"post_text":49,"what":50,"said":116,"maker_in_thread":243,"shape":252,"grid":255,"attempts":465,"same_week":470,"maker_shows":37,"maker_hidden":497,"reader_version":498,"card":499},"15427891","FormAPI","An API for filling out PDF forms","title","Show HN: An API for filling out PDF forms","https:\u002F\u002Fformapi.io","formapi.io","nathan_f77",1507464158,2017,209,85,153,2242,7,"notable","dev_tools","pdf form filling api","api",[24,25,26,27],"pdf form filling","pdf api","fill pdf","pdf templates","mixed",0.03,{"positive":31,"neutral":32,"mixed":33,"critical":18},12,19,2,40,{"idea":36,"design":39,"execution":41,"docs":43,"privacy":44,"pricing":46},{"positive":37,"critical":38},6,3,{"positive":38,"critical":40},0,{"positive":42,"critical":40},1,{"positive":40,"critical":40},{"positive":40,"critical":45},4,{"positive":42,"critical":40},[48,48,48,48,38,38,38,45,38,38,42,42,40,40,40,48,38,40,42,42,38,48,38,48,48,40,40,38,48,38,38,48,42,42,38,48,40,38,38,38],5,null,{"problem":51,"audience":62,"pricing":69,"motivation":78,"time_to_build":82,"stack":91,"openness":114,"stage":115,"team_size":114},{"value":52,"source":53,"evidence":54},"Filling out PDF forms by hand or generating them programmatically is tedious","maker",[55,58],{"id":56,"by":11,"text":57},"15428259","Hi HN! I started FormAPI because I've been living in Southeast Asia for the last few years, and I've had to fill in a lot of visa application and extension forms. I want to build…",{"id":59,"by":60,"text":61},"15428905","solatic","It would be useful more as a tool to help migrate away from e-paper workflows, i.e. emailing PDF scans of legacy paper forms, and towards smarter architectures. For example:…",{"value":63,"source":53,"evidence":64},"Developers who need to fill PDF forms automatically, such as freelancers or financial and legal startups",[65,68],{"id":66,"by":11,"text":67},"15428516","This is a tool for programmers who need to fill out a lot of PDFs automatically. For example, a freelancing service could use FormAPI to fill out W-9 forms for contractors. Or if…",{"id":56,"by":11,"text":57},{"value":70,"source":53,"evidence":71},"Subscription plans, including a Starter plan; enterprise on-premise licenses available",[72,75],{"id":73,"by":11,"text":74},"15440646","Hi, yes we can output fillable PDF forms that include the fields you have configured. And yes, you were on the right track with XDP. We would generate an XDP form and store the…",{"id":76,"by":11,"text":77},"15440658","Thanks for your comment! If it helps, we can offer licenses for on-premise hosting, and white-labeled solutions. (Please contact enterprise@formapi.io for more information.) I…",{"value":79,"source":53,"evidence":80},"Built to fill in visa and extension forms while living in Southeast Asia, as a first step toward an immigration service",[81],{"id":56,"by":11,"text":57},{"value":83,"source":53,"evidence":84},"About 2 months",[85,88],{"id":86,"by":11,"text":87},"15429178","I've been working on this for about 2 months, although I feel like I should have launched an MVP much sooner. I was tempted to wait even longer and redesign everything, but I…",{"id":89,"by":11,"text":90},"15430313","Thanks! I've been working on this for about 2 months.",[92,98,102,106,110],{"value":93,"source":53,"evidence":94},"Ruby on Rails",[95],{"id":96,"by":11,"text":97},"15428441","I built the site using Ruby on Rails, and ended up trying all the PDF libraries I could find. In the end I had to use six different libraries and tools to solve various problems…",{"value":99,"source":53,"evidence":100},"pdf-reader (Ruby)",[101],{"id":96,"by":11,"text":97},{"value":103,"source":53,"evidence":104},"prawn (Ruby)",[105],{"id":96,"by":11,"text":97},{"value":107,"source":53,"evidence":108},"qpdf",[109],{"id":96,"by":11,"text":97},{"value":111,"source":53,"evidence":112},"pdftk",[113],{"id":96,"by":11,"text":97},"unknown","launched",{"praise":117,"objections":137,"requests":161,"questions":188,"alternatives":208},[118,130],{"value":119,"source":120,"evidence":121},"Clean UI and effective demo","commenter",[122,126],{"id":123,"by":124,"text":125},"15430023","plicense","Fantastic work! The UI looks really slick! How long have you been working on this project?",{"id":127,"by":128,"text":129},"15429937","fetch1","This looks really good and the demo is really effective. Best of luck to you! Was DocRaptor a big influence on how you priced it? Shameless plug: I've also recently been working…",{"value":131,"source":120,"evidence":132},"Interesting declarative approach",[133],{"id":134,"by":135,"text":136},"15428654","gowan","this is an interesting idea. i like how it is declarative. acrobat FDF[1] and Apache PDFBox[2] provide something similar but are not declarative. i'd be interested in seeing an…",[138,149,154],{"value":139,"source":120,"evidence":140},"Not PCI or HIPAA compliant, so sensitive data is a concern",[141,145],{"id":142,"by":143,"text":144},"15429982","Animats","From the terms: FormAPI is not PCI DSS Certified or HIPAA compliant. You understand that the technical processing and transmission of the Service, including your Content, may be…",{"id":146,"by":147,"text":148},"15428814","efitz","Most forms contain personally identifiable information. Some contain extremely sensitive information, for example the kinds of forms that you describe-visas, etc.- contain…",{"value":150,"source":120,"evidence":151},"Service sees user data; prefers self-hosting",[152,153],{"id":142,"by":143,"text":144},{"id":146,"by":147,"text":148},{"value":155,"source":120,"evidence":156},"Pricing page is overly granular",[157],{"id":158,"by":159,"text":160},"15431533","jv22222","@nathan_f77: That's an unusually large plans and pricing page: https:\u002F\u002Fformapi.io\u002Fsign_up I'm not saying that it's bad, but I think it's strongly worth your while A\u002FB testing…",[162,171,182],{"value":163,"source":53,"evidence":164},"Self-hosted or on-premise option",[165,168],{"id":166,"by":11,"text":167},"15428996","I totally agree, these forms can contain very sensitive information. Actually there is some information that is too sensitive - We are not currently PCI DSS Certified or HIPAA…",{"id":169,"by":11,"text":170},"15440670","Thanks for the feedback! I mentioned this in another comment, but we have licenses for on-site hosting, and can provide Docker or virtual machine images. In the future, we are…",{"value":172,"source":120,"evidence":173},"Signature support",[174,178],{"id":175,"by":176,"text":177},"15428839","taariqlewis","How does this handle user signatures?",{"id":179,"by":180,"text":181},"15428374","tyingq","Would be interested to hear a bit about the internals. Which PDF libraries you tried, which one you ended up using, why, etc.",{"value":183,"source":120,"evidence":184},"Support for scanned PDFs via OCR",[185],{"id":186,"by":11,"text":187},"15432931","Hi, at the moment we can only import fillable PDF forms (AcroForms or XFA.) In the future we might implement OCR and machine learning to automatically detect fields in scanned or…",[189,197,201],{"value":190,"source":120,"evidence":191},"How signatures are handled",[192,193],{"id":175,"by":176,"text":177},{"id":194,"by":195,"text":196},"15428278","jonaldomo","Looks good. I think some real life use cases would help on the sales site. So the use case is you have a company that only accepts PDFs as an input and you have a digital data…",{"value":198,"source":120,"evidence":199},"Whether the source code is available",[200],{"id":146,"by":147,"text":148},{"value":202,"source":120,"evidence":203},"Whether a public API or whitelabel embedding is planned",[204],{"id":205,"by":206,"text":207},"15459756","chromano","Will there be an API sometime in the future? Also will it be possible to whitelabel the template editor and\u002For make it embeddable?",[209,216,223,229,236],{"value":210,"source":120,"evidence":211},"PDF Otter",[212],{"id":213,"by":214,"text":215},"15429304","mariusz331","Hey Nathan! Great to see another product in the PDF space. I see a few similarities to PDF Otter[0] and was wondering if you drew any inspiration from it. [0]…",{"value":217,"source":53,"evidence":218},"DocRaptor",[219,220],{"id":127,"by":128,"text":129},{"id":221,"by":11,"text":222},"15430329","Hi, thanks very much! Yes, I really liked DocRaptor's sign-up page and pricing. FetchPDF looks great! Best of luck to you as well!",{"value":224,"source":53,"evidence":225},"SeamlessDocs",[226],{"id":227,"by":11,"text":228},"15429100","This is what SeamlessDocs [1] are doing for government forms, and I've been thinking about doing something similar for immigration. [1] https:\u002F\u002Fwww.seamlessdocs.com\u002F",{"value":230,"source":120,"evidence":231},"PlatoForms",[232],{"id":233,"by":234,"text":235},"15430720","steveneo","I like this service as well: https:\u002F\u002Fwww.platoforms.com.",{"value":237,"source":120,"evidence":238},"php-pdftk",[239],{"id":240,"by":241,"text":242},"15430116","asteinbr","There exists also php-pdftk (https:\u002F\u002Fgithub.com\u002Fmikehaertl\u002Fphp-pdftk). Great software for filling pdf forms.",{"comments":244,"answered":245,"key":246},27,16,[247,248,251],{"id":56,"text":57},{"id":249,"text":250},"15428894","That's what I would like to do for the immigration service that I'm planning to build on top of FormAPI. For example, every time you visit Vietnam, you have to fill out this visa…",{"id":227,"text":228},{"commenters":34,"max_depth":37,"maker_replies":244,"first_comment_mins":253,"lifespan_hours":254},117,102,[256,258,262,265,266,267,268,271,274,278,281,285,287,291,292,295,298,302,303,307,309,312,313,315,318,322,324,326,329,331,333,335,338,340,343,347,349,351,354,357,358,359,362,364,368,370,372,375,377,380,383,385,388,390,393,395,398,400,402,404,407,409,411,412,413,415,417,421,423,427,428,430,433,436,438,441,442,445,447,451,454,456,459,461,463],[56,40,40,257,11,42],"maker\u002Fneutral\u002Fidea",[259,40,48,260,261,40],"15428393","project\u002Fpositive\u002Fidea","bitL",[263,40,48,260,264,40],"15428710","Eridrus",[249,40,40,257,11,42],[59,40,48,260,60,40],[227,40,40,257,11,42],[269,40,48,260,270,40],"15429910","konschubert",[272,40,40,273,264,40],"15430334","commenter\u002Fneutral\u002Fidea",[275,40,38,276,277,40],"15428949","project\u002Fneutral\u002Fdesign","sly010",[279,40,40,280,11,42],"15429071","maker\u002Fneutral\u002Fdesign",[282,40,38,283,284,40],"15429068","project\u002Fneutral\u002Fidea","curun1r",[286,40,40,280,11,42],"15429216",[288,40,38,289,290,40],"15429128","maker\u002Fneutral\u002Fexecution","jaequery",[86,40,40,289,11,42],[293,40,48,294,290,40],"15429277","maker\u002Fpositive\u002Fexecution",[296,40,38,297,270,40],"15429889","project\u002Fneutral\u002Fexecution",[299,40,38,300,301,40],"15432787","project\u002Fneutral\u002Fdocs","robbiep",[186,40,40,289,11,42],[304,40,38,305,306,40],"15430075","project\u002Fmixed\u002Fidea","justbaker",[76,40,40,308,11,42],"maker\u002Fneutral\u002Fpricing",[310,40,38,276,311,40],"15437303","sntran",[73,40,40,280,11,42],[142,42,42,314,143,40],"project\u002Fcritical\u002Fprivacy",[316,42,42,314,317,40],"15430091","nolite",[319,42,40,320,321,40],"15432552","other\u002Fneutral\u002Fnone","rublev",[323,42,40,320,317,40],"15435160",[325,42,40,320,321,40],"15443316",[327,42,40,320,328,40],"15436303","sushid",[330,42,40,320,317,40],"15436582",[169,42,40,332,11,42],"maker\u002Fneutral\u002Fprivacy",[334,42,40,332,11,42],"15430425",[336,33,38,257,337,40],"15428787","alistproducer2",[339,33,40,257,11,42],"15429150",[341,33,48,342,337,40],"15429357","maker\u002Fpositive\u002Fidea",[344,38,40,345,346,40],"15429934","other\u002Fneutral\u002Fidea","WhitneyLand",[158,45,38,348,159,40],"project\u002Fneutral\u002Fpricing",[350,45,40,308,11,42],"15440683",[352,48,40,320,353,40],"15431824","bubso",[355,48,40,320,356,40],"15432240","ocrcustomserver",[146,37,42,314,147,40],[166,37,40,332,11,42],[360,37,42,314,361,40],"15429181","blowski",[363,37,40,332,11,42],"15429297",[365,37,38,366,367,40],"15431590","project\u002Fmixed\u002Fprivacy","runako",[369,37,40,332,11,42],"15432776",[127,18,48,371,128,40],"project\u002Fpositive\u002Fpricing",[373,18,38,374,270,40],"15429959","project\u002Fneutral\u002Fnone",[376,18,38,283,128,40],"15430631",[378,18,48,379,270,40],"15430662","project\u002Fpositive\u002Fnone",[381,18,40,382,128,40],"15430753","commenter\u002Fneutral\u002Fnone",[384,18,40,382,270,40],"15431932",[386,18,48,387,270,40],"15434087","project\u002Fpositive\u002Fdesign",[221,18,40,389,11,42],"commenter\u002Fneutral\u002Fpricing",[391,18,40,320,392,40],"15436725","taneltahepold",[213,394,40,382,214,40],8,[396,394,40,397,11,42],"15429411","maker\u002Fneutral\u002Fnone",[399,394,40,382,214,40],"15429483",[194,401,38,283,195,40],9,[403,401,40,280,11,42],"15428323",[405,401,48,260,406,40],"15428528","stult",[240,408,40,320,241,40],10,[233,410,40,320,234,40],11,[179,31,38,289,180,40],[96,31,40,289,11,42],[205,414,38,283,206,40],13,[134,416,48,387,135,40],14,[418,419,38,283,420,40],"15428218",15,"kapauldo",[422,419,40,283,11,42],"15428274",[424,419,42,425,426,40],"15428487","project\u002Fcritical\u002Fidea","reboog711",[66,419,40,283,11,42],[429,419,42,425,426,40],"15441043",[431,245,42,425,432,40],"15429747","Tijdreiziger",[434,245,38,283,435,40],"15429961","ateesdalejr",[437,245,40,260,11,42],"15440700",[123,439,48,440,124,40],17,"maker\u002Fpositive\u002Fdesign",[89,439,40,397,11,42],[443,444,40,320,321,40],"15432545",18,[446,32,40,320,356,40],"15429856",[448,449,38,397,450,40],"15428934",20,"rokhayakebe",[175,452,38,453,176,40],21,"project\u002Fneutral\u002Fprivacy",[455,452,40,297,11,42],"15429026",[457,458,38,297,290,40],"15428586",22,[460,458,40,297,11,42],"15428749",[462,458,38,297,290,40],"15428789",[464,458,40,297,11,42],"15429005",[466,469],{"id":467,"t":468,"points":42,"comments":40},"15425113",1507402618,{"id":4,"t":12,"points":14,"comments":15},[471,475,480,484,488,492],{"id":472,"name":473,"points":474,"category":20},"15429390","fd",456,{"id":476,"name":477,"points":478,"category":479},"15425324","sunboxlabs",236,"infrastructure",{"id":481,"name":482,"points":14,"category":483},"15417975","Resume Worded","productivity",{"id":485,"name":486,"points":487,"category":483},"15433879","Rejection Conditioner",177,{"id":489,"name":490,"points":491,"category":20},"15422995","ui-avatars",164,{"id":493,"name":494,"points":495,"category":496},"15425545","HNDesktop",141,"consumer_social",false,"v2",{"id":500,"name":5,"line":6,"ai":497,"cat":20,"year":13,"points":14,"comments":15,"rec":28,"s":29,"top":18,"kw":501,"maker":11,"domain":10,"tier":19,"attempts":33,"strip":502,"url":9,"mix":503,"praise":119,"objection":139,"sub":21},15427891,[24,25,26,27],"5555333433110005301135355003533511350333",[31,32,33,18],1794036559600]