Todos os produtos
Search
Central de documentação

SuperApp:Submit an AIGC task

Última atualização: Jun 29, 2026

1. Descrição da operação de API

Envia uma tarefa de AIGC de forma assíncrona. A operação retorna um ID de tarefa para consulta do resultado.

2. Endpoint

https://industrysolutions.alibabacloud.com

3. URI da operação

/openapi/v1/aigc/submitTask

4. Método de solicitação

POST(application/json)

5. Parâmetros da solicitação

Parameter

Type

Required

Description

workflow

string

yes

Identificador do algoritmo de AIGC. Valores válidos:

"IMAGE2VIDEO": imagem para vídeo.

"CATVTON": troca de roupas.

"TEXT2IMAGE": texto para imagem.

version

string

yes

Versão do algoritmo de AIGC. Exemplo: 1.0.0.

algoInput

object

yes

Entrada do algoritmo de AIGC. Os parâmetros variam conforme o algoritmo. Consulte as tabelas de parâmetros algoInput abaixo.

6. Parâmetros de algoInput

6,1. Algoritmo de Imagem para Vídeo

Parameter

Type

Required

Description

inputText

string

yes

Texto do prompt. Comprimento máximo: 500 caracteres.

inputImage

string

yes

URL da imagem de entrada. Deve ter acesso público.

  • 5 KB ≤ Tamanho do arquivo de imagem ≤ 5 MB

  • 150 ≤ Largura e altura da imagem ≤ 4.096

  • Formatos suportados: JPG, PNG, JPEG e BMP

6,2. Algoritmo de Texto para Imagem

Parameter

Type

Required

Description

inputText

string

yes

Texto do prompt. Comprimento máximo: 500 caracteres.

width

int

yes

Largura da imagem

height

int

yes

Altura da imagem

6,3. Algoritmo de Troca de Roupas

Parameter

Type

Required

Description

modelImage

string

yes

URL da imagem do modelo. Deve ter acesso público.

  • 5 KB ≤ Tamanho do arquivo de imagem ≤ 5 MB

  • 150 ≤ Largura e altura da imagem ≤ 4.096

  • Formatos suportados: JPG, PNG, JPEG e BMP

garmentImage

string

yes

URL da imagem da roupa. Deve ter acesso público.

  • 5 KB ≤ Tamanho do arquivo de imagem ≤ 5 MB

  • 150 ≤ Largura e altura da imagem ≤ 4.096

  • Formatos suportados: JPG, PNG, JPEG e BMP

category

string

yes

Tipo de troca de roupa. Valores válidos:

upper: acima da cintura. lower: abaixo da cintura. overall: corpo inteiro.

seed

int

yes

Semente aleatória para geração de imagem. Valores válidos: 0 a 2147483647. A mesma semente com a mesma entrada produz a mesma saída.

7. Parâmetros de resposta

Parameter

Type

Description

success

boolean

Indica se a solicitação foi bem-sucedida. Valores válidos: true, false.

model

string

ID da tarefa. Use este ID para consultar o resultado da tarefa.

errorCode

string

Código de erro retornado quando a solicitação falha. Os códigos de erro válidos estão listados na seção "8. Mensagens de erro comuns".

errorMsg

string

Mensagem de erro retornada quando a solicitação falha.

8. Mensagens de erro comuns

Error message

Description

INTCNN_COMMON_AUTH_CHECK_ERROR

Erro de verificação de assinatura.

INTCNN_COMMON_NOT_FOUND

A operação de API não existe.

INTCNN_COMMON_PARAM_VALID_ERROR

Erro de verificação de parâmetro.

INTCNN_COMMON_SYS_ERROR

Erro desconhecido no servidor.

9. Exemplo de solicitação

9,1. Imagem para Vídeo

