[{"data":1,"prerenderedAt":599},["ShallowReactive",2],{"project-30709524":3},{"id":4,"name":5,"line":6,"line_source":7,"title":8,"url":9,"domain":9,"maker":10,"posted_at":11,"year":12,"points":13,"comments":14,"rank_in_year":15,"shown_in_year":16,"top":17,"tier":18,"category":19,"subcategory":20,"format":21,"keywords":22,"reception":27,"sentiment":28,"stance_mix":29,"scored_comments":34,"aspects":35,"strip":46,"post_text":47,"what":48,"said":98,"maker_in_thread":233,"shape":244,"grid":249,"attempts":560,"same_week":561,"maker_shows":37,"maker_hidden":590,"reader_version":591,"card":592},"30709524","PDF API","Generate, convert, and modify PDF documents","title","Show HN: PDF API – Generate, convert, and modify PDF documents",null,"arkgil",1647512690,2022,204,116,275,2570,11,"notable","infrastructure","pdf processing api","api",[23,24,25,26],"pdf api","pdf conversion","pdf generation","ocr api","curious",-0.333,{"positive":30,"neutral":31,"mixed":32,"critical":33},4,25,3,15,47,{"pricing":36,"privacy":39,"idea":41,"design":43,"execution":44,"docs":45},{"positive":37,"critical":38},1,5,{"positive":40,"critical":37},0,{"positive":42,"critical":30},2,{"positive":40,"critical":37},{"positive":37,"critical":42},{"positive":40,"critical":37},[32,38,40,32,40,37,37,32,32,32,37,40,40,40,40,37,37,32,37,40,32,37,32,32,30,32,37,40,30,32,32,32,37,37,42,37,38,40,40,37],"Hi HN,\n\nArek here. We’re super excited to officially launch PSPDFKit API [1].\n\nPSPDFKit API is a collection of HTTP APIs that enable you to convert, generate, and edit documents without running any service on your infrastructure.\n\nWhat differentiates our API from others is that you can chain together multiple “actions” as part of a single API request. For example, you can convert, OCR, watermark, edit, and flatten a document — all in one call.\n\nAvailable actions [2]:\n\n- PDF Generator\n\n- PDF Converter\n\n- Image Converter\n\n- OCR\n\n- Watermark\n\n- Merge\n\n- Split\n\n- Duplicate\n\n- Delete\n\n- Flatten\n\nOu",{"problem":49,"audience":55,"pricing":67,"motivation":80,"time_to_build":9,"stack":84,"openness":95,"stage":96,"team_size":97},{"value":50,"source":51,"evidence":52},"Converting, generating and editing PDFs without running software on your own infrastructure","maker",[53],{"id":54},"post",{"value":56,"source":57,"evidence":58},"Enterprises and developers needing document processing","inferred",[59,63],{"id":60,"by":61,"text":62},"30709694","lgvld","Very useful product, congratulations. ;-) Quite expensive though. When I use an API, I usually assume (1) there will be some significant base volume, and (2) this volume has no…",{"id":64,"by":65,"text":66},"30710533","yyyk","A few years ago, $COMPANY had similar needs for a client. I ended up creating an in-house solution, which has a surprisingly close API (well, there are only so many ways to do…",{"value":68,"source":51,"evidence":69},"Per generated document; annual plan example $0.04 per document at 10,000 per month; custom plans available",[70,74,77],{"id":71,"by":72,"text":73},"30709788","fullyforged","Thanks! This is Claudio, PSPDFKit's CTO. At this point in time the price is per generated document - irrespectively of how complicated the operation is. Because you can combine…",{"id":75,"by":10,"text":76},"30710303","With an annual plan of 10,000 documents per month, we charge $0.04 per document. If you try it out, I'd love to hear your feedback on the quality of OCR!",{"id":78,"by":72,"text":79},"30711082","The volume you’re describing is totally doable. We can do custom plans if you’re interested - there’s a contact link at https:\u002F\u002Fpspdfkit.com\u002Fapi\u002Fpricing\u002F.",{"value":81,"source":51,"evidence":82},"Chain multiple document actions in one API call",[83],{"id":54},[85,91],{"value":86,"source":51,"evidence":87},"PDFium (Google, Apache licensed) rendering engine",[88],{"id":89,"by":10,"text":90},"30710654","Our engine is based on Google's PDFium, which is Apache licensed. We use it for rendering and reading the PDF object tree. Editing, annotations, etc. are all built on top of that.",{"value":92,"source":51,"evidence":93},"JavaScript, Python, Java, C#, PHP SDKs",[94],{"id":54},"paid","launched","company",{"praise":99,"objections":116,"requests":156,"questions":180,"alternatives":202},[100,109],{"value":101,"source":102,"evidence":103},"Useful product and nice SDKs","commenter",[104,105],{"id":60,"by":61,"text":62},{"id":106,"by":107,"text":108},"30709657","koinexpert","Very cool! Consider perhaps adding one more call, one to remove passwords. Not brute force, although that would be cool too, but just one that let's you specify the password and…",{"value":110,"source":102,"evidence":111},"Good documentation",[112],{"id":113,"by":114,"text":115},"30715158","passenger09","Really handy service, even if there are probably a lot out there already. The following might be worth to check out: - https:\u002F\u002Fdocspring.com\u002F - https:\u002F\u002Fbulk-pdf.com\u002F However a…",[117,126,136,149],{"value":118,"source":102,"evidence":119},"Pricing is high and document limits too low",[120,121,122],{"id":60,"by":61,"text":62},{"id":64,"by":65,"text":66},{"id":123,"by":124,"text":125},"30714114","throw03172019","It all sounds great until you get a quote. $15,000\u002Fyr for an API to sign a PDF. Come on.",{"value":127,"source":102,"evidence":128},"Privacy concerns with sending documents to an online API",[129,133],{"id":130,"by":131,"text":132},"30709984","gyulai","Not a good usecase for an online API. To the extent that those PDFs could include sensitive information, there's a huge security\u002Fprivacy headache there, with no real benefit when…",{"id":134,"by":131,"text":135},"30710863","\"The cloud\" is not one thing. Each additional company in \"the cloud\" that gets to see your data increases the attack surface.",{"value":137,"source":102,"evidence":138},"Vendor lock-in and longevity risk of a commercial API",[139,142,145],{"id":140,"by":131,"text":141},"30710196","So what exactly does that leave? A wrapper that you've created around weasyprint, pandoc, latex, ghostscript, imagemagick, and stuff like that? Sounds to me like an unnecessary…",{"id":143,"by":131,"text":144},"30710836","What I wanted to say was: \"PDF processing is something where I wouldn't want to rely on an online API over something local. And it's also something where I wouldn't want to rely…",{"id":146,"by":147,"text":148},"30711373","zihotki","Some time ago at a $Company we needed to generate pdfs and also OCR incoming documents. In order to quickly release a product we decided to use online API from a $Vendor. Initial…",{"value":150,"source":102,"evidence":151},"Predatory sales model reported",[152],{"id":153,"by":154,"text":155},"30710378","ianhawes","Just an FYI but PSPDFKit has a very predatory sales model. Our organization received pricing that was generally very high and we pushed back on it because we were a startup and…",[157,162,169,176],{"value":158,"source":102,"evidence":159},"Consumption-based pricing without hard caps",[160,161],{"id":64,"by":65,"text":66},{"id":60,"by":61,"text":62},{"value":163,"source":102,"evidence":164},"PDF signing support",[165],{"id":166,"by":167,"text":168},"30709838","wfn","Very nice and useful product! Question: do you have or plan to support PDF signatures? This may be then useful for us[1], we issue qualified certificates and eIDAS-compliant…",{"value":170,"source":102,"evidence":171},"Japanese and Korean OCR support",[172],{"id":173,"by":174,"text":175},"30710018","stevenminhhh","Do you have any plan in your roadmap to support different languages in the OCR feature? I'm specifically interested in recognize and processing PDF files written in Japanese and…",{"value":177,"source":102,"evidence":178},"Remove password from PDF call",[179],{"id":106,"by":107,"text":108},[181,188,195],{"value":182,"source":102,"evidence":183},"Does it handle large tables spanning pages",[184],{"id":185,"by":186,"text":187},"30710899","mdellavo","How well does this handle large tables that span pages? That seems to be a key differentiator for most PDF libs I sampled. I'd assume this works well if it's coming from Chromium",{"value":189,"source":102,"evidence":190},"Is there a page limit per document",[191],{"id":192,"by":193,"text":194},"30709785","steerablesafe","From the pricing page, limits seem to be on number of documents, not number of pages. Is the number of pages per document also limited?",{"value":196,"source":102,"evidence":197},"Which rendering engine is used",[198],{"id":199,"by":200,"text":201},"30709671","martin_a","Which rendering engine are you using in the backend?",[203,222,229],{"value":204,"source":102,"evidence":205},"Open source PDF tools (pdftk, pdf-lib, OpenPDF, LibreOffice, Puppeteer)",[206,210,214,218],{"id":207,"by":208,"text":209},"30713131","voiper1","I recently went down the PDF rabbit hole for a project. I had to use different OSS tools to do everything I wanted. I was able to access three from within nodejs without touching…",{"id":211,"by":212,"text":213},"30710941","brudgers","It looks interesting, but addresses a scale that I don't work on. For my personal needs, I use pdftk from the command line.",{"id":215,"by":216,"text":217},"30712428","roschdal","OpenPDF https:\u002F\u002Fgithub.com\u002FLibrePDF\u002FOpenPDF",{"id":219,"by":220,"text":221},"30712849","smashah","I was contracted to make a legal document generation service for a client. I looked at all of these tools and decided to just use HTML\u002FCSS and then print to PDF via puppeteer on…",{"value":223,"source":102,"evidence":224},"Transloadit",[225],{"id":226,"by":227,"text":228},"30719397","kvz","> What differentiates our API from others is that you can chain together multiple “actions” as part of a single API request. https:\u002F\u002Ftransloadit.com offers similar composable…",{"value":230,"source":102,"evidence":231},"DocSpring and Bulk-PDF",[232],{"id":113,"by":114,"text":115},{"comments":234,"answered":235,"key":236},8,6,[237,238,241],{"id":75,"text":76},{"id":239,"text":240},"30710008","That's a great point. For folks that have strong privacy needs, we do have an on-premise product that provides the same functionality [1]. [1]…",{"id":242,"text":243},"30710732","Thanks for the feedback! For those that need larger volume, we also have an on-premise product: https:\u002F\u002Fpspdfkit.com\u002Fapi\u002Fdocumentation\u002Fdeployment-options\u002F.",{"commenters":245,"max_depth":246,"maker_replies":234,"first_comment_mins":247,"lifespan_hours":248},69,7,26,95,[250,252,254,258,260,264,268,271,274,277,280,281,285,288,291,293,297,299,301,305,307,310,313,317,320,323,325,327,331,333,335,336,340,342,345,348,351,354,357,358,360,363,365,368,369,372,375,377,381,383,387,389,390,392,393,395,400,401,403,406,408,410,413,417,419,422,425,427,429,432,434,439,441,444,446,448,452,454,458,460,463,465,467,469,472,476,479,482,487,489,491,494,497,499,502,505,507,509,511,515,517,521,524,527,529,531,534,536,539,542,544,546,549,551,553,557],[60,40,32,251,61,40],"project\u002Fmixed\u002Fpricing",[71,40,32,253,72,40],"maker\u002Fneutral\u002Fpricing",[255,40,32,256,257,40],"30710503","project\u002Fneutral\u002Fpricing","magicalhippo",[78,40,38,259,72,40],"maker\u002Fpositive\u002Fpricing",[261,40,40,262,263,40],"30709942","other\u002Fneutral\u002Fpricing","victop",[265,40,40,266,267,40],"30710752","commenter\u002Fneutral\u002Fnone","hackernewds",[269,40,40,266,270,40],"30711191","ada1981",[272,40,40,266,273,40],"30711521","siver_john",[275,40,40,266,276,40],"30711990","vxNsr",[278,40,32,256,279,40],"30710026","TheJoeMan",[75,40,40,253,10,37],[282,40,40,283,284,40],"30710401","other\u002Fneutral\u002Fnone","ankrgyl",[286,40,40,283,287,40],"30710806","servytor",[289,40,40,262,290,40],"30713754","saradhi",[130,37,37,292,131,40],"project\u002Fcritical\u002Fprivacy",[294,37,40,295,296,40],"30710002","commenter\u002Fneutral\u002Fprivacy","simion314",[239,37,40,298,10,37],"maker\u002Fneutral\u002Fprivacy",[140,37,37,300,131,40],"project\u002Fcritical\u002Fidea",[302,37,40,303,304,40],"30710750","commenter\u002Fcritical\u002Fnone","cinntaile",[143,37,40,306,131,40],"commenter\u002Fcritical\u002Fidea",[308,37,40,309,304,40],"30710979","commenter\u002Fpositive\u002Fidea",[311,37,32,312,72,40],"30711152","maker\u002Fneutral\u002Fidea",[314,37,40,315,316,40],"30713006","commenter\u002Fneutral\u002Fidea","matchagaucho",[318,37,32,319,72,40],"30710037","project\u002Fneutral\u002Fprivacy",[321,37,40,295,322,40],"30710660","chrisseaton",[134,37,40,324,131,40],"commenter\u002Fcritical\u002Fprivacy",[326,37,40,295,316,40],"30712927",[328,37,32,329,330,40],"30713533","project\u002Fmixed\u002Fprivacy","chadash",[332,37,40,324,131,40],"30714247",[64,42,37,334,65,40],"project\u002Fcritical\u002Fpricing",[242,42,40,253,10,37],[337,32,40,338,339,40],"30709831","other\u002Fpositive\u002Fidea","m12k",[341,32,40,283,200,40],"30709908",[343,32,40,283,344,40],"30710007","NetBeck",[346,32,40,283,347,40],"30710626","laurent123456",[349,32,40,283,350,40],"30713295","danielrhodes",[352,32,40,283,353,40],"30713390","citruscomputing",[355,32,40,283,356,40],"30715796","zubspace",[207,30,40,283,208,40],[359,30,40,283,350,40],"30713236",[361,30,40,283,362,40],"30715968","wolverine876",[364,30,40,283,350,40],"30726047",[366,30,40,367,362,40],"30728398","commenter\u002Fpositive\u002Fnone",[153,38,37,334,154,40],[370,38,40,262,371,40],"30710794","user_7832",[373,38,40,283,374,40],"30710913","ethotool",[376,38,40,283,154,40],"30711171",[378,38,40,379,380,40],"30714616","commenter\u002Fneutral\u002Fpricing","upbeat_general",[382,38,37,334,374,40],"30718501",[384,235,32,385,386,40],"30710288","project\u002Fneutral\u002Fidea","etothepii",[89,235,40,388,10,37],"maker\u002Fneutral\u002Fexecution",[106,246,32,385,107,40],[391,246,40,315,61,40],"30709698",[123,234,37,334,124,40],[219,394,40,283,220,40],9,[396,397,40,398,399,40],"30713416",10,"other\u002Fpositive\u002Fnone","yashg",[215,17,40,283,216,40],[146,402,40,262,147,40],12,[404,402,40,283,405,40],"30711874","tonyedgecombe",[166,407,32,385,167,40],13,[409,407,40,312,10,37],"30709858",[211,411,37,412,212,40],14,"project\u002Fcritical\u002Fnone",[414,33,37,415,416,40],"30710386","project\u002Fcritical\u002Fdesign","vmchale",[418,33,40,266,72,40],"30711118",[420,33,40,306,421,40],"30714088","nonameiguess",[185,423,32,424,186,40],16,"project\u002Fneutral\u002Fexecution",[426,423,40,266,10,37],"30711089",[428,423,32,424,186,40],"30711382",[430,423,40,431,10,37],"30711865","project\u002Fpositive\u002Fexecution",[433,423,38,431,72,40],"30711102",[435,436,32,437,438,40],"30711121",17,"project\u002Fneutral\u002Fnone","SilentM68",[440,436,32,424,72,40],"30712502",[113,442,32,443,114,40],18,"project\u002Fmixed\u002Fidea",[192,445,32,256,193,40],19,[447,445,32,256,72,40],"30709811",[449,450,37,334,451,40],"30710024",20,"somehowadev",[226,453,37,300,227,40],21,[455,456,40,283,457,40],"30714890",22,"sideproject",[459,456,40,283,362,40],"30715950",[461,456,40,283,462,40],"30727608","gettalong",[464,456,40,283,362,40],"30728538",[173,466,32,424,174,40],23,[468,466,32,424,72,40],"30719686",[470,466,38,471,174,40],"30739911","project\u002Fpositive\u002Fidea",[473,474,32,385,475,40],"30721886",24,"BOOSTERHIDROGEN",[477,31,32,385,478,40],"30710651","renato_casutt",[480,247,40,283,481,40],"30722780","jwillmer",[483,484,32,485,486,40],"30713807",27,"project\u002Fneutral\u002Fdesign","gw67",[488,484,32,485,72,40],"30719693",[199,490,32,424,200,40],28,[492,490,32,424,493,40],"30709820","whylo",[495,490,40,283,496,40],"30711340","edumucelli",[498,490,32,424,72,40],"30709826",[500,490,37,501,200,40],"30709912","project\u002Fcritical\u002Fexecution",[503,490,40,266,504,40],"30714258","muhehe",[506,490,37,501,200,40],"30721537",[508,490,40,283,504,40],"30722401",[510,490,40,283,200,40],"30752072",[512,513,32,385,514,40],"30709747",29,"kareemm",[516,513,32,485,72,40],"30709804",[518,519,37,300,520,40],"30711877",30,"amluto",[522,519,37,300,523,40],"30712351","ho_schi",[525,519,40,283,526,40],"30712783","newlisp",[528,519,40,306,520,40],"30713123",[530,519,38,471,350,40],"30713097",[532,519,40,266,533,40],"30713154","pipeline_peak",[535,519,40,266,350,40],"30713214",[537,519,40,283,538,40],"30713264","eastendguy",[540,519,40,283,541,40],"30713430","jfk13",[543,519,40,266,284,40],"30714630",[545,519,40,283,284,40],"30713497",[547,519,40,283,548,40],"30713737","jcuenod",[550,519,40,283,65,40],"30717046",[552,519,40,306,520,40],"30736811",[554,555,37,556,541,40],"30710658",31,"project\u002Fcritical\u002Fdocs",[558,555,40,559,10,37],"30715097","maker\u002Fneutral\u002Fdocs",[],[562,567,571,576,581,585],{"id":563,"name":564,"points":565,"category":566},"30733339","Back Of Your Hand",654,"games",{"id":568,"name":569,"points":570,"category":19},"30769044","Appwrite",326,{"id":572,"name":573,"points":574,"category":575},"30778100","Metarank",284,"ai",{"id":577,"name":578,"points":579,"category":580},"30720834","Oh-heck",250,"dev_tools",{"id":582,"name":583,"points":584,"category":566},"30720259","ByteLegend",229,{"id":586,"name":587,"points":588,"category":589},"30723793","Calenday",207,"productivity",false,"v2",{"id":593,"name":5,"line":6,"ai":590,"cat":19,"year":12,"points":13,"comments":14,"rec":27,"s":594,"top":17,"kw":595,"maker":10,"domain":596,"tier":18,"attempts":40,"strip":597,"url":-1,"mix":598,"praise":101,"objection":118,"sub":20},30709524,-0.33,[23,24,25,26],"","3503011333100001131031334310433311215001",[30,31,32,33],1793991042837]