All Products
Search
Document Center

Alibaba Cloud Model Studio:Messages (Deprecated)

Last Updated:Sep 02, 2026

Topik ini menjelaskan cara menggunakan kelas Message dalam Assistant API untuk membuat, menampilkan daftar, mengambil, dan memodifikasi pesan.

PentingAssistant API akan segera dihentikan. Migrasikan ke Responses API sebagai alternatif. Responses API mencakup beberapa tool bawaan dan mendukung manajemen konteks multi-turn.

Nama fungsi

Tipe

create

Buat kelas message

retrieve

Ambil kelas message

modify

Modifikasi kelas message

list

Tampilkan daftar kelas message

Create a message

HTTP

Contoh kode
curl --location 'https://dashscope-intl.aliyuncs.com/api/v1/threads/thread_e99a9fe7-0433-426f-98ad-a5139c36579c/messages' \
--header 'Content-Type: application/json' \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--data '{
    "role": "user",
    "content": "Who are you",
    "metadata": {}
}'
Parameter permintaan

Nama parameter

Parameter input

Tipe parameter

Wajib

thread id

ID thread tempat pesan dikirimkan.

string

Ya

content

Konten pesan.

string

Ya

role

Peran entitas yang menyediakan pesan. Hanya `user` yang didukung.

string

Tidak

metadata

Informasi terkait lainnya.

string

Tidak

Respons
{
    "id": "message_f1933671-19e1-4162-ad25-7326165123e1",
    "object": "thread.message",
    "created_at": 1711508433283,
    "thread_id": "thread_e99a9fe7-0433-426f-98ad-a5139c36579c",
    "incomplete_details": {},
    "completed_at": null,
    "incomplete_at": null,
    "assistant_id": "",
    "run_id": "",
    "file_ids": [],
    "role": "user",
    "content": [
        {
            "type": "text",
            "text": {
                "value": "Who are you",
                "annotations": []
            }
        }
    ],
    "metadata": {},
    "name": "",
    "plugin_call": {},
    "tool_calls": [],
    "status": "",
    "request_id": "b3ad40b9-f052-9665-a064-dab11c34625f"
}
Parameter respons

Kelas Message dikembalikan. Selain parameter permintaan, respons juga berisi bidang-bidang berikut:

  • id: ID pesan.
  • request_id: ID permintaan.

SDK

Contoh kode
from dashscope import Messages
import dashscope
import os

dashscope.base_http_api_url = 'https://dashscope-intl.aliyuncs.com/api/v1'
msg = Messages.create(
    'the_thread_id',
    # Setel kunci API menggunakan variabel lingkungan. Jika variabel lingkungan belum disetel, ganti baris berikut dengan api_key="sk-xxx" dan Kunci API Model Studio Anda.
    api_key=os.getenv("DASHSCOPE_API_KEY"),
    content='The message content.',
    role='user',
    metadata={'key': 'value'}
)
import com.alibaba.dashscope.exception.ApiException;
import com.alibaba.dashscope.exception.InputRequiredException;
import com.alibaba.dashscope.exception.InvalidateParameter;
import com.alibaba.dashscope.exception.NoApiKeyException;
import com.alibaba.dashscope.threads.messages.Messages;
import com.alibaba.dashscope.threads.messages.TextMessageParam;
import com.alibaba.dashscope.threads.messages.ThreadMessage;
import com.alibaba.dashscope.utils.Constants;

public class Main {
    static {
        Constants.baseHttpApiUrl="https://dashscope-intl.aliyuncs.com/api/v1";
    }
    public static void main(String[] args) throws ApiException, NoApiKeyException, InputRequiredException, InvalidateParameter, InterruptedException {
        // buat pesan ke thread
        Messages messages = new Messages();
        TextMessageParam param = TextMessageParam.builder()
                // Setel kunci API menggunakan variabel lingkungan. Jika variabel lingkungan belum disetel, ganti baris berikut dengan .apiKey("sk-xxx") dan Kunci API Model Studio Anda.
                .apiKey(System.getenv("DASHSCOPE_API_KEY"))
                .role("user")
                .content("How to make delicious beef and potato stew?")
                .build();
        ThreadMessage message = messages.create("threadId", param);
    }
}
Parameter permintaan