curl --location 'https://industrysolutions.alibabacloud.com/openapi/v1/aigc/submitTask' \
--header 'X-Access-Key: 501711*****45218' \
--header 'X-Request-Sign: YmM4Yzg4ZTc3Z****************FkODdlYTRmMWFiOTBmYTMwMw==' \
--header 'X-Request-Timestamp: 1741855077857' \
--header 'x-acs-request-id: 893e87bb-6083-4249-aedd-a376cac24bee' \
--header 'Content-Type: application/json' \
--data '{
    "workflow": "IMAGE2VIDEO",
    "version": "1.0.0",
    "algoInput": {
        "inputText": "A person is walking along a narrow path, surrounded by nature.",
        "inputImage": "https://img.alicdn.com/imgextra/i2/O1CN01DspKG11ZLZjy0JKAf_!!6000000003178-0-tps-999-750.jpg"
    }
}'

9,2. Texto para Imagem

curl --location 'https://industrysolutions.alibabacloud.com/openapi/v1/aigc/submitTask' \
--header 'X-Access-Key: 501711*****45218' \
--header 'X-Request-Sign: YmM4Yzg4ZTc3Z****************kODdlYTRmMWFiOTBmYTMwMw==' \
--header 'X-Request-Timestamp: 1741855077857' \
--header 'x-acs-request-id: 893e87bb-6083-4249-aedd-a376cac24bee' \
--header 'Content-Type: application/json' \
--data '{
    "workflow": "TEXT2IMAGE",
    "version": "1.0.0",
    "algoInput": {
        "inputText": "a cat",
        "width": 1024, 
        "height": 1024
    }
}'

9,3. Troca de Roupas

curl --location 'https://industrysolutions.alibabacloud.com/openapi/v1/aigc/submitTask' \
--header 'x-acs-request-id: 51843d00-ef53-47f8-ac03-6bfc219ba1eb' \
--header 'X-Access-Key: 5017114*******' \
--header 'X-Request-Sign: NjcxNTQy**************wMjZjZWU1YjQxZTcwYQ==' \
--header 'X-Request-Timestamp: 1739518571992' \
--header 'Content-Type: application/json' \
--data '{
    "workflow": "CATVTON", 
    "version": "1.0.0", 
    "algoInput":{ 
        "modelImage": "https://gw.alicdn.com/imgextra/i4/O1CN0162LlIZ1HJ8VZPst5A_!!6000000000736-2-tps-789-987.png",
        "garmentImage": "https://gw.alicdn.com/imgextra/i1/O1CN01M2oIt71KIAWJhtK8f_!!6000000001140-2-tps-789-987.png",
        "category": "overall",
        "seed": 43
    }
}'

10. Exemplo de resposta

{
 "success": true,
 "model": "28fdf560-249a-4712-adcc-906c0346602b",
 "errorCode": null,
 "errorMsg": null
}

11. Assinatura da solicitação

As assinaturas de solicitação evitam adulteração de dados e verificam a identidade do chamador da API.

11,1 Elementos da assinatura

11.1.1. URI da solicitação

Suponha que a URL da solicitação seja https://{domainName}/openapi/v1/a/b.

Nesse caso, a URI da solicitação é /openapi/v1/a/b.

11.1.2. Método da solicitação

O método de solicitação HTTP.

11.1.3. Cabeçalho da solicitação

Os campos do cabeçalho da solicitação diferenciam maiúsculas de minúsculas.

Header

Required

Description

Code sample

X-Request-Sign

Yes

A assinatura da solicitação. Algoritmo padrão: HMAC-SHA1.

X-Request-Sign: ****

X-Access-Key

Yes

O AccessKey ID do chamador da API.

X-Access-Key: Seu AccessKey ID. Entre em contato com a equipe de operações da Plataforma de Aplicativos de Negócios do SuperApp para obter seu par de AccessKey.

X-Request-Timestamp

Yes

O timestamp da solicitação. Unidade: milissegundos.

X-Timestamp: timestamp. Exemplo: 1740471900061.

x-acs-request-id

Yes

ID da solicitação

x-acs-request-id: Um UUID gerado aleatoriamente. Exemplo: 51843d00-ef53-47f8-ac03-6bfc219ba1eb

