Ọrọ Iṣaaju
Kaabo si API Syeed ImageEditor.ai!
Ẹya kọọkan jẹ apẹrẹ lati ṣe iranlọwọ fun awọn olumulo wa ni irọrun ṣẹda tabi ṣatunkọ awọn aworan pẹlu AI lori eto ImageEditor.ai.
Lati gba bọtini API rẹ jọwọ lọ si oju-iwe akọọlẹ .
URL Ipilẹ aiyipada
URL ipilẹ aiyipada fun ImageEditor.ai API jẹ: <b>https://api.imageeditor.ai/v1/</b>
Akiyesi: fun awọn idi aabo, gbogbo ImageEditor.ai API ni a ṣe iranṣẹ fun HTTPS nikan.
Aṣẹ
Lati lo ImageEditor.ai API, iwọ yoo nilo bọtini API ti o sopọ mọ akọọlẹ rẹ.
Iye ašẹ yẹ ki o firanṣẹ ni ibeere Awọn akọsori.
Authorization: <api_key>
Ṣẹda awọn aworan
import requests
import time
import shutil
import json
headers = {"Authorization": "api_key"}
params = {
"terms": "ehoro lilọ si ile-iwe, ignorant ara tattoo art",
"is_sfw": True,
"negative_terms": "pidánpidán, oju ti ko dara, aarun, awọn ika ika ti ko dara, ilosiwaju, blurry, cartoon, disney, jade ti fireemu, ge",
"dimension": "landscape",
"fix_faces": True,
"make_tile": False,
"upscale": False,
"threesixty": False,
}
base_api_url = "https://api.imageeditor.ai"
api_url = f"{base_api_url}/v1"
def download_file(url, local_filename):
url = f"{base_api_url}/{url}"
with requests.get(url, stream=True) as r:
with open(local_filename, "wb") as f:
shutil.copyfileobj(r.raw, f)
return local_filename
def convert_files(api_url, params, headers):
r = requests.post(
url=f"{api_url}/create-image/",
json=params,
headers=headers
)
return r.json()
def get_results(params):
if params.get("error"):
print(params)
return
r = requests.post(
url=f"{api_url}/results/",
data=params
)
data = r.json()
finished = data.get("finished")
while not finished:
if int(data.get("queue_count")) > 0:
print("queue: %s" % data.get("queue_count"))
time.sleep(5)
results = get_results(params)
results = json.dumps(results)
if results:
break
if finished:
for f in data.get("files"):
print(f.get("url"))
download_file("%s" % f.get("url"), "%s" % f.get("filename"))
return {"finished": "files downloaded"}
return r.json()
get_results(convert_files(api_url, params, headers))
Create image
curl -X POST \
https://api.imageeditor.ai/v1/create-image/ \
-H 'Authorization: api_key' \
-H 'Content-Type: application/json' \
-d '{
"terms": "ehoro lilọ si ile-iwe, ignorant ara tattoo art",
"is_sfw": true,
"negative_terms": "pidánpidán, oju ti ko dara, aarun, awọn ika ika ti ko dara, ilosiwaju, blurry, cartoon, disney, jade ti fireemu, ge",
"dimension": "landscape",
"fix_faces": true,
"make_tile": false,
"upscale": false,
"threesixty": false
}'
Get created image URL
curl -X POST \
https://api.imageeditor.ai/v1/results/ \
-F 'uuid=response_uuid'
<?php
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ERROR | E_PARSE);
$headers = array("Authorization: api_key");
$file_list = ['/test_files/test.jpeg'];
$api_url = "https://api.imageeditor.ai/v1/edit-image/";
$results_url = "https://api.imageeditor.ai/v1/results/";
function download_file($url, $filename){
$curl = curl_init();
$url = "https://api.imageeditor.ai" . $url;
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_SSLVERSION, 3);
$data = curl_exec($curl);
$error = curl_error($curl);
curl_close ($curl);
# Make sure destionation path exists
$destination_path = "/path/to/result/files/";
$destination_file = fopen($destination_path . $filename, "w+");
fwrite($destination_file, $data);
fclose($destination_file);
}
function convert_files($file_list, $headers, $api_url) {
$post_data['terms'] = 'ehoro lilọ si ile-iwe, ignorant ara tattoo art';
$post_data['is_sfw'] = true;
$post_data['negative_terms'] = 'pidánpidán, oju ti ko dara, aarun, awọn ika ika ti ko dara, ilosiwaju, blurry, cartoon, disney, jade ti fireemu, ge';
$post_data['dimension'] = 'landscape';
$post_data['fix_faces'] = true;
$post_data['make_tile'] = false;
$post_data['upscale'] = false;
$post_data['threesixty'] = false;
foreach ($file_list as $index => $file) {
$post_data['file[' . $index . ']'] = curl_file_create(
realpath($file),
mime_content_type($file),
basename($file)
);
}
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $api_url);
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $post_data);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
$content = curl_exec($curl);
curl_close($curl);
return json_decode($content);
}
function get_results($params, $results_url, $headers) {
if ($params->error) {
print_r($params->error);
return;
}
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $results_url);
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, json_decode(json_encode($params), true));
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
$content = json_decode(curl_exec($curl));
curl_close($curl);
if ($content->finished == false) {
if (intval($content->queue_count) > 0) {
print_r("queue: $content->queue_count");
}
sleep(5);
$results = get_results($params, $results_url, $headers);
return;
}
foreach ($content->files as $f) {
download_file($f->url, $f->filename);
}
}
$resp = convert_files($file_list, $headers, $api_url);
get_results($resp, $results_url, $headers);
?>
const request = require('request');
const fs = require('fs');
let file_list = ['/test_files/sala.png']
const api_url = 'https://api.imageeditor.ai/v1/create-image/'
const results_url = 'https://api.imageeditor.ai/v1/results/'
function convertFiles(file_list) {
let data = {
"terms": "ehoro lilọ si ile-iwe, ignorant ara tattoo art",
"is_sfw": true,
"negative_terms": "pidánpidán, oju ti ko dara, aarun, awọn ika ika ti ko dara, ilosiwaju, blurry, cartoon, disney, jade ti fireemu, ge",
"dimension": "landscape",
"fix_faces": true,
"make_tile": false,
"upscale": false,
"threesixty": false,
};
for (var i = 0; i < file_list.length; i++) {
formData['files'] = fs.createReadStream(file_list[i]);
}
request({
url: api_url,
method: 'post',
json: data,
headers: {
"Authorization": "api_key",
"Content-Type": "application/json",
}
}, function (err, res, body) {
if (err) {
console.error(err);
return err;
}
getResults(JSON.parse(body));
});
}
function getResults(data) {
if (data.error) {
console.error(data);
return data.error;
}
request({
url: results_url,
method: 'post',
formData: data
}, function (e, r, body) {
response = JSON.parse(body);
console.log(response);
if (!response.finished) {
setTimeout(
function () {
getResults(data);
}, 1000
);
}
console.log(response);
})
}
convertFiles(file_list);
Idahun
/path/to/local/result.jpg
HTTP Ibere
POST /create-image/
Awọn paramita ibeere
Paramita | Iru | Apejuwe | Apeere |
---|---|---|---|
is_sfw | iyan | Ṣeto "true" ti “awọn ofin” ba wa fun akoonu aworan agba | true tabi false |
terms | Ti beere fun | Sọ fun AI kini aworan ti o fẹ ṣẹda. | ehoro lilọ si ile-iwe, ignorant ara tattoo art |
negative_terms | iyan | Sọ fun AI ohun ti o yẹ ki o yọkuro. | pidánpidán, oju ti ko dara, aarun, awọn ika ika ti ko dara, ilosiwaju, blurry, cartoon, disney, jade ti fireemu, ge |
dimension | iyan | Gba aworan tabi awọn aworan ala-ilẹ, iye “aworan” jẹ aiyipada ti o ba ṣofo tabi asan. | portrait tabi landscape |
fix_faces | iyan | Jẹ ki AI lati ṣatunṣe awọn oju ni awọn aworan abajade, iye eke jẹ aiyipada ti ko ba firanṣẹ. | true tabi false |
make_tile | iyan | Ṣeto true ti o ba fẹ aworan ti o le ṣee lo bi apẹrẹ. | true tabi false |
upscale | iyan | AI yoo da aworan ti o ni iwọn nla pada. | true tabi false |
threesixty | iyan | AI yoo da aworan 360º pada. | true tabi false |
Ṣatunkọ awọn aworan
import requests
import time
import shutil
import json
headers = {"Authorization": "api_key"}
params = {
"terms": "Ekan ti kittens",
"is_sfw": True,
"replacing": "eso ati eso yio",
"negative_terms": "",
"fix_faces": True,
"outpaint": False,
"upscale": False,
}
file_path = "path/to/test.jpeg"
base_api_url = "https://api.imageeditor.ai"
api_url = f"{base_api_url}/v1"
def download_file(url, local_filename):
url = f"{base_api_url}/{url}"
with requests.get(url, stream=True) as r:
with open(local_filename, "wb") as f:
shutil.copyfileobj(r.raw, f)
return local_filename
def convert_files(api_url, params, headers):
files = [eval(f'("files", open("{file_path}", "rb"))')]
r = requests.post(
url=f"{api_url}/edit-image/",
files=files,
data=params,
headers=headers
)
return r.json()
def get_results(params):
if params.get("error"):
print(params)
return
r = requests.post(
url=f"{api_url}/results/",
data=params
)
data = r.json()
finished = data.get("finished")
while not finished:
if int(data.get("queue_count")) > 0:
print("queue: %s" % data.get("queue_count"))
time.sleep(5)
results = get_results(params)
results = json.dumps(results)
if results:
break
if finished:
for f in data.get("files"):
print(f.get("url"))
download_file("%s" % f.get("url"), "%s" % f.get("filename"))
return {"finished": "files downloaded"}
return r.json()
get_results(convert_files(api_url, params, headers))
Ṣatunkọ awọn aworan
curl -X POST \
https://api.imageeditor.ai/v1/edit-image/ \
-H 'Authorization: api_key' \
-F 'files=@test_files/test.jpeg' \
-F 'terms=Ekan ti kittens' \
-F 'is_sfw=true' \
-F 'replacing=eso ati eso yio' \
-F 'negative_terms=' \
-F 'fix_faces=true' \
-F 'outpaint=false' \
-F 'upscale=false'
Get result image
curl -X POST \
https://api.imageeditor.ai/v1/results/ \
-F 'uuid=response_uuid'
<?php
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ERROR | E_PARSE);
$headers = array("Authorization: api_key");
$file_list = ['/test_files/test.jpeg'];
$api_url = "https://api.imageeditor.ai/v1/edit-image/";
$results_url = "https://api.imageeditor.ai/v1/results/";
function download_file($url, $filename){
$curl = curl_init();
$url = "https://api.imageeditor.ai" . $url;
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_SSLVERSION, 3);
$data = curl_exec($curl);
$error = curl_error($curl);
curl_close ($curl);
# Make sure destionation path exists
$destination_path = "/path/to/result/files/";
$destination_file = fopen($destination_path . $filename, "w+");
fwrite($destination_file, $data);
fclose($destination_file);
}
function convert_files($file_list, $headers, $api_url) {
$post_data['terms'] = 'ehoro lilọ si ile-iwe, ignorant ara tattoo art';
$post_data['is_sfw'] = true;
$post_data['replacing'] = 'eso ati eso yio';
$post_data['negative_terms'] = '';
$post_data['fix_faces'] = true;
$post_data['outpaint'] = false;
$post_data['upscale'] = false;
foreach ($file_list as $index => $file) {
$post_data['file[' . $index . ']'] = curl_file_create(
realpath($file),
mime_content_type($file),
basename($file)
);
}
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $api_url);
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $post_data);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
$content = curl_exec($curl);
curl_close($curl);
return json_decode($content);
}
function get_results($params, $results_url, $headers) {
if ($params->error) {
print_r($params->error);
return;
}
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $results_url);
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, json_decode(json_encode($params), true));
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
$content = json_decode(curl_exec($curl));
curl_close($curl);
if ($content->finished == false) {
if (intval($content->queue_count) > 0) {
print_r("queue: $content->queue_count");
}
sleep(5);
$results = get_results($params, $results_url, $headers);
return;
}
foreach ($content->files as $f) {
download_file($f->url, $f->filename);
}
}
$resp = convert_files($file_list, $headers, $api_url);
get_results($resp, $results_url, $headers);
?>
const request = require('request');
const fs = require('fs');
let file_list = ['/test_files/test.jpeg']
const api_url = 'https://api.imageeditor.ai/v1/edit-image/'
const results_url = 'https://api.imageeditor.ai/v1/results/'
function convertFiles(file_list) {
let formData = {
"terms": "ehoro lilọ si ile-iwe, ignorant ara tattoo art",
"is_sfw": true,
"negative_terms": "pidánpidán, oju ti ko dara, aarun, awọn ika ika ti ko dara, ilosiwaju, blurry, cartoon, disney, jade ti fireemu, ge",
"dimension": "landscape",
"fix_faces": true,
"make_tile": false,
"upscale": false,
"threesixty": false,
};
for (var i = 0; i < file_list.length; i++) {
formData['files'] = fs.createReadStream(file_list[i]);
}
request({
url: api_url,
method: 'post',
formData: formData,
headers: {
"Authorization": "api_key",
"Content-Type": "multipart/form-data",
}
}, function (err, res, body) {
if (err) {
console.error(err);
return err;
}
getResults(JSON.parse(body));
});
}
function getResults(data) {
if (data.error) {
console.error(data);
return data.error;
}
request({
url: results_url,
method: 'post',
formData: data
}, function (e, r, body) {
response = JSON.parse(body);
console.log(response);
if (!response.finished) {
setTimeout(
function () {
getResults(data);
}, 1000
);
}
console.log(response);
})
}
convertFiles(file_list);
Idahun
/path/to/local/result.jpg
HTTP Ibere
POST /edit-image/
Awọn paramita ibeere
Paramita | Iru | Apejuwe | Apeere |
---|---|---|---|
is_sfw | iyan | Ṣeto "true" ti “awọn ofin” ba wa fun akoonu aworan agba | true tabi false |
terms | Ti beere fun | Sọ fun AI kini o fẹ da lori aworan rẹ. | Ekan ti kittens |
replacing | iyan | Sọ fun AI ti o ba fẹ paarọ ohunkan ninu aworan rẹ ti o da lori itọsi rẹ loke | eso ati eso yio |
negative_terms | iyan | Sọ fun AI ohun ti o yẹ ki o yọkuro. | pidánpidán, oju ti ko dara, aarun, awọn ika ika ti ko dara, ilosiwaju, blurry, cartoon, disney, jade ti fireemu, ge |
fix_faces | iyan | Jẹ ki AI lati ṣatunṣe awọn oju ni awọn aworan abajade, iye eke jẹ aiyipada ti ko ba firanṣẹ. | true tabi false |
outpaint | iyan | Fun aworan ibẹrẹ, AI le ṣe ipilẹṣẹ “awọn agbegbe” rẹ | true tabi false |
upscale | iyan | AI yoo da aworan ti o ni iwọn nla pada. | true tabi false |