Parameter

Tipe

Default

Deskripsi

thread_id

string

-

ID thread.

content

string

-

Konten pesan.

role

str

'user'

Peran pesan. Nilai default: user.

metadata

Dict

None

Informasi pasangan kunci-nilai yang terkait dengan pesan.

workspace

string

None

Workspace ID Alibaba Cloud Model Studio. Parameter ini hanya diperlukan ketika `api_key` merupakan kunci API untuk sub-workspace.

api_key

string

None

Kunci API untuk Alibaba Cloud Model Studio. Kami menyarankan Anda mengonfigurasi kunci API sebagai variabel lingkungan (akan dihapus publikasinya dan digabung ke dalam topik 'Configure API Key').

Respons

Hasilnya adalah objek Message. Kode berikut menunjukkan contoh konten dalam format JSON:

{
    "id": "message_05494921-a646-484e-85fc-76329acba842",
    "object": "thread.message",
    "created_at": 1711345341301,
    "thread_id": "thread_f1e7737e-b045-479f-99d1-510db49d535b",
    "incomplete_details": {},
    "completed_at": null,
    "incomplete_at": null,
    "assistant_id": "",
    "run_id": "",
    "file_ids": [],
    "role": "user",
    "content": [
        {
            "type": "text",
            "text": {
                "value": "sdhafjdasf",
                "annotations": []
            }
        }
    ],
    "metadata": {
        "key": "value"
    },
    "name": "",
    "plugin_call": {},
    "tool_calls": [],
    "status": "",
    "status_code": 200,
    "request_id": "631de0b3-7e50-9c9e-8444-0924d1b7e7a5"
}
Parameter respons

Nama bidang

Tipe bidang

Deskripsi bidang

status_code

int

Kode status HTTP dari pemanggilan. Nilai 200 menunjukkan pemanggilan berhasil. Nilai lain menunjukkan pemanggilan gagal.

id

string

ID pesan, berupa string UUID.

content

List[dict]

Konten pesan.

content.type

string

Tipe konten, seperti text.

content.text

dict

Konten

content.text.value

string

Nilai teks dari konten

metadata

Dict

Informasi pasangan kunci-nilai yang terkait dengan pesan ini.

tool_calls

Dict

Informasi pemanggilan tool.

plugin_call

Dict

Informasi pemanggilan plugin.

created_at

timestamp

Waktu saat assistant dibuat.

gmt_created

datetime

2024-03-22 17:12:31

gmt_modified

datetime

2024-03-22 17:12:31

code

string

Menunjukkan bahwa permintaan gagal. Parameter ini menentukan kode kesalahan. Parameter ini diabaikan jika permintaan berhasil.

Hanya untuk Python.

message

string

Menunjukkan bahwa permintaan gagal. Parameter ini memberikan informasi rinci tentang kegagalan tersebut. Parameter ini diabaikan jika permintaan berhasil.

Hanya untuk Python.

List messages

HTTP

Contoh kode
curl --location 'https://dashscope-intl.aliyuncs.com/api/v1/threads/thread_e99a9fe7-0433-426f-98ad-a5139c36579c/messages?limit=2&order=desc' \
--header 'Content-Type: application/json' \
--header "Authorization: Bearer $DASHSCOPE_API_KEY"
Parameter permintaan

Nama parameter

Deskripsi

Tipe parameter

Wajib

thread id

ID thread tempat pesan dikirimkan.

string

Ya

limit

Jumlah pesan

integer

Tidak

order

Urutan pengurutan berdasarkan waktu pembuatan: `asc` atau `desc`.

string

Tidak (Default: `desc`)

