Saltar para o conteúdo principal
POST
/
v1
/
images
/
generations
curl --request POST \
  --url https://api.apimart.ai/v1/images/generations \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
    "model": "z-image-turbo",
    "prompt": "Ink painting style landscape scenery"
  }'
import requests

url = "https://api.apimart.ai/v1/images/generations"

payload = {
    "model": "z-image-turbo",
    "prompt": "Ink painting style landscape scenery"
}

headers = {
    "Authorization": "Bearer <token>",
    "Content-Type": "application/json"
}

response = requests.post(url, json=payload, headers=headers)

print(response.json())
const url = "https://api.apimart.ai/v1/images/generations";

const payload = {
  model: "z-image-turbo",
  prompt: "Ink painting style landscape scenery",
};

const headers = {
  Authorization: "Bearer <token>",
  "Content-Type": "application/json",
};

fetch(url, {
  method: "POST",
  headers: headers,
  body: JSON.stringify(payload),
})
  .then((response) => response.json())
  .then((data) => console.log(data))
  .catch((error) => console.error("Error:", error));
{
  "code": 200,
  "data": [
    {
      "status": "submitted",
      "task_id": "task_01JGXYZ1234567890ABCDEF"
    }
  ]
}
{
  "error": {
    "code": 400,
    "message": "Invalid request parameters",
    "type": "invalid_request_error"
  }
}
{
  "error": {
    "code": 401,
    "message": "Authentication failed, please check your API key",
    "type": "authentication_error"
  }
}
{
  "error": {
    "code": 402,
    "message": "Insufficient balance, please top up",
    "type": "payment_required"
  }
}
curl --request POST \
  --url https://api.apimart.ai/v1/images/generations \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
    "model": "z-image-turbo",
    "prompt": "Ink painting style landscape scenery"
  }'
import requests

url = "https://api.apimart.ai/v1/images/generations"

payload = {
    "model": "z-image-turbo",
    "prompt": "Ink painting style landscape scenery"
}

headers = {
    "Authorization": "Bearer <token>",
    "Content-Type": "application/json"
}

response = requests.post(url, json=payload, headers=headers)

print(response.json())
const url = "https://api.apimart.ai/v1/images/generations";

const payload = {
  model: "z-image-turbo",
  prompt: "Ink painting style landscape scenery",
};

const headers = {
  Authorization: "Bearer <token>",
  "Content-Type": "application/json",
};

fetch(url, {
  method: "POST",
  headers: headers,
  body: JSON.stringify(payload),
})
  .then((response) => response.json())
  .then((data) => console.log(data))
  .catch((error) => console.error("Error:", error));
{
  "code": 200,
  "data": [
    {
      "status": "submitted",
      "task_id": "task_01JGXYZ1234567890ABCDEF"
    }
  ]
}
{
  "error": {
    "code": 400,
    "message": "Invalid request parameters",
    "type": "invalid_request_error"
  }
}
{
  "error": {
    "code": 401,
    "message": "Authentication failed, please check your API key",
    "type": "authentication_error"
  }
}
{
  "error": {
    "code": 402,
    "message": "Insufficient balance, please top up",
    "type": "payment_required"
  }
}

Modelos suportados

ModeloDescriçãoImagens por requisiçãoPreço
z-image-turboGeração de imagens leve e rápida, com suporte a chinês e inglêsFixo em 1 imagemPreço fixo

Autorização

Authorization
string
obrigatório
Todos os endpoints exigem autenticação por Bearer TokenObtenha sua chave de API:Acesse o gerenciamento de chaves de API para obter sua chave de APIAdicione-a ao cabeçalho da requisição:
Authorization: Bearer YOUR_API_KEY

Corpo da requisição

model
string
obrigatório
Nome do modelo
  • z-image-turbo - Geração de imagens leve e rápida, com suporte a chinês e inglês
prompt
string
obrigatório
Descrição textual para a geração da imagem, até 800 caracteres
size
string
padrão:"1:1"
Proporção da imagemProporções suportadas:
  • 1:1 - Quadrado (padrão)
  • 4:3 - Paisagem 4:3
  • 3:4 - Retrato 3:4
  • 16:9 - Paisagem widescreen
  • 9:16 - Retrato vertical
  • 3:2 - Paisagem 3:2
  • 2:3 - Retrato 2:3
resolution
string
padrão:"1K"
Nível de resolução
  • 1K - Resolução padrão (padrão)
  • 2K - Resolução de alta definição
prompt_extend
boolean
padrão:"false"
Reescrita inteligente de promptsQuando ativada, a IA otimizará automaticamente o prompt para obter melhores resultados, e os custos aumentarão.
  • false - Desativada (padrão)
  • true - Ativada

Tabela de referência de resoluções

O tamanho da saída é controlado pela combinação size (proporção) + resolution (nível de resolução).
ProporçãoNível 1KNível 2K
1:11024×10242048×2048
4:31152×8642048×1536
3:4864×11521536×2048
16:91280×7202048×1152
9:16720×12801152×2048
3:21248×8322048×1360
2:3832×12481360×2048

Exemplos de uso

Text-to-Image básico (requisição mínima)
{
  "model": "z-image-turbo",
  "prompt": "Ink painting style landscape scenery"
}
Especificar proporção e resolução
{
  "model": "z-image-turbo",
  "prompt": "Minimalist style cafe interior design",
  "size": "16:9",
  "resolution": "2K"
}
Ativar reescrita inteligente de prompts
{
  "model": "z-image-turbo",
  "prompt": "A cat",
  "prompt_extend": true
}

Resposta

code
integer
Código de status da resposta
data
array
Array de dados da resposta

Observações

  1. Processamento assíncrono: após o envio, um task_id é retornado. Consulte /v1/tasks/{task_id} para obter os resultados
  2. Armazenamento de imagens: as imagens geradas são espelhadas no CDN da plataforma e ficam válidas por longo prazo
  3. Regras de cobrança: cobrado por imagem gerada com sucesso, sem cobrança em caso de falha
  4. Quantidade fixa: o Z-Image-Turbo gera exatamente 1 imagem por requisição; o parâmetro n não é suportado