Estimate cloudbase height I am trying to estimate cloudbase height using calculations from my weather station temperature/humidity, by calculating those two variables I can get estimated cloudbase height but what puzzles me now is inversion layers and temperature at different heights. 

I know grib and grib2 files contain those data but I can't seem to figure out how to pull that data in Java even though I tried like every possible library. 

Is there any other way I can accurately estimate cloudbase levels by using some API which gives temperature by height for given latitude and longitude.
You are right, you can't get cloudbase height without 3D data. You can do that using radiosondes. However, if your weather station has a ceilometer, then you don't actually need many calculations. However, they are usually quite expensive.

If you want a real rough calculation, you can just use the Lifted Condensation Level, which is more valid estimate during the day than at night.

Note on the grib files: They may not always have all of the variables. For example, the WAVE ocean model (see NCEP NOMADS) won't have cloud base, because it is in fact for oceans. However, what you can do is use models like the GFS, which tell you what model levels have clouds, and then find the height of the lowest level that has cloud cover. It will take some programming though.