Respons
{
    "object": "list",
    "data": [
        {
            "id": "message_f1933671-19e1-4162-ad25-7326165123e1",
            "object": "thread.message",
            "created_at": 1711508433283,
            "thread_id": "thread_e99a9fe7-0433-426f-98ad-a5139c36579c",
            "assistant_id": "",
            "run_id": "",
            "role": "user",
            "content": [
                {
                    "type": "text",
                    "text": {
                        "value": "Who are you",
                        "annotations": []
                    }
                }
            ],
            "metadata": {},
            "name": "",
            "plugin_call": {},
            "tool_calls": [],
            "status": ""
        }
    ],
    "first_id": "message_f1933671-19e1-4162-ad25-7326165123e1",
    "last_id": "message_f1933671-19e1-4162-ad25-7326165123e1",
    "has_more": false,
    "request_id": "78f7d607-4a9a-90c6-8040-d3f81c84d60a"
}
Parameter respons

Daftar kelas Message dikembalikan. Respons juga mencakup parameter permintaan asli dan bidang tambahan berikut:

  • Daftar beberapa pesan.

SDK

Contoh kode
from dashscope import Messages
import dashscope
import os

dashscope.base_http_api_url = 'https://dashscope-intl.aliyuncs.com/api/v1'

messages = Messages.list(
    'thread_id',
    # Setel kunci API menggunakan variabel lingkungan. Jika variabel lingkungan belum disetel, ganti baris berikut dengan api_key="sk-xxx" dan Kunci API Model Studio Anda.
    api_key=os.getenv("DASHSCOPE_API_KEY"),
    limit=1,
    order='desc'
)
import com.alibaba.dashscope.common.GeneralListParam;
import com.alibaba.dashscope.common.ListResult;
import com.alibaba.dashscope.exception.ApiException;
import com.alibaba.dashscope.exception.InputRequiredException;
import com.alibaba.dashscope.exception.InvalidateParameter;
import com.alibaba.dashscope.exception.NoApiKeyException;
import com.alibaba.dashscope.threads.messages.Messages;
import com.alibaba.dashscope.threads.messages.ThreadMessage;
import com.alibaba.dashscope.utils.Constants;

public class Main {
    static {
        Constants.baseHttpApiUrl="https://dashscope-intl.aliyuncs.com/api/v1";
    }
    public static void main(String[] args) throws ApiException, NoApiKeyException, InputRequiredException, InvalidateParameter, InterruptedException {
        Messages messages = new Messages();
        // Setel kunci API menggunakan variabel lingkungan. Jika variabel lingkungan belum disetel, ganti baris berikut dengan .apiKey("sk-xxx") dan Kunci API Model Studio Anda.
        GeneralListParam listThreadMessages = GeneralListParam.builder()
                .apiKey(System.getenv("DASHSCOPE_API_KEY"))
                .build();
        ListResult<ThreadMessage> message = messages.list("threadId", listThreadMessages);
    }
}
Parameter permintaan

Parameter

Tipe

Default

Deskripsi

thread_id

string

-

ID thread yang akan diquery.

limit

int

None

Jumlah pesan yang akan diambil.

order

string

None

Urutan pengurutan berdasarkan `created_at`.

workspace

string

None

Workspace ID Alibaba Cloud Model Studio, yang hanya diperlukan ketika `api_key` merupakan kunci API untuk sub-workspace.

api_key

string

None

Kunci API untuk Alibaba Cloud Model Studio. Kami menyarankan Anda menyetel kunci API sebagai variabel lingkungan (Topik ini akan dihapus publikasinya dan digabung ke dalam topik "Configure API Key").

Parameter Respons

Nama bidang

Tipe bidang

Deskripsi bidang

has_more

boolean

Menunjukkan apakah masih ada pesan lain yang dapat diambil.

last_id

string

ID pesan terakhir dalam daftar yang dikembalikan.

first_id

string

ID pesan pertama dalam daftar yang dikembalikan.

data

list[Message]

Daftar objek Message.

Retrieve a message

HTTP

Contoh kode
curl --location 'https://dashscope-intl.aliyuncs.com/api/v1/threads/thread_e99a9fe7-0433-426f-98ad-a5139c36579c/messages/message_ea26d29d-4509-490e-98e9-9f6238bd821b' \
--header 'Content-Type: application/json' \
--header "Authorization: Bearer $DASHSCOPE_API_KEY"
Parameter permintaan

