Pe scurt
Setezi Incoming Webhook în canalul Teams țintă, copiezi URL-ul în conectorul Megaforms și mapezi tipul formularului la canal (ex. cereri IT → canal IT, cereri HR → canal HR). Mesajul ajunge ca Adaptive Card cu butoane Aprobare/Refuz acționate direct din Teams.
Caz de utilizare tipic
Companii medii (50-500 angajați) care folosesc Microsoft 365 ca stack principal și au formulare interne (cereri concediu, raport bug intern, comandă echipament). Webhook Teams elimină pasul email-and-track.
Pași de implementare (pe baza setup-ului Microsoft Teams)
Scenariul refolosește configurarea de bază a integrării Microsoft Teams, cu ajustări specifice descrise mai jos. Dacă nu ai configurat încă integrarea, parcurge întâi pașii standard:
- 1Adaugă conector Incoming Webhook în canal
În Teams, deschide canalul țintă → meniul „…” → Connectors → Incoming Webhook → Configure. Dă-i un nume (ex. „Megaforms HR Requests”), încarcă o iconiță (opțional) și apasă „Create”. Copiază URL-ul generat.
- 2Lipește în Megaforms
Megaforms → formular → Integrări → Microsoft Teams. Lipește URL-ul. Test — primești o Adaptive Card de probă.
- 3Configurează Adaptive Card
Megaforms generează automat un card cu titlul formularului, facts per răspuns și butoane de acțiune (dacă activezi). Personalizează ordinea fields în setări.
- 4Activează butoane Aprobare/Refuz (opțional)
Pentru fluxuri de aprobare, activează „Action buttons” în setări. Adaugi callback URL `https://forms.megapromoting.com/api/integrations/teams/actions` în configurarea conectorului Teams.
Exemplu cod / payload
// Adaptive Card trimisă în Teams
{
"@type": "MessageCard",
"summary": "Cerere concediu nouă",
"sections": [{
"activityTitle": "Cerere concediu de la Maria P.",
"facts": [
{ "name": "Perioadă", "value": "15-22 august 2026" },
{ "name": "Zile", "value": "6 zile lucrătoare" }
]
}],
"potentialAction": [
{ "@type": "HttpPOST", "name": "Aprobă", "target": "..." },
{ "@type": "HttpPOST", "name": "Refuză", "target": "..." }
]
}Variabilele între acolade duble (ex. `{{submission.email}}`) sunt înlocuite automat de Megaforms la fiecare submisie. Lista completă a variabilelor în Setări → Integrări → Documentație variabile.
Erori frecvente și depanare
- ⚠401 Unauthorized — credențialele sunt invalide sau au fost revocate. Regenerează în panoul Microsoft Teams și re-introdu în Megaforms.
- ⚠404 Not Found — endpoint-ul țintă (chat_id, database_id, webhook URL) nu există sau nu e accesibil. Verifică în panoul Microsoft Teams că destinația e validă.
- ⚠422 Unprocessable Entity — payload-ul nu respectă schema așteptată (ex. valoare Multiple Select care nu există ca opțiune predefinită). Verifică maparea câmpurilor.
- ⚠429 Too Many Requests — rate limit atins. Megaforms reîncearcă automat cu backoff. Pentru volume mari, considerează rutarea prin webhook generic + n8n self-hosted.
- ⚠500/502/503 — eroare temporară pe serverul Microsoft Teams. Megaforms reîncearcă automat. Verifică status page-ul Microsoft Teams dacă persistă.
Conformitate și securitate
- ✓Apelurile către Microsoft Teams sunt jurnalizate cu timestamp, status code și error message — fără date personale ale respondenților.
- ✓Credențialele sunt criptate AES-256 la rest. Nu apar în log-uri sau exporturi.
- ✓Apelurile către Microsoft Teams ies de pe servere Megaforms situate în UE (OVH Franța). Destinația finală depinde de provider — vezi pagina de bază a integrării pentru detalii.
- ✓Retry automat 3 încercări (2s, 8s, 30s). Dead-letter queue cu retry manual din panoul de control.
Următorii pași
După ce ai configurat scenariul, recomandăm să monitorizezi primele 50-100 apeluri în Setări → Integrări → Istoric apeluri pentru a confirma că rata de succes e peste 99% și că payload-ul ajunge formatat corect la destinație. Pentru ajustări fine (filtre adiționale, mapare câmpuri, șabloane custom), editarea se face direct în conectorul integrării fără a re-configura tot scenariul.
Pentru scenarii compuse (ex. același formular trimite la Slack + Notion + Mailchimp în paralel), poți activa mai multe integrări per formular și folosi logica condițională pentru a alege care se declanșează la fiecare submisie. Vezi documentația despre rutare condițională în articolele de ajutor.