Задать список правил

Создает или обновляет список правил доменной политики.

Примечание

Чтобы выполнить запрос, приложению требуется разрешение на управление правилами обработки почты для домена. Убедитесь, что вы включили его при настройке приложения на OAuth-сервере Яндекса.

Request

PUT

https://api360.yandex.net/admin/v1/org/{orgId}/mail/routing/policies

Path parameters

Name

Description

orgId

Type: integer

Идентификатор организации.

Body

application/json
{
  "rules": [
    {
      "name": "example",
      "description": "example",
      "enabled": true,
      "condition": {
        "ip_filter": {
          "list": [
            null
          ]
        },
        "domain_filter": null,
        "email_from_filter": null
      },
      "action": {
        "type": "accept",
        "options": {
          "force": "spam"
        }
      }
    }
  ]
}

Name

Description

rules

Type: v1domain_policiesRule[]

Список правил доменной политики.

Example
[
  {
    "name": "example",
    "description": "example",
    "enabled": true,
    "condition": {
      "ip_filter": {
        "list": [
          "example"
        ]
      },
      "domain_filter": null,
      "email_from_filter": null
    },
    "action": {
      "type": "accept",
      "options": {
        "force": "spam"
      }
    }
  }
]

v1domain_policiesList

Name

Description

list

Type: string[]

Перечень элементов списка заданного фильтра.

Min items: 1

Example
[
  "example"
]
Example
{
  "list": [
    "example"
  ]
}

domain_policiesCondition

Условие, при выполнении которого применяется правило.

В одном условии может быть указан только один из элементов ip_filter, domain_filter или email_from_filter. Правило применяется, если отправитель письма прошел проверку на соответствие заданному фильтру: по почтовому адресу, домену, IP-адресу или маске подсети.

Name

Description

domain_filter

Type: v1domain_policiesList

Список доменов.

Содержит перечень полных доменов или доменов с поддоменами, которым должен соответствовать электронный адрес отправителя письма, чтобы к нему применилось правило.

Значения в этом списке могут содержать символ подстановки * для обозначения любых поддоменов для домена более высокого уровня. Например, значению *.com соответствуют все электронные адреса на домене com, а значению *.yandex.ru  — все адреса на любых поддоменах yandex.ru, кроме адресов непосредственно на головном домене yandex.ru.

Example
{
  "list": [
    "example"
  ]
}

email_from_filter

Type: v1domain_policiesList

Список электронных адресов.

Содержит перечень электронных адресов, с одним из которых должен совпасть электронный адрес отправителя письма, чтобы к нему применилось правило.

Example
{
  "list": [
    "example"
  ]
}

ip_filter

Type: v1domain_policiesList

Список IP.

Содержит перечень IPv4-адресов, IPv6-адресов, IPv4-масок подсети, IPv6-масок подсети, которым должен соответствовать IP-адрес отправителя письма, чтобы к нему применилось правило.

Example
{
  "list": [
    "example"
  ]
}
Example
{
  "ip_filter": {
    "list": [
      "example"
    ]
  },
  "domain_filter": null,
  "email_from_filter": null
}

domain_policiesActionOptions

Name

Description

force

Type: string

Отметка письма.

Возможные значения:

  • spam — пометить письмо как спам;
  • ham — не считать письмо спамом, даже если Спамооборона Почты проставила ему отметку spam.

Enum: spam, ham

Example
{
  "force": "spam"
}

domain_policiesAction

Name

Description

type

Type: string

Действие над письмом, выполняемое при срабатывании правила.

Возможные значения:

  • accept — принять письмо;
  • reject — отклонить письмо.

Enum: accept, reject

options

Type: domain_policiesActionOptions

Дополнительные настройки действия над письмом.

Указывается только для type=accept — если письмо принимается.

Example
{
  "force": "spam"
}
Example
{
  "type": "accept",
  "options": {
    "force": "spam"
  }
}

v1domain_policiesRule

Name

Description

action

Type: domain_policiesAction

Действие над письмом, предусмотренное правилом.

Example
{
  "type": "accept",
  "options": {
    "force": "spam"
  }
}

condition

Type: domain_policiesCondition

Условие, при выполнении которого применяется правило.

Условие, при выполнении которого применяется правило.

В одном условии может быть указан только один из элементов ip_filter, domain_filter или email_from_filter. Правило применяется, если отправитель письма прошел проверку на соответствие заданному фильтру: по почтовому адресу, домену, IP-адресу или маске подсети.

Example
{
  "ip_filter": {
    "list": [
      "example"
    ]
  },
  "domain_filter": null,
  "email_from_filter": null
}

description

Type: string

Описание правила.

Example: example

enabled

Type: boolean

Признак активности правила: true — правило включено, false — правило выключено.

name

Type: string

Название правила.

Example: example

Example
{
  "name": "example",
  "description": "example",
  "enabled": true,
  "condition": {
    "ip_filter": {
      "list": [
        "example"
      ]
    },
    "domain_filter": null,
    "email_from_filter": null
  },
  "action": {
    "type": "accept",
    "options": {
      "force": "spam"
    }
  }
}

Responses

200 OK

Запрос успешно выполнен.

Body

application/json
{}

Name

Description

400 Bad Request

Некорректный запрос.

Body

application/json
{
  "code": 0,
  "message": "example",
  "details": [
    {
      "@type": "example"
    }
  ]
}

Name

Description

code

Type: integer

Код ошибки.

details

Type: protobufAny[]

Дополнительные сведения об ошибке.

Example
[
  {
    "@type": "example"
  }
]

message

Type: string

Описание ошибки.

Example: example

protobufAny

Name

Description

@type

Type: string

Example: example

[additional]

Type: unknown

Example: null

Example
{
  "@type": "example"
}

401 Unauthorized

Пользователь не авторизован.

Body

application/json
{
  "code": 0,
  "message": "example",
  "details": [
    {
      "@type": "example"
    }
  ]
}

Name

Description

code

Type: integer

Код ошибки.

details

Type: protobufAny[]

Дополнительные сведения об ошибке.

Example
[
  {
    "@type": "example"
  }
]

message

Type: string

Описание ошибки.

Example: example

403 Forbidden

У пользователя или приложения нет прав на доступ к ресурсу, запрос отклонен.

Body

application/json
{
  "code": 0,
  "message": "example",
  "details": [
    {
      "@type": "example"
    }
  ]
}

Name

Description

code

Type: integer

Код ошибки.

details

Type: protobufAny[]

Дополнительные сведения об ошибке.

Example
[
  {
    "@type": "example"
  }
]

message

Type: string

Описание ошибки.

Example: example

404 Not Found

Запрашиваемый ресурс не найден.

Body

application/json
{
  "code": 0,
  "message": "example",
  "details": [
    {
      "@type": "example"
    }
  ]
}

Name

Description

code

Type: integer

Код ошибки.

details

Type: protobufAny[]

Дополнительные сведения об ошибке.

Example
[
  {
    "@type": "example"
  }
]

message

Type: string

Описание ошибки.

Example: example

500 Internal Server Error

Внутренняя ошибка сервиса. Попробуйте повторно отправить запрос через некоторое время.

Body

application/json
{
  "code": 0,
  "message": "example",
  "details": [
    {
      "@type": "example"
    }
  ]
}

Name

Description

code

Type: integer

Код ошибки.

details

Type: protobufAny[]

Дополнительные сведения об ошибке.

Example
[
  {
    "@type": "example"
  }
]

message

Type: string

Описание ошибки.

Example: example

No longer supported, please use an alternative and newer version.