🚢
API Docs
  • С чего начать?
  • Стоимость запросов
  • Интеграция чат-ботов
  • Токенизация
  • API - Ассистенты
    • Assistant API
    • Чат с ассистентом
  • API - Общие запросы
    • Запрос баланса
  • API - OpenAI -ChatGPT
    • Список моделей
    • Запрос чату
  • API - OpenAI - Embedding
    • embedding-ada-v2
    • text-embedding-3-small
    • text-embedding-3-large
  • Moderation
    • text-moderation
  • RAG DATABASE
    • List of RAGs
    • List of files
    • Add file to RAG
    • Delete file from RAG
  • FaceSwap 2.0
    • /create
    • /result
  • Background Remover
    • /create
    • /result
  • API -Midjourney
    • /imagine
    • /result
    • /upsample
    • /variation
    • /outpaint
    • /pan
    • /upscale
    • /inpaint
    • /reroll
Powered by GitBook
On this page
  • Добавить задачу на создание inpaint
  • Пример запроса
  • Пример ответа
  • Повторная отправка
  • Результат генерации
  1. API -Midjourney

/inpaint

Запрос на создания изображения с изменением по маске

Previous/upscaleNext/reroll

Last updated 1 year ago

Чтобы отправлять авторизованные запросы нужно получить API ключ, как это сделать написано в разделе

Параметр prompt в этом запросе может не корректно воспринимать русский язык.

Добавить задачу на создание inpaint

POST https://gptunnel.ru/v1/midjourney/inpaint

Запрос разместит асинхронную задачу генерации изображения c изменением по маске

Маска должна быть в черно-белом варианте, где черный цвет - это часть изображения, которая останется без изменений, а белый - это часть, которая будет изменена.

Вы можете предоставить новый prompt, и midjourney учтет его при генерации, если prompt будет не передан то midjourney будет использовать промпт из оригинальной задачи.

Headers

Name
Type
Description

Authorization*

string

API ключ

Request Body

Name
Type
Description

taskId*

string

ID задачи из которой нужен upscale

mask*

base64

Ч/Б маске PNG формата

prompt

string

Промпт для генерации

{
	"id": "6558acd103761c00010775b8",
	"parentId": "6558a19c0bfe4600011437cd",
	"object": "task",
	"type": "inpaint",
	"actions": [],
	"percent": 0,
	"status": "idle",
	"result": null,
	"error": null,
	"usage": {
		"prompt_tokens": 0,
		"completion_tokens": 1,
		"total_tokens": 1,
		"prompt_cost": 0,
		"completion_cost": 18,
		"total_cost": 18
	}
}
{
  "error": {
    "message": "'mask' should be base64 png black and white image with same size as previous generation",
    "type": "invalid_request_error",
    "param": null,
    "code": null
  }
}
{
  "error": {
    "message": "Organization balance is too low to use API",
    "type": "insufficient_balance_error",
    "param": null,
    "code": null
  }
}
{
  "error": {
    "message": "Unauthorized",
    "type": "unauthorized_request_error",
    "param": null,
    "code": null,
  }
}

Пример запроса

import axios from 'axios'

const request = axios({
  method: 'POST',
  url: 'https://gptunnel.ru/v1/midjourney/upsample',
  headers: {
    // use your API key here
    Authorization: 'YOUR_API_KEY',
  },
  data: {
    taskId: "6558a19c0bfe4600011437cd",
    mask: "iVBORw0KGgoAAAANSUhEUgAAAgAAAAIABAMAAAAGVsnJAAAAElBMVEUAAABDQ0N4eHiqqqrX19f///+jBPHDAAACVklEQVR4Ae3dwW0TTRjH4XdSwYy/BpJ8FIAQXSNKQBSAoAQnBYBnGiALS44IiShjmTfzPHaUmw8//Xd2bxuXBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUOISSi01okU8/vtNj9029r/9219KgFbq/o2n67vMAUr7qcbznI53KQO0Q2s1pnj4MLIFONwcaszz8D5XgP/e1JjrXaYA5e11zPbpPqa6ijN6dR3T1UgU4HWsHeAqBPj3XWV7zC6JAlQBErAAAVwCCeRcQIkM8gWoCQLkYQEWYAEWkEDGBXgOsABnQE1xZVmAANmURc8ACxDAXcACHIIWIIBD0AIEqBYwk9ugBQjgEFyaAAI4A9YmgCfBxTkELWBxAgiwOAHcBhcngACLE0CA+QQQQAABBBBAgJHidy1AgCwEEMBdwALcBucTQACH4NrcBSxgcQ5BZ8DiXAIWcB7OAAsQYIuz2NIEsABnQIauFmABi3MbtIDFuQQs4HxGhl+1AAvIZiy8AM8BFmABFrBlWsDqATYBErAAAZK5X30BI9MCxuoB7mO6bfUFfI9MAb5On8D2MdkLwQ7/X8dE376MVAF25fa2xhynzyPnK+HaYUKD7Xgcid+JV9rN4RkR+uk48r8UsLR20+LJtrtTHy/nrYhtF3/r1HsfcVYlLqDU1kqr8Wfb6L1vI86vxOW0X59So8WjHtvYP9HjsgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfgC6OHSofrrk/wAAAABJRU5ErkJggg==",
    prompt: "Pokemon",
  },
})

