Редактирование изображения
Изменяет исходное изображение по текстовому описанию. Ответ возвращается синхронно и содержит ссылки на готовые изображения.
curl --request POST \
--url https://api.nixai.ru/v1/images/edits \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: multipart/form-data' \
--form model=higgsfield-soul-2-1080p \
--form 'prompt=Замени фон на закат над морем' \
--form image='@example-file' \
--form aspect_ratio=4:3 \
--form style=General \
--form enhance_prompt=true \
--form response_format=b64_jsonimport requests
url = "https://api.nixai.ru/v1/images/edits"
files = { "image": ("example-file", open("example-file", "rb")) }
payload = {
"model": "higgsfield-soul-2-1080p",
"prompt": "Замени фон на закат над морем",
"aspect_ratio": "4:3",
"style": "General",
"enhance_prompt": "true",
"response_format": "b64_json"
}
headers = {"Authorization": "Bearer <token>"}
response = requests.post(url, data=payload, files=files, headers=headers)
print(response.text)const form = new FormData();
form.append('model', 'higgsfield-soul-2-1080p');
form.append('prompt', 'Замени фон на закат над морем');
form.append('image', '<string>');
form.append('aspect_ratio', '4:3');
form.append('style', 'General');
form.append('enhance_prompt', 'true');
form.append('response_format', 'b64_json');
const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}};
options.body = form;
fetch('https://api.nixai.ru/v1/images/edits', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import fs from 'fs';
const formData = new FormData();
formData.append('model', 'higgsfield-soul-2-1080p');
formData.append('prompt', 'Замени фон на закат над морем');
formData.append('image', await new Response(fs.createReadStream('example-file')).blob());
formData.append('aspect_ratio', '4:3');
formData.append('style', 'General');
formData.append('enhance_prompt', 'true');
formData.append('response_format', 'b64_json');
const url = 'https://api.nixai.ru/v1/images/edits';
const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}, body: formData};
fetch(url, options)
.then(res => res.json())
.then(json => console.log(json))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.nixai.ru/v1/images/edits",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"model\"\r\n\r\nhiggsfield-soul-2-1080p\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"prompt\"\r\n\r\nЗамени фон на закат над морем\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"image\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"aspect_ratio\"\r\n\r\n4:3\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"style\"\r\n\r\nGeneral\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"enhance_prompt\"\r\n\r\ntrue\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"response_format\"\r\n\r\nb64_json\r\n-----011000010111000001101001--",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.nixai.ru/v1/images/edits"
payload := strings.NewReader("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"model\"\r\n\r\nhiggsfield-soul-2-1080p\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"prompt\"\r\n\r\nЗамени фон на закат над морем\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"image\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"aspect_ratio\"\r\n\r\n4:3\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"style\"\r\n\r\nGeneral\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"enhance_prompt\"\r\n\r\ntrue\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"response_format\"\r\n\r\nb64_json\r\n-----011000010111000001101001--")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.nixai.ru/v1/images/edits")
.header("Authorization", "Bearer <token>")
.body("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"model\"\r\n\r\nhiggsfield-soul-2-1080p\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"prompt\"\r\n\r\nЗамени фон на закат над морем\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"image\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"aspect_ratio\"\r\n\r\n4:3\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"style\"\r\n\r\nGeneral\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"enhance_prompt\"\r\n\r\ntrue\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"response_format\"\r\n\r\nb64_json\r\n-----011000010111000001101001--")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.nixai.ru/v1/images/edits")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request.body = "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"model\"\r\n\r\nhiggsfield-soul-2-1080p\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"prompt\"\r\n\r\nЗамени фон на закат над морем\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"image\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"aspect_ratio\"\r\n\r\n4:3\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"style\"\r\n\r\nGeneral\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"enhance_prompt\"\r\n\r\ntrue\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"response_format\"\r\n\r\nb64_json\r\n-----011000010111000001101001--"
response = http.request(request)
puts response.read_bodyimport Foundation
let parameters = [
[
"name": "model",
"value": "higgsfield-soul-2-1080p"
],
[
"name": "prompt",
"value": "Замени фон на закат над морем"
],
[
"name": "image",
"value": "<string>",
"fileName": "example-file"
],
[
"name": "aspect_ratio",
"value": "4:3"
],
[
"name": "style",
"value": "General"
],
[
"name": "enhance_prompt",
"value": "true"
],
[
"name": "response_format",
"value": "b64_json"
]
]
let boundary = "---011000010111000001101001"
var body = ""
for param in parameters {
let paramName = param["name"]!
body += "--\(boundary)\r\n"
body += "Content-Disposition:form-data; name=\"\(paramName)\""
if let filename = param["fileName"] {
let contentType = param["contentType"]!
let fileContent = try String(contentsOfFile: filename, encoding: .utf8)
body += "; filename=\"\(filename)\"\r\n"
body += "Content-Type: \(contentType)\r\n\r\n"
body += fileContent
} else if let paramValue = param["value"] {
body += "\r\n\r\n\(paramValue)"
}
}
let postData = Data(body.utf8)
let url = URL(string: "https://api.nixai.ru/v1/images/edits")!
var request = URLRequest(url: url)
request.httpMethod = "POST"
request.timeoutInterval = 10
request.allHTTPHeaderFields = ["Authorization": "Bearer <token>"]
request.httpBody = postData
let (data, _) = try await URLSession.shared.data(for: request)
print(String(decoding: data, as: UTF8.self))using RestSharp;
var options = new RestClientOptions("https://api.nixai.ru/v1/images/edits");
var client = new RestClient(options);
var request = new RestRequest("");
request.AlwaysMultipartFormData = true;
request.AddHeader("Authorization", "Bearer <token>");
request.AddParameter("model", "higgsfield-soul-2-1080p");
request.AddParameter("prompt", "Замени фон на закат над морем");
request.AddFile("image", "example-file");
request.AddParameter("aspect_ratio", "4:3");
request.AddParameter("style", "General");
request.AddParameter("enhance_prompt", "true");
request.AddParameter("response_format", "b64_json");
var response = await client.PostAsync(request);
Console.WriteLine("{0}", response.Content);using RestSharp;
var options = new RestClientOptions("https://api.nixai.ru/v1/images/edits");
var client = new RestClient(options);
var request = new RestRequest("");
request.AlwaysMultipartFormData = true;
request.AddHeader("Authorization", "Bearer <token>");
request.AddParameter("model", "higgsfield-soul-2-1080p");
request.AddParameter("prompt", "Замени фон на закат над морем");
request.AddFile("image", "example-file");
request.AddParameter("aspect_ratio", "4:3");
request.AddParameter("style", "General");
request.AddParameter("enhance_prompt", "true");
request.AddParameter("response_format", "b64_json");
var response = await client.PostAsync(request);
Console.WriteLine("{0}", response.Content);const form = new FormData();
form.append('model', 'higgsfield-soul-2-1080p');
form.append('prompt', 'Замени фон на закат над морем');
form.append('image', '<string>');
form.append('aspect_ratio', '4:3');
form.append('style', 'General');
form.append('enhance_prompt', 'true');
form.append('response_format', 'b64_json');
const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}};
options.body = form;
fetch('https://api.nixai.ru/v1/images/edits', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));CURL *hnd = curl_easy_init();
curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "POST");
curl_easy_setopt(hnd, CURLOPT_WRITEDATA, stdout);
curl_easy_setopt(hnd, CURLOPT_URL, "https://api.nixai.ru/v1/images/edits");
struct curl_slist *headers = NULL;
headers = curl_slist_append(headers, "Authorization: Bearer <token>");
curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers);
curl_easy_setopt(hnd, CURLOPT_POSTFIELDS, "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"model\"\r\n\r\nhiggsfield-soul-2-1080p\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"prompt\"\r\n\r\nЗамени фон на закат над морем\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"image\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"aspect_ratio\"\r\n\r\n4:3\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"style\"\r\n\r\nGeneral\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"enhance_prompt\"\r\n\r\ntrue\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"response_format\"\r\n\r\nb64_json\r\n-----011000010111000001101001--");
CURLcode ret = curl_easy_perform(hnd);CURL *hnd = curl_easy_init();
curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "POST");
curl_easy_setopt(hnd, CURLOPT_WRITEDATA, stdout);
curl_easy_setopt(hnd, CURLOPT_URL, "https://api.nixai.ru/v1/images/edits");
struct curl_slist *headers = NULL;
headers = curl_slist_append(headers, "Authorization: Bearer <token>");
curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers);
curl_easy_setopt(hnd, CURLOPT_POSTFIELDS, "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"model\"\r\n\r\nhiggsfield-soul-2-1080p\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"prompt\"\r\n\r\nЗамени фон на закат над морем\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"image\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"aspect_ratio\"\r\n\r\n4:3\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"style\"\r\n\r\nGeneral\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"enhance_prompt\"\r\n\r\ntrue\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"response_format\"\r\n\r\nb64_json\r\n-----011000010111000001101001--");
CURLcode ret = curl_easy_perform(hnd);val client = OkHttpClient()
val mediaType = MediaType.parse("multipart/form-data; boundary=---011000010111000001101001")
val body = RequestBody.create(mediaType, "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"model\"\r\n\r\nhiggsfield-soul-2-1080p\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"prompt\"\r\n\r\nЗамени фон на закат над морем\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"image\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"aspect_ratio\"\r\n\r\n4:3\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"style\"\r\n\r\nGeneral\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"enhance_prompt\"\r\n\r\ntrue\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"response_format\"\r\n\r\nb64_json\r\n-----011000010111000001101001--")
val request = Request.Builder()
.url("https://api.nixai.ru/v1/images/edits")
.post(body)
.addHeader("Authorization", "Bearer <token>")
.build()
val response = client.newCall(request).execute()falsefalse{
"data": [
{
"url": "https://cdn.nixai.ru/images/db242923.png",
"b64_json": "base64"
}
]
}Authorizations
Заголовок авторизации вида Bearer <token>, где <token> — ваш API-ключ.
Body
Идентификатор image-модели.
higgsfield-soul-2-720p, higgsfield-soul-2-1080p "higgsfield-soul-2-1080p"
Текстовое описание желаемых изменений.
"Замени фон на закат над морем"
Исходное изображение для редактирования, передаётся файлом.
Соотношение сторон изображения.
9:16, 16:9, 4:3, 3:4, 1:1, 2:3, 3:2 Визуальный стиль генерации. Можно передать любое из доступных имён стилей. Полный каталог с превью — на странице «Стили генерации».
Y2K studio, Street photography, Editorial street style, Warm ambient, Drain, Neutral pastel film, Digital camera, Old smartphone, General, Asian nostalgia, Flash editorial, Frutiger aero, Muted cool film, Double exposure, Disposable camera, Surreal solarization, Underwater, Siren, Candy pop, Mystique city, Subtle flash, 80s horror, New Indie, Extraterrestrial, Theatrical light, Y2K street, Warm contrast film, Retro BW, Swag era, Nature light, 2000s band, Warm vivid film, BW film "General"
Автоматическое улучшение промпта. При false промпт используется как есть.
Формат, в котором возвращается изображение:
url— в полеurlприходит ссылка на готовое изображение;b64_json— в полеb64_jsonприходит изображение, закодированное в base64.
url, b64_json Response
Изображение отредактировано
Список сгенерированных изображений. Каждый элемент содержит либо
url, либо b64_json — в зависимости от параметра response_format.
Show child attributes
Show child attributes
Was this page helpful?
curl --request POST \
--url https://api.nixai.ru/v1/images/edits \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: multipart/form-data' \
--form model=higgsfield-soul-2-1080p \
--form 'prompt=Замени фон на закат над морем' \
--form image='@example-file' \
--form aspect_ratio=4:3 \
--form style=General \
--form enhance_prompt=true \
--form response_format=b64_jsonimport requests
url = "https://api.nixai.ru/v1/images/edits"
files = { "image": ("example-file", open("example-file", "rb")) }
payload = {
"model": "higgsfield-soul-2-1080p",
"prompt": "Замени фон на закат над морем",
"aspect_ratio": "4:3",
"style": "General",
"enhance_prompt": "true",
"response_format": "b64_json"
}
headers = {"Authorization": "Bearer <token>"}
response = requests.post(url, data=payload, files=files, headers=headers)
print(response.text)const form = new FormData();
form.append('model', 'higgsfield-soul-2-1080p');
form.append('prompt', 'Замени фон на закат над морем');
form.append('image', '<string>');
form.append('aspect_ratio', '4:3');
form.append('style', 'General');
form.append('enhance_prompt', 'true');
form.append('response_format', 'b64_json');
const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}};
options.body = form;
fetch('https://api.nixai.ru/v1/images/edits', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import fs from 'fs';
const formData = new FormData();
formData.append('model', 'higgsfield-soul-2-1080p');
formData.append('prompt', 'Замени фон на закат над морем');
formData.append('image', await new Response(fs.createReadStream('example-file')).blob());
formData.append('aspect_ratio', '4:3');
formData.append('style', 'General');
formData.append('enhance_prompt', 'true');
formData.append('response_format', 'b64_json');
const url = 'https://api.nixai.ru/v1/images/edits';
const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}, body: formData};
fetch(url, options)
.then(res => res.json())
.then(json => console.log(json))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.nixai.ru/v1/images/edits",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"model\"\r\n\r\nhiggsfield-soul-2-1080p\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"prompt\"\r\n\r\nЗамени фон на закат над морем\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"image\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"aspect_ratio\"\r\n\r\n4:3\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"style\"\r\n\r\nGeneral\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"enhance_prompt\"\r\n\r\ntrue\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"response_format\"\r\n\r\nb64_json\r\n-----011000010111000001101001--",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.nixai.ru/v1/images/edits"
payload := strings.NewReader("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"model\"\r\n\r\nhiggsfield-soul-2-1080p\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"prompt\"\r\n\r\nЗамени фон на закат над морем\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"image\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"aspect_ratio\"\r\n\r\n4:3\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"style\"\r\n\r\nGeneral\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"enhance_prompt\"\r\n\r\ntrue\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"response_format\"\r\n\r\nb64_json\r\n-----011000010111000001101001--")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.nixai.ru/v1/images/edits")
.header("Authorization", "Bearer <token>")
.body("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"model\"\r\n\r\nhiggsfield-soul-2-1080p\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"prompt\"\r\n\r\nЗамени фон на закат над морем\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"image\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"aspect_ratio\"\r\n\r\n4:3\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"style\"\r\n\r\nGeneral\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"enhance_prompt\"\r\n\r\ntrue\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"response_format\"\r\n\r\nb64_json\r\n-----011000010111000001101001--")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.nixai.ru/v1/images/edits")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request.body = "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"model\"\r\n\r\nhiggsfield-soul-2-1080p\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"prompt\"\r\n\r\nЗамени фон на закат над морем\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"image\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"aspect_ratio\"\r\n\r\n4:3\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"style\"\r\n\r\nGeneral\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"enhance_prompt\"\r\n\r\ntrue\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"response_format\"\r\n\r\nb64_json\r\n-----011000010111000001101001--"
response = http.request(request)
puts response.read_bodyimport Foundation
let parameters = [
[
"name": "model",
"value": "higgsfield-soul-2-1080p"
],
[
"name": "prompt",
"value": "Замени фон на закат над морем"
],
[
"name": "image",
"value": "<string>",
"fileName": "example-file"
],
[
"name": "aspect_ratio",
"value": "4:3"
],
[
"name": "style",
"value": "General"
],
[
"name": "enhance_prompt",
"value": "true"
],
[
"name": "response_format",
"value": "b64_json"
]
]
let boundary = "---011000010111000001101001"
var body = ""
for param in parameters {
let paramName = param["name"]!
body += "--\(boundary)\r\n"
body += "Content-Disposition:form-data; name=\"\(paramName)\""
if let filename = param["fileName"] {
let contentType = param["contentType"]!
let fileContent = try String(contentsOfFile: filename, encoding: .utf8)
body += "; filename=\"\(filename)\"\r\n"
body += "Content-Type: \(contentType)\r\n\r\n"
body += fileContent
} else if let paramValue = param["value"] {
body += "\r\n\r\n\(paramValue)"
}
}
let postData = Data(body.utf8)
let url = URL(string: "https://api.nixai.ru/v1/images/edits")!
var request = URLRequest(url: url)
request.httpMethod = "POST"
request.timeoutInterval = 10
request.allHTTPHeaderFields = ["Authorization": "Bearer <token>"]
request.httpBody = postData
let (data, _) = try await URLSession.shared.data(for: request)
print(String(decoding: data, as: UTF8.self))using RestSharp;
var options = new RestClientOptions("https://api.nixai.ru/v1/images/edits");
var client = new RestClient(options);
var request = new RestRequest("");
request.AlwaysMultipartFormData = true;
request.AddHeader("Authorization", "Bearer <token>");
request.AddParameter("model", "higgsfield-soul-2-1080p");
request.AddParameter("prompt", "Замени фон на закат над морем");
request.AddFile("image", "example-file");
request.AddParameter("aspect_ratio", "4:3");
request.AddParameter("style", "General");
request.AddParameter("enhance_prompt", "true");
request.AddParameter("response_format", "b64_json");
var response = await client.PostAsync(request);
Console.WriteLine("{0}", response.Content);using RestSharp;
var options = new RestClientOptions("https://api.nixai.ru/v1/images/edits");
var client = new RestClient(options);
var request = new RestRequest("");
request.AlwaysMultipartFormData = true;
request.AddHeader("Authorization", "Bearer <token>");
request.AddParameter("model", "higgsfield-soul-2-1080p");
request.AddParameter("prompt", "Замени фон на закат над морем");
request.AddFile("image", "example-file");
request.AddParameter("aspect_ratio", "4:3");
request.AddParameter("style", "General");
request.AddParameter("enhance_prompt", "true");
request.AddParameter("response_format", "b64_json");
var response = await client.PostAsync(request);
Console.WriteLine("{0}", response.Content);const form = new FormData();
form.append('model', 'higgsfield-soul-2-1080p');
form.append('prompt', 'Замени фон на закат над морем');
form.append('image', '<string>');
form.append('aspect_ratio', '4:3');
form.append('style', 'General');
form.append('enhance_prompt', 'true');
form.append('response_format', 'b64_json');
const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}};
options.body = form;
fetch('https://api.nixai.ru/v1/images/edits', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));CURL *hnd = curl_easy_init();
curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "POST");
curl_easy_setopt(hnd, CURLOPT_WRITEDATA, stdout);
curl_easy_setopt(hnd, CURLOPT_URL, "https://api.nixai.ru/v1/images/edits");
struct curl_slist *headers = NULL;
headers = curl_slist_append(headers, "Authorization: Bearer <token>");
curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers);
curl_easy_setopt(hnd, CURLOPT_POSTFIELDS, "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"model\"\r\n\r\nhiggsfield-soul-2-1080p\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"prompt\"\r\n\r\nЗамени фон на закат над морем\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"image\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"aspect_ratio\"\r\n\r\n4:3\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"style\"\r\n\r\nGeneral\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"enhance_prompt\"\r\n\r\ntrue\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"response_format\"\r\n\r\nb64_json\r\n-----011000010111000001101001--");
CURLcode ret = curl_easy_perform(hnd);CURL *hnd = curl_easy_init();
curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "POST");
curl_easy_setopt(hnd, CURLOPT_WRITEDATA, stdout);
curl_easy_setopt(hnd, CURLOPT_URL, "https://api.nixai.ru/v1/images/edits");
struct curl_slist *headers = NULL;
headers = curl_slist_append(headers, "Authorization: Bearer <token>");
curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers);
curl_easy_setopt(hnd, CURLOPT_POSTFIELDS, "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"model\"\r\n\r\nhiggsfield-soul-2-1080p\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"prompt\"\r\n\r\nЗамени фон на закат над морем\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"image\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"aspect_ratio\"\r\n\r\n4:3\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"style\"\r\n\r\nGeneral\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"enhance_prompt\"\r\n\r\ntrue\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"response_format\"\r\n\r\nb64_json\r\n-----011000010111000001101001--");
CURLcode ret = curl_easy_perform(hnd);val client = OkHttpClient()
val mediaType = MediaType.parse("multipart/form-data; boundary=---011000010111000001101001")
val body = RequestBody.create(mediaType, "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"model\"\r\n\r\nhiggsfield-soul-2-1080p\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"prompt\"\r\n\r\nЗамени фон на закат над морем\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"image\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"aspect_ratio\"\r\n\r\n4:3\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"style\"\r\n\r\nGeneral\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"enhance_prompt\"\r\n\r\ntrue\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"response_format\"\r\n\r\nb64_json\r\n-----011000010111000001101001--")
val request = Request.Builder()
.url("https://api.nixai.ru/v1/images/edits")
.post(body)
.addHeader("Authorization", "Bearer <token>")
.build()
val response = client.newCall(request).execute()falsefalse{
"data": [
{
"url": "https://cdn.nixai.ru/images/db242923.png",
"b64_json": "base64"
}
]
}