Um pequeno exemplo de como fazer upload de imagens para o imgur. Vou mostrar de forma simples, caso pretenda implementar isso em algum projeto seu, faça algumas melhorias e poste aqui nos comentários.
O primeiro passo é fazer o cadastro no imgur, e depois de criada e confirmada a conta, é necessário criar uma chave de autorização

Feito tudo isso, vai ser gerada uma chave client ID e client secret, vamos usar apenas a primeira em nossa aplicação.

Aqui, um formulário simples:
<form action="upload.php" enctype="multipart/form-data" method="POST">
Escolha a imagem: <input name="img" size="35" type="file"/><br/>
<input type="submit" name="submit" value="Upload"/>
</form>
Vamos criar um arquivo upload.php e informar o client ID
$client_id ="f022afbee1d5b81";
Depois, ler o conteudo da imagem
$filename = $_FILES['img']['tmp_name'];
$handle = fopen($filename, "r");
$data = fread($handle, filesize($filename));
$pvars = array('image' => base64_encode($data));
E por último, enviaremos essa informação via cURL para a API do imgur: https://api.imgur.com/3/image.json
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://api.imgur.com/3/image.json');
curl_setopt($curl, CURLOPT_TIMEOUT, 30);
curl_setopt($curl, CURLOPT_HTTPHEADER, array('Authorization: Client-ID ' . $client_id));
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $pvars);
$response = curl_exec($curl);
curl_close ($curl);
//TRATAMOS O RETORNO DE FORMA SIMPLES
$imgur = json_decode($response,true);
if(!empty($imgur['data']['link'])) {
exit('<a href=' . $imgur['data']['link'] . ' target="blank"> Ver imagem </a>');
}
exit($imgur['data']['error']);
O código final está nesse gist
Essa foi uma demonstração simples, não use esse código para fins comerciais, pois falta validações e outras melhorias.