request.then((result) => {
  console.log(result)
}).catch((error) => {
  console.error(error)
})
curl --request POST \
  --url https://gptunnel.ru/v1/midjourney/upsample \
  --header 'Authorization: YOUR_API_KEY' \
  --header 'Content-Type: application/json' \
  --data '{ "taskId": "6558a19c0bfe4600011437cd", "mask": "iVBORw0KGgoAAAANSUhEUgAAAgAAAAIABAMAAAAGVsnJAAAAElBMVEUAAABDQ0N4eHiqqqrX19f///+jBPHDAAACVklEQVR4Ae3dwW0TTRjH4XdSwYy/BpJ8FIAQXSNKQBSAoAQnBYBnGiALS44IiShjmTfzPHaUmw8//Xd2bxuXBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUOISSi01okU8/vtNj9029r/9219KgFbq/o2n67vMAUr7qcbznI53KQO0Q2s1pnj4MLIFONwcaszz8D5XgP/e1JjrXaYA5e11zPbpPqa6ijN6dR3T1UgU4HWsHeAqBPj3XWV7zC6JAlQBErAAAVwCCeRcQIkM8gWoCQLkYQEWYAEWkEDGBXgOsABnQE1xZVmAANmURc8ACxDAXcACHIIWIIBD0AIEqBYwk9ugBQjgEFyaAAI4A9YmgCfBxTkELWBxAgiwOAHcBhcngACLE0CA+QQQQAABBBBAgJHidy1AgCwEEMBdwALcBucTQACH4NrcBSxgcQ5BZ8DiXAIWcB7OAAsQYIuz2NIEsABnQIauFmABi3MbtIDFuQQs4HxGhl+1AAvIZiy8AM8BFmABFrBlWsDqATYBErAAAZK5X30BI9MCxuoB7mO6bfUFfI9MAb5On8D2MdkLwQ7/X8dE376MVAF25fa2xhynzyPnK+HaYUKD7Xgcid+JV9rN4RkR+uk48r8UsLR20+LJtrtTHy/nrYhtF3/r1HsfcVYlLqDU1kqr8Wfb6L1vI86vxOW0X59So8WjHtvYP9HjsgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfgC6OHSofrrk/wAAAABJRU5ErkJggg==", "prompt": "Pokemon" }'

Пример ответа

{
	"id": "6558acd103761c00010775b8",
	"parentId": "6558a19c0bfe4600011437cd",
	"object": "task",
	"type": "inpaint",
	"actions": [],
	"percent": 0,
	"status": "idle",
	"result": null,
	"error": null,
	"usage": {
		"prompt_tokens": 0,
		"completion_tokens": 1,
		"total_tokens": 1,
		"prompt_cost": 0,
		"completion_cost": 18,
		"total_cost": 18
	}
}

Повторная отправка

Если мы отправим повторный запрос после завершения задачи, мы получим ответ от API, аналогичный методу /result.

{
	"id": "6558acd103761c00010775b8",
	"parentId": "6558a19c0bfe4600011437cd",
	"object": "task",
	"type": "inpaint",
	"actions": [
		"upsamle_1",
		"upsamle_2",
		"upsamle_3",
		"upsamle_4",
		"reroll",
		"variation_1",
		"variation_2",
		"variation_4",
		"variation_4"
	],
	"percent": 100,
	"status": "done",
	"result": "https://gptunnel.ru/task/image/6558acd103761c00010775b8?cache=100",
	"error": null,
	"usage": {
		"prompt_tokens": 0,
		"completion_tokens": 0,
		"total_tokens": 0,
		"prompt_cost": 0,
		"completion_cost": 0,
		"total_cost": 0
	}
}

Результат генерации

Покемон в IBM PC (Midjourney)
С чего начать?