Only users with Flagship Edition accounts can apply for this feature. You can submit a ticket to apply for this feature. If we determine that this feature suits your needs, we will approve your application.
https://console.tim.qq.com/v4/all_member_push/im_push?usersig=xxx&identifier=admin&sdkappid=88888888&random=99999999&contenttype=json
Parameter | Description |
---|---|
https | The request protocol is HTTPS, and the request method is POST. |
console.tim.qq.com | The fixed domain name. |
v4/all_member_push/im_push | The request API. |
usersig | The signature generated by the app admin account. For more information, see UserSig Backend API. |
identifier | The value must be the app admin account. |
sdkappid | The SDKAppID assigned by the IM console when an application is created. |
random | A random 32-bit unsigned integer. |
contenttype | This parameter has a fixed value of json . |
This API supports push to all users, push by attribute, and push by tag. By default, it can be called up to 100 times per day, and the interval between two pushes must be greater than 1s. If you have special requirements, such as raising the frequency limit, describe your requirements in the ticket.
{
"From_Account": "admin",
"MsgRandom": 56512,
"MsgBody": [
{
"MsgType": "TIMTextElem",
"MsgContent": {
"Text": "hi, beauty"
}
}
]
}
The admin specifies an account to push messages to all users. (In this example, the sender account is xiaoming.){
"From_Account": "xiaoming",
"MsgRandom": 3674128,
"MsgBody": [
{
"MsgType": "TIMTextElem",
"MsgContent": {
"Text": "hi, beauty"
}
}
]
}
The admin specifies an account to push messages to all users and sets the offline push information.{
"From_Account": "xiaoming",
"MsgRandom": 3674128,
"MsgBody": [
{
"MsgType": "TIMTextElem",
"MsgContent": {
"Text": "hi, beauty"
}
}
],
"OfflinePushInfo": {
"PushFlag": 0,
"Desc": "The content that is pushed offline",
"Ext": "The passthrough content",
"AndroidInfo": {
"Sound": "android.mp3"
},
"ApnsInfo": {
"Sound": "apns.mp3",
"BadgeMode": 1, // If this parameter is not specified or is set to `0`, the message is counted. If this parameter is set to `1`, the message is not counted, that is, the icon number in the upper-right corner does not increase.
"Title":"apns title", // APNs title
"SubTitle":"apns subtitle", // APNs subtitle
"Image":"www.image.com" // Image URL
}
}
}
The admin pushes messages to all users and retains the messages offline for 120s.{
"From_Account": "admin",
"MsgRandom": 21302570,
"MsgLifeTime": 120,
"MsgBody": [
{
"MsgType": "TIMTextElem",
"MsgContent": {
"Text": "hi, beauty"
}
}
]
}
{
"From_Account": "admin",
"MsgRandom": 214,
"Condition": {
"TagsAnd": ["A shares","B shares"]
},
"MsgBody": [
{
"MsgType": "TIMTextElem",
"MsgContent": {
"Text": "hi, beauty"
}
}
]
}
The admin pushes messages to users tagged with "A shares" or "B shares".{
"From_Account": "admin",
"MsgRandom": 103698523,
"Condition": {
"TagsOr": ["A shares","B shares"]
},
"MsgBody": [
{
"MsgType": "TIMTextElem",
"MsgContent": {
"Text": "hi, beauty"
}
}
]
}
The admin pushes messages to users tagged with "A shares" and "B shares" and retains the messages offline for 120s.{
"From_Account": "admin",
"MsgRandom": 124032,
"MsgLifeTime": 120,
"Condition": {
"TagsOr": ["A shares","B shares"]
},
"MsgBody": [
{
"MsgType": "TIMTextElem",
"MsgContent": {
"Text": "hi, beauty"
}
}
]
}
{
"From_Account": "admin",
"MsgRandom": 389475,
"Condition": {
"AttrsAnd": {
"Membership Level": "Platinum Premier members",
"city": "Shenzhen"
}
},
"MsgBody": [
{
"MsgType": "TIMTextElem",
"MsgContent": {
"Text": "hi, beauty"
}
}
]
}
The admin pushes messages to users in Shenzhen or male users.{
"From_Account": "admin",
"MsgRandom": 9657,
"Condition": {
"AttrsOr": {
"sex": "M",
"city": "Shenzhen"
}
},
"MsgBody": [
{
"MsgType": "TIMTextElem",
"MsgContent": {
"Text": "hi, beauty"
}
}
]
}
The admin pushes messages to Shenzhen Platinum Premier users and retains the messages offline for 120s.{
"From_Account": "admin",
"MsgRandom": 9312457,
"MsgLifeTime": 120,
"Condition": {
"AttrsAnd": {
"Membership Level": "Platinum Premier users",
"city": "Shenzhen"
}
},
"MsgBody": [
{
"MsgType": "TIMTextElem",
"MsgContent": {
"Text": "hi, beauty"
}
}
]
}
Field | Type | Required | Description |
---|---|---|---|
Condition | Object | Optional | Valid values:
AttrsOr and AttrsAnd can coexist, and TagsOr and TagsAnd can coexist. However, tag conditions and attribute conditions cannot coexist. If no condition is specified, messages are pushed to all users. |
MsgRandom | Integer | Required | The message’s random number, which is generated by the random function and used to deduplicate push tasks. Push requests must have unique random numbers within a seven-day period. Otherwise, they are regarded as the same push task. If an error is returned when you call the push API, you can use the same message random number for a retry. |
MsgBody | Object | Required | The message body. For more information on the message format, see Message Formats. Note that MsgBody is an array that can contain multiple message elements. |
MsgType | String | Required | The TIM message object type. Valid values:
|
MsgContent | Object | Required | Message types have different MsgContent formats. For more information, see TIMMsgElement Object. |
MsgLifeTime | Integer | Optional | Offline message storage duration, in seconds. The maximum duration is 604800 seconds (7 days). The default value is 0, which indicates that messages are not stored offline. |
From_Account | String | Optional | The account of the message sender. |
AttrsOr | Object | Optional | A set of attribute conditions connected by OR. Note that attribute conditions and tag conditions cannot be used at the same time. |
AttrsAnd | Object | Optional | A set of attribute conditions connected by AND. Note that attribute conditions and tag conditions cannot be used at the same time. |
TagsOr | Object | Optional | A set of tag conditions connected by OR. A tag is a string of no more than 50 bytes. Note that attribute conditions and tag conditions cannot be used at the same time. The number of tags in TagsOr cannot exceed 10. |
TagsAnd | Object | Optional | A set of tag conditions connected by AND. A tag is a string of no more than 50 bytes. Note that attribute conditions and tag conditions cannot be used at the same time. The number of tags in TagsAnd cannot exceed 10. |
OfflinePushInfo | Object | Optional | The information to be pushed offline. For more information, see Message Formats. |
{
"ActionStatus":"OK",
"ErrorInfo":"",
"ErrorCode": 0,
"TaskId": "1400123456_144115212910570789_4155518400_15723514"
}
Field | Type | Description |
---|---|---|
ActionStatus | String | The processing result of the request. OK : successful. FAIL : failed |
ErrorCode | Integer | Error code |
ErrorInfo | String | Error information |
TaskId | String | Push task ID |
Unless a network error (such as error 502) occurs, the HTTP return code for this API is always 200. ErrorCode
and ErrorInfo
in the response packet represent the actual error code and error information. For public error codes (60000 to 79999), see Error Codes.
The following table describes the error codes specific to this API:
Error Code | Description |
---|---|
90001 | Failed to parse the JSON format. Check whether the JSON request packet meets JSON specifications. |
90002 | The format of the MsgBody field in the JSON request packet is invalid or MsgBody is not an array. Refer to TIMMsgElement Object. |
90005 | The MsgRandom field is missing in the JSON request packet or MsgRandom is not an integer. |
90007 | The MsgBody field in the JSON request packet is not an array. Change it to an array. |
90009 | The request requires the app admin’s permissions. |
90010 | Invalid request format. Refer to TIMMsgElement Object for more information. |
90020 | The tag length exceeds the limit (the maximum length allowed is 50 bytes). |
90022 | TagsOr and TagsAnd in the push conditions contain repeated tags. |
90024 | Pushes are too frequent. The interval between two pushes must be greater than 1s. |
90026 | Incorrect offline message storage period. The value cannot exceed 7 days. |
90032 | The number of tags in the push conditions exceeds 10, or the number of tags in the tag adding request exceeds 10. |
90033 | Invalid attribute. |
90039 | Message push by attribute and message push by tag are mutually exclusive. |
90040 | A tag in the push conditions is null. |
90045 | The feature of pushing to all users is not enabled. |
90047 | The number of pushes exceeds the daily quota (default quota: 100). |
91000 | Internal service error. Please try again. |
Use the online RESTful API debugging tool to debug this API.
Was this page helpful?