Справочник · Ресурсы
Эндпоинты ресурсов Photta API идентификаторы, необходимые для каждой генерации
В двух словах
Эндпоинты ресурсов возвращают идентификаторы, которые принимает запрос на генерацию: манекены, позы, фоны, обувь, атрибуты одежды и лейблы брендов, а также баланс вашего аккаунта и статистику использования. Получение списков бесплатно.
- Эндпоинты ресурсов: Эндпоинты ресурсов (13)
- Аутентификация: Ключ Bearer
- Лимиты: 600 запросов/мин
Все показатели на этой странице взяты из документации API Photta · проверено
Все эндпоинты ресурсов и вызовы для их чтения
В каждом разделе есть ссылка на функционал, использующий эти id.
Манекены
Возвращает список моделей, доступных для try-on примерки одежды: системные манекены Photta, ваши загрузки и модели, созданные через API генерации манекенов. Отправьте POST на этот же путь, чтобы загрузить собственный манекен — он останется доступен только вашему аккаунту. Полученный id передается в поле `mannequin_id` при вызове try-on.
curl https://api.photta.app/api/v1/mannequins \
-H "Authorization: Bearer $PHOTTA_API_KEY"const res = await fetch("https://api.photta.app/api/v1/mannequins", {
headers: { Authorization: `Bearer ${process.env.PHOTTA_API_KEY}` },
});
const { data } = await res.json();import os, requests
res = requests.get(
"https://api.photta.app/api/v1/mannequins",
headers={"Authorization": f"Bearer {os.environ['PHOTTA_API_KEY']}"},
)
data = res.json()["data"]Манекены для украшений
Загружает крупный план модели для try-on примерки украшений. Для украшений кадр выстраивается по линии декольте, уху, запястью или кисти руки, поэтому здесь используется отдельный набор манекенов, отличный от полноростового набора для одежды.
RESPONSE=$(curl -s -X POST https://api.photta.app/api/v1/mannequins/jewelry \
-H "Authorization: Bearer $PHOTTA_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"image": "https://cdn.yourstore.com/models/emma-neck.jpg",
"jewelry_type": "necklace",
"gender": "female",
"name": "Emma"
}')
ID=$(echo "$RESPONSE" | jq -r '.data.id')const res = await fetch("https://api.photta.app/api/v1/mannequins/jewelry", {
method: "POST",
headers: { Authorization: `Bearer ${process.env.PHOTTA_API_KEY}`, "Content-Type": "application/json" },
body: JSON.stringify({
"image": "https://cdn.yourstore.com/models/emma-neck.jpg",
"jewelry_type": "necklace",
"gender": "female",
"name": "Emma"
}),
});
const { data } = await res.json(); // data.id, data.statusimport os, requests
res = requests.post(
"https://api.photta.app/api/v1/mannequins/jewelry",
headers={"Authorization": f"Bearer {os.environ['PHOTTA_API_KEY']}"},
json={
"image": "https://cdn.yourstore.com/models/emma-neck.jpg",
"jewelry_type": "necklace",
"gender": "female",
"name": "Emma"
},
)
data = res.json()["data"] # data["id"], data["status"]Позы
Возвращает список поз, доступных для try-on запроса, с фильтрацией по категориям и подходящим типам товаров. Передайте id в параметре `pose_id`; если его опустить, API подберет позу, подходящую под вещь.
curl https://api.photta.app/api/v1/poses \
-H "Authorization: Bearer $PHOTTA_API_KEY"const res = await fetch("https://api.photta.app/api/v1/poses", {
headers: { Authorization: `Bearer ${process.env.PHOTTA_API_KEY}` },
});
const { data } = await res.json();import os, requests
res = requests.get(
"https://api.photta.app/api/v1/poses",
headers={"Authorization": f"Bearer {os.environ['PHOTTA_API_KEY']}"},
)
data = res.json()["data"]Длина и посадка одежды
Возвращает ключи длины и посадки, поддерживаемые try-on примеркой одежды. Передавайте ключ, а не текстовое описание в свободной форме, чтобы одна и та же рубашка рендерилась одинаково по всему каталогу.
curl https://api.photta.app/api/v1/garment-attributes \
-H "Authorization: Bearer $PHOTTA_API_KEY"const res = await fetch("https://api.photta.app/api/v1/garment-attributes", {
headers: { Authorization: `Bearer ${process.env.PHOTTA_API_KEY}` },
});
const { data } = await res.json();import os, requests
res = requests.get(
"https://api.photta.app/api/v1/garment-attributes",
headers={"Authorization": f"Bearer {os.environ['PHOTTA_API_KEY']}"},
)
data = res.json()["data"]Фоны
Возвращает системные фоны и ваши загрузки для try-on примерки одежды с курсорной пагинацией. Отправьте POST на этот же путь, чтобы загрузить собственный фон; он будет виден только вашему аккаунту.
curl https://api.photta.app/api/v1/backgrounds \
-H "Authorization: Bearer $PHOTTA_API_KEY"const res = await fetch("https://api.photta.app/api/v1/backgrounds", {
headers: { Authorization: `Bearer ${process.env.PHOTTA_API_KEY}` },
});
const { data } = await res.json();import os, requests
res = requests.get(
"https://api.photta.app/api/v1/backgrounds",
headers={"Authorization": f"Bearer {os.environ['PHOTTA_API_KEY']}"},
)
data = res.json()["data"]Лейблы брендов
Загружает многоразовое изображение лейбла для работы в режиме «невидимого манекена» (ghost mannequin) и возвращает id, который передается как `brand_label_id` — как для одиночных задач, так и для пакетов. GET возвращает список сохраненных лейблов; DELETE удаляет лейбл при достижении лимита аккаунта.
RESPONSE=$(curl -s -X POST https://api.photta.app/api/v1/brand-labels \
-H "Authorization: Bearer $PHOTTA_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"file": "@/path/to/pribrand-label.png",
"name": "Pribrand Collar Label"
}')
ID=$(echo "$RESPONSE" | jq -r '.data.id')const res = await fetch("https://api.photta.app/api/v1/brand-labels", {
method: "POST",
headers: { Authorization: `Bearer ${process.env.PHOTTA_API_KEY}`, "Content-Type": "application/json" },
body: JSON.stringify({
"file": "@/path/to/pribrand-label.png",
"name": "Pribrand Collar Label"
}),
});
const { data } = await res.json(); // data.id, data.statusimport os, requests
res = requests.post(
"https://api.photta.app/api/v1/brand-labels",
headers={"Authorization": f"Bearer {os.environ['PHOTTA_API_KEY']}"},
json={
"file": "@/path/to/pribrand-label.png",
"name": "Pribrand Collar Label"
},
)
data = res.json()["data"] # data["id"], data["status"]Обувь
Возвращает варианты обуви для try-on примерки одежды с фильтрацией по типу и полу, а также поддержкой курсорной пагинации. Используйте этот эндпоинт, чтобы обуть ту же модель, на которую надета одежда.
curl https://api.photta.app/api/v1/footwear \
-H "Authorization: Bearer $PHOTTA_API_KEY"const res = await fetch("https://api.photta.app/api/v1/footwear", {
headers: { Authorization: `Bearer ${process.env.PHOTTA_API_KEY}` },
});
const { data } = await res.json();import os, requests
res = requests.get(
"https://api.photta.app/api/v1/footwear",
headers={"Authorization": f"Bearer {os.environ['PHOTTA_API_KEY']}"},
)
data = res.json()["data"]Аккаунт
Возвращает баланс кредитов с разбивкой по источникам, текущий тарифный план и дату следующего начисления кредитов. Опрашивайте его перед запуском большого пакета задач, чтобы не натолкнуться на нехватку средств в виде ошибки 402.
curl https://api.photta.app/api/v1/account \
-H "Authorization: Bearer $PHOTTA_API_KEY"const res = await fetch("https://api.photta.app/api/v1/account", {
headers: { Authorization: `Bearer ${process.env.PHOTTA_API_KEY}` },
});
const { data } = await res.json();import os, requests
res = requests.get(
"https://api.photta.app/api/v1/account",
headers={"Authorization": f"Bearer {os.environ['PHOTTA_API_KEY']}"},
)
data = res.json()["data"]Использование
Количество генераций и списания кредитов за текущий расчетный период (календарный месяц) с разбивкой на успешные и завершившиеся ошибкой задачи. Именно этот эндпоинт следует использовать для построения графиков, а не собственный подсчет запросов.
curl https://api.photta.app/api/v1/account/usage \
-H "Authorization: Bearer $PHOTTA_API_KEY"const res = await fetch("https://api.photta.app/api/v1/account/usage", {
headers: { Authorization: `Bearer ${process.env.PHOTTA_API_KEY}` },
});
const { data } = await res.json();import os, requests
res = requests.get(
"https://api.photta.app/api/v1/account/usage",
headers={"Authorization": f"Bearer {os.environ['PHOTTA_API_KEY']}"},
)
data = res.json()["data"]Вопросы об эндпоинтах ресурсов
Для чего нужны эндпоинты ресурсов?
Они возвращают идентификаторы, которые требуются для запросов на генерацию — манекен, поза, фон, лейбл бренда, — а также состояние вашего аккаунта. Ни один метод из этой группы сам по себе не создает изображения.
Списываются ли кредиты за вызовы ресурсов?
Нет. Получение списков бесплатно, как и загрузки из этой группы — собственный манекен, фон, лейбл бренда. Вы платите только за генерации.
Как реализовать пагинацию по длинному списку?
Эндпоинты со списками принимают limit и cursor: передайте последний полученный id в параметре `starting_after` и прочитайте следующую страницу. Кешируйте полученные данные вместо того, чтобы запрашивать списки заново при каждом вызове.
Можно ли загружать собственные манекены и фоны?
Да. POST `/api/v1/mannequins`, POST `/api/v1/mannequins/jewelry`, POST `/api/v1/backgrounds` и POST `/api/v1/brand-labels` принимают ваши изображения, и все загруженные материалы остаются приватными в рамках вашего аккаунта.
Где используются эти id
Возможности
API виртуального try-on для одежды
REST API, примеряющий одежду на AI-манекены. Асинхронно, генерация за 1.5–4 минуты, 5 credits для 2K, 6 для 4K. Примеры для cURL, Node.js и Python.
ЧитатьВозможности
API примерки ювелирных изделий для колье, колец, браслетов и серег
Примерка ожерелий, колец, браслетов и серёг на AI-моделях через REST. 5 credits в 2K, встроенные манекены крупным планом, рендеринг с учётом отражений из документации Photta.
ЧитатьВозможности
API невидимого манекена (ghost mannequin) для фото товаров на невидимом манекене
AI-эндпоинт для эффекта невидимого манекена. Удаляет манекен с фото одежды с сохранением деталей внутренней части. 3D или раскладка, пакетная обработка, 4 credits в 2K.
ЧитатьСправочник
Первое изображение в Photta менее чем за 5 минут.
Зарегистрируйтесь, сгенерируйте API-ключ, выполните первый вызов cURL, опрашивайте статус до завершения, сохраните результат. 5 шагов с полным описанием.
ЧитатьСправочник
Аутентификация в Photta API
Как проходить аутентификацию в Photta API: заголовок Authorization, префикс ключа, где создаются ключи и как безопасно выполнить их ротацию.
ЧитатьСправочник
Тарифы Photta API
Сколько стоит каждый endpoint Photta API в credits при 2K и 4K, как устроены списания и возвраты, и какие эндпоинты бесплатны. Никаких цен в деньгах за изображение.
ЧитатьСправочник
Rate limits в Photta API
Rate limit Photta API, его окно, заголовок Retry-After, интервал polling и ограничения параллелизма по планам — прямо из документации API.
ЧитатьСправочник
Ошибки Photta API
Полный список типов ошибок Photta API с их статус-кодами, формат тела ошибки и сбои, которые имеет смысл повторять.
Читать
Все показатели на этой странице взяты из документации API Photta · проверено
Протестируйте API за пять минут
Сгенерируйте API-ключ Photta, вставьте пример cURL выше, и вы получите первое изображение на модели быстрее, чем сварится кофе.
- Эндпоинты ресурсов (13)
- Ключ Bearer
- 600 запросов/мин