Запрос Mautic Contact Field Api возвращает 400 в ответ

Я пытаюсь создать контактные поля в mautic через API и использую oauth 2 для аутентификации. Вот ответ, который я получаю

{
    "errors": [
        {
            "code": 400,
            "message": "order: This value is not valid.",
            "details": {
                "order": [
                    "This value is not valid."
                ]
            }
        }
    ],
    "error": {
        "message": "order: This value is not valid. (`error` is deprecated as of 2.6.0 and will be removed in 3.0. Use the `errors` array instead.)",
        "code": 400,
        "details": {
            "order": [
                "This value is not valid."
            ]
        }
    }
}

Раньше я работал с mautic api, и параметр порядка никогда не требовался. Кроме того, когда я пытался передать порядок параметров как значение int, он также не принимал это.

У меня такая же проблема, и я не могу ее решить.

FABBRj 20.05.2019 17:31
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Symfony Station Communiqué - 17 февраля 2023 г
Symfony Station Communiqué - 17 февраля 2023 г
Это коммюнике первоначально появилось на Symfony Station , вашем источнике передовых новостей Symfony, PHP и кибербезопасности.
Управление ответами api для исключений на Symfony с помощью KernelEvents
Управление ответами api для исключений на Symfony с помощью KernelEvents
Много раз при создании api нам нужно возвращать клиентам разные ответы в зависимости от возникшего исключения.
1
1
436
2

Ответы 2

Не уверен, что это причина вашей проблемы, но у меня был такой же ответ от использования /fields/contacts/new, и на самом деле путь должен быть /fields/contact/new.

Кроме того, я заметил, что вам нужно сгладить некоторые ключи, например, используя атрибут properties, который вам нужно отправить как properties[key] - см. ниже:

requests.post(url=self.url + '/fields/contact/new', headers=self.header, 
        data = {
              'label': 'somelabel',
              'type': 'mautic data type',
              'properties[key]': 'value'
        })

Я использую Mautic 3.1 и имею ту же проблему с PHP mautic/api-library. Отключение или отсутствие передачи свойства order устраняет проблему. Хотя я не уверен, почему он не принимает значение для order, потому что я использую то же значение, возвращенное из API, для получения определения поля (не меняя значение).

Другие вопросы по теме