11.1.4. Corpo da solicitação

O corpo da solicitação está formatado em JSON. Os campos variam conforme a operação de API.

11,2 Método de assinatura

  1. Componha e codifique uma string a ser assinada. Inclua os seguintes parâmetros na solicitação:

    • HTTP_URI: como /openapi/v1/a/b

    • X-Access-Key: como 46b1cac78ed94ca4b99ad6de550a****

    • X-Request-Timestamp: como 1676904384074

    • HTTP_BODY : O bloco de código a seguir mostra um exemplo de corpo:

{
	"appId": "223232323****",
	"authClientId": "7230000****,
	"grantType": "authorization_code",
	"authCode": "1cc19911172e4f8aaa509c8fb5d1****"
}
  1. Configure {Content_To_Be_Signed} no seguinte formato para compor a string a ser assinada: <HTTP_METHOD> <HTTP_URI> <Client-Id>.<Request-Time>.<Access-Key>

POST /openapi/v1/a/b
{
	"appId": "223232323****",
	"authClientId": "7230000****",
	"grantType": "authorization_code",
	"authCode": "1cc19911172e4f8aaa509c8fb5d1****"
}.1676904384074.46b1cac78ed94ca4b99ad6de550afb68
  1. Gere uma assinatura usando o algoritmo HmacSHA1:

public String sign(String accessKey,String secretKey,String timestamp,String uri,byte[] bodyBytes) {
    String content = String.format("POST %s\n%s.%s.%s", uri, new String(bodyBytes), timestamp, accessKey);
    String signed = generateSign(content, secretKey, "HmacSHA1");
    return Base64.getEncoder().encodeToString(signed.getBytes(StandardCharsets.UTF_8));
}

public static String generateSign(String content, String key, String algorithm) {
    if (!StringUtils.isEmpty(algorithm) && !StringUtils.isEmpty(content) && null != key) {
        try {
            SecretKeySpec signinKey = new SecretKeySpec(key.getBytes(), algorithm);
            Mac mac = Mac.getInstance(algorithm);
            mac.init(signinKey);
            byte[] rawHmac = mac.doFinal(content.getBytes());
            return convertToHex(rawHmac);
        } catch (InvalidKeyException | NoSuchAlgorithmException var6) {
            return "";
        }
    } else {
        return "";
    }
}

public static String convertToHex(byte[] bytes) {
    int len = bytes.length;
    StringBuilder buf = new StringBuilder(len * 2);

    for(int j = 0; j < len; ++j) {
        buf.append(HEX[bytes[j] >> 4 & 15]);
        buf.append(HEX[bytes[j] & 15]);
    }

    return buf.toString();
}

11,3 Envie a solicitação

Adicione Client-Id, Request-Time e Signature ao cabeçalho da solicitação:

curl -X POST \
  https://example.com/openapi/v1/a/b \
  -H 'Content-Type: application/json' \
  -H 'X-Access-Key: 46b1cac78ed94ca4b99ad6de550afb68' \
  -H 'X-Request-Timestamp: 1676904384074' \
  -H 'Signature: KrwDE9tAPJYBb4cUZU6ALJxGIZgwDXn5UkFPMip09n%2FkYKPhEIII%2Fki2rYY2lPtuKVgMNz%2BtuCU%2FjzRpohDbrOd8zYriiukpGAxBQDIVbatGI7WYOcc9YVQwdCR6ROuRQvr%2FD1AfdhHd6waAASu5Xugow9w1OW7Ti93LTd0tcyEWQYd2S7c3A73sHOJNYl8DC1PjasiBozZ%2FADgb7ONsqHo%2B8fKHsLygX9cuMkQYTGIRBQsvfgICnJhh%2BzXV8AQoecJBTrv6p%xxxx' \
  -d '{
	"appId": "223232323****",
	"authClientId": "7230000****",
	"grantType": "authorization_code",
	"authCode": "1cc19911172e4f8aaa509c8fb5d1****"
}'