تعارف
ImageEditor.ai پليٽ فارم API تي ڀليڪار!
هر خصوصيت اسان جي استعمال ڪندڙن جي مدد ڪرڻ لاءِ ٺاهي وئي آهي وڌيڪ آساني سان تصويرون ٺاهڻ يا ايڊٽ ڪرڻ AI سان ImageEditor.ai جي سسٽم تي.
پنھنجي API ڪي حاصل ڪرڻ لاءِ مھرباني ڪري وڃو اڪائونٽ صفحي .
ڊفالٽ بيس URL
ImageEditor.ai API لاءِ ڊفالٽ بنيادي URL آهي: <b>https://api.imageeditor.ai/v1/</b>
نوٽ: حفاظتي سببن لاء، سڀ ImageEditor.ai APIs صرف HTTPS تي خدمت ڪري رهيا آهن.
اختيار ڏيڻ
ImageEditor.ai API استعمال ڪرڻ لاءِ، توهان کي API جي ضرورت پوندي جيڪا توهان جي اڪائونٽ سان ڳنڍيل هجي.
اختيار جي قيمت کي هيڊر جي درخواست ۾ موڪليو وڃي.
Authorization: <api_key>
تصويرون ٺاهيو
import requests
import time
import shutil
import json
headers = {"Authorization": "api_key"}
params = {
"terms": "rabbit going to school، جاهل انداز ٽتوٽ آرٽ",
"is_sfw": True,
"negative_terms": "نقل، ناقص ٺهيل چهرو، بيمار، خراب طرح سان ٺهيل آڱريون، بدصورت، ڌنڌلي، ڪارٽون، ڊزني، فريم کان ٻاهر، ڪٽيل",
"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": "rabbit going to school، جاهل انداز ٽتوٽ آرٽ",
"is_sfw": true,
"negative_terms": "نقل، ناقص ٺهيل چهرو، بيمار، خراب طرح سان ٺهيل آڱريون، بدصورت، ڌنڌلي، ڪارٽون، ڊزني، فريم کان ٻاهر، ڪٽيل",
"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'] = 'rabbit going to school، جاهل انداز ٽتوٽ آرٽ';
$post_data['is_sfw'] = true;
$post_data['negative_terms'] = 'نقل، ناقص ٺهيل چهرو، بيمار، خراب طرح سان ٺهيل آڱريون، بدصورت، ڌنڌلي، ڪارٽون، ڊزني، فريم کان ٻاهر، ڪٽيل';
$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": "rabbit going to school، جاهل انداز ٽتوٽ آرٽ",
"is_sfw": true,
"negative_terms": "نقل، ناقص ٺهيل چهرو، بيمار، خراب طرح سان ٺهيل آڱريون، بدصورت، ڌنڌلي، ڪارٽون، ڊزني، فريم کان ٻاهر، ڪٽيل",
"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);
جواب
/path/to/local/result.jpg
HTTP درخواست
POST /create-image/
پڇا ڳاڇا پيراگراف
پيرا ميٽر | قسم | وصف | مثال |
---|---|---|---|
is_sfw | اختياري | سيٽ ڪريو "true" جيڪڏھن "شرط" بالغن جي تصويري مواد لاءِ آھن | true يا false |
terms | گهربل | AI کي ٻڌايو ته توهان ڪهڙي تصوير ٺاهڻ چاهيو ٿا. | rabbit going to school، جاهل انداز ٽتوٽ آرٽ |
negative_terms | اختياري | AI کي ٻڌايو ته ڇا خارج ڪيو وڃي. | نقل، ناقص ٺهيل چهرو، بيمار، خراب طرح سان ٺهيل آڱريون، بدصورت، ڌنڌلي، ڪارٽون، ڊزني، فريم کان ٻاهر، ڪٽيل |
dimension | اختياري | پورٽريٽ يا لينڊ اسڪيپ جون تصويرون حاصل ڪريو، "پورٽريٽ" قدر ڊفالٽ آھي جيڪڏھن خالي يا ناھي. | portrait يا landscape |
fix_faces | اختياري | AI کي اجازت ڏيو ته نتيجن جي تصويرن ۾ منهن کي درست ڪرڻ لاء، غلط قيمت ڊفالٽ آهي جيڪڏهن نه موڪليو وڃي. | true يا false |
make_tile | اختياري | true سيٽ ڪريو جيڪڏهن توهان هڪ تصوير چاهيو ٿا جيڪو نموني طور استعمال ڪري سگهجي ٿو. | true يا false |
upscale | اختياري | AI هڪ وڏي پيماني تي تصوير واپس ڪندو. | true يا false |
threesixty | اختياري | AI هڪ 360º تصوير واپس ڪندو. | true يا false |
تصويرون تبديل ڪريو
import requests
import time
import shutil
import json
headers = {"Authorization": "api_key"}
params = {
"terms": "ڪتن جو پيالو",
"is_sfw": True,
"replacing": "ميوو ۽ ميوو اسٽيم",
"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))
تصويرون تبديل ڪريو
curl -X POST \
https://api.imageeditor.ai/v1/edit-image/ \
-H 'Authorization: api_key' \
-F 'files=@test_files/test.jpeg' \
-F 'terms=ڪتن جو پيالو' \
-F 'is_sfw=true' \
-F 'replacing=ميوو ۽ ميوو اسٽيم' \
-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'] = 'rabbit going to school، جاهل انداز ٽتوٽ آرٽ';
$post_data['is_sfw'] = true;
$post_data['replacing'] = 'ميوو ۽ ميوو اسٽيم';
$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": "rabbit going to school، جاهل انداز ٽتوٽ آرٽ",
"is_sfw": true,
"negative_terms": "نقل، ناقص ٺهيل چهرو، بيمار، خراب طرح سان ٺهيل آڱريون، بدصورت، ڌنڌلي، ڪارٽون، ڊزني، فريم کان ٻاهر، ڪٽيل",
"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);
جواب
/path/to/local/result.jpg
HTTP درخواست
POST /edit-image/
پڇا ڳاڇا پيراگراف
پيرا ميٽر | قسم | وصف | مثال |
---|---|---|---|
is_sfw | اختياري | سيٽ ڪريو "true" جيڪڏھن "شرط" بالغن جي تصويري مواد لاءِ آھن | true يا false |
terms | گهربل | AI کي ٻڌايو ته توھان ڇا ٿا چاھيو توھان جي تصوير جي بنياد تي. | ڪتن جو پيالو |
replacing | اختياري | AI کي ٻڌايو ته جيڪڏھن توھان توھان چاھيو ٿا توھان جي تصوير ۾ ڪجھ تبديل ڪريو توھان جي مٿي ڏنل اشارو جي بنياد تي | ميوو ۽ ميوو اسٽيم |
negative_terms | اختياري | AI کي ٻڌايو ته ڇا خارج ڪيو وڃي. | نقل، ناقص ٺهيل چهرو، بيمار، خراب طرح سان ٺهيل آڱريون، بدصورت، ڌنڌلي، ڪارٽون، ڊزني، فريم کان ٻاهر، ڪٽيل |
fix_faces | اختياري | AI کي اجازت ڏيو ته نتيجن جي تصويرن ۾ منهن کي درست ڪرڻ لاء، غلط قيمت ڊفالٽ آهي جيڪڏهن نه موڪليو وڃي. | true يا false |
outpaint | اختياري | هڪ شروعاتي تصوير ڏني وئي، AI ان جي "ماحول" پيدا ڪري سگهي ٿي | true يا false |
upscale | اختياري | AI هڪ وڏي پيماني تي تصوير واپس ڪندو. | true يا false |