Nama parameter

Deskripsi

Tipe parameter

Wajib

thread id

ID thread dari pesan yang akan diambil.

string

Ya

message_id

ID pesan yang akan diambil.

string

Ya

Respons
{
    "id": "message_ea26d29d-4509-490e-98e9-9f6238bd821b",
    "object": "thread.message",
    "created_at": 1711508622598,
    "thread_id": "thread_e99a9fe7-0433-426f-98ad-a5139c36579c",
    "assistant_id": "",
    "run_id": "",
    "role": "user",
    "content": [
        {
            "type": "text",
            "text": {
                "value": "Hello",
                "annotations": []
            }
        }
    ],
    "metadata": {},
    "name": "",
    "plugin_call": {},
    "tool_calls": [],
    "status": "",
    "request_id": "4d5ce962-91c3-9edb-87f7-00bbf985135e"
}
Parameter respons

Kelas Message yang diambil dikembalikan. Selain parameter permintaan, respons berisi bidang-bidang berikut:

  • id: ID pesan
  • request_id: ID permintaan.

SDK

Contoh kode
from dashscope import Messages
import dashscope
import os

dashscope.base_http_api_url = 'https://dashscope-intl.aliyuncs.com/api/v1'

message = Messages.retrieve(
    'message_id',
    # Setel kunci API menggunakan variabel lingkungan. Jika variabel lingkungan belum disetel, ganti baris berikut dengan api_key="sk-xxx" dan Kunci API Model Studio Anda.
    api_key=os.getenv("DASHSCOPE_API_KEY"),
    thread_id='thread_id'
)
import com.alibaba.dashscope.exception.ApiException;
import com.alibaba.dashscope.exception.InputRequiredException;
import com.alibaba.dashscope.exception.InvalidateParameter;
import com.alibaba.dashscope.exception.NoApiKeyException;
import com.alibaba.dashscope.threads.messages.Messages;
import com.alibaba.dashscope.threads.messages.ThreadMessage;
import com.alibaba.dashscope.utils.Constants;

public class Main {
    static {
        Constants.baseHttpApiUrl="https://dashscope-intl.aliyuncs.com/api/v1";
    }
    public static void main(String[] args) throws ApiException, NoApiKeyException, InputRequiredException, InvalidateParameter, InterruptedException {
        Messages messages = new Messages();
        // Setel kunci API menggunakan variabel lingkungan. Jika variabel lingkungan belum disetel, ganti baris berikut dengan .apiKey("sk-xxx") dan Kunci API Model Studio Anda.
        String apiKey = System.getenv("DASHSCOPE_API_KEY");
        ThreadMessage message = messages.retrieve("threadId", "messageId", apiKey);
    }
}
Parameter permintaan

Parameter

Tipe

Default

Deskripsi

message_id

string

-

ID pesan yang akan diquery.

thread_id

string

-

ID thread tempat pesan tersebut berada.

workspace

string

None

Workspace ID Alibaba Cloud Model Studio. Parameter ini hanya diperlukan ketika api_key merupakan Kunci API sub-workspace.

api_key

string

None

Kunci API untuk Alibaba Cloud Model Studio. Kami menyarankan Anda mengonfigurasi kunci API sebagai variabel lingkungan (Catatan: Metode ini sedang dihentikan dan akan digabung ke dalam topik 'Configure API Key').

Parameter respons

Lihat respons untuk operasi create.

Modify a message

HTTP

Contoh kode
curl --location 'https://dashscope-intl.aliyuncs.com/api/v1/threads/thread_e99a9fe7-0433-426f-98ad-a5139c36579c/messages/message_ea26d29d-4509-490e-98e9-9f6238bd821b' \
--header 'Content-Type: application/json' \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--data '{
    "metadata": {
        "modified": "true",
        "user": "abc123"
    }
}'
Parameter permintaan

Nama parameter

