Инструкции по авторизации приложений
Framer
Платформа Nodul позволяет взаимодействовать с сайтами, созданными с помощью сервиса Framer. Для взаимодействия нужен только узел Trigger on Webhook.
Создадим сценарий, который записывает адрес электронной почты, введённый в форму на сайте, в Google Таблицу. Сначала используйте сервис Framer для создания формы регистрации с полем для ввода email и кнопкой подтверждения.
Создание формы в Framer
- В рабочей области Framer выберите способ добавления элемента Code. В окне Create Code File введите любое имя и выберите опцию New component.

- Нажмите кнопку Create.

- На открывшейся странице добавьте код ниже и сохраните изменения, нажав Ctrl + S. Форма с полем ввода email и кнопкой Signup появится в правой части интерфейса.
import React, { useState } from "react"
import Example from "https://framer.com/m/framer/Example.js@^1.0.0"
export default function AuthorizationForm(props) {
// Обновите это значение на URL вашего Trigger on Webhook
const formUrl = "Your_URL"
const [email, setEmail] = useState("")
const [formStatus, setFormStatus] = useState("unsubmitted")
const onSubmit = async (event) => {
event.preventDefault()
try {
const response = await fetch(formUrl, {
method: "POST",
body: JSON.stringify({ email }),
headers: {
"Content-type": "application/json",
},
})
if (!response.ok) {
throw new Error("Network response was not ok")
}
setFormStatus("submitted")
} catch (error) {
console.error("Error during form submission: ", error)
setFormStatus("error")
}
}
const handleEmailChange = (event) => {
setEmail(event.target.value)
}
if (formStatus === "submitted") {
return (
<div style={responseText}>
Спасибо! Вы успешно зарегистрировались.
</div>
)
}
if (formStatus === "error") {
return <div>Что-то пошло не так. Обновите страницу и попробуйте снова!</div>
}
return (
<>
<div style={labelStyle}>Пожалуйста, укажите ваш адрес электронной почты.</div>
<form onSubmit={onSubmit} style={containerStyle}>
<input
type="email"
value={email}
onChange={handleEmailChange}
placeholder="Ваш email"
required
style={inputStyle}
/>
<input type="submit" value="Signup" style={submitButtonStyle} />
</form>
</>
)
}
const containerStyle = {
display: "flex",
justifyContent: "space-between",
alignItems: "center",
padding: "0.5rem",
borderRadius: "4px",
maxWidth: "500px",
margin: "auto",
}
const inputStyle = {
flex: "1",
fontSize: "16px",
padding: "0.75rem",
margin: "0",
backgroundColor: "#18181B",
border: "1px solid #333",
borderRadius: "12px",
color: "#FFF",
marginRight: "0.5rem",
}
const submitButtonStyle = {
fontSize: "16px",
padding: "0.75rem 1.5rem",
backgroundColor: "#2C91ED",
color: "#FFF",
border: "none",
borderRadius: "12px",
cursor: "pointer",
fontWeight: "bold",
}
const responseText = {
textAlign: "center",
color: "#5FCEAE",
fontSize: "16px",
marginTop: "1rem",
}
const labelStyle = {
textAlign: "center",
color: "#FFF",
fontSize: "16px",
marginBottom: "1rem",
}
Настройка сценария Nodul и отправка email
- В созданном на платформе сценарии добавьте узел Trigger on Webhook. После добавления скопируйте URL-адрес. Вы можете запустить узел один раз, чтобы просмотреть выходные данные.


- Замените
Your_URLв коде формы Framer на URL-адрес узла Trigger on Webhook.
Помните, что Production-ветка сценария запускается запросом, отправленным на Production-версию URL узла Trigger on Webhook. Development-ветка сценария запускается запросом, отправленным на Development-версию URL узла Trigger on Webhook.
- После добавления URL-адреса заполните поле тестовым email-адресом и нажмите кнопку Signup.

- После нажатия кнопки Signup узел Trigger on Webhook выполнится, и выходные данные будут содержать указанный email-адрес.

- Чтобы записать полученный email-адрес в Google Таблицу, добавьте узел Add Single Row и настройте его:
- Создайте или выберите существующую авторизацию.
- Выберите нужную Google Таблицу и лист.
- Выберите параметр из предыдущего узла для поля Values во вспомогательном окне.

Результат выполнения сценария — email-адрес, введённый в форму Framer, записывается в ячейку Google Таблицы.

