تعارف
ImageEditor.ai پلیٹ فارم API میں خوش آمدید!
ہر خصوصیت کو ہمارے صارفین کو ImageEditor.ai کے سسٹم پر AI کے ساتھ زیادہ آسانی سے تصاویر بنانے یا ترمیم کرنے میں مدد کرنے کے لیے ڈیزائن کیا گیا ہے۔
اپنی API کلید حاصل کرنے کے لیے برائے مہربانی اکاؤنٹ کے صفحہ پر جائیں۔
ڈیفالٹ بیس یو آر ایل
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": "اسکول جانے والا خرگوش، جاہلانہ انداز کا ٹیٹو آرٹ",
"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": "اسکول جانے والا خرگوش، جاہلانہ انداز کا ٹیٹو آرٹ",
"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'] = 'اسکول جانے والا خرگوش، جاہلانہ انداز کا ٹیٹو آرٹ';
$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": "اسکول جانے والا خرگوش، جاہلانہ انداز کا ٹیٹو آرٹ",
"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 | درکار ہے۔ | اے آئی کو بتائیں کہ آپ کون سی تصویر بنانا چاہتے ہیں۔ | اسکول جانے والا خرگوش، جاہلانہ انداز کا ٹیٹو آرٹ |
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'] = 'اسکول جانے والا خرگوش، جاہلانہ انداز کا ٹیٹو آرٹ';
$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": "اسکول جانے والا خرگوش، جاہلانہ انداز کا ٹیٹو آرٹ",
"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 |