Parameter input

Tipe parameter

Wajib

thread_id

ID thread yang akan dimodifikasi.

string

Ya

message_id

ID pesan yang akan dimodifikasi.

string

Ya

metadata

Metadata.

dict

Respons
{
    "id": "message_ea26d29d-4509-490e-98e9-9f6238bd821b",
    "object": "thread.message",
    "created_at": 1711508622598,
    "thread_id": "thread_e99a9fe7-0433-426f-98ad-a5139c36579c",
    "incomplete_details": {},
    "completed_at": null,
    "incomplete_at": null,
    "assistant_id": "",
    "run_id": "",
    "file_ids": [],
    "role": "user",
    "content": [
        {
            "type": "text",
            "text": {
                "value": "Hello",
                "annotations": []
            }
        }
    ],
    "metadata": {
        "modified": "true",
        "user": "abc123"
    },
    "name": "",
    "plugin_call": {},
    "tool_calls": [],
    "status": "",
    "request_id": "7877b011-cb94-9df1-9add-dc42b7d611f6"
}
Parameter output

Kelas Message yang telah dimodifikasi dikembalikan. Selain parameter permintaan, respons berisi bidang-bidang berikut:

  • id: ID pesan
  • request_id: ID permintaan.

SDK

Contoh kode
from dashscope import Messages
import dashscope
import os

dashscope.base_http_api_url = 'https://dashscope-intl.aliyuncs.com/api/v1'

thread = Messages.update(
    'message_id',
    # Setel kunci API menggunakan variabel lingkungan. Jika variabel lingkungan belum disetel, ganti baris berikut dengan api_key="sk-xxx" dan Kunci API Model Studio Anda.
    api_key=os.getenv("DASHSCOPE_API_KEY"),
    thread_id='the_message_thread_id',
    metadata={'key': 'value'}
)
import java.util.Collections;
import com.alibaba.dashscope.common.UpdateMetadataParam;
import com.alibaba.dashscope.exception.ApiException;
import com.alibaba.dashscope.exception.InputRequiredException;
import com.alibaba.dashscope.exception.InvalidateParameter;
import com.alibaba.dashscope.exception.NoApiKeyException;
import com.alibaba.dashscope.threads.messages.Messages;
import com.alibaba.dashscope.utils.Constants;

public class Main {
    static {
        Constants.baseHttpApiUrl="https://dashscope-intl.aliyuncs.com/api/v1";
    }
    public static void main(String[] args) throws ApiException, NoApiKeyException, InputRequiredException, InvalidateParameter, InterruptedException {
        Messages messages = new Messages();
        // Setel kunci API menggunakan variabel lingkungan. Jika variabel lingkungan belum disetel, ganti baris berikut dengan .apiKey("sk-xxx") dan Kunci API Model Studio Anda.
        UpdateMetadataParam updateMetadataParam = UpdateMetadataParam.builder()
                .metadata(Collections.singletonMap("key", "value"))
                .apiKey(System.getenv("DASHSCOPE_API_KEY"))
                .build();
        messages.update("thread_id", "message_Id", updateMetadataParam);
    }
}
Parameter permintaan

Parameter

Tipe

Default

Deskripsi

message_id

string

-

ID pesan yang akan diperbarui.

thread_id

string

-

ID thread tempat pesan yang akan diperbarui berada.

metadata

Dict

None

Informasi yang terkait dengan thread.

workspace

string

None

Workspace ID Alibaba Cloud Model Studio, yang hanya diperlukan ketika api_key merupakan Kunci API sub-workspace.

api_key

string

None

Kunci API untuk Alibaba Cloud Model Studio. Kami menyarankan Anda mengonfigurasi kunci API sebagai variabel lingkungan (akan dihapus publikasinya dan digabung ke dalam Configure API Key).

Parameter respons

Lihat respons untuk operasi create.

Kode kesalahan

Jika pemanggilan Assistant API gagal dan mengembalikan pesan kesalahan, lihat Pesan kesalahan untuk menyelesaikan masalah tersebut.