I am looking for a skilled web developer interested in databases sold by me, who can help me building API according needs of himself and other customers looking for same service. If you are interested in API but not participate in development, you can also help me by telling your requirements from my API so I can tell to developer once I find one.
I researching car industry since 1999 and collecting data in Excel since 2003. I started selling Excel databases in 2012.
Most customers prefer Excel database, so they can store data locally so they can make changes and additions, not possible in case of API that pull data stored on my server.
Few customers prefer API, specifically web developers lazy to re-download and import Excel file into their database each time I provide an update.
Since 2014 I am thinking to offer API as alternative to Excel downloads, after seeing CarListDB.com (running 2011-2015) selling data similar with my Year-Make-Model (no detailed specs), for $99 for first year and $30 for following years.
I do not have experience in programming to build API myself, also I cannot hire developers from Upwork because I need to explain requirements in detail, personally I will not use API and I don’t know the requirements of those who use API.
In 2016-2018 I attempted to collaborate with various web developers, but some did not followed my requirements, others made API halfway and gone away, wasting my time and money. Or maybe my requirements were wrong and their proposal was better?
In 2019 been contacted by other 4 developers offering to build API for me, but after so many failures I lost interest in API, busy with personal life problems I no longer talking with each one, afraid of wasting time again.
Developers interested in API please following questions
(based on your answers I will choose best developer to collaborate with)
Where will be API hosted?
My choice will be Amazon Web Services API Gateway (AWS account registered by me), AWS is pay per use, scalable to not affect performance of website itself if I have too many API queries in the future.
Don’t say “I will host and manage API myself and pay you % of revenues I do” this is against my Terms of Service.
How do we link API to my website?
As far I understand, making an API is an easy job, but the hard job is making graphical interface where customers can pay subscription, generate API keys and disable keys when subscription ends unless customer renew it. This is the part where all previous developers FAILED.
I don’t want API to be a separate website from my WordPress. API data can be pulled via subdomain api.teoalida.com but the graphical interface must be on www.teoalida.com/cardatabase, a website with good SEO, so customers will see both options: Excel downloads and API subscription.
Easy Digital Downloads plugin used to sell Excel files have an extension Recurring Payments, and Sunny made in 2018 a custom extension to connect with AWS, but he gone before setting up actual connection.
How do I should charge API access?
If you look at American car database, you can see 3 options of columns (no specs, basic specs, full specs) and 2 options of historical coverage (new cars only, new+old cars going back to 1990), total 6 packages for big database, plus additional smaller packages. A successful business strategy for people who need just a part of data and don’t want to pay price of full database, also give option to upgrade later to higher package.
It might be too complex if I were to sell each of these packages via API. An alternative solution is to offer a single API with full data and charge based on number of queries, this may bring more $ on long term but will have negative effects on short them, if startups find cheaper to subscribe to API instead of Excel.
A compromise solution is to offer API packages with 2x increase of price per 10x increase of queries. Example 1.000 daily queries for $100/year, 10.000 daily queries for $200/year, 100.000 daily queries for $400/year and so on. Also a free demo/trial account with lifetime limit of 100 queries. How do we charge customers who exceed number of queries and not upgrade?
How much I can manage API myself and when I need help from you as developer?
how I add new data on regular basis?
can I add / change columns in a database?
can I use same API scripts for more databases I will make in the future?
How do you want to get paid?
One time fee or a share of revenues made by API?
API requirements (old writing from 2017)
- API will provide the makes, the models of each make, the years of each model, the trims of each model year, and the full specs of a model. If you need additional endpoints please ask!
- I am questioning if is possible to limit API to trims only, basic specs, full specs, and 2016-2018 instead of 1990-2018, similar with Excel packages.
- You will also have option to buy 1000 queries per month, 10000, 100000, etc, and upgrade once your business grow up (this really put me in trouble how to price packages because if highest API package is priced higher than Excel download, people will choose Excel download, and if API is cheaper people will choose API and make my income to drop, maybe I should increase price of Excel files?)
- You get an API key valid for 1 year which you can renew at 50% per year. In first stage I will add API keys manually for people purchasing Excel files, but in the future I need also a register/login system where you can pay yourself and upgrade/renew keys which I am questioning if can use WordPress one or need a separate system.
- Because my VPS do not have perfect stability and may not handle scaling in the future, I would like API to be hosted on Amazon Web Services https://aws.amazon.com/api-gateway/pricing/, now the big question is how to link my WordPress website to AWS API, where to store keys, etc. Normally I store each car database in one table in phpMyAdmin and importing it after every update. As far I know, AWS don’t use cPanel, will it have phpMyAdmin or how do I upload database after each update?
- I need a way to integrate API purchasing and management with my WordPress website and charge payments for subscription. I suggested him to make a WordPress plugin, where to have options to configure prices and columns for each key,
but he suggested a separate platform with Laravel framework. I have no idea how this will be working. But I don’t want the API to be in separate page than page where I am selling Excel databases.Forget the Laravel, he had done a piece of SHIT with it.
- I prefer a WordPress plugin similar with Easy Digital Downloads and WooCommerce, its management panel need to have tabs like APIs (with configuration of packages, initial pricing, renewal pricing, columns of access and number of queries, and able to display API packages anywhere on website with shortcodes), Customers (list of people, showing what API they purchased, keys, date of purchase/expiry and number of queries done), Stats (number of people purchasing per day and month), and Settings (where I can configure PayPal email, 2checkout integration, etc).
- Shortcodes will display list of plans/packages similar with Easy Digital Downloadss, with radio buttons (not side by side to allow any number of packages)
- After selecting API package you want, you get redirected to a checkout page similar with Easy Digital Downloads having option to register an account or to login, then you can select PayPal or 2checkout. I am questioning if is better to use WordPress user panel or to make own login system dedicated to API plugin.
Any additional suggestions are welcome!
Early attempts to collaborate with web developers
In 2015 I contacted some PHP developers, asking if is possible to make a plugin for WordPress that takes subscription, they said that can make a plugin, but they charged higher than what I earned in 1 month. Moreover I didn’t know how to explain clearly what I need from plugin and most likely I would not have been satisfied and I had to pay extra money to improve the plugin to make it usable for my multiple databases sold in a variety of options.
I rather ask my own customers buying vehicle databases, who make API for their own business use, to give me the API scripts and WordPress plugin to put them on my server and provide API to other customers too, in exchange of FREE access to data, forever! Someone who can modify the scrips until runs perfectly for himself, without extra charges.
There are few websites offering such API web service, but they offer a single database. Personally I offer a variety of databases for multiple continents, and sometimes I do additional changes for individual customers, this makes very complex to implement an API.
The big European database is for sale in 16 different packages (4 options for number of columns: Car Models & Engines, Car Models & Engines & Tires, Car Models & Engines & Dimensions, Car Models & Engines & All details, multiplied by 4 historical coverage options: 1970s-present, 1990s-present, 2000s-present, new cars only. The American database also come in 6 standard packages: Trims only, Basic specs, Full specs, and 1990-present vs new cars only (last 3 years only), and occasionally customers ask me to sell them custom packages like 2005-present, SUVs & trucks only, etc). I wonder if would be possible to store the data in a single MySQL database and give customers access to specific rows and columns depending by how much they pay, instead of making 16 MySQL databases for Europe and 6 for America.
Someone suggested that API should have various packages limited in number of queries. This gave me idea for a pricing formula: pay $100 to get 10,000 queries, pay $200 to get 100,000 queries, pay $400 to get 1,000,000 queries (each 2x increase in price give you 10x increase in queries, actual prices and query limits are subject to change, depending by demand. But this means that European database would need 16 x 3 = 48 API price packages?
Another idea to not offer packages with access to partial years of data and just charge per query without fixed monthly/yearly contracts (I want ability to set price per query individually for each customer, in case someone want a large number of queries to negotiate lower price), but I am not sure how this system would work, will customers be charged automatically at end of month based on how many queries they have done? What if their bank account runs empty? What if some bad minded guy query ONCE each of 20,000 cars in European car database and build his own Excel database, then cancel subscription, thus obtaining whole database cheaper than the price I am selling my own Excel file?
In January 2016 one customer told me that I can create API for FREE using kimonolabs.com. I am confused about how to use this website, and don’t know how to link the API with a subscription system on my website (probably I need to import my data in Kimono and give manually the access codes to people paying on my website, and remove the access when their payment ends unless they pay more)
He said that is busy and will come back later to help me using KimonoLabs, until he came back the KimonoLabs was closed (as March 2016 it say “Kimono shut down on February 29th, 2016 and the cloud service has been discontinued. Your APIs can still be accessed via Kimono for Desktop. Download the application and import your APIs before March 31, 2016.“
I published this page in March 2016 so people visiting my website will see that I am looking for a partner to develop API.
Nexus Web Development, who left comment on this page, offered to build an API for free to host at my server in exchange of data + advertising their services.
I was expecting was a graphical interface that takes payment and give access to API, but Nexus made only an API prototype serving data in JSON format, which for moment I was not able to understood how it can be used, this gave him impression that I am not motivated for API and he don’t want to work with me anymore.
Pakistani friend helping me with web scraping, told me about using inspect element > Network tab when clicking drop-down boxes, by this way I saw they source data from a JSON code similar with the API done by Nexus.
More developers contacted me regarding API, after some talk I realized that they were not helping me to make API, they wanted to sell my data via API on their server and give me 50% of revenues. Someone saying “I contacted you because I saw a business opportunity, I can provide a service that you don’t have and you are looking for”. But this create a competitor service and violate my Terms of Service. I cannot control what will be his earnings from my API, but most likely earnings will be small because a simple website made just for API will hardly get popular in Google, or if he is a SEO expert, website will get so popular and steal customers from me.
After few attempts to convince other people to build API in exchange of free access to data, I realized that I have no success this way… The Pakistan guy that I paid about 10 times since 2015 for various web scraping jobs, wanted to help me too, made an API prototype, which I showed to several customers, they said that is inefficient and NOT good. He know nothing about automobile industry, so I had to be specific in requirements to make API for me, and I personally don’t know what my customers would expect from API, so could not gave him enough info to make better API. Also, he is skilled in PHP, as well as C# and VB.NET, but not in WordPress so cannot help me with website integration.
In July 2017 I emailed 10 existing customers asking for requirements but the lazy people did not replied me.
In August 2017, for the first time, an indian told me his requirements for an API. But I choose to make API first for American database Year-Make-Model-Trim-Specs because it have higher sale volume, it is similar with Edmunds website which also provide API, so the developer will have an API model to to follow.
In November 2017 I chatted with an American, 3 hours about this and he showed me a quick API demo. Few days later I emailed him and he said that is just about to have API finished and will give me by Monday, but no reply from him Monday, I emailed him again Wednesday and 2 times again next week, never heard from him anymore.
In January 2018 another group of Romanians with low budget interested in my car database, offered me to make API for free in exchange of free data, we added in Google Hangouts, but he never signed in again since that day.
Beside them, had also a couple of idiots trying to abuse my data, “seeing a business opportunity” they offered to make an API that will host and manage themselves and pay me a percentage of their revenues. This is violating my Terms of Service because it may steal customers from me. Sorry, but can’t trust that they will pay me the right share.
Bad experience with an indian developer
Last week of February been dealing with an indian developer who previously bought Indian car and bike databases in June 2017 when he purchased a database, since that day he suggested making API as a separate platform in Laravel rather than WordPress. He said that is going to make API for all my databases including Indian ones for $750 in total, and we can start with one database for $250. I paid him 25% in advance and 75% when he finished the job before giving me the script files…
But this turned to be a major disappointment. We both WASTED 7 hours in TeamViewer trying to install his scripts on my server, had problems with PHP version, he blamed my hosting provider that is not optimized for modern software like Laravel, had to ask my hosting to install PHP 7.1 because at the time I bought VPS it was up to PHP 5.6, then when logging in my account his script was displaying a page with errors so he had to fix it, we WASTED another hour trying to integrate my PayPal account into this, I don’t understand why he went to a very complex way to create a PayPal sandbox account instead of using the simple way used by Easy Digital Downloads, etc.
A fucking idiot! 32-year old man with 7 years experience in webdesign, can’t believe how unexperienced he is since he had to waste 7 hours to do such simple things.
Website design contains several mistakes too, for example when clicking Get started it goes to Login page instead of Register (how to login if you don’t have an account?), and despite that I told him to make Demo at top of page, then Pricing packages, then a text box where to write FAQ and last updates changelog for SEO, he made Demo on a subpage, which don’t know how will work if we make multiple APIs. Well, these things can be corrected, but the worst thing… this FUCKING LARAVEL don’t have any CMS to add additional pages or text on page, which I wanted to add an about me, changelog which needs to be edited each update, FAQ, etc, if I want to change something I need to edit PHP files which is risky because a letter wrong makes website undisplayable!
API would have been ready to use if I find a way to import a 150 MB CSV file into phpMyAdmin which keeps failing due to file size, and to configure proper subscription prices. BUT his API omit Year, it have Make, Model, Trim, typical for indian cars but in case of American cars the model year is a MUST, making it effectively unusable.
He wants another $100 to make an importer in admin panel, another $250 to add a CMS to his Laravel, etc, but I don’t want to give any more money to this idiot! This is how some Indians SCAM us, ask small initial price and to bad quality job then ask extra money, probably I was ending paying him $2000+ and still NOT HAPPY. Let’s forget the idiot Indian!
American SNAIL developers
Emailing 4 customers showing them the above bad experience with the indian, made 2 of them to offer me making a proper API free of charge. Well, not completely free but in exchange to free access to data.
They told me that subscription interface for API is not necessary (and also not recommended) to be hosted on same place, and API require stability and 100% uptime which my VPS can’t offer. Larry suggested hosting API on Amazon Web Services while Sunny has made a WordPress plugin extension to Easy Digital Downloads to create API plans and link to AWS.
By May 2018 Sunny finished his WordPress plugin and was waiting for Larry to finish AWS setup, he said that is nearly finished… then got a baby. We started to not hear from him, API development continued with 1 step per 2 weeks. 3 months passed for no reason. In August Larry told me to buy AWS account in my name so he can setup API on my server. He did not had time to setup until October, when we had the Skype conversation seen below.
I don’t know what is next step or how many steps are yet to go I can allow my customers to subscribe to API. Even Sunny was angry because he has to have API access for free according bartering agreement, wasted his time developing plugin, but did not got a functional API.
Meantime I got a huge $1000+ bill without having any functional API. I don’t know what the fuck done Larry, but now I risk suspension of Amazon Web Services account.
Anyone else experienced in AWS please help me!
I give FREE API access to people who has purchased Excel databases in the past, and after at least 3 people confirm that API is properly working I will start API subscription service separate than Excel sales.