// read:

{
	"id": 123,
	"media_type": "image/jpeg",
	"width": 500,
	"height": 300,
	"title": { "__": "abc", ... },
	"description": { "__": ... },
	"md5_hash": "123456..."
}

// update:

{
	"title": ...,
	"description": ...
}


// create:

{
	"source": "http://...",
	"title": { "__": "abc", ... },
	"description": { "__": ... },
}

// supported source protocols:

http://
https://
ftp://
data:image/jpeg;base64,...
data:image/png;base64,...
data:image/gif;base64,...