---
title: "Create a new rule."
method: POST
path: "/api/apps/{app}/rules"
tags: ["Rules"]
---

# Create a new rule.

`POST /api/apps/{app}/rules`

## Path parameters

- `app` string, required

## Request body

- CreateRuleDto
  - `trigger` RuleTriggerDto, required
    - `triggerType` string, required
  - `action` RuleActionDto, required
    - `actionType` string, required

## Response `201`

Rule created.

- RuleDto
  - `_links` object, required — The links.
  - `id` string, required — The ID of the rule.
  - `createdBy` string, required — The user that has created the rule.
  - `lastModifiedBy` string, required — The user that has updated the rule.
  - `created` string, date-time, required — The date and time when the rule has been created.
  - `lastModified` string, date-time, required — The date and time when the rule has been modified last.
  - `version` integer, required — The version of the rule.
  - `isEnabled` boolean, required — Determines if the rule is enabled.
  - `name` string, nullable — Optional rule name.
  - `trigger` RuleTriggerDto, required
    - `triggerType` string, required
  - `action` RuleActionDto, required
    - `actionType` string, required
  - `numSucceeded` integer, required — The number of completed executions.
  - `numFailed` integer, required — The number of failed executions.
  - `lastExecuted` string, date-time, nullable — The date and time when the rule was executed the last time.

## Other responses

- `400` — Rule request not valid.
- `404` — App not found.
- `500` — Operation failed.

---

[API](https://skmtc.net/squidex/apis/squidex-api.md) · [All operations](https://skmtc.net/squidex/apis/squidex-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/squidex/squidex-api/versions/b4a9b62f113a/schema)
