Похоже, API ExactTarget/SFMC для управления шаблонами электронной почты изменился, но примеры FuelSDK еще не обновлены.

Устаревший способ создания шаблона электронной почты: (предполагается, что ET_Client был инициализирован и аутентифицирован в SFMC)

NameOfTestEmail = 'My Email'
stubObj = ET_Client.ET_Client(False, debug, params = params)

# Create Email 
print('>>> Create Email')
postHTMLBody = ET_Client.ET_Email()
postHTMLBody.auth_stub = stubObj
postHTMLBody.props = {"CustomerKey" : NameOfTestEmail, "Name":NameOfTestEmail, "Subject" : "Created Using the PythonSDK", "HTMLBody": "<b>Some HTML Goes here</b>"}
postResponse = postHTMLBody.post()
print('Post Status: ' + str(postResponse.status))
print('Code: ' + str(postResponse.code))
print('Message: ' + str(postResponse.message))
print('Result Count: ' + str(len(postResponse.results)))
print('Results: ' + str(postResponse.results

Как это сделать с помощью нового API?

0
Daniel Dewey 7 Сен 2020 в 21:07

1 ответ

Лучший ответ

Вам потребуется использовать REST API для выполнения операций CRUD с ресурсами Content Builder. Вот несколько примеров полезной нагрузки JSON. из документации по созданию контента с использованием этого подхода.

Я рекомендую использовать библиотеку, например, Requests, чтобы легко структурировать вызовы API к Marketing Cloud. и работать с ответом. Вот пример функции для получения вашего токена доступа, чтобы помочь вам начать работу:

def getToken():
    payload = {
        "grant_type": "client_credentials",
        "client_secret": "clientSecret",
        "client_id":"clientID",
        "account_id":"12345"
    }
    print("\nAuthenticating...\n")
    res = requests.post("YOUR AUTH URL", data=payload)
    res.raise_for_status()
    return json.loads(res.text)["access_token"]
    print("Done.")

accessToken = getToken()
1
Jason Hanshaw 8 Сен 2020 в 22:51