Hi Sesuraj,
I ran into the same issue, the problem lies here: json-api/models/attachment.php, line 48.
In processing the images, the script assumes the files are stored on the same file system as your wordpress install. Therefore file_exists() fails for remotely stored assets (e.g. in S3), even though wp_get_attachment_image_src already returns the necessary data (line 46).
Quickfix: Simply comment out lines 47, 48, 49, 50, 51, 57, 58 in json-api/models/attachment.php
//$filename = ABSPATH . substr($url, strlen($home) + 1);
//if (file_exists($filename)) {
//list($measured_width, $measured_height) = getimagesize($filename);
//if ($measured_width == $width &&
//$measured_height == $height) {
$this->images[$size] = (object) array(
‘url’ => $url,
‘width’ => $width,
‘height’ => $height
);
//}
//}