Puntuación¶
PhotoScore é un servizo de PhotoILike que reproduce un estudo de mercado para unha imaxe dada e devolve, como resultado, unha puntuación entre 0 e 10 (sendo 0 a puntuación mínima e 10, a máxima). Esta puntuación representa o atractivo comercial da devandita imaxe. Canto maior sexa a puntuación, máis probabilidades hai de que o cliente faga clic sobre ela.
Petición
POST https://api.photoilike.com/v2.0/score
Cabeceiras
Campos
Clave | Valor |
---|---|
Authorization | string Requirido Token de sesión precedido pola palabra Bearer . |
Corpo da solicitude
O corpo da solicitude contén datos coa seguinte estrutura:
Representación JSON
Campos
Parámetro | Información |
---|---|
client-key | string Requirido Client-key do usuario final que solicita a puntuación da imaxe. |
image-url | string Requirido1 URL que identifica desde onde se pode obter a imaxe para procesar. A imaxe ha de poder obterse mediante unha petición GET á URL indicada. |
image-base64 | string Requirido1 Codificación en base64 da imaxe que se desexa procesar. |
ext | string Requirido2 Extensión do arquivo para usar. Os valores permitidos son: png , jpg , jpeg , webp , heic , avif . |
Warning
1 Cada petición só procesa unha imaxe, o que implica que os campos image-url
e image-base64
son disxuntos, é dicir, hase de usar un ou o outro, pero nunca os dous á vez.
2 Se se usa image-base64
hase de pasar o parámetro ext
.
Resposta da solicitude
En caso de éxito, o código de estado HTTP no encabezado da resposta é 200 OK e o corpo da resposta contén a puntuación da imaxe.
Representación JSON
Campos
Parámetro | Información |
---|---|
id | string Identificador do traballo que procesou a petición para obter a puntuación da imaxe. |
score | float Puntuación para a imaxe da petición. |
Exemplo de petición
import requests
header = {
# Add your token session (1)
'Authorization': 'Bearer YOUR.SESSION.TOKEN'
}
payload = {
# Add an active client key (2)
'client-key': 'ACTIVE_CLIENT_KEY',
# Add the image url you want to rate (3)
'image-url': 'https://example.org/photo.jpg'
}
endpoint = 'https://api.photoilike.com/v2.0/score'
# Make the request
r = requests.post(endpoint, headers=header, json=payload)
# Response in json format
response = r.json()
- Asegúrese de substituír
YOUR.SESSION.TOKEN
por un token de sesión válido - Asegúrese de substituír
ACTIVE_CLIENT_KEY
por un client-key válido - Estableza en image-url a URL da imaxe que desexe puntuar
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.URL;
import java.nio.charset.StandardCharsets;
import org.json.JSONObject;
public class Score {
public static void main(String[] args) throws Exception {
// add your session token (1)
String bearerToken = String.format("Bearer %s", "YOUR.SESSION.TOKEN");
JSONObject payload = new JSONObject();
// add an active client key (2)
payload.put("client-key", "ACTIVE_CLIENT_KEY");
// add the image url you want to rate (3)
payload.put("image-url", "https://example.org/photo.jpg");
String endpoint = "https://api.photoilike.com/v2.0/score";
// build the request
HttpURLConnection connection = (HttpURLConnection) new URL(endpoint).openConnection();
connection.setRequestMethod("POST");
connection.setRequestProperty("Authorization", bearerToken);
connection.setRequestProperty("Content-Type", "application/json");
connection.setDoOutput(true);
OutputStream os = connection.getOutputStream();
byte[] input = payload.toString().getBytes(StandardCharsets.UTF_8);
os.write(input, 0, input.length);
// make the request
BufferedReader br = new BufferedReader(
new InputStreamReader(connection.getInputStream(), StandardCharsets.UTF_8)
);
StringBuilder response = new StringBuilder();
for (String responseLine = null; (responseLine = br.readLine()) != null; response.append(responseLine.trim()))
;
// Response in json format
JSONObject json = new JSONObject(response.toString());
}
}
- Asegúrese de substituír
YOUR.SESSION.TOKEN
por un token de sesión válido - Asegúrese de substituír
ACTIVE_CLIENT_KEY
por un client-key válido - Estableza en image-url a URL da imaxe que desexe puntuar
<?php
// Add your token session (1)
$headers = array(
'Content-Type:application/json',
'Authorization: Bearer YOUR.SESSION.TOKEN'
);
// Add an active client key (2)
// Add the image url you want to rate (3)
$payload = json_encode(array(
'client-key' => 'ACTIVE_CLIENT_KEY',
'image-url' => 'https://example.org/photo.jpg'
));
$endpoint = "https://api.photoilike.com/v2.0/score";
$ch = curl_init($endpoint);
curl_setopt($ch, CURLOPT_POSTFIELDS, $payload);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// Make the request
$result = curl_exec($ch);
curl_close($ch);
// Response in json format
$response = json_decode($result);
?>
- Asegúrese de substituír
YOUR.SESSION.TOKEN
por un token de sesión válido - Asegúrese de substituír
ACTIVE_CLIENT_KEY
por un client-key válido - Estableza en image-url a URL da imaxe que desexe puntuar