saveAppPushScene(params: SaveAppPushSceneParams)

Requires:
@tuya-miniapp/cloud-api≥1.6.0

Description

Save an App push scene. This method does not depend on device DP; it is triggered by a timer (entityType=6) and performs an App push.

Parameters

ParameterTypeRequiredDescription
YesRequest body

Return Value

Type: Promise<SaveAppPushSceneResult>
SaveAppPushSceneResult (see type definition and cloud response for field meanings)

Referenced Types

interfaceSaveAppPushSceneResult`saveAppPushScene` returns: scene name + rule ID (`ruleGenre` is returned by the cloud)
PropertyTypeDescription
namestringScene name
ruleIdstringScene/Rule ID
ruleGenrenumberRule type: 1: scene; 2: automation (returned by the cloud)

Examples

Request example: In the last 3 days of the countdown, push at 11:28 each day

import { saveAppPushScene } from '@tuya-miniapp/cloud-api';

saveAppPushScene({
  gid: '46718684',
  name: 'Filter replacement countdown',
  coverIcon: 'https://images.tuyacn.com/smart/rule/glyphicons/work_60_new.png',
  displayColor: '6559D1',
  enabled: true,
  matchType: 1,
  conditions: [
    {
      entityId: 'timer',
      entitySubIds: 'timer',
      entityType: 6,
      devDelMark: false,
      iconUrl: '',
      expr: [
        {
          repeatType: 'custom',
          date: '20260714',
          time: '11:28',
          timeZoneId: 'Asia/Shanghai',
          loops: '0000000',
          monthLoops: '000000100000',
          dayLoops: '229376',
        },
      ],
      extraInfo: { bizTag: 'filter_change', jumpUrl: '/pages/duration/index' },
    },
  ],
})
  .then(res => console.log('Scene saved:', res))
  .catch(err => console.error('Failed:', err));

Request example: Update a scene (pass id)

saveAppPushScene({
  gid: '46718684',
  id: 'scene_001',
  name: 'Filter replacement countdown (updated)',
  coverIcon: 'https://images.tuyacn.com/smart/rule/glyphicons/work_60_new.png',
  displayColor: '6559D1',
  enabled: true,
  matchType: 1,
  conditions: [], // ... same as above, omitted here
});

Response example

{
  "name": "Filter replacement countdown",
  "ruleId": "scene_001",
  "ruleGenre": 2
}