Python и данные проекта
В действии Python выберите API проекта project-v1, интерпретатор bundled, функцию main и при необходимости переменную результата. Для SDK текущего выполнения явно объявите ctx.
def main(ctx, name="world"):
message = "Hello, " + name
ctx.variables.set("greeting", message)
ctx.log(message)
return {"message": message}Следующее действие читает {-Variable.greeting-}. Возвращённый словарь сохраняется одним объектом в переменную результата; его поля не становятся переменными автоматически.
Переменные
ctx.variables.get(name, default), set(name, value), delete(name), names(). Профиль, проект и окружение доступны только для чтения.
Списки и таблицы
Найдите ресурс через ctx.resources.find(name, kind). Используйте read(id, offset, limit), replace(id, data), append_rows(id, rows). Большие ресурсы читаются страницами.
HTTP
ctx.http.request("GET", url) использует профиль, прокси, cookies и журнал трафика текущего выполнения. Ответ предоставляет статус, заголовки, текст и json(). Сторонние клиенты автоматически не разделяют эту сессию.
Файлы и ошибки
Файловым методам нужны разрешение и допустимый путь. Изменения переменных и ресурсов применяются после успеха действия. Внешние записи и HTTP-запросы не откатываются при последующей ошибке.
Совместимый API без контекста сохраняет вызов функции без ctx. Оба API поддерживают встроенный и настроенный системный интерпретатор; сторонние библиотеки должны соответствовать выбранному интерпретатору. Справочник методов доступен в помощи Python редактора.