video{mask-image:-webkit-radial-gradient(#fff,#000);backface-visibility:hidden}h1[id]:before,h2[id]:before,h3[id]:before,h4[id]:before,h5[id]:before,h6[id]:before{content:"";display:block;height:100px;margin-top:-100px;visibility:hidden}[data-consent-manager-dialog]>div{z-index:10001}@layer reset, base, tokens, recipes, utilities;@layer reset{:host,html{--font-fallback:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";line-height:1.5;-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;tab-size:4;font-family:var(--global-font-body,var(--font-fallback));-webkit-tap-highlight-color:transparent}*,::backdrop,::file-selector-button,:after,:before{margin:0;padding:0;border-width:0;border-style:solid;border-color:var(--global-color-border,currentcolor);box-sizing:border-box}hr{color:inherit;height:0;border-top-width:1px}body{line-height:inherit;height:100%}img{border-style:none}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}h1,h2,h3,h4,h5,h6{text-wrap:balance;font-size:inherit;font-weight:inherit}h1,h2,h3,h4,h5,h6,p{overflow-wrap:break-word}menu,ol,ul{list-style:none}::file-selector-button,button,input:where([type=button],[type=reset],[type=submit]){appearance:button;-webkit-appearance:button}::file-selector-button,button,input,optgroup,select,textarea{font:inherit;background:var(--pc-colors-transparent);font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit}::placeholder{--placeholder-fallback:#00000080;opacity:1;color:var(--global-color-placeholder,var(--placeholder-fallback))}@supports (not (-webkit-appearance:-apple-pay-button)) or (contain-intrinsic-size:1px){::placeholder{--placeholder-fallback:color-mix(in oklab,currentcolor 50%,#0000)}}::selection{background-color:var(--global-color-selection,#0073ff4d)}textarea{resize:vertical}table{border-color:inherit;text-indent:0;border-collapse:collapse}summary{display:list-item}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:initial}sub{bottom:-.25em}sup{top:-.5em}dialog{padding:0}a{text-decoration:inherit;color:inherit}abbr:where([title]){text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,pre,samp{--font-mono-fallback:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New";font-family:var(--global-font-mono,var(--font-mono-fallback));font-size:1em;font-feature-settings:normal;font-variation-settings:normal}progress{vertical-align:initial}::-webkit-search-cancel-button,::-webkit-search-decoration{-webkit-appearance:none}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}:-moz-ui-invalid{box-shadow:none}:-moz-focusring{outline:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer base{:root{--made-with-panda:"🐼"}body{background:#fff;color:#09090b;font-family:var(--pc-fonts-body)}*,::backdrop,:after,:before{--blur: ;--brightness: ;--contrast: ;--grayscale: ;--hue-rotate: ;--invert: ;--saturate: ;--sepia: ;--drop-shadow: ;--backdrop-blur: ;--backdrop-brightness: ;--backdrop-contrast: ;--backdrop-grayscale: ;--backdrop-hue-rotate: ;--backdrop-invert: ;--backdrop-opacity: ;--backdrop-saturate: ;--backdrop-sepia: ;--gradient-from-position: ;--gradient-to-position: ;--gradient-via-position: ;--scroll-snap-strictness:proximity;--border-spacing-x:0;--border-spacing-y:0;--translate-x:0;--translate-y:0;--rotate:0;--rotate-x:0;--rotate-y:0;--skew-x:0;--skew-y:0;--scale-x:1;--scale-y:1}}@layer tokens{:where(:root,:host){--pc-aspect-ratios-square:1/1;--pc-aspect-ratios-landscape:4/3;--pc-aspect-ratios-portrait:3/4;--pc-aspect-ratios-wide:16/9;--pc-aspect-ratios-ultrawide:18/5;--pc-aspect-ratios-golden:1.618/1;--pc-borders-none:none;--pc-easings-default:cubic-bezier(0.4,0,0.2,1);--pc-easings-linear:linear;--pc-easings-in:cubic-bezier(0.4,0,1,1);--pc-easings-out:cubic-bezier(0,0,0.2,1);--pc-easings-in-out:cubic-bezier(0.4,0,0.2,1);--pc-durations-fastest:50ms;--pc-durations-faster:100ms;--pc-durations-fast:150ms;--pc-durations-normal:200ms;--pc-durations-slow:300ms;--pc-durations-slower:400ms;--pc-durations-slowest:500ms;--pc-font-weights-thin:100;--pc-font-weights-extralight:200;--pc-font-weights-light:300;--pc-font-weights-normal:400;--pc-font-weights-medium:500;--pc-font-weights-semibold:600;--pc-font-weights-bold:700;--pc-font-weights-extrabold:800;--pc-font-weights-black:900;--pc-line-heights-none:1;--pc-line-heights-tight:1.25;--pc-line-heights-snug:1.375;--pc-line-heights-normal:1.5;--pc-line-heights-relaxed:1.625;--pc-line-heights-loose:2;--pc-letter-spacings-tighter:-0.05em;--pc-letter-spacings-tight:-0.025em;--pc-letter-spacings-normal:0em;--pc-letter-spacings-wide:0.025em;--pc-letter-spacings-wider:0.05em;--pc-letter-spacings-widest:0.1em;--pc-shadows-2xs:0 1px #0000000d;--pc-shadows-xs:0 1px 2px 0 #0000000d;--pc-shadows-sm:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--pc-shadows-md:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--pc-shadows-lg:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--pc-shadows-xl:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;--pc-shadows-2xl:0 25px 50px -12px #00000040;--pc-shadows-inset-2xs:inset 0 1px #0000000d;--pc-shadows-inset-xs:inset 0 1px 1px #0000000d;--pc-shadows-inset-sm:inset 0 2px 4px #0000000d;--pc-blurs-xs:4px;--pc-blurs-sm:8px;--pc-blurs-md:12px;--pc-blurs-lg:16px;--pc-blurs-xl:24px;--pc-blurs-2xl:40px;--pc-blurs-3xl:64px;--pc-spacing-0:0rem;--pc-spacing-1:0.25rem;--pc-spacing-2:0.5rem;--pc-spacing-3:0.75rem;--pc-spacing-4:1rem;--pc-spacing-5:1.25rem;--pc-spacing-6:1.5rem;--pc-spacing-7:1.75rem;--pc-spacing-8:2rem;--pc-spacing-9:2.25rem;--pc-spacing-10:2.5rem;--pc-spacing-11:2.75rem;--pc-spacing-12:3rem;--pc-spacing-14:3.5rem;--pc-spacing-16:4rem;--pc-spacing-20:5rem;--pc-spacing-24:6rem;--pc-spacing-28:7rem;--pc-spacing-32:8rem;--pc-spacing-36:9rem;--pc-spacing-40:10rem;--pc-spacing-44:11rem;--pc-spacing-48:12rem;--pc-spacing-52:13rem;--pc-spacing-56:14rem;--pc-spacing-60:15rem;--pc-spacing-64:16rem;--pc-spacing-72:18rem;--pc-spacing-80:20rem;--pc-spacing-96:24rem;--pc-spacing-0\.5:0.125rem;--pc-spacing-1\.5:0.375rem;--pc-spacing-2\.5:0.625rem;--pc-spacing-3\.5:0.875rem;--pc-spacing-4\.5:1.125rem;--pc-spacing-5\.5:1.375rem;--pc-sizes-0:0rem;--pc-sizes-1:0.25rem;--pc-sizes-2:0.5rem;--pc-sizes-3:0.75rem;--pc-sizes-4:1rem;--pc-sizes-5:1.25rem;--pc-sizes-6:1.5rem;--pc-sizes-7:1.75rem;--pc-sizes-8:2rem;--pc-sizes-9:2.25rem;--pc-sizes-10:2.5rem;--pc-sizes-11:2.75rem;--pc-sizes-12:3rem;--pc-sizes-14:3.5rem;--pc-sizes-16:4rem;--pc-sizes-20:5rem;--pc-sizes-24:6rem;--pc-sizes-28:7rem;--pc-sizes-32:8rem;--pc-sizes-36:9rem;--pc-sizes-40:10rem;--pc-sizes-44:11rem;--pc-sizes-48:12rem;--pc-sizes-52:13rem;--pc-sizes-56:14rem;--pc-sizes-60:15rem;--pc-sizes-64:16rem;--pc-sizes-72:18rem;--pc-sizes-80:20rem;--pc-sizes-96:24rem;--pc-sizes-0\.5:0.125rem;--pc-sizes-1\.5:0.375rem;--pc-sizes-2\.5:0.625rem;--pc-sizes-3\.5:0.875rem;--pc-sizes-4\.5:1.125rem;--pc-sizes-5\.5:1.375rem;--pc-sizes-xs:20rem;--pc-sizes-sm:24rem;--pc-sizes-md:28rem;--pc-sizes-lg:32rem;--pc-sizes-xl:36rem;--pc-sizes-2xl:42rem;--pc-sizes-3xl:48rem;--pc-sizes-4xl:56rem;--pc-sizes-5xl:64rem;--pc-sizes-6xl:72rem;--pc-sizes-7xl:80rem;--pc-sizes-8xl:90rem;--pc-sizes-prose:65ch;--pc-sizes-full:100%;--pc-sizes-min:min-content;--pc-sizes-max:max-content;--pc-sizes-fit:fit-content;--pc-sizes-breakpoint-sm:30em;--pc-sizes-breakpoint-md:48em;--pc-sizes-breakpoint-lg:62em;--pc-sizes-breakpoint-xl:80em;--pc-sizes-breakpoint-2xl:96em;--pc-sizes-breakpoint-custom-sm:37.5em;--pc-sizes-breakpoint-custom-md:56.25em;--pc-animations-spin:spin 1s linear infinite;--pc-animations-ping:ping 1s cubic-bezier(0,0,0.2,1) infinite;--pc-animations-pulse:pulse 2s cubic-bezier(0.4,0,0.6,1) infinite;--pc-animations-bounce:bounce 1s infinite;--pc-fonts-sans:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--pc-fonts-serif:ui-serif,Georgia,Cambria,"Times New Roman",Times,serif;--pc-fonts-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--pc-fonts-body:var(--font-inter),system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";--pc-fonts-heading:var(--font-mona-sans),system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";--pc-fonts-inter:var(--font-inter),system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";--pc-fonts-mona-sans:var(--font-mona-sans),system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";--pc-font-sizes-2xs:0.625rem;--pc-font-sizes-xs:0.75rem;--pc-font-sizes-sm:0.875rem;--pc-font-sizes-md:1rem;--pc-font-sizes-lg:1.125rem;--pc-font-sizes-xl:1.25rem;--pc-font-sizes-2xl:1.5rem;--pc-font-sizes-3xl:1.875rem;--pc-font-sizes-4xl:2.25rem;--pc-font-sizes-5xl:3rem;--pc-font-sizes-6xl:3.75rem;--pc-font-sizes-7xl:4.5rem;--pc-font-sizes-8xl:6rem;--pc-font-sizes-9xl:8rem;--pc-radii-4xl:2rem;--pc-radii-xs:0.125rem;--pc-radii-sm:0.125rem;--pc-radii-md:0.375rem;--pc-radii-lg:0.5rem;--pc-radii-xl:0.75rem;--pc-radii-2xl:1rem;--pc-radii-3xl:1.5rem;--pc-radii-full:9999px;--pc-colors-current:currentColor;--pc-colors-black:#000;--pc-colors-white:#fff;--pc-colors-transparent:#0000;--pc-colors-rose-50:#fff1f2;--pc-colors-rose-100:#ffe4e6;--pc-colors-rose-200:#fecdd3;--pc-colors-rose-300:#fda4af;--pc-colors-rose-400:#fb7185;--pc-colors-rose-500:#f43f5e;--pc-colors-rose-600:#e11d48;--pc-colors-rose-700:#be123c;--pc-colors-rose-800:#9f1239;--pc-colors-rose-900:#881337;--pc-colors-rose-950:#4c0519;--pc-colors-pink-50:#fdf2f8;--pc-colors-pink-100:#fce7f3;--pc-colors-pink-200:#fbcfe8;--pc-colors-pink-300:#f9a8d4;--pc-colors-pink-400:#f472b6;--pc-colors-pink-500:#ec4899;--pc-colors-pink-600:#db2777;--pc-colors-pink-700:#be185d;--pc-colors-pink-800:#9d174d;--pc-colors-pink-900:#831843;--pc-colors-pink-950:#500724;--pc-colors-fuchsia-50:#fdf4ff;--pc-colors-fuchsia-100:#fae8ff;--pc-colors-fuchsia-200:#f5d0fe;--pc-colors-fuchsia-300:#f0abfc;--pc-colors-fuchsia-400:#e879f9;--pc-colors-fuchsia-500:#d946ef;--pc-colors-fuchsia-600:#c026d3;--pc-colors-fuchsia-700:#a21caf;--pc-colors-fuchsia-800:#86198f;--pc-colors-fuchsia-900:#701a75;--pc-colors-fuchsia-950:#4a044e;--pc-colors-purple-50:#faf5ff;--pc-colors-purple-100:#f3e8ff;--pc-colors-purple-200:#e9d5ff;--pc-colors-purple-300:#d8b4fe;--pc-colors-purple-400:#c084fc;--pc-colors-purple-500:#a855f7;--pc-colors-purple-600:#9333ea;--pc-colors-purple-700:#7e22ce;--pc-colors-purple-800:#6b21a8;--pc-colors-purple-900:#581c87;--pc-colors-purple-950:#3b0764;--pc-colors-violet-50:#f5f3ff;--pc-colors-violet-100:#ede9fe;--pc-colors-violet-200:#ddd6fe;--pc-colors-violet-300:#c4b5fd;--pc-colors-violet-400:#a78bfa;--pc-colors-violet-500:#8b5cf6;--pc-colors-violet-600:#7c3aed;--pc-colors-violet-700:#6d28d9;--pc-colors-violet-800:#5b21b6;--pc-colors-violet-900:#4c1d95;--pc-colors-violet-950:#2e1065;--pc-colors-indigo-50:#eef2ff;--pc-colors-indigo-100:#e0e7ff;--pc-colors-indigo-200:#c7d2fe;--pc-colors-indigo-300:#a5b4fc;--pc-colors-indigo-400:#818cf8;--pc-colors-indigo-500:#6366f1;--pc-colors-indigo-600:#4f46e5;--pc-colors-indigo-700:#4338ca;--pc-colors-indigo-800:#3730a3;--pc-colors-indigo-900:#312e81;--pc-colors-indigo-950:#1e1b4b;--pc-colors-blue-50:#eff6ff;--pc-colors-blue-100:#dbeafe;--pc-colors-blue-200:#bfdbfe;--pc-colors-blue-300:#93c5fd;--pc-colors-blue-400:#60a5fa;--pc-colors-blue-500:#3b82f6;--pc-colors-blue-600:#2563eb;--pc-colors-blue-700:#1d4ed8;--pc-colors-blue-800:#1e40af;--pc-colors-blue-900:#1e3a8a;--pc-colors-blue-950:#172554;--pc-colors-sky-50:#f0f9ff;--pc-colors-sky-100:#e0f2fe;--pc-colors-sky-200:#bae6fd;--pc-colors-sky-300:#7dd3fc;--pc-colors-sky-400:#38bdf8;--pc-colors-sky-500:#0ea5e9;--pc-colors-sky-600:#0284c7;--pc-colors-sky-700:#0369a1;--pc-colors-sky-800:#075985;--pc-colors-sky-900:#0c4a6e;--pc-colors-sky-950:#082f49;--pc-colors-cyan-50:#ecfeff;--pc-colors-cyan-100:#cffafe;--pc-colors-cyan-200:#a5f3fc;--pc-colors-cyan-300:#67e8f9;--pc-colors-cyan-400:#22d3ee;--pc-colors-cyan-500:#06b6d4;--pc-colors-cyan-600:#0891b2;--pc-colors-cyan-700:#0e7490;--pc-colors-cyan-800:#155e75;--pc-colors-cyan-900:#164e63;--pc-colors-cyan-950:#083344;--pc-colors-teal-50:#f0fdfa;--pc-colors-teal-100:#ccfbf1;--pc-colors-teal-200:#99f6e4;--pc-colors-teal-300:#5eead4;--pc-colors-teal-400:#2dd4bf;--pc-colors-teal-500:#14b8a6;--pc-colors-teal-600:#0d9488;--pc-colors-teal-700:#0f766e;--pc-colors-teal-800:#115e59;--pc-colors-teal-900:#134e4a;--pc-colors-teal-950:#042f2e;--pc-colors-emerald-50:#ecfdf5;--pc-colors-emerald-100:#d1fae5;--pc-colors-emerald-200:#a7f3d0;--pc-colors-emerald-300:#6ee7b7;--pc-colors-emerald-400:#34d399;--pc-colors-emerald-500:#10b981;--pc-colors-emerald-600:#059669;--pc-colors-emerald-700:#047857;--pc-colors-emerald-800:#065f46;--pc-colors-emerald-900:#064e3b;--pc-colors-emerald-950:#022c22;--pc-colors-green-50:#f0fdf4;--pc-colors-green-100:#dcfce7;--pc-colors-green-200:#bbf7d0;--pc-colors-green-300:#86efac;--pc-colors-green-400:#4ade80;--pc-colors-green-500:#22c55e;--pc-colors-green-600:#16a34a;--pc-colors-green-700:#15803d;--pc-colors-green-800:#166534;--pc-colors-green-900:#14532d;--pc-colors-green-950:#052e16;--pc-colors-lime-50:#f7fee7;--pc-colors-lime-100:#ecfccb;--pc-colors-lime-200:#d9f99d;--pc-colors-lime-300:#bef264;--pc-colors-lime-400:#a3e635;--pc-colors-lime-500:#84cc16;--pc-colors-lime-600:#65a30d;--pc-colors-lime-700:#4d7c0f;--pc-colors-lime-800:#3f6212;--pc-colors-lime-900:#365314;--pc-colors-lime-950:#1a2e05;--pc-colors-yellow-50:#fefce8;--pc-colors-yellow-100:#fef9c3;--pc-colors-yellow-200:#fef08a;--pc-colors-yellow-300:#fde047;--pc-colors-yellow-400:#facc15;--pc-colors-yellow-500:#eab308;--pc-colors-yellow-600:#ca8a04;--pc-colors-yellow-700:#a16207;--pc-colors-yellow-800:#854d0e;--pc-colors-yellow-900:#713f12;--pc-colors-yellow-950:#422006;--pc-colors-amber-50:#fffbeb;--pc-colors-amber-100:#fef3c7;--pc-colors-amber-200:#fde68a;--pc-colors-amber-300:#fcd34d;--pc-colors-amber-400:#fbbf24;--pc-colors-amber-500:#f59e0b;--pc-colors-amber-600:#d97706;--pc-colors-amber-700:#b45309;--pc-colors-amber-800:#92400e;--pc-colors-amber-900:#78350f;--pc-colors-amber-950:#451a03;--pc-colors-orange-50:#fff7ed;--pc-colors-orange-100:#ffedd5;--pc-colors-orange-200:#fed7aa;--pc-colors-orange-300:#fdba74;--pc-colors-orange-400:#fb923c;--pc-colors-orange-500:#f97316;--pc-colors-orange-600:#ea580c;--pc-colors-orange-700:#c2410c;--pc-colors-orange-800:#9a3412;--pc-colors-orange-900:#7c2d12;--pc-colors-orange-950:#431407;--pc-colors-red-50:#fef2f2;--pc-colors-red-100:#fee2e2;--pc-colors-red-200:#fecaca;--pc-colors-red-300:#fca5a5;--pc-colors-red-400:#f87171;--pc-colors-red-500:#ef4444;--pc-colors-red-600:#dc2626;--pc-colors-red-700:#b91c1c;--pc-colors-red-800:#991b1b;--pc-colors-red-900:#7f1d1d;--pc-colors-red-950:#450a0a;--pc-colors-neutral-50:#fafafa;--pc-colors-neutral-100:#f5f5f5;--pc-colors-neutral-200:#e5e5e5;--pc-colors-neutral-300:#d4d4d4;--pc-colors-neutral-400:#a3a3a3;--pc-colors-neutral-500:#737373;--pc-colors-neutral-600:#525252;--pc-colors-neutral-700:#404040;--pc-colors-neutral-800:#262626;--pc-colors-neutral-900:#171717;--pc-colors-neutral-950:#0a0a0a;--pc-colors-stone-50:#fafaf9;--pc-colors-stone-100:#f5f5f4;--pc-colors-stone-200:#e7e5e4;--pc-colors-stone-300:#d6d3d1;--pc-colors-stone-400:#a8a29e;--pc-colors-stone-500:#78716c;--pc-colors-stone-600:#57534e;--pc-colors-stone-700:#44403c;--pc-colors-stone-800:#292524;--pc-colors-stone-900:#1c1917;--pc-colors-stone-950:#0c0a09;--pc-colors-zinc-50:#fafafa;--pc-colors-zinc-100:#f4f4f5;--pc-colors-zinc-200:#e4e4e7;--pc-colors-zinc-300:#d4d4d8;--pc-colors-zinc-400:#a1a1aa;--pc-colors-zinc-500:#71717a;--pc-colors-zinc-600:#52525b;--pc-colors-zinc-700:#3f3f46;--pc-colors-zinc-800:#27272a;--pc-colors-zinc-900:#18181b;--pc-colors-zinc-950:#09090b;--pc-colors-gray-50:#f9fafb;--pc-colors-gray-100:#f3f4f6;--pc-colors-gray-200:#e5e7eb;--pc-colors-gray-300:#d1d5db;--pc-colors-gray-400:#9ca3af;--pc-colors-gray-500:#6b7280;--pc-colors-gray-600:#4b5563;--pc-colors-gray-700:#374151;--pc-colors-gray-800:#1f2937;--pc-colors-gray-900:#111827;--pc-colors-gray-950:#030712;--pc-colors-slate-50:#f8fafc;--pc-colors-slate-100:#f1f5f9;--pc-colors-slate-200:#e2e8f0;--pc-colors-slate-300:#cbd5e1;--pc-colors-slate-400:#94a3b8;--pc-colors-slate-500:#64748b;--pc-colors-slate-600:#475569;--pc-colors-slate-700:#334155;--pc-colors-slate-800:#1e293b;--pc-colors-slate-900:#0f172a;--pc-colors-slate-950:#020617;--pc-colors-primary-violet:#9121c2;--pc-colors-primary-salmon:#ff5e5e;--pc-colors-primary-sand:#fcede3;--pc-colors-secondary-dark:#2c1338;--pc-colors-secondary-dark-alpha:#2c1338e0;--pc-colors-secondary-salmon:#fd897a;--pc-colors-secondary-violet:#a931de;--pc-colors-secondary-dark-text:#4a5568;--pc-colors-secondary-text:#747b95;--pc-colors-nav-background:#131313;--pc-colors-ed-text:#1c1815;--pc-colors-ed-sub:#7e756d;--pc-colors-ed-line:rgba(22,18,13,.085);--pc-colors-ed-body-bg:#fcfcfb;--pc-colors-ed-card:#fff;--pc-colors-ed-alt-bg:#f4f3f1;--pc-colors-ed-dark:#14141a;--pc-colors-ed-accent:#8554ff;--pc-colors-ed-win-a:#0b7a5a;--pc-colors-ed-win-b:#8554ff;--pc-colors-ed-tint-a:#f2fbf7;--pc-colors-ed-tint-b:#f4f1ff;--pc-colors-ed-pill-a:#dff3ea;--pc-colors-ed-pill-b:#f0ebff;--pc-colors-ed-on-dark-a:#6ee0b0;--pc-colors-ed-on-dark-b:#b79fff;--pc-colors-ed-focal-tint:#f1eaff;--pc-colors-ed-focal-border:#8554ff73;--pc-colors-content-pages-text-primary:#171717;--pc-colors-content-pages-text-secondary:#737373;--pc-colors-content-pages-text-tertiary:#bdbdbd;--pc-colors-content-pages-text-markdown-body:#404040;--pc-colors-gray-scale-gray100:#f7f7f7;--pc-colors-gray-scale-gray200:#e4e4e4;--pc-breakpoints-sm:30em;--pc-breakpoints-md:48em;--pc-breakpoints-lg:62em;--pc-breakpoints-xl:80em;--pc-breakpoints-2xl:96em;--pc-breakpoints-custom-sm:37.5em;--pc-breakpoints-custom-md:56.25em}@keyframes spin{to{transform:rotate(1turn)}}@keyframes ping{75%,to{transform:scale(2);opacity:0}}@keyframes pulse{50%{opacity:.5}}@keyframes bounce{0%,to{transform:translateY(-25%);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:none;animation-timing-function:cubic-bezier(0,0,.2,1)}}}@layer recipes{@layer _base{.pc-text{font-family:var(--pc-fonts-inter)}.pc-heading{font-family:var(--pc-fonts-mona-sans);font-weight:var(--pc-font-weights-bold)}}.pc-text--variant_body1{font-size:18px;line-height:32px;font-weight:400}.pc-text--variant_smallbody2{font-size:12px;line-height:18px;font-weight:400}.pc-text--variant_body2{font-size:16px;line-height:26px;font-weight:400}.pc-text--variant_smallbody1{font-size:13px;line-height:19.5px;font-weight:400}.pc-text--variant_body3{font-size:14px;line-height:24px;font-weight:400}.pc-text--variant_bookLink{font-family:var(--pc-fonts-mona-sans);font-size:14px;line-height:20px;font-weight:500}.pc-text--variant_contentBodyParagraph{font-family:var(--pc-fonts-inter);font-size:16px;line-height:24px;letter-spacing:.16px;font-weight:400}.pc-heading--variant_h3{font-size:20px;line-height:32px;font-weight:500}.pc-heading--variant_h2{font-size:24px;line-height:34px;font-weight:500}.pc-heading--variant_h4{font-size:18px;line-height:28px;font-weight:500}.pc-heading--variant_h1{font-size:36px;line-height:44px;letter-spacing:-.36px;font-weight:550}.pc-heading--variant_subh1,.pc-heading--variant_subh2{font-size:18px;line-height:28px;font-weight:400}.pc-heading--size_md{font-size:1.25rem;line-height:1.2}.pc-heading--size_lg{font-size:1.5rem;line-height:1.33}@media screen and (min-width:30rem){.pc-text--variant_bookLink{font-size:14px;line-height:20px}.pc-text--variant_contentBodyParagraph{font-size:16px;line-height:24px;letter-spacing:.16px}.pc-heading--variant_h2{font-size:24px;line-height:34px}.pc-heading--variant_h1{font-size:40px;line-height:48px;letter-spacing:-.4px}}@media screen and (min-width:37.5rem){.pc-text--variant_bookLink{font-size:16px;line-height:25px}.pc-text--variant_contentBodyParagraph{font-size:18px;line-height:28px;letter-spacing:.18px}.pc-heading--variant_h2{font-size:24px;line-height:34px}.pc-heading--variant_h1{font-size:44px;line-height:52px;letter-spacing:-.44px}.pc-heading--size_lg{font-size:1.875rem;line-height:1.2}}@media screen and (min-width:48rem){.pc-heading--variant_h2{font-size:26px;line-height:36px}.pc-heading--variant_h1{font-size:48px;line-height:58px;letter-spacing:-.48px}}@media screen and (min-width:56.25rem){.pc-heading--variant_h2{font-size:28px;line-height:40px}.pc-heading--variant_h1{font-size:56px;line-height:68px;letter-spacing:-.56px}}@media screen and (min-width:80rem){.xl\:pc-heading--variant_h3{font-size:20px;line-height:32px;font-weight:500}}}@layer utilities{.pc-p_0_20px{padding:0 20px}.pc-bg_\#F7F6F7{background:#f7f6f7}.pc-bg_url\(\"\/images\/footer\/footerAdBg\.svg\"\)\,_linear-gradient\(270deg\,\#9121c2\,\#ff5e5e\){background:url(/images/footer/footerAdBg.svg),linear-gradient(270deg,#9121c2,#ff5e5e)}.pc-bg_url\(\"\/images\/footer\/footerNewsletterBg\.svg\"\)\,_linear-gradient\(270deg\,\#9121c2\,\#ff5e5e\){background:url(/images/footer/footerNewsletterBg.svg),linear-gradient(270deg,#9121c2,#ff5e5e)}.pc-bg_secondary\.dark{background:var(--pc-colors-secondary-dark)}.pc-bg_\#F5F5F5{background:#f5f5f5}.pc-bd_none{border:var(--pc-borders-none)}.pc-bg_var\(--cta-bg\){background:var(--cta-bg)}.pc-bg_\#fff{background:#fff}.pc-bd_1px_solid_\#E6E3E7{border:1px solid #e6e3e7}.pc-bg_none{background:none}.pc-bg_grayScale\.gray100{background:var(--pc-colors-gray-scale-gray100)}.pc-bg_\#FCFCFB{background:#fcfcfb}.pc-bg_url\(\'\/banner-pattern\.svg\'\)_no-repeat\,_linear-gradient\(270deg\,\#9121c2\,\#ff5e5e\){background:url(/banner-pattern.svg) no-repeat,linear-gradient(270deg,#9121c2,#ff5e5e)}.pc-bg_\#0A0A0A{background:#0a0a0a}.pc-m_0_auto{margin:0 auto}.pc-m_22px_auto_0{margin:22px auto 0}.pc-bg_rgba\(255\,255\,255\,\.04\){background:#ffffff0a}.pc-bd_1px_solid_rgba\(255\,255\,255\,\.14\){border:1px solid #ffffff24}.pc-bd_1px_solid{border:1px solid}.pc-bg_rgba\(133\,84\,255\,\.14\){background:#8554ff24}.pc-bd_1px_solid_rgba\(133\,84\,255\,\.28\){border:1px solid #8554ff47}.pc-bd_1px_solid_rgba\(255\,255\,255\,\.08\){border:1px solid #ffffff14}.pc-p_18px{padding:18px}.pc-bg_rgba\(133\,84\,255\,\.12\){background:#8554ff1f}.pc-bg_\#FFFFFF{background:#fff}.pc-bg_transparent{background:var(--pc-colors-transparent)}.pc-bg_hsla\(0\,0\%\,100\%\,\.08\){background:#ffffff14}.pc-p_0{padding:var(--pc-spacing-0)}.pc-bg_\#f3f3f3{background:#f3f3f3}.pc-p_5{padding:var(--pc-spacing-5)}.pc-bg_linear-gradient\(180deg\,_rgba\(255\,_255\,_255\,_0\.24\)_0\%\,_rgba\(255\,_255\,_255\,_0\)_100\%\){background:linear-gradient(180deg,#ffffff3d,#fff0)}.pc-p_2px{padding:2px}.pc-bg_linear-gradient\(180deg\,_\#3a3036_0\%\,_\#4e3f48_100\%\){background:linear-gradient(180deg,#3a3036,#4e3f48)}.pc-bg_radial-gradient\(50\%_91\.92\%_at_50\%_110\%\,_rgba\(140\,_0\,_85\,_0\.72\)_0\%\,_rgba\(140\,_0\,_85\,_0\.4\)_40\%\,_rgba\(140\,_0\,_85\,_0\)_100\%\)\,_linear-gradient\(0deg\,_\#131313\,_\#131313\){background:radial-gradient(50% 91.92% at 50% 110%,#8c0055b8 0,#8c005566 40%,#8c005500 100%),linear-gradient(0deg,#131313,#131313)}.pc-bg_white{background:var(--pc-colors-white)}.pc-inset_0{inset:var(--pc-spacing-0)}.pc-bg_\#231E2E{background:#231e2e}.pc-p_0_12px{padding:0 12px}.pc-bg_rgba\(255\,255\,255\,0\.04\){background:#ffffff0a}.pc-bg_rgba\(255\,255\,255\,0\.88\){background:#ffffffe0}.pc-m_0_0_20px_20px{margin:0 0 20px 20px}.pc-p_16px_12px{padding:16px 12px}.pc-bg_nav\.background{background:var(--pc-colors-nav-background)}.pc-bg_\#f4f4f5{background:#f4f4f5}.pc-bg_\#F7F7F7{background:#f7f7f7}.pc-bg_\#e4e4e7{background:#e4e4e7}.pc-bg_rgb\(18\,18\,18\){background:#121212}.pc-bg_\#a855f7{background:#a855f7}.pc-anim_spin_0\.6s_linear_infinite{animation:spin .6s linear infinite}.pc-bg_\#18181b{background:#18181b}.pc-p_2{padding:var(--pc-spacing-2)}.pc-bd_1px_solid_rgba\(22\,18\,13\,\.085\){border:1px solid rgba(22,18,13,.085)}.pc-bg_\#FBF8FF{background:#fbf8ff}.pc-p_16px{padding:16px}.pc-bg_\#F1EAFF{background:#f1eaff}.pc-bg_\#8554FF{background:#8554ff}.pc-bg_rgba\(255\,255\,255\,\.08\){background:#ffffff14}.pc-bd_1px_solid_rgba\(255\,255\,255\,\.18\){border:1px solid #ffffff2e}.pc-p_12px{padding:12px}.pc-p_24px{padding:24px}.pc-m_0{margin:var(--pc-spacing-0)}.pc-bg_grayScale\.gray200{background:var(--pc-colors-gray-scale-gray200)}.pc-p_18px_24px{padding:18px 24px}.pc-p_20px{padding:20px}.pc-bg_\#16161A{background:#16161a}.pc-bg_rgba\(250\,250\,249\,0\.9\){background:#fafaf9e6}.pc-bg_radial-gradient\(50\%_91\.92\%_at_50\%_118\%\,_rgba\(140\,_0\,_85\,_0\.72\)_0\%\,_rgba\(140\,_0\,_85\,_0\.4\)_40\%\,_rgba\(140\,_0\,_85\,_0\)_100\%\)\,_linear-gradient\(0deg\,_\#131313\,_\#131313\){background:radial-gradient(50% 91.92% at 50% 118%,#8c0055b8 0,#8c005566 40%,#8c005500 100%),linear-gradient(0deg,#131313,#131313)}.pc-bg_\#F4F3F1{background:#f4f3f1}.pc-bg_radial-gradient\(50\%_100\%_at_50\%_0\%\,_rgba\(140\,0\,85\,\.66\)\,_rgba\(140\,0\,85\,0\)\)\,_\#131313{background:radial-gradient(50% 100% at 50% 0,#8c0055a8,#8c005500),#131313}.pc-p_14px{padding:14px}.pc-p_8px{padding:8px}.pc-bg_currentColor{background:currentColor}.pc-p_12px_14px{padding:12px 14px}.pc-bd_1px_solid_rgba\(31\,157\,87\,\.28\){border:1px solid #1f9d5747}.pc-bg_\#F4FBF7{background:#f4fbf7}.pc-bd_1px_solid_rgba\(192\,39\,61\,\.24\){border:1px solid #c0273d3d}.pc-bg_\#FCF5F6{background:#fcf5f6}.pc-bg_\#1F9D57{background:#1f9d57}.pc-bg_\#C0273D{background:#c0273d}.pc-bd_1px_solid_var\(--pc-colors-ed-line\){border:1px solid var(--pc-colors-ed-line)}.pc-p_15px_20px{padding:15px 20px}.pc-p_9px_20px_3px{padding:9px 20px 3px}.pc-p_12px_20px{padding:12px 20px}.pc-bg_\#FAF9F7{background:#faf9f7}.pc-bg_\#F7F5F2{background:#f7f5f2}.pc-p_22px{padding:22px}.pc-bg_var\(--pc-colors-ed-dark\){background:var(--pc-colors-ed-dark)}.pc-p_13px_16px{padding:13px 16px}.pc-p_9px_16px{padding:9px 16px}.pc-p_12px_16px{padding:12px 16px}.pc-p_16px_18px{padding:16px 18px}.pc-bg_rgba\(255\,255\,255\,\.1\){background:#ffffff1a}.pc-p_px{padding:px}.pc-p_4{padding:var(--pc-spacing-4)}.pc-bg_rgba\(255\,255\,255\,\.06\){background:#ffffff0f}.pc-bd_1px_solid_rgba\(133\,84\,255\,\.32\){border:1px solid #8554ff52}.pc-bd_1px_solid_rgba\(255\,255\,255\,\.1\){border:1px solid #ffffff1a}.pc-bg_\#121212{background:#121212}.pc-bg_rgba\(255\,255\,255\,\.05\){background:#ffffff0d}.pc-bg_tableHeaderBg{background:tableHeaderBg}.pc-mx_auto{margin-inline:auto}.pc-td_none{text-decoration:none}.pc-px_2{padding-inline:var(--pc-spacing-2)}.pc-my_32px{margin-block:32px}.pc-px_4{padding-inline:var(--pc-spacing-4)}.pc-bdr_24px_24px_0_0{border-radius:24px 24px 0 0}.pc-flex_1{flex:1 1}.pc-py_4{padding-block:var(--pc-spacing-4)}.pc-bd-c_\#e4e4e7{border-color:#e4e4e7}.pc-border-style_solid{border-style:solid}.pc-my_8{margin-block:var(--pc-spacing-8)}.pc-gap_4{gap:var(--pc-spacing-4)}.pc-px_20px{padding-inline:20px}.pc-py_80px{padding-block:80px}.pc-bdr_full{border-radius:var(--pc-radii-full)}.pc-py_10px{padding-block:10px}.pc-px_22px{padding-inline:22px}.pc-bdr_0\.25rem{border-radius:.25rem}.pc-trs_all_\.2s_ease-in-out{transition:all .2s ease-in-out}.pc-px_24px{padding-inline:24px}.pc-trs_all_\.3s_cubic-bezier\(\.645\,\.045\,\.355\,1\){transition:all .3s cubic-bezier(.645,.045,.355,1)}.pc-trs_all_\.3s_ease-in-out{transition:all .3s ease-in-out}.pc-bdr_2px{border-radius:2px}.pc-my_10{margin-block:var(--pc-spacing-10)}.pc-bdr_64px{border-radius:64px}.pc-bdr_12px{border-radius:12px}.pc-px_30px{padding-inline:30px}.pc-bd-w_1px{border-width:1px}.pc-bd-c_rgba\(44\,_19\,_56\,_0\.2\){border-color:#2c133833}.pc-py_3{padding-block:var(--pc-spacing-3)}.pc-px_18px{padding-inline:18px}.pc-bd-c_grayScale\.gray200{border-color:var(--pc-colors-gray-scale-gray200)}.pc-py_5{padding-block:var(--pc-spacing-5)}.pc-my_6{margin-block:var(--pc-spacing-6)}.pc-mx_-5{margin-inline:calc(var(--pc-spacing-5) * -1)}.pc-bdr_0{border-radius:0}.pc-ov_hidden{overflow:hidden}.pc-my_16{margin-block:var(--pc-spacing-16)}.pc-py_24px{padding-block:24px}.pc-bdr_10px{border-radius:10px}.pc-my_0{margin-block:var(--pc-spacing-0)}.pc-bd-t_1px_solid_transparent{border-top:1px solid #0000}.pc-bdr_0_0_40px_40px{border-radius:0 0 40px 40px}.pc-py_14px{padding-block:14px}.pc-ring_none{outline:var(--pc-borders-none)}.pc-gap_8px{gap:8px}.pc-px_14px{padding-inline:14px}.pc-py_8px{padding-block:8px}.pc-bdr_999px{border-radius:999px}.pc-trs_all_\.15s{transition:all .15s}.pc-bd-t_1px_solid_rgba\(255\,255\,255\,\.08\){border-top:1px solid #ffffff14}.pc-gap_13px{gap:13px}.pc-flex_none{flex:none}.pc-bdr_9px{border-radius:9px}.pc-gap_12px{gap:12px}.pc-bdr_14px{border-radius:14px}.pc-trs_border-color_\.15s\,_transform_\.15s\,_background_\.15s{transition:border-color .15s,transform .15s,background .15s}.pc-gap_7px{gap:7px}.pc-bdr_5px{border-radius:5px}.pc-px_5px{padding-inline:5px}.pc-py_1px{padding-block:1px}.pc-py_70px{padding-block:70px}.pc-bd-t_1px_solid_rgba\(255\,255\,255\,\.1\){border-top:1px solid #ffffff1a}.pc-li-s_none{list-style:none}.pc-py_17px{padding-block:17px}.pc-gap_3{gap:var(--pc-spacing-3)}.pc-trs_background-color_0\.2s{transition:background-color .2s}.pc-bdr_6px{border-radius:6px}.pc-gap_12{gap:var(--pc-spacing-12)}.pc-bdr_20px{border-radius:20px}.pc-ov_auto{overflow:auto}.pc-py_6{padding-block:var(--pc-spacing-6)}.pc-place-items_center{place-items:center}.pc-trs_opacity_\.15s\,_color_\.15s\,_background_\.15s{transition:opacity .15s,color .15s,background .15s}.pc-bdr_16px_16px_0_0{border-radius:16px 16px 0 0}.pc-py_7px{padding-block:7px}.pc-bdr_8px{border-radius:8px}.pc-gap_9{gap:var(--pc-spacing-9)}.pc-td_underline{text-decoration:underline}.pc-bdr_16{border-radius:16px}.pc-bdr_54px{border-radius:54px}.pc-bd-c_rgba\(44\,_19\,_56\,_0\.1\){border-color:#2c13381a}.pc-gap_14px{gap:14px}.pc-px_8{padding-inline:var(--pc-spacing-8)}.pc-mx_-10{margin-inline:calc(var(--pc-spacing-10) * -1)}.pc-py_12{padding-block:var(--pc-spacing-12)}.pc-px_10{padding-inline:var(--pc-spacing-10)}.pc-bd-t_1px_solid_\#E4E4E4{border-top:1px solid #e4e4e4}.pc-py_30px{padding-block:30px}.pc-bd-c_transparent{border-color:var(--pc-colors-transparent)}.pc-ring_0{outline:0}.pc-px_0{padding-inline:var(--pc-spacing-0)}.pc-py_0{padding-block:var(--pc-spacing-0)}.pc-ring_true{outline:true}.pc-bg-p_center{background-position:50%}.pc-bdr_40px{border-radius:40px}.pc-trs_0\.3s{transition:.3s}.pc-bd-c_rgba\(255\,255\,255\,0\.12\){border-color:#ffffff1f}.pc-px_16px{padding-inline:16px}.pc-gap_10px{gap:10px}.pc-gap_2px{gap:2px}.pc-mx_20px{margin-inline:20px}.pc-gap_16px{gap:16px}.pc-bd-c_rgb\(255\,255\,255\,0\.12\){border-color:#ffffff1f}.pc-trs_color_0\.3s{transition:color .3s}.pc-py_16px{padding-block:16px}.pc-trs_width_0\.1s_ease-out{transition:width .1s ease-out}.pc-gap_0{gap:var(--pc-spacing-0)}.pc-gap_6{gap:var(--pc-spacing-6)}.pc-bd-b_1px_solid_\#E2E8F0{border-bottom:1px solid #e2e8f0}.pc-bd-b_2px_solid_black{border-bottom:2px solid #000}.pc-bd-b_2px_solid_transparent{border-bottom:2px solid #0000}.pc-trs_all_0\.2s{transition:all .2s}.pc-bd-w_2px{border-width:2px}.pc-bd-c_currentColor{border-color:currentColor}.pc-bdr_9999px{border-radius:9999px}.pc-py_10{padding-block:var(--pc-spacing-10)}.pc-px_1\.25rem{padding-inline:1.25rem}.pc-gap_0\.75rem{gap:.75rem}.pc-trs_background-color_200ms\,_color_200ms\,_border-color_200ms\,_box-shadow_200ms{transition:background-color .2s,color .2s,border-color .2s,box-shadow .2s}.pc-px_0\.875rem{padding-inline:.875rem}.pc-gap_0\.5rem{gap:.5rem}.pc-gap_1{gap:var(--pc-spacing-1)}.pc-gap_2{gap:var(--pc-spacing-2)}.pc-bdr_0_0_24px_24px{border-radius:0 0 24px 24px}.pc-mx_6px{margin-inline:6px}.pc-bd-l_3px_solid_\#8554FF{border-left:3px solid #8554ff}.pc-bdr_0_14px_14px_0{border-radius:0 14px 14px 0}.pc-gap_11px{gap:11px}.pc-bd-t_1px_solid_rgba\(22\,18\,13\,\.085\){border-top:1px solid rgba(22,18,13,.085)}.pc-px_7px{padding-inline:7px}.pc-py_3px{padding-block:3px}.pc-bd-b_1px_solid_rgba\(22\,18\,13\,\.085\){border-bottom:1px solid rgba(22,18,13,.085)}.pc-py_20px{padding-block:20px}.pc-bdr_11px{border-radius:11px}.pc-bdr_22px{border-radius:22px}.pc-py_48px{padding-block:48px}.pc-px_26px{padding-inline:26px}.pc-bd-b_1px_solid_\#E4E4E7{border-bottom:1px solid #e4e4e7}.pc-bdr_16px{border-radius:16px}.pc-trs_background-color_0\.3s{transition:background-color .3s}.pc-gap_20px{gap:20px}.pc-bd-l_2px_solid{border-left:2px solid}.pc-bd-l_1px_solid{border-left:1px solid}.pc-py_64px{padding-block:64px}.pc-gap_80px{gap:80px}.pc-py_calc\(56px_\+_40px\){padding-block:calc(56px + 40px)}.pc-flex-flow_column-reverse{flex-flow:column-reverse}.pc-gap_42px{gap:42px}.pc-my_20px{margin-block:20px}.pc-my_3{margin-block:var(--pc-spacing-3)}.pc-gap_4px{gap:4px}.pc-gap_9px{gap:9px}.pc-bd-c_\#ECECEF{border-color:#ececef}.pc-trs_transform_\.14s_ease\,_box-shadow_\.14s_ease\,_border-color_\.14s_ease{transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease}.pc-trs_transform_\.14s_ease{transition:transform .14s ease}.pc-px_13px{padding-inline:13px}.pc-trs_all_\.12s_ease{transition:all .12s ease}.pc-bd-c_\#16161A{border-color:#16161a}.pc-bd-b_1px_solid{border-bottom:1px solid}.pc-flex_1_1_300px{flex:1 1 300px}.pc-px_9px{padding-inline:9px}.pc-py_60px{padding-block:60px}.pc-tw_balance{text-wrap:balance}.pc-py_9px{padding-block:9px}.pc-gap_1\.5{gap:var(--pc-spacing-1\.5)}.pc-trs_\.2s{transition:.2s}.pc-trs_0\.5s{transition:.5s}.pc-bd-w_0{border-width:0}.pc-bd-w_1{border-width:1px}.pc-bdr_8{border-radius:8px}.pc-my_16px{margin-block:16px}.pc-px_8px{padding-inline:8px}.pc-mx_16px{margin-inline:16px}.pc-columns_1{column-count:1}.pc-columns_2{column-count:2}.pc-gap_5px{gap:5px}.pc-py_4px{padding-block:4px}.pc-gap_6px{gap:6px}.pc-bdr_7px{border-radius:7px}.pc-gap_18px{gap:18px}.pc-bd-b_1px_solid_var\(--pc-colors-ed-line\){border-bottom:1px solid var(--pc-colors-ed-line)}.pc-bd-t_1px_solid_rgba\(22\,18\,13\,\.06\){border-top:1px solid #16120d0f}.pc-bd-t_1px_solid_var\(--pc-colors-ed-line\){border-top:1px solid var(--pc-colors-ed-line)}.pc-py_40px{padding-block:40px}.pc-bd-b_1px_solid_rgba\(22\,18\,13\,\.06\){border-bottom:1px solid #16120d0f}.pc-py_18px{padding-block:18px}.pc-gap_24px{gap:24px}.pc-py_12px{padding-block:12px}.pc-bdr_10{border-radius:10px}.pc-bdr_14{border-radius:14px}.pc-bd-c_\#E2DEE4{border-color:#e2dee4}.pc-bdr_13{border-radius:13px}.pc-trs_0\.2s{transition:.2s}.pc-mx_-4{margin-inline:calc(var(--pc-spacing-4) * -1)}.pc-mx_0{margin-inline:var(--pc-spacing-0)}.pc-px_5{padding-inline:var(--pc-spacing-5)}.pc-bd-c_rgba\(44\,_19\,_56\,_0\.12\){border-color:#2c13381f}.pc-py_11px{padding-block:11px}.pc-mx_7px{margin-inline:7px}.pc-gap_48px{gap:48px}.pc-flex_1_1_540px{flex:1 1 540px}.pc-trs_border-color_\.15s\,_background_\.15s{transition:border-color .15s,background .15s}.pc-py_13px{padding-block:13px}.pc-bd-t_1px_solid_rgba\(255\,255\,255\,\.07\){border-top:1px solid #ffffff12}.pc-bdr_50\%{border-radius:50%}.pc-trs_border-color_\.15s\,_transform_\.15s{transition:border-color .15s,transform .15s}.pc-gap_8px_20px{gap:8px 20px}.pc-flex_1_1_280px{flex:1 1 280px}.pc-gap_28px{gap:28px}.pc-trs_transform_0\.2s_ease\,_color_0\.2s{transition:transform .2s ease,color .2s}.pc-bd-r_1px_solid_\#E2E8F0{border-right:1px solid #e2e8f0}.pc-bd-b_none{border-bottom:var(--pc-borders-none)}.pc-c_inherit{color:inherit}.pc-fill_none{fill:none}.pc-fw_500{font-weight:500}.pc-d_flex{display:flex}.pc-d_grid{display:grid}.pc-cg_16{column-gap:var(--pc-spacing-16)}.pc-rg_3{row-gap:var(--pc-spacing-3)}.pc-pos_relative{position:relative}.pc-c_white{color:var(--pc-colors-white)}.pc-flex-d_column{flex-direction:column}.pc-as_center{align-self:center}.pc-jc_flex-end{justify-content:flex-end}.pc-flex-sh_0{flex-shrink:0}.pc-c_primary\.violet{color:var(--pc-colors-primary-violet)}.pc-d_block{display:block}.pc-op_0\.2{opacity:.2}.pc-flex-wrap_wrap{flex-wrap:wrap}.pc-jc_center{justify-content:center}.pc-ai_center{align-items:center}.pc-op_0\.48{opacity:.48}.pc-white-space_nowrap{white-space:nowrap}.pc-c_rgba\(255\,_255\,_255\,_0\.8\){color:#fffc}.pc-ta_center{text-align:center}.pc-d_none{display:none}.pc-ff_inter{font-family:var(--pc-fonts-inter)}.pc-c_\#404040{color:#404040}.pc-fs_14px{font-size:14px}.pc-fw_600{font-weight:600}.pc-lh_20px{line-height:20px}.pc-ls_0\.14px{letter-spacing:.14px}.pc-cursor_pointer{cursor:pointer}.pc-d_inline-flex{display:inline-flex}.pc-c_var\(--cta-fg\){color:var(--cta-fg)}.pc-bx-sh_var\(--cta-shadow\){box-shadow:var(--cta-shadow)}.pc-c_\#fff{color:#fff}.pc-bg-s_200\%{background-size:200%}.pc-c_var\(--cta-arrow-color\){color:var(--cta-arrow-color)}.pc-bg-c_white{background-color:var(--pc-colors-white)}.pc-ff_Roboto\,_Poppins\,_arial\,_sans-serif{font-family:Roboto,Poppins,arial,sans-serif}.pc-ls_0\.22px{letter-spacing:.22px}.pc-c_rgba\(0\,_0\,_0\,_0\.54\){color:#0000008a}.pc-asp_560_\/_315{aspect-ratio:560/315}.pc-va_top{vertical-align:top}.pc-ta_left{text-align:left}.pc-bd-cl_collapse{border-collapse:collapse}.pc-lh_inherit{line-height:inherit}.pc-ta_start{text-align:start}.pc-c_contentPages\.textSecondary{color:var(--pc-colors-content-pages-text-secondary)}.pc-tt_none{text-transform:none}.pc-bd-e-w_1px{border-inline-end-width:1px}.pc-c_contentPages\.textMarkdownBody{color:var(--pc-colors-content-pages-text-markdown-body)}.pc-fs_sm{font-size:var(--pc-font-sizes-sm)}.pc-fs_xl{font-size:var(--pc-font-sizes-xl)}.pc-lh_1\.6{line-height:1.6}.pc-font-style_normal{font-style:normal}.pc-c_secondary\.darkText{color:var(--pc-colors-secondary-dark-text)}.pc-fs_18px{font-size:18px}.pc-c_contentPages\.textPrimary{color:var(--pc-colors-content-pages-text-primary)}.pc-bg-s_cover{background-size:cover}.pc-label_Start_free{label:Start free}.pc-href_\#{href:#}.pc-tag_Push{tag:Push}.pc-title_Add_push_in_the_same_send{title:Add push in the same send}.pc-body_Reach_mobile_and_web_with_push_alongside_SMS_from_one_notification\,_with_no_new_integration_in_your_code\.{body:Reach mobile and web with push alongside SMS from one notification,with no new integration in your code.}.pc-title_What_teams_build_with_it{title:What teams build with it}.pc-items_Send_an_SMS_and_a_push_from_the_same_notification\,_so_users_get_it_wherever_they_are{items:Send an SMS and a push from the same notification,so users get it wherever they are}.pc-title_Connect_it_in_minutes{title:Connect it in minutes}.pc-lead_An_admin_adds_Africa\'s_Talking_once_on_the_Integrations_page_in_Courier\._Once_connected\,_anyone_on_your_team_can_send_SMS_through_Africa\'s_Talking_and_add_push_or_an_in-app_inbox_whenever_they_need_them\.{lead:An admin adds Africa"s Talking once on the Integrations page in Courier. Once connected, anyone on your team can send SMS through Africa"s Talking and add push or an in-app inbox whenever they need them.}.pc-n_1{n:1px}.pc-title_Frequently_asked_questions{title:Frequently asked questions}.pc-a_Yes\._Africa\'s_Talking_is_a_supported_SMS_provider_in_Courier\,_so_you_can_reach_recipients_across_African_markets_through_the_Send_API_while_Africa\'s_Talking_handles_the_actual_carrier_delivery\.{a:Yes. Africa"s Talking is a supported SMS provider in Courier, so you can reach recipients across African markets through the Send API while Africa"s Talking handles the actual carrier delivery.}.pc-title_Related_integrations{title:Related integrations}.pc-name_Twilio{name:Twilio}.pc-hook_Route_SMS_through_Twilio\.{hook:Route SMS through Twilio.}.pc-href_\/integrations\/compare\/africas-talking-vs-twilio{href:/integrations/compare/africas-talking-vs-twilio}.pc-verified_true{verified:true}.pc-category_SMS{category:SMS}.pc-works-with_SMS{works-with:SMS}.pc-cta-note_No_credit_card_required{cta-note:No credit card required}.pc-seo-title_Send_Email_with_Amply_and_Courier{seo-title:Send Email with Amply and Courier}.pc-provider-logo_Amply{provider-logo:Amply}.pc-breadcrumb_Amply{breadcrumb:Amply}.pc-eyebrow_Amply_\+_Courier{eyebrow:Amply + Courier}.pc-h1_Turn_Amply_into_a_multi-channel_notification_system{h1:Turn Amply into a multi-channel notification system}.pc-subtitle_Design_and_automate_every_message_with_Courier\._Keep_Amply_for_email_delivery\,_then_add_SMS\,_push\,_and_an_in-app_inbox_from_one_API\.{subtitle:Design and automate every message with Courier. Keep Amply for email delivery,then add SMS,push,and an in-app inbox from one API.}.pc-label_Read_the_Amply_docs{label:Read the Amply docs}.pc-title_What_Amply_is{title:What Amply is}.pc-paragraphs_Amply_\(SendAmply\)_is_an_email_delivery_service_that_routes_transactional_and_marketing_email_through_its_platform\,_handling_sending_infrastructure_and_analytics\.{paragraphs:Amply (SendAmply) is an email delivery service that routes transactional and marketing email through its platform,handling sending infrastructure and analytics.}.pc-prerequisite_You_need_a_Courier_account_and_your_own_Amply_account_and_Access_Token\.{prerequisite:You need a Courier account and your own Amply account and Access Token.}.pc-title_What_you_get_with_Amply_\+_Courier{title:What you get with Amply + Courier}.pc-tag_Design_Studio{tag:Design Studio}.pc-title_Design_beautiful_emails\,_no_code{title:Design beautiful emails,no code}.pc-items_Onboarding_and_lifecycle_journeys_that_marketing_can_edit_without_engineering{items:Onboarding and lifecycle journeys that marketing can edit without engineering}.pc-lead_An_admin_adds_Amply_once_on_the_Integrations_page_in_Courier\._Once_connected\,_anyone_on_your_team_can_design_and_send_email_through_Amply\,_and_add_channels_whenever_they_need_them\.{lead:An admin adds Amply once on the Integrations page in Courier. Once connected,anyone on your team can design and send email through Amply,and add channels whenever they need them.}.pc-title_Add_your_Amply_credentials{title:Add your Amply credentials}.pc-body_Add_Amply_as_an_email_provider_and_enter_your_Access_Token\,_From_Email\,_and_From_Name\,_then_save\.{body:Add Amply as an email provider and enter your Access Token,From Email,and From Name,then save.}.pc-q_Can_I_use_Amply_with_Courier\?{q:Can I use Amply with Courier?}.pc-a_Yes\._Amply_\(SendAmply\)_connects_to_Courier_as_your_email_delivery_provider\._Courier_routes_transactional_email_through_Amply_while_letting_you_design_content_once_and_orchestrate_it_alongside_other_channels_from_one_API\.{a:Yes. Amply (SendAmply) connects to Courier as your email delivery provider. Courier routes transactional email through Amply while letting you design content once and orchestrate it alongside other channels from one API.}.pc-name_AWS_SES{name:AWS SES}.pc-hook_Route_high-volume_email_through_SES\.{hook:Route high-volume email through SES.}.pc-label_Amply_vs_SendGrid{label:Amply vs SendGrid}.pc-href_\/integrations\/compare\/amply-vs-sendgrid{href:/integrations/compare/amply-vs-sendgrid}.pc-category_Email{category:Email}.pc-works-with_Email{works-with:Email}.pc-label_Amply_website{label:Amply website}.pc-seo-title_Send_Push_with_Apple_Push_Notifications_\(APNS\)_and_Courier{seo-title:Send Push with Apple Push Notifications (APNS) and Courier}.pc-provider-logo_Apple_Push_Notifications_\(APNS\){provider-logo:Apple Push Notifications (APNS)}.pc-breadcrumb_Apple_Push_Notifications_\(APNS\){breadcrumb:Apple Push Notifications (APNS)}.pc-eyebrow_Apple_Push_Notifications_\(APNS\)_\+_Courier{eyebrow:Apple Push Notifications (APNS) + Courier}.pc-h1_Turn_Apple_push_into_a_complete_mobile_notification_system{h1:Turn Apple push into a complete mobile notification system}.pc-subtitle_Design_and_automate_every_message_with_Courier\._Keep_APNs_for_push_delivery\,_then_add_SMS_and_an_in-app_inbox_from_one_API\.{subtitle:Design and automate every message with Courier. Keep APNs for push delivery,then add SMS and an in-app inbox from one API.}.pc-label_Read_the_APNS_docs{label:Read the APNS docs}.pc-title_What_Apple_Push_Notifications_\(APNS\)_is{title:What Apple Push Notifications (APNS) is}.pc-prerequisite_You_need_a_Courier_account_and_an_APNs_authentication_key_\(\.p8_file\)_from_your_Apple_Developer_account\,_along_with_your_Key_ID_and_Team_ID\.{prerequisite:You need a Courier account and an APNs authentication key (.p8 file) from your Apple Developer account,along with your Key ID and Team ID.}.pc-title_What_you_get_with_Apple_Push_Notifications_\(APNS\)_\+_Courier{title:What you get with Apple Push Notifications (APNS) + Courier}.pc-tag_Token_management{tag:Token management}.pc-title_We_manage_device_tokens{title:We manage device tokens}.pc-body_Courier_stores_and_manages_APNs_device_tokens_for_you\,_so_you_stop_tracking_registrations_and_expiry_across_your_Apple_apps_yourself\.{body:Courier stores and manages APNs device tokens for you,so you stop tracking registrations and expiry across your Apple apps yourself.}.pc-items_Send_push_to_iPhone\,_iPad\,_and_Mac_apps_without_managing_APNs_device_tokens_yourself{items:Send push to iPhone,iPad,and Mac apps without managing APNs device tokens yourself}.pc-lead_An_admin_adds_Apple_Push_Notifications_once_on_the_Integrations_page_in_Courier\._Once_connected\,_Courier_manages_tokens_and_your_team_can_send_push\,_add_an_in-app_inbox\,_and_layer_in_SMS\.{lead:An admin adds Apple Push Notifications once on the Integrations page in Courier. Once connected,Courier manages tokens and your team can send push,add an in-app inbox,and layer in SMS.}.pc-title_Add_Apple_Push_Notifications_in_Courier{title:Add Apple Push Notifications in Courier}.pc-body_Open_Integrations\,_select_APNS\,_and_enter_your_authentication_key_file_\(\.p8\)\,_Key_ID\,_and_Team_ID_from_your_Apple_Developer_account\._Set_the_environment_to_sandbox_or_production\.{body:Open Integrations,select APNS,and enter your authentication key file (.p8),Key ID,and Team ID from your Apple Developer account. Set the environment to sandbox or production.}.pc-q_Can_I_use_Apple_Push_Notification_service_\(APNs\)_with_Courier\?{q:Can I use Apple Push Notification service (APNs) with Courier?}.pc-name_Firebase_FCM{name:Firebase FCM}.pc-hook_Send_push_to_Android\,_iOS\,_and_web\.{hook:Send push to Android,iOS,and web.}.pc-label_Apple_Push_Notifications_vs_Firebase_FCM{label:Apple Push Notifications vs Firebase FCM}.pc-href_\/integrations\/compare\/apple-push-notification-vs-firebase-fcm{href:/integrations/compare/apple-push-notification-vs-firebase-fcm}.pc-category_Push{category:Push}.pc-works-with_Push{works-with:Push}.pc-label_Apple_website{label:Apple website}.pc-seo-title_Send_Email_with_AWS_SES_and_Courier{seo-title:Send Email with AWS SES and Courier}.pc-provider-logo_AWS_SES{provider-logo:AWS SES}.pc-breadcrumb_AWS_SES{breadcrumb:AWS SES}.pc-eyebrow_AWS_SES_\+_Courier{eyebrow:AWS SES + Courier}.pc-h1_Turn_AWS_SES_into_a_multi-channel_notification_system{h1:Turn AWS SES into a multi-channel notification system}.pc-subtitle_Design_and_automate_every_message_with_Courier\._Keep_AWS_SES_for_email_delivery\,_then_add_SMS\,_push\,_and_an_in-app_inbox_from_one_API\.{subtitle:Design and automate every message with Courier. Keep AWS SES for email delivery,then add SMS,push,and an in-app inbox from one API.}.pc-label_Read_the_AWS_SES_docs{label:Read the AWS SES docs}.pc-title_What_AWS_SES_is{title:What AWS SES is}.pc-paragraphs_Amazon_SES_\(Simple_Email_Service\)_is_a_cloud_email_service_that_sends_email_at_scale_through_verified_sender_identities\,_with_the_deliverability_and_low_cost_of_AWS_infrastructure\.{paragraphs:Amazon SES (Simple Email Service) is a cloud email service that sends email at scale through verified sender identities,with the deliverability and low cost of AWS infrastructure.}.pc-prerequisite_You_need_a_Courier_account_and_your_own_AWS_account_with_SES_set_up_and_a_verified_sending_identity\.{prerequisite:You need a Courier account and your own AWS account with SES set up and a verified sending identity.}.pc-title_What_you_get_with_AWS_SES_\+_Courier{title:What you get with AWS SES + Courier}.pc-lead_An_admin_adds_AWS_SES_once_on_the_Integrations_page_in_Courier\._Once_connected\,_anyone_on_your_team_can_design_and_send_email_through_AWS_SES\,_and_add_channels_whenever_they_need_them\.{lead:An admin adds AWS SES once on the Integrations page in Courier. Once connected,anyone on your team can design and send email through AWS SES,and add channels whenever they need them.}.pc-title_Add_your_AWS_SES_credentials{title:Add your AWS SES credentials}.pc-body_Add_AWS_SES_as_an_email_provider_and_connect_with_either_your_Access_Key_ID_and_Secret_Access_Key_or_an_IAM_Role_ARN\,_then_set_your_From_Address_and_Region\.{body:Add AWS SES as an email provider and connect with either your Access Key ID and Secret Access Key or an IAM Role ARN,then set your From Address and Region.}.pc-q_Can_I_use_AWS_SES_with_Courier\?{q:Can I use AWS SES with Courier?}.pc-name_SendGrid{name:SendGrid}.pc-hook_Cloud_email_delivery_at_scale\.{hook:Cloud email delivery at scale.}.pc-label_AWS_SES_vs_SendGrid{label:AWS SES vs SendGrid}.pc-href_\/integrations\/compare\/aws-ses-vs-sendgrid{href:/integrations/compare/aws-ses-vs-sendgrid}.pc-label_AWS_SES_website{label:AWS SES website}.pc-seo-title_Send_SMS_with_AWS_SNS_and_Courier{seo-title:Send SMS with AWS SNS and Courier}.pc-provider-logo_AWS_SNS{provider-logo:AWS SNS}.pc-breadcrumb_AWS_SNS{breadcrumb:AWS SNS}.pc-eyebrow_AWS_SNS_\+_Courier{eyebrow:AWS SNS + Courier}.pc-h1_Turn_AWS_SNS_SMS_into_multi-channel_notifications{h1:Turn AWS SNS SMS into multi-channel notifications}.pc-subtitle_Design_and_automate_every_message_with_Courier\._Keep_AWS_SNS_for_SMS_delivery\,_then_add_push_and_an_in-app_inbox_from_one_API\.{subtitle:Design and automate every message with Courier. Keep AWS SNS for SMS delivery,then add push and an in-app inbox from one API.}.pc-label_Read_the_AWS_SNS_docs{label:Read the AWS SNS docs}.pc-title_What_AWS_SNS_is{title:What AWS SNS is}.pc-paragraphs_AWS_SNS_\(Amazon_Simple_Notification_Service\)_is_a_fully_managed_messaging_service_from_Amazon_Web_Services_that_delivers_SMS_text_messages_to_phone_numbers_around_the_world\,_backed_by_AWS_infrastructure\.{paragraphs:AWS SNS (Amazon Simple Notification Service) is a fully managed messaging service from Amazon Web Services that delivers SMS text messages to phone numbers around the world,backed by AWS infrastructure.}.pc-prerequisite_You_need_a_Courier_account_and_your_own_AWS_account_\(an_Access_Key_ID\,_Secret_Access_Key\,_and_Region_with_permission_to_publish_through_SNS\)\.{prerequisite:You need a Courier account and your own AWS account (an Access Key ID,Secret Access Key,and Region with permission to publish through SNS).}.pc-title_What_you_get_with_AWS_SNS_\+_Courier{title:What you get with AWS SNS + Courier}.pc-body_Reach_mobile_and_web_with_push_alongside_SMS_from_one_notification\,_no_new_integration_in_your_code\.{body:Reach mobile and web with push alongside SMS from one notification,no new integration in your code.}.pc-lead_An_admin_adds_AWS_SNS_once_on_the_Integrations_page_in_Courier\._Once_connected\,_anyone_on_your_team_can_send_SMS_through_AWS_SNS_and_add_push_or_an_in-app_inbox_whenever_they_need_them\.{lead:An admin adds AWS SNS once on the Integrations page in Courier. Once connected,anyone on your team can send SMS through AWS SNS and add push or an in-app inbox whenever they need them.}.pc-title_Add_AWS_SNS_in_Courier{title:Add AWS SNS in Courier}.pc-body_Open_Integrations_and_select_AWS_SNS\.{body:Open Integrations and select AWS SNS.}.pc-q_Can_I_use_AWS_SNS_with_Courier\?{q:Can I use AWS SNS with Courier?}.pc-a_Yes\._Amazon_Simple_Notification_Service_is_a_supported_provider_in_Courier\,_listed_under_the_Push_channel_but_able_to_deliver_push_and_SMS\._Courier_publishes_to_your_SNS_topics_or_device_endpoints_while_you_design_and_orchestrate_the_notification\.{a:Yes. Amazon Simple Notification Service is a supported provider in Courier,listed under the Push channel but able to deliver push and SMS. Courier publishes to your SNS topics or device endpoints while you design and orchestrate the notification.}.pc-label_AWS_SNS_vs_Twilio{label:AWS SNS vs Twilio}.pc-href_\/integrations\/compare\/aws-sns-vs-twilio{href:/integrations/compare/aws-sns-vs-twilio}.pc-label_AWS_SNS_website{label:AWS SNS website}.pc-seo-title_Send_SMS_with_Azure_SMS_and_Courier{seo-title:Send SMS with azure SMS and Courier}.pc-provider-logo_\/images\/pages\/integrations\/logos\/azure\.svg{provider-logo:/images/pages/integrations/logos/azure.svg}.pc-breadcrumb_Azure_SMS{breadcrumb:azure SMS}.pc-eyebrow_Azure_SMS_\+_Courier{eyebrow:azure SMS + Courier}.pc-h1_Turn_Azure_SMS_into_multi-channel_notifications{h1:Turn azure SMS into multi-channel notifications}.pc-subtitle_Design_and_automate_every_message_with_Courier\._Keep_Azure_SMS_for_delivery\,_then_add_push_and_an_in-app_inbox_from_one_API\.{subtitle:Design and automate every message with Courier. Keep azure SMS for delivery,then add push and an in-app inbox from one API.}.pc-label_Read_the_Azure_SMS_docs{label:Read the azure SMS docs}.pc-title_What_Azure_SMS_is{title:What azure SMS is}.pc-paragraphs_Azure_SMS_is_the_SMS_capability_of_Azure_Communication_Services\,_Microsoft\'s_cloud_platform_for_sending_SMS_and_other_communications_programmatically_through_Azure\'s_infrastructure\.{paragraphs:azure SMS is the SMS capability of azure Communication Services,Microsoft"s cloud platform for sending SMS and other communications programmatically through Azure"s infrastructure.}.pc-prerequisite_You_need_a_Courier_account_and_your_own_Azure_Communication_Services_resource_\(access_key\,_endpoint\,_and_from_number\)\.{prerequisite:You need a Courier account and your own azure Communication Services resource (access key,endpoint,and from number).}.pc-title_What_you_get_with_Azure_SMS_\+_Courier{title:What you get with azure SMS + Courier}.pc-lead_An_admin_adds_Azure_SMS_once_on_the_Integrations_page_in_Courier\._Once_connected\,_anyone_on_your_team_can_send_SMS_through_Azure_and_add_push_or_an_in-app_inbox_whenever_they_need_them\.{lead:An admin adds azure SMS once on the Integrations page in Courier. Once connected,anyone on your team can send SMS through azure and add push or an in-app inbox whenever they need them.}.pc-title_Add_Azure_SMS_in_Courier{title:Add azure SMS in Courier}.pc-body_Open_Integrations_and_select_Azure_SMS\.{body:Open Integrations and select azure SMS.}.pc-q_Can_I_use_Azure_Communication_Services_SMS_with_Courier\?{q:Can I use azure Communication Services SMS with Courier?}.pc-a_Yes\._Courier_routes_text_messages_through_Azure_SMS_as_one_delivery_channel_behind_the_Send_API\,_so_the_same_notification_can_also_reach_email\,_push\,_and_Courier_Inbox_without_separate_code_paths\.{a:Yes. Courier routes text messages through azure SMS as one delivery channel behind the Send API,so the same notification can also reach email,push,and Courier Inbox without separate code paths.}.pc-name_AWS_SNS{name:AWS SNS}.pc-hook_Route_SMS_through_AWS_SNS\.{hook:Route SMS through AWS SNS.}.pc-label_Azure_SMS_vs_Twilio{label:azure SMS vs Twilio}.pc-href_\/integrations\/compare\/azure-sms-vs-twilio{href:/integrations/compare/azure-sms-vs-twilio}.pc-label_Azure_SMS_website{label:azure SMS website}.pc-seo-title_Design_and_automate_notifications_with_ChatGPT_and_Courier{seo-title:Design and automate notifications with ChatGPT and Courier}.pc-provider-logo_ChatGPT{provider-logo:ChatGPT}.pc-breadcrumb_ChatGPT{breadcrumb:ChatGPT}.pc-eyebrow_ChatGPT_\+_Courier{eyebrow:ChatGPT + Courier}.pc-h1_Design_and_automate_notifications_with_ChatGPT{h1:Design and automate notifications with ChatGPT}.pc-subtitle_Use_ChatGPT_across_Courier\,_from_the_AI_agent_node_to_AI_translations\,_and_connect_your_own_ChatGPT_agent_to_Courier_over_MCP\.{subtitle:Use ChatGPT across Courier,from the AI agent node to AI translations,and connect your own ChatGPT agent to Courier over MCP.}.pc-label_Read_the_MCP_docs{label:Read the MCP docs}.pc-title_How_ChatGPT_and_Courier_fit_together{title:How ChatGPT and Courier fit together}.pc-prerequisite_You_need_a_Courier_account\._The_in-product_AI_features_are_built_in\,_and_your_agent_connects_to_Courier_over_the_remote_MCP_server\.{prerequisite:You need a Courier account. The in-product AI features are built in,and your agent connects to Courier over the remote MCP server.}.pc-title_What_you_get_with_ChatGPT_\+_Courier{title:What you get with ChatGPT + Courier}.pc-tag_AI_agent_node{tag:AI agent node}.pc-title_Add_an_AI_step_to_a_journey{title:Add an AI step to a journey}.pc-body_The_AI_node_in_Courier_Journeys_classifies_a_user\,_branches_on_the_result\,_and_writes_per-channel_copy_from_a_single_prompt\.{body:The AI node in Courier Journeys classifies a user,branches on the result,and writes per-channel copy from a single prompt.}.pc-items_Build_a_notification_with_natural_language\,_describing_the_send_to_your_agent_and_letting_it_call_Courier_over_MCP{items:Build a notification with natural language,describing the send to your agent and letting it call Courier over MCP}.pc-title_Get_started_with_AI{title:Get started with AI}.pc-lead_The_AI_features_are_built_into_Courier\,_so_there_is_nothing_to_configure\._Here_is_what_you_can_do_right_away\.{lead:The AI features are built into Courier,so there is nothing to configure. Here is what you can do right away.}.pc-n_→{n:→}.pc-title_Write_copy_with_the_AI_node{title:Write copy with the AI node}.pc-body_Add_an_AI_step_to_a_Journey\._It_classifies_the_user\,_branches_on_the_result\,_and_writes_per-channel_copy_from_a_single_prompt\.{body:Add an AI step to a Journey. It classifies the user,branches on the result,and writes per-channel copy from a single prompt.}.pc-q_Can_I_use_ChatGPT_\(OpenAI_models\)_with_Courier\?{q:Can I use ChatGPT (OpenAI models) with Courier?}.pc-a_Yes\,_in_both_directions\._Courier_can_run_frontier_OpenAI_GPT_models_inside_its_own_AI_features\,_and_OpenAI-based_agents_such_as_Codex_can_drive_Courier_through_its_hosted_MCP_server\,_CLI\,_and_agent_skills\.{a:Yes,in both directions. Courier can run frontier OpenAI GPT models inside its own AI features,and OpenAI-based agents such as Codex can drive Courier through its hosted MCP server,CLI,and agent skills.}.pc-name_Claude{name:Claude}.pc-hook_Connect_your_Claude_agent_to_Courier\.{hook:Connect your Claude agent to Courier.}.pc-logo_\/images\/pages\/integrations\/logos\/claude\.svg{logo:/images/pages/integrations/logos/claude.svg}.pc-category_AI{category:AI}.pc-works-with_MCP{works-with:MCP}.pc-label_ChatGPT_website{label:ChatGPT website}.pc-seo-title_Design_and_automate_notifications_with_Claude_and_Courier{seo-title:Design and automate notifications with Claude and Courier}.pc-provider-logo_\/images\/pages\/integrations\/logos\/claude\.svg{provider-logo:/images/pages/integrations/logos/claude.svg}.pc-breadcrumb_Claude{breadcrumb:Claude}.pc-eyebrow_Claude_\+_Courier{eyebrow:Claude + Courier}.pc-h1_Design_and_automate_notifications_with_Claude{h1:Design and automate notifications with Claude}.pc-subtitle_Use_Claude_across_Courier\,_from_the_AI_agent_node_to_AI_translations\,_and_connect_your_own_Claude_agent_to_Courier_over_MCP\.{subtitle:Use Claude across Courier,from the AI agent node to AI translations,and connect your own Claude agent to Courier over MCP.}.pc-title_How_Claude_and_Courier_fit_together{title:How Claude and Courier fit together}.pc-title_What_you_get_with_Claude_\+_Courier{title:What you get with Claude + Courier}.pc-q_Can_I_use_Claude_with_Courier\?{q:Can I use Claude with Courier?}.pc-name_ChatGPT{name:ChatGPT}.pc-hook_Connect_your_ChatGPT_agent_to_Courier\.{hook:Connect your ChatGPT agent to Courier.}.pc-label_Claude_website{label:Claude website}.pc-seo-title_Add_any_provider_to_Courier_with_a_webhook{seo-title:Add any provider to Courier with a webhook}.pc-provider-logo_Custom_Provider{provider-logo:Custom Provider}.pc-breadcrumb_Custom_Provider{breadcrumb:Custom Provider}.pc-eyebrow_Custom_Provider_\+_Courier{eyebrow:Custom Provider + Courier}.pc-h1_Add_any_provider_to_Courier_with_a_webhook{h1:Add any provider to Courier with a webhook}.pc-subtitle_Wire_up_a_provider_Courier_does_not_natively_support_by_configuring_a_custom_webhook-based_provider\,_then_use_it_like_any_other_channel_in_your_stack\.{subtitle:Wire up a provider Courier does not natively support by configuring a custom webhook-based provider,then use it like any other channel in your stack.}.pc-label_Read_the_Custom_Provider_docs{label:Read the Custom Provider docs}.pc-title_What_a_Custom_Provider_is{title:What a Custom Provider is}.pc-paragraphs_A_Custom_Provider_routes_notifications_to_your_own_webhook_endpoint_instead_of_a_predefined_service\._You_add_it_to_a_channel\,_such_as_Push\,_and_Courier_delivers_to_the_URL_you_configure\.{paragraphs:A Custom Provider routes notifications to your own webhook endpoint instead of a predefined service. You add it to a channel,such as Push,and Courier delivers to the URL you configure.}.pc-prerequisite_You_need_a_Courier_account_and_an_HTTP_endpoint_that_can_receive_the_notification_payload\.{prerequisite:You need a Courier account and an HTTP endpoint that can receive the notification payload.}.pc-title_What_you_get_with_a_Custom_Provider{title:What you get with a Custom Provider}.pc-tag_Extensibility{tag:Extensibility}.pc-title_Bring_an_unsupported_provider{title:Bring an unsupported provider}.pc-body_Model_a_provider_Courier_does_not_natively_support_by_routing_notifications_to_your_own_webhook_endpoint\.{body:Model a provider Courier does not natively support by routing notifications to your own webhook endpoint.}.pc-items_Add_a_provider_Courier_does_not_natively_support_by_pointing_a_channel_at_your_own_webhook{items:Add a provider Courier does not natively support by pointing a channel at your own webhook}.pc-lead_An_admin_configures_the_Custom_Provider_once_on_the_Integrations_page_in_Courier\,_then_adds_it_to_a_channel\.{lead:An admin configures the Custom Provider once on the Integrations page in Courier,then adds it to a channel.}.pc-title_Add_the_Custom_Provider{title:Add the Custom Provider}.pc-body_Open_Integrations\,_add_the_Custom_Provider\,_and_set_your_webhook_URL_and_authentication_model\.{body:Open Integrations,add the Custom Provider,and set your webhook URL and authentication model.}.pc-q_Can_I_use_a_Custom_Provider_with_Courier\?{q:Can I use a Custom Provider with Courier?}.pc-name_Webhook{name:Webhook}.pc-hook_Deliver_an_HTTP_request_to_any_URL\.{hook:Deliver an HTTP request to any URL.}.pc-category_Other{category:Other}.pc-label_Courier_docs{label:Courier docs}.pc-seo-title_Monitor_your_notifications_in_Datadog_with_Courier{seo-title:Monitor your notifications in Datadog with Courier}.pc-provider-logo_Datadog{provider-logo:Datadog}.pc-breadcrumb_Datadog{breadcrumb:Datadog}.pc-eyebrow_Datadog_\+_Courier{eyebrow:Datadog + Courier}.pc-h1_Monitor_your_notifications_in_Datadog{h1:Monitor your notifications in Datadog}.pc-subtitle_You_already_watch_your_app_in_Datadog\._Courier_sends_your_notification_metrics_and_logs_there_too\,_so_delivery_health_lives_next_to_everything_else\.{subtitle:You already watch your app in Datadog. Courier sends your notification metrics and logs there too,so delivery health lives next to everything else.}.pc-label_Read_the_Datadog_docs{label:Read the Datadog docs}.pc-title_How_Courier_connects_to_Datadog{title:How Courier connects to Datadog}.pc-prerequisite_You_need_a_Courier_account_and_a_Datadog_account_with_an_API_key\.{prerequisite:You need a Courier account and a Datadog account with an API key.}.pc-kicker_Why_monitor_in_Datadog{kicker:Why monitor in Datadog}.pc-title_What_you_get_with_Datadog_\+_Courier{title:What you get with Datadog + Courier}.pc-tag_Delivery_events{tag:Delivery events}.pc-title_Delivery_metrics_and_events{title:Delivery metrics and events}.pc-body_Courier_emits_sent\,_delivered\,_failed\,_undeliverable\,_opened\,_and_clicked_events\,_plus_filtering\,_throttling\,_and_receipt_metrics\,_into_Datadog\.{body:Courier emits sent,delivered,failed,undeliverable,opened,and clicked events,plus filtering,throttling,and receipt metrics,into Datadog.}.pc-title_What_teams_monitor_with_it{title:What teams monitor with it}.pc-items_Dashboard_delivery\,_open\,_and_click_rates_so_notification_health_is_visible_at_a_glance{items:Dashboard delivery,open,and click rates so notification health is visible at a glance}.pc-lead_An_admin_adds_Datadog_once_in_Courier\._Metrics_start_flowing_from_the_moment_you_connect_it\,_so_turn_it_on_before_you_need_the_insights\.{lead:An admin adds Datadog once in Courier. Metrics start flowing from the moment you connect it,so turn it on before you need the insights.}.pc-title_Create_a_Datadog_API_key{title:Create a Datadog API key}.pc-body_In_Datadog\,_generate_an_API_key_from_your_account_settings\.{body:In Datadog,generate an API key from your account settings.}.pc-q_Can_I_monitor_my_Courier_notifications_in_Datadog\?{q:Can I monitor my Courier notifications in Datadog?}.pc-name_New_Relic{name:New Relic}.pc-hook_Stream_notification_metrics_into_New_Relic\.{hook:Stream notification metrics into New Relic.}.pc-category_Observability{category:Observability}.pc-works-with_Metrics{works-with:Metrics}.pc-label_Datadog_website{label:Datadog website}.pc-seo-title_Send_Push_with_Expo_and_Courier{seo-title:Send Push with Expo and Courier}.pc-provider-logo_Expo{provider-logo:Expo}.pc-breadcrumb_Expo{breadcrumb:Expo}.pc-eyebrow_Expo_\+_Courier{eyebrow:Expo + Courier}.pc-h1_Turn_Expo_push_into_a_complete_mobile_notification_system{h1:Turn Expo push into a complete mobile notification system}.pc-subtitle_Design_and_automate_every_message_with_Courier\._Keep_Expo_for_push_delivery\,_then_add_SMS_and_an_in-app_inbox_from_one_API\.{subtitle:Design and automate every message with Courier. Keep Expo for push delivery,then add SMS and an in-app inbox from one API.}.pc-label_Read_the_Expo_docs{label:Read the Expo docs}.pc-title_What_Expo_is{title:What Expo is}.pc-paragraphs_Expo_is_a_framework_for_building_and_deploying_React_Native_apps\,_with_built-in_support_for_push_notifications_to_iOS_and_Android\.{paragraphs:Expo is a framework for building and deploying React Native apps,with built-in support for push notifications to iOS and Android.}.pc-prerequisite_You_need_a_Courier_account_and_your_own_Expo_access_token\.{prerequisite:You need a Courier account and your own Expo access token.}.pc-title_What_you_get_with_Expo_\+_Courier{title:What you get with Expo + Courier}.pc-body_Courier_stores_and_manages_Expo_push_tokens_across_iOS_and_Android\,_so_you_stop_tracking_device_registrations_and_expiry_yourself\.{body:Courier stores and manages Expo push tokens across iOS and Android,so you stop tracking device registrations and expiry yourself.}.pc-items_Send_push_to_your_Expo_app_across_iOS_and_Android_without_managing_device_tokens_yourself{items:Send push to your Expo app across iOS and Android without managing device tokens yourself}.pc-lead_An_admin_adds_Expo_once_on_the_Integrations_page_in_Courier\._Once_connected\,_Courier_manages_tokens_and_your_team_can_send_push\,_add_an_in-app_inbox\,_and_layer_in_SMS\.{lead:An admin adds Expo once on the Integrations page in Courier. Once connected,Courier manages tokens and your team can send push,add an in-app inbox,and layer in SMS.}.pc-title_Add_Expo_in_Courier{title:Add Expo in Courier}.pc-body_Open_Integrations\,_select_Expo\,_enter_your_Expo_access_token\,_and_save\.{body:Open Integrations,select Expo,enter your Expo access token,and save.}.pc-q_Can_I_use_Expo_with_Courier\?{q:Can I use Expo with Courier?}.pc-a_Yes\._Courier_connects_to_Expo_as_a_push_provider\,_so_you_deliver_push_notifications_to_your_React_Native_app_through_Expo\'s_push_service_using_Courier\'s_Send_API\,_alongside_your_other_channels\.{a:Yes. Courier connects to Expo as a push provider,so you deliver push notifications to your React Native app through Expo"s push service using Courier"s Send API,alongside your other channels.}.pc-name_Apple_Push_Notifications_\(APNS\){name:Apple Push Notifications (APNS)}.pc-hook_Send_iOS_push_through_APNs\.{hook:Send iOS push through APNs.}.pc-label_Expo_vs_Firebase_FCM{label:Expo vs Firebase FCM}.pc-href_\/integrations\/compare\/expo-vs-firebase-fcm{href:/integrations/compare/expo-vs-firebase-fcm}.pc-label_Expo_website{label:Expo website}.pc-seo-title_Send_Push_with_Firebase_FCM_and_Courier{seo-title:Send Push with Firebase FCM and Courier}.pc-provider-logo_Firebase_FCM{provider-logo:Firebase FCM}.pc-breadcrumb_Firebase_FCM{breadcrumb:Firebase FCM}.pc-eyebrow_Firebase_FCM_\+_Courier{eyebrow:Firebase FCM + Courier}.pc-h1_Turn_Firebase_push_into_a_complete_mobile_notification_system{h1:Turn Firebase push into a complete mobile notification system}.pc-subtitle_Design_and_automate_every_message_with_Courier\._Keep_Firebase_FCM_for_push_delivery\,_then_add_SMS_and_an_in-app_inbox_from_one_API\.{subtitle:Design and automate every message with Courier. Keep Firebase FCM for push delivery,then add SMS and an in-app inbox from one API.}.pc-label_Read_the_FCM_docs{label:Read the FCM docs}.pc-title_What_Firebase_FCM_is{title:What Firebase FCM is}.pc-prerequisite_You_need_a_Courier_account_and_your_own_Firebase_project_with_a_service_account\.{prerequisite:You need a Courier account and your own Firebase project with a service account.}.pc-title_What_you_get_with_Firebase_FCM_\+_Courier{title:What you get with Firebase FCM + Courier}.pc-body_Courier_stores_and_manages_push_tokens_across_iOS\,_Android\,_and_web\,_so_you_stop_tracking_device_registrations_and_expiry_yourself\.{body:Courier stores and manages push tokens across iOS,Android,and web,so you stop tracking device registrations and expiry yourself.}.pc-items_Send_push_across_iOS\,_Android\,_and_web_without_managing_device_tokens_yourself{items:Send push across iOS,Android,and web without managing device tokens yourself}.pc-lead_An_admin_adds_Firebase_FCM_once_on_the_Integrations_page_in_Courier\._Once_connected\,_Courier_manages_tokens_and_your_team_can_send_push\,_add_an_in-app_inbox\,_and_layer_in_SMS\.{lead:An admin adds Firebase FCM once on the Integrations page in Courier. Once connected,Courier manages tokens and your team can send push,add an in-app inbox,and layer in SMS.}.pc-title_Add_Firebase_FCM_in_Courier{title:Add Firebase FCM in Courier}.pc-body_Open_Integrations\,_select_Firebase_FCM\,_and_add_your_Firebase_service_account_credentials\.{body:Open Integrations,select Firebase FCM,and add your Firebase service account credentials.}.pc-q_Can_I_use_Firebase_Cloud_Messaging_\(FCM\)_with_Courier\?{q:Can I use Firebase Cloud Messaging (FCM) with Courier?}.pc-a_Yes\._Firebase_Cloud_Messaging_\(FCM\)_is_a_push_provider_in_Courier\._You_use_it_to_deliver_mobile_push_notifications_through_the_Send_API\,_with_Courier_adding_content_design_and_multichannel_orchestration_on_top\.{a:Yes. Firebase Cloud Messaging (FCM) is a push provider in Courier. You use it to deliver mobile push notifications through the Send API,with Courier adding content design and multichannel orchestration on top.}.pc-label_Firebase_FCM_vs_OneSignal{label:Firebase FCM vs OneSignal}.pc-href_\/integrations\/compare\/firebase-fcm-vs-onesignal{href:/integrations/compare/firebase-fcm-vs-onesignal}.pc-label_Firebase_FCM_website{label:Firebase FCM website}.pc-seo-title_Send_Email_with_Gmail_and_Courier{seo-title:Send Email with Gmail and Courier}.pc-provider-logo_Gmail{provider-logo:Gmail}.pc-breadcrumb_Gmail{breadcrumb:Gmail}.pc-eyebrow_Gmail_\+_Courier{eyebrow:Gmail + Courier}.pc-h1_Turn_Gmail_into_a_multi-channel_notification_system{h1:Turn Gmail into a multi-channel notification system}.pc-subtitle_Design_and_automate_every_message_with_Courier\._Keep_Gmail_for_email_delivery\,_then_add_SMS\,_push\,_and_an_in-app_inbox_from_one_API\.{subtitle:Design and automate every message with Courier. Keep Gmail for email delivery,then add SMS,push,and an in-app inbox from one API.}.pc-label_Read_the_Gmail_docs{label:Read the Gmail docs}.pc-title_What_Gmail_is{title:What Gmail is}.pc-prerequisite_You_need_a_Courier_account_and_your_own_Google_account\._Courier_connects_to_Gmail_with_Google_OAuth\,_so_there_is_no_API_key_to_paste\.{prerequisite:You need a Courier account and your own Google account. Courier connects to Gmail with Google OAuth,so there is no API key to paste.}.pc-title_What_you_get_with_Gmail_\+_Courier{title:What you get with Gmail + Courier}.pc-lead_An_admin_adds_Gmail_once_on_the_Integrations_page_in_Courier\._Once_connected\,_anyone_on_your_team_can_design_and_send_email_through_Gmail\,_and_add_channels_whenever_they_need_them\.{lead:An admin adds Gmail once on the Integrations page in Courier. Once connected,anyone on your team can design and send email through Gmail,and add channels whenever they need them.}.pc-title_Authorize_Gmail{title:Authorize Gmail}.pc-body_Add_Gmail_as_an_email_provider_and_authorize_Courier_with_your_Google_account\._Courier_uses_Google_OAuth\,_so_you_consent_to_the_Gmail_scopes_instead_of_pasting_an_API_key\.{body:Add Gmail as an email provider and authorize Courier with your Google account. Courier uses Google OAuth,so you consent to the Gmail scopes instead of pasting an API key.}.pc-q_Can_I_use_Gmail_with_Courier\?{q:Can I use Gmail with Courier?}.pc-a_Yes\._Gmail_works_as_an_email_delivery_channel_in_Courier\,_sending_through_your_connected_Gmail_or_Google_Workspace_inbox\._It_is_intended_for_testing_and_small-scale_internal_sends_rather_than_high-volume_production_email\.{a:Yes. Gmail works as an email delivery channel in Courier,sending through your connected Gmail or Google Workspace inbox. It is intended for testing and small-scale internal sends rather than high-volume production email.}.pc-label_Gmail_vs_SMTP{label:Gmail vs SMTP}.pc-href_\/integrations\/compare\/gmail-vs-smtp{href:/integrations/compare/gmail-vs-smtp}.pc-label_Gmail_website{label:Gmail website}.pc-seo-title_Sync_warehouse_data_to_Courier_with_Hightouch{seo-title:Sync warehouse data to Courier with Hightouch}.pc-provider-logo_Hightouch{provider-logo:Hightouch}.pc-breadcrumb_Hightouch{breadcrumb:Hightouch}.pc-eyebrow_Hightouch_\+_Courier{eyebrow:Hightouch + Courier}.pc-h1_Turn_Hightouch_data_into_notifications_and_multi-step_journeys{h1:Turn Hightouch data into notifications and multi-step journeys}.pc-subtitle_Your_product_data_already_lives_in_your_warehouse\._Sync_it_to_Courier_with_Hightouch_and_turn_it_into_notifications_and_journeys\,_from_one_API\.{subtitle:Your product data already lives in your warehouse. Sync it to Courier with Hightouch and turn it into notifications and journeys,from one API.}.pc-label_Read_the_Hightouch_docs{label:Read the Hightouch docs}.pc-kicker_Overview{kicker:Overview}.pc-title_What_Hightouch_is{title:What Hightouch is}.pc-paragraphs_Hightouch_is_a_reverse-ETL_platform_that_syncs_data_straight_from_your_data_warehouse_to_the_tools_you_use\,_using_SQL_models_and_scheduled_syncs\.{paragraphs:Hightouch is a reverse-ETL platform that syncs data straight from your data warehouse to the tools you use,using SQL models and scheduled syncs.}.pc-prerequisite_You_need_a_Courier_account_and_a_Hightouch_workspace_connected_to_your_data_warehouse\.{prerequisite:You need a Courier account and a Hightouch workspace connected to your data warehouse.}.pc-title_What_you_get_with_Hightouch_\+_Courier{title:What you get with Hightouch + Courier}.pc-tag_Warehouse_sync{tag:Warehouse sync}.pc-title_Sync_data_straight_from_your_warehouse{title:Sync data straight from your warehouse}.pc-body_Add_Courier_as_a_Hightouch_destination_and_sync_warehouse_columns_into_Courier_profiles_and_list_subscriptions\._No_consumer_or_pipeline_to_build\.{body:Add Courier as a Hightouch destination and sync warehouse columns into Courier profiles and list subscriptions. No consumer or pipeline to build.}.pc-title_How_Hightouch_connects_to_Courier{title:How Hightouch connects to Courier}.pc-paragraphs_Courier_is_a_Hightouch_destination\._In_Hightouch_you_add_Courier\,_paste_your_Courier_Published_API_token\,_and_name_the_destination\.{paragraphs:Courier is a Hightouch destination. In Hightouch you add Courier,paste your Courier Published API token,and name the destination.}.pc-items_Audience_and_trait-based_sends_driven_by_SQL_models_on_your_warehouse{items:Audience and trait-based sends driven by SQL models on your warehouse}.pc-lead_Courier_is_a_destination_in_Hightouch\,_so_there_is_no_pipeline_to_build\._Point_a_sync_at_Courier_and_your_warehouse_data_starts_landing_in_profiles_and_lists\.{lead:Courier is a destination in Hightouch,so there is no pipeline to build. Point a sync at Courier and your warehouse data starts landing in profiles and lists.}.pc-title_Copy_your_Courier_token{title:Copy your Courier token}.pc-body_In_Courier\,_open_Settings\,_go_to_the_API_Keys_tab\,_and_copy_your_Published_token\.{body:In Courier,open Settings,go to the API Keys tab,and copy your Published token.}.pc-q_Can_I_use_Hightouch_with_Courier\?{q:Can I use Hightouch with Courier?}.pc-a_Yes\._Courier_is_a_Hightouch_destination\,_so_Hightouch_reverse_ETL_can_sync_customer_data_straight_from_your_warehouse_into_Courier_to_power_notifications\._There_is_no_custom_pipeline_to_build\.{a:Yes. Courier is a Hightouch destination,so Hightouch reverse ETL can sync customer data straight from your warehouse into Courier to power notifications. There is no custom pipeline to build.}.pc-name_Segment{name:Segment}.pc-hook_Event-streaming_CDP_that_sends_to_Courier\.{hook:Event-streaming CDP that sends to Courier.}.pc-category_CDP{category:CDP}.pc-works-with_Warehouse{works-with:Warehouse}.pc-label_Hightouch_website{label:Hightouch website}.pc-pos_absolute{position:absolute}.pc-pointer-events_none{pointer-events:none}.pc-ff_\'Geist_Mono\'\,_ui-monospace\,_SFMono-Regular\,_Menlo\,_monospace{font-family:Geist Mono,ui-monospace,SFMono-Regular,Menlo,monospace}.pc-fs_12px{font-size:12px}.pc-ls_\.16em{letter-spacing:.16em}.pc-tt_uppercase{text-transform:uppercase}.pc-c_\#8554FF{color:#8554ff}.pc-ff_monaSans{font-family:var(--pc-fonts-mona-sans)}.pc-ls_-\.03em{letter-spacing:-.03em}.pc-lh_1\.03{line-height:1.03}.pc-fs_16px{font-size:16px}.pc-lh_1\.5{line-height:1.5}.pc-c_rgba\(255\,255\,255\,\.64\){color:#ffffffa3}.pc-c_rgba\(255\,255\,255\,\.4\){color:#fff6}.pc-fs_15px{font-size:15px}.pc-fs_13px{font-size:13px}.pc-ai_flex-start{align-items:flex-start}.pc-fs_22px{font-size:22px}.pc-ls_-\.02em{letter-spacing:-.02em}.pc-grid-tc_1fr{grid-template-columns:1fr}.pc-fs_9\.5px{font-size:9.5px}.pc-lh_1\.45{line-height:1.45}.pc-c_rgba\(255\,255\,255\,\.6\){color:#fff9}.pc-c_rgba\(255\,255\,255\,\.45\){color:#ffffff73}.pc-fs_26px{font-size:26px}.pc-lh_1\.65{line-height:1.65}.pc-bx-sh_0_2px_10px_rgba\(0\,0\,0\,\.3\){box-shadow:0 2px 10px #0000004d}.pc-seo-title_Send_Email_with_MailerSend_and_Courier{seo-title:Send Email with MailerSend and Courier}.pc-provider-logo_MailerSend{provider-logo:MailerSend}.pc-breadcrumb_MailerSend{breadcrumb:MailerSend}.pc-eyebrow_MailerSend_\+_Courier{eyebrow:MailerSend + Courier}.pc-h1_Turn_MailerSend_into_a_multi-channel_notification_system{h1:Turn MailerSend into a multi-channel notification system}.pc-subtitle_Design_and_automate_every_message_with_Courier\._Keep_MailerSend_for_email_delivery\,_then_add_SMS\,_push\,_and_an_in-app_inbox_from_one_API\.{subtitle:Design and automate every message with Courier. Keep MailerSend for email delivery,then add SMS,push,and an in-app inbox from one API.}.pc-label_Read_the_MailerSend_docs{label:Read the MailerSend docs}.pc-title_What_MailerSend_is{title:What MailerSend is}.pc-paragraphs_MailerSend_is_an_email_delivery_service_that_sends_transactional_and_marketing_email_through_a_simple_API\,_with_sending_domains\,_analytics\,_and_deliverability_tooling\.{paragraphs:MailerSend is an email delivery service that sends transactional and marketing email through a simple API,with sending domains,analytics,and deliverability tooling.}.pc-prerequisite_You_need_a_Courier_account_and_your_own_MailerSend_account_with_an_API_token_and_a_verified_From_Address\.{prerequisite:You need a Courier account and your own MailerSend account with an API token and a verified From Address.}.pc-title_What_you_get_with_MailerSend_\+_Courier{title:What you get with MailerSend + Courier}.pc-lead_An_admin_adds_MailerSend_once_on_the_Integrations_page_in_Courier\._Once_connected\,_anyone_on_your_team_can_design_and_send_email_through_MailerSend\,_and_add_channels_whenever_they_need_them\.{lead:An admin adds MailerSend once on the Integrations page in Courier. Once connected,anyone on your team can design and send email through MailerSend,and add channels whenever they need them.}.pc-title_Add_your_MailerSend_token{title:Add your MailerSend token}.pc-body_Add_MailerSend_as_an_email_provider_and_paste_your_API_token\,_plus_a_verified_From_Address\.{body:Add MailerSend as an email provider and paste your API token,plus a verified From Address.}.pc-q_Can_I_use_MailerSend_with_Courier\?{q:Can I use MailerSend with Courier?}.pc-a_Yes\._MailerSend_is_a_supported_transactional_email_provider_in_Courier\._You_keep_MailerSend_for_email_delivery\,_and_Courier_routes_your_email_through_it_via_the_Send_API_while_adding_content_design\,_Journeys\,_and_other_channels_on_one_integration\.{a:Yes. MailerSend is a supported transactional email provider in Courier. You keep MailerSend for email delivery,and Courier routes your email through it via the Send API while adding content design,Journeys,and other channels on one integration.}.pc-name_Mailgun{name:Mailgun}.pc-hook_Swap_providers_without_changing_code\.{hook:Swap providers without changing code.}.pc-label_MailerSend_vs_Mailgun{label:MailerSend vs Mailgun}.pc-href_\/integrations\/compare\/mailersend-vs-mailgun{href:/integrations/compare/mailersend-vs-mailgun}.pc-label_MailerSend_website{label:MailerSend website}.pc-seo-title_Send_Email_with_Mailgun_and_Courier{seo-title:Send Email with Mailgun and Courier}.pc-provider-logo_Mailgun{provider-logo:Mailgun}.pc-breadcrumb_Mailgun{breadcrumb:Mailgun}.pc-eyebrow_Mailgun_\+_Courier{eyebrow:Mailgun + Courier}.pc-h1_Turn_Mailgun_into_a_multi-channel_notification_system{h1:Turn Mailgun into a multi-channel notification system}.pc-subtitle_Design_and_automate_every_message_with_Courier\._Keep_Mailgun_for_email_delivery\,_then_add_SMS\,_push\,_and_an_in-app_inbox_from_one_API\.{subtitle:Design and automate every message with Courier. Keep Mailgun for email delivery,then add SMS,push,and an in-app inbox from one API.}.pc-label_Read_the_Mailgun_docs{label:Read the Mailgun docs}.pc-title_What_Mailgun_is{title:What Mailgun is}.pc-paragraphs_Mailgun_is_an_email_delivery_service_that_lets_you_send_messages_programmatically_through_verified_sending_domains\.{paragraphs:Mailgun is an email delivery service that lets you send messages programmatically through verified sending domains.}.pc-prerequisite_You_need_a_Courier_account_and_your_own_Mailgun_account_with_an_API_key_and_a_verified_sending_domain\.{prerequisite:You need a Courier account and your own Mailgun account with an API key and a verified sending domain.}.pc-title_What_you_get_with_Mailgun_\+_Courier{title:What you get with Mailgun + Courier}.pc-lead_An_admin_adds_Mailgun_once_on_the_Integrations_page_in_Courier\._Once_connected\,_anyone_on_your_team_can_design_and_send_email_through_Mailgun\,_and_add_channels_whenever_they_need_them\.{lead:An admin adds Mailgun once on the Integrations page in Courier. Once connected,anyone on your team can design and send email through Mailgun,and add channels whenever they need them.}.pc-title_Add_your_Mailgun_credentials{title:Add your Mailgun credentials}.pc-body_Add_Mailgun_as_an_email_provider_and_enter_your_API_Key\,_Domain\,_and_From_Address\._For_EU-region_accounts\,_set_Host_to_api\.eu\.mailgun\.net\.{body:Add Mailgun as an email provider and enter your API Key,Domain,and From Address. For EU-region accounts,set Host to api.eu.mailgun.net.}.pc-q_Can_I_use_Mailgun_with_Courier\?{q:Can I use Mailgun with Courier?}.pc-a_Yes\._Courier_routes_your_transactional_email_through_Mailgun_as_the_delivery_provider\,_so_Mailgun_keeps_sending_the_email_while_Courier_handles_content\,_routing\,_and_other_channels_from_a_single_Send_API_call\.{a:Yes. Courier routes your transactional email through Mailgun as the delivery provider,so Mailgun keeps sending the email while Courier handles content,routing,and other channels from a single Send API call.}.pc-hook_Design_and_orchestrate_on_top_of_SendGrid\.{hook:Design and orchestrate on top of SendGrid.}.pc-label_Mailgun_vs_SendGrid{label:Mailgun vs SendGrid}.pc-href_\/integrations\/compare\/mailgun-vs-sendgrid{href:/integrations/compare/mailgun-vs-sendgrid}.pc-label_Mailgun_website{label:Mailgun website}.pc-seo-title_Send_Email_with_Mailjet_and_Courier{seo-title:Send Email with Mailjet and Courier}.pc-provider-logo_Mailjet{provider-logo:Mailjet}.pc-breadcrumb_Mailjet{breadcrumb:Mailjet}.pc-eyebrow_Mailjet_\+_Courier{eyebrow:Mailjet + Courier}.pc-h1_Turn_Mailjet_into_a_multi-channel_notification_system{h1:Turn Mailjet into a multi-channel notification system}.pc-subtitle_Design_and_automate_every_message_with_Courier\._Keep_Mailjet_for_email_delivery\,_then_add_SMS\,_push\,_and_an_in-app_inbox_from_one_API\.{subtitle:Design and automate every message with Courier. Keep Mailjet for email delivery,then add SMS,push,and an in-app inbox from one API.}.pc-label_Read_the_Mailjet_docs{label:Read the Mailjet docs}.pc-title_What_Mailjet_is{title:What Mailjet is}.pc-paragraphs_Mailjet_is_an_email_delivery_platform_that_provides_APIs_for_sending_transactional_and_marketing_email_at_scale\.{paragraphs:Mailjet is an email delivery platform that provides APIs for sending transactional and marketing email at scale.}.pc-prerequisite_You_need_a_Courier_account_and_your_own_Mailjet_account_with_a_Public_Key_and_Private_Key\.{prerequisite:You need a Courier account and your own Mailjet account with a Public Key and Private Key.}.pc-title_What_you_get_with_Mailjet_\+_Courier{title:What you get with Mailjet + Courier}.pc-lead_An_admin_adds_Mailjet_once_on_the_Integrations_page_in_Courier\._Once_connected\,_anyone_on_your_team_can_design_and_send_email_through_Mailjet\,_and_add_channels_whenever_they_need_them\.{lead:An admin adds Mailjet once on the Integrations page in Courier. Once connected,anyone on your team can design and send email through Mailjet,and add channels whenever they need them.}.pc-title_Add_your_Mailjet_keys{title:Add your Mailjet keys}.pc-q_Can_I_use_Mailjet_with_Courier\?{q:Can I use Mailjet with Courier?}.pc-label_Mailjet_vs_Mailgun{label:Mailjet vs Mailgun}.pc-href_\/integrations\/compare\/mailjet-vs-mailgun{href:/integrations/compare/mailjet-vs-mailgun}.pc-label_Mailjet_website{label:Mailjet website}.pc-seo-title_Send_Email_with_Mandrill_and_Courier{seo-title:Send Email with Mandrill and Courier}.pc-provider-logo_Mandrill{provider-logo:Mandrill}.pc-breadcrumb_Mandrill{breadcrumb:Mandrill}.pc-eyebrow_Mandrill_\+_Courier{eyebrow:Mandrill + Courier}.pc-h1_Turn_Mandrill_into_a_multi-channel_notification_system{h1:Turn Mandrill into a multi-channel notification system}.pc-subtitle_Design_and_automate_every_message_with_Courier\._Keep_Mandrill_for_email_delivery\,_then_add_SMS\,_push\,_and_an_in-app_inbox_from_one_API\.{subtitle:Design and automate every message with Courier. Keep Mandrill for email delivery,then add SMS,push,and an in-app inbox from one API.}.pc-label_Read_the_Mandrill_docs{label:Read the Mandrill docs}.pc-title_What_Mandrill_is{title:What Mandrill is}.pc-prerequisite_You_need_a_Courier_account_and_your_own_Mandrill_account_and_API_key\.{prerequisite:You need a Courier account and your own Mandrill account and API key.}.pc-title_What_you_get_with_Mandrill_\+_Courier{title:What you get with Mandrill + Courier}.pc-lead_An_admin_adds_Mandrill_once_on_the_Integrations_page_in_Courier\._Once_connected\,_anyone_on_your_team_can_design_and_send_email_through_Mandrill\,_and_add_channels_whenever_they_need_them\.{lead:An admin adds Mandrill once on the Integrations page in Courier. Once connected,anyone on your team can design and send email through Mandrill,and add channels whenever they need them.}.pc-title_Add_your_Mandrill_key{title:Add your Mandrill key}.pc-body_Add_Mandrill_as_an_email_provider_and_enter_your_API_Key\,_From_Address\,_and_From_Name\,_then_save\.{body:Add Mandrill as an email provider and enter your API Key,From Address,and From Name,then save.}.pc-q_Can_I_use_Mandrill_with_Courier\?{q:Can I use Mandrill with Courier?}.pc-label_Mandrill_vs_Mailgun{label:Mandrill vs Mailgun}.pc-href_\/integrations\/compare\/mandrill-vs-mailgun{href:/integrations/compare/mandrill-vs-mailgun}.pc-label_Mandrill_website{label:Mandrill website}.pc-seo-title_Send_SMS_with_Bird_\(formerly_MessageBird\)_and_Courier{seo-title:Send SMS with Bird (formerly MessageBird) and Courier}.pc-provider-logo_MessageBird{provider-logo:MessageBird}.pc-breadcrumb_Bird{breadcrumb:Bird}.pc-eyebrow_Bird_\+_Courier{eyebrow:Bird + Courier}.pc-h1_Turn_Bird_SMS_into_multi-channel_notifications{h1:Turn Bird SMS into multi-channel notifications}.pc-subtitle_Design_and_automate_every_message_with_Courier\._Keep_Bird_for_SMS_delivery\,_then_add_push_and_an_in-app_inbox_from_one_API\.{subtitle:Design and automate every message with Courier. Keep Bird for SMS delivery,then add push and an in-app inbox from one API.}.pc-label_Read_the_Bird_docs{label:Read the Bird docs}.pc-title_What_Bird_is{title:What Bird is}.pc-paragraphs_Bird_\(formerly_MessageBird\)_is_a_communications_platform_that_lets_businesses_send_SMS_and_other_messages_to_customers_across_a_global_network_of_carriers\.{paragraphs:Bird (formerly MessageBird) is a communications platform that lets businesses send SMS and other messages to customers across a global network of carriers.}.pc-prerequisite_You_need_a_Courier_account_and_your_own_Bird_account_\(an_Access_Key_and_an_Originator_number\)\.{prerequisite:You need a Courier account and your own Bird account (an Access Key and an Originator number).}.pc-title_What_you_get_with_Bird_\+_Courier{title:What you get with Bird + Courier}.pc-lead_An_admin_adds_Bird_once_on_the_Integrations_page_in_Courier\._Once_connected\,_anyone_on_your_team_can_send_SMS_through_Bird_and_add_push_or_an_in-app_inbox_whenever_they_need_them\.{lead:An admin adds Bird once on the Integrations page in Courier. Once connected,anyone on your team can send SMS through Bird and add push or an in-app inbox whenever they need them.}.pc-title_Add_Bird_in_Courier{title:Add Bird in Courier}.pc-body_Open_Integrations_and_select_Bird\.{body:Open Integrations and select Bird.}.pc-q_Can_I_use_Bird_with_Courier\?{q:Can I use Bird with Courier?}.pc-a_Yes\._Bird_\(formerly_MessageBird\)_works_as_an_SMS_delivery_provider_in_Courier\._Connect_it_once\,_then_send_texts_through_the_Send_API\,_Journeys\,_and_Automations_while_Courier_handles_the_content_and_cross-channel_routing\.{a:Yes. Bird (formerly MessageBird) works as an SMS delivery provider in Courier. Connect it once,then send texts through the Send API,Journeys,and Automations while Courier handles the content and cross-channel routing.}.pc-label_Bird_vs_Twilio{label:Bird vs Twilio}.pc-href_\/integrations\/compare\/messagebird-vs-twilio{href:/integrations/compare/messagebird-vs-twilio}.pc-label_Bird_website{label:Bird website}.pc-seo-title_Send_SMS_with_MessageMedia_and_Courier{seo-title:Send SMS with MessageMedia and Courier}.pc-provider-logo_MessageMedia{provider-logo:MessageMedia}.pc-breadcrumb_MessageMedia{breadcrumb:MessageMedia}.pc-eyebrow_MessageMedia_\+_Courier{eyebrow:MessageMedia + Courier}.pc-h1_Turn_MessageMedia_SMS_into_multi-channel_notifications{h1:Turn MessageMedia SMS into multi-channel notifications}.pc-subtitle_Design_and_automate_every_message_with_Courier\._Keep_MessageMedia_for_SMS_delivery\,_then_add_push_and_an_in-app_inbox_from_one_API\.{subtitle:Design and automate every message with Courier. Keep MessageMedia for SMS delivery,then add push and an in-app inbox from one API.}.pc-label_Read_the_MessageMedia_docs{label:Read the MessageMedia docs}.pc-title_What_MessageMedia_is{title:What MessageMedia is}.pc-paragraphs_MessageMedia_is_an_SMS_delivery_service_that_sends_text_messages_to_your_recipients_through_a_global_carrier_network\.{paragraphs:MessageMedia is an SMS delivery service that sends text messages to your recipients through a global carrier network.}.pc-prerequisite_You_need_a_Courier_account_and_your_own_MessageMedia_account_\(API_key_and_API_secret\)\.{prerequisite:You need a Courier account and your own MessageMedia account (API key and API secret).}.pc-title_What_you_get_with_MessageMedia_\+_Courier{title:What you get with MessageMedia + Courier}.pc-lead_An_admin_adds_MessageMedia_once_on_the_Integrations_page_in_Courier\._Once_connected\,_anyone_on_your_team_can_send_SMS_through_MessageMedia_and_add_push_or_an_in-app_inbox_whenever_they_need_them\.{lead:An admin adds MessageMedia once on the Integrations page in Courier. Once connected,anyone on your team can send SMS through MessageMedia and add push or an in-app inbox whenever they need them.}.pc-title_Add_MessageMedia_in_Courier{title:Add MessageMedia in Courier}.pc-body_Open_Integrations_and_select_MessageMedia\.{body:Open Integrations and select MessageMedia.}.pc-q_Can_I_use_MessageMedia_with_Courier\?{q:Can I use MessageMedia with Courier?}.pc-a_Yes\._MessageMedia_is_a_supported_SMS_provider_in_Courier\._You_add_it_as_a_channel_and_trigger_texts_through_the_Send_API\,_while_MessageMedia_handles_carrier_delivery_to_your_recipients\.{a:Yes. MessageMedia is a supported SMS provider in Courier. You add it as a channel and trigger texts through the Send API,while MessageMedia handles carrier delivery to your recipients.}.pc-name_MessageBird{name:MessageBird}.pc-hook_Add_MessageBird_as_a_channel_without_new_code\.{hook:Add MessageBird as a channel without new code.}.pc-label_MessageMedia_vs_Twilio{label:MessageMedia vs Twilio}.pc-href_\/integrations\/compare\/messagemedia-vs-twilio{href:/integrations/compare/messagemedia-vs-twilio}.pc-label_MessageMedia_website{label:MessageMedia website}.pc-seo-title_Send_Microsoft_Teams_notifications_with_Courier{seo-title:Send Microsoft Teams notifications with Courier}.pc-provider-logo_Microsoft_Teams{provider-logo:Microsoft Teams}.pc-breadcrumb_Microsoft_Teams{breadcrumb:Microsoft Teams}.pc-eyebrow_Microsoft_Teams_\+_Courier{eyebrow:Microsoft Teams + Courier}.pc-h1_Turn_Microsoft_Teams_into_a_notification_channel_for_your_users{h1:Turn Microsoft Teams into a notification channel for your users}.pc-label_Read_the_Microsoft_Teams_docs{label:Read the Microsoft Teams docs}.pc-title_What_Microsoft_Teams_is{title:What Microsoft Teams is}.pc-paragraphs_Microsoft_Teams_is_the_collaboration_hub_where_enterprise_teams_spend_their_workday\,_so_it_is_a_place_your_users_already_want_updates_from_the_products_they_use\.{paragraphs:Microsoft Teams is the collaboration hub where enterprise teams spend their workday,so it is a place your users already want updates from the products they use.}.pc-prerequisite_You_need_a_Courier_account_and_a_Teams_bot_registered_in_Azure\,_so_your_users_can_receive_messages_in_Teams\.{prerequisite:You need a Courier account and a Teams bot registered in azure,so your users can receive messages in Teams.}.pc-title_What_you_get_with_Microsoft_Teams_\+_Courier{title:What you get with Microsoft Teams + Courier}.pc-tag_Preferences{tag:Preferences}.pc-title_Let_users_choose_Teams{title:Let users choose Teams}.pc-body_Each_user_picks_where_they_get_a_given_notification\,_email_or_Teams\,_and_Courier_routes_to_their_choice_automatically\.{body:Each user picks where they get a given notification,email or Teams,and Courier routes to their choice automatically.}.pc-lead_An_admin_adds_Microsoft_Teams_once_on_the_Integrations_page_in_Courier\._Once_connected\,_anyone_on_your_team_can_deliver_notifications_to_Teams_from_any_notification\,_alongside_every_other_channel\.{lead:An admin adds Microsoft Teams once on the Integrations page in Courier. Once connected,anyone on your team can deliver notifications to Teams from any notification,alongside every other channel.}.pc-title_Register_a_Teams_bot{title:Register a Teams bot}.pc-body_Create_a_Teams_app_in_the_Developer_Portal_and_an_Azure_App_Registration_for_the_bot\,_then_grant_it_the_Microsoft_Graph_permissions_to_send_messages\.{body:Create a Teams app in the Developer Portal and an azure App Registration for the bot,then grant it the Microsoft Graph permissions to send messages.}.pc-q_Can_I_use_Microsoft_Teams_with_Courier\?{q:Can I use Microsoft Teams with Courier?}.pc-name_Slack{name:Slack}.pc-hook_Deliver_notifications_into_Slack\.{hook:Deliver notifications into Slack.}.pc-label_Microsoft_Teams_vs_Slack{label:Microsoft Teams vs Slack}.pc-href_\/integrations\/compare\/microsoft-teams-vs-slack{href:/integrations/compare/microsoft-teams-vs-slack}.pc-category_Chat{category:Chat}.pc-works-with_Chat{works-with:Chat}.pc-label_Microsoft_Teams_website{label:Microsoft Teams website}.pc-seo-title_Monitor_your_notifications_in_New_Relic_with_Courier{seo-title:Monitor your notifications in New Relic with Courier}.pc-provider-logo_New_Relic{provider-logo:New Relic}.pc-breadcrumb_New_Relic{breadcrumb:New Relic}.pc-eyebrow_New_Relic_\+_Courier{eyebrow:New Relic + Courier}.pc-h1_Monitor_your_notifications_in_New_Relic{h1:Monitor your notifications in New Relic}.pc-subtitle_You_already_watch_your_app_in_New_Relic\._Courier_sends_your_notification_metrics_and_logs_there_too\,_so_delivery_health_lives_next_to_everything_else\.{subtitle:You already watch your app in New Relic. Courier sends your notification metrics and logs there too,so delivery health lives next to everything else.}.pc-label_Read_the_New_Relic_docs{label:Read the New Relic docs}.pc-title_How_Courier_connects_to_New_Relic{title:How Courier connects to New Relic}.pc-prerequisite_You_need_a_Courier_account_and_a_New_Relic_account_with_a_License_key\.{prerequisite:You need a Courier account and a New Relic account with a License key.}.pc-kicker_Why_monitor_in_New_Relic{kicker:Why monitor in New Relic}.pc-title_What_you_get_with_New_Relic_\+_Courier{title:What you get with New Relic + Courier}.pc-title_Delivery_metrics_and_logs{title:Delivery metrics and logs}.pc-body_Courier_forwards_its_notification_delivery_metrics_and_logs_\(sent\,_delivered\,_failed\,_undeliverable\,_opened\,_clicked\)_into_New_Relic\.{body:Courier forwards its notification delivery metrics and logs (sent,delivered,failed,undeliverable,opened,clicked) into New Relic.}.pc-items_Import_the_prebuilt_Courier_dashboard_to_see_delivery\,_open\,_and_click_rates_on_day_one{items:Import the prebuilt Courier dashboard to see delivery,open,and click rates on day one}.pc-lead_An_admin_adds_New_Relic_once_in_Courier\._Metrics_stream_forward_from_the_moment_you_connect_it\,_so_turn_it_on_before_you_need_the_insights\.{lead:An admin adds New Relic once in Courier. Metrics stream forward from the moment you connect it,so turn it on before you need the insights.}.pc-title_Retrieve_your_License_key{title:Retrieve your License key}.pc-body_In_New_Relic\,_create_an_account_if_you_need_one_and_copy_your_License_key\.{body:In New Relic,create an account if you need one and copy your License key.}.pc-q_Can_I_monitor_my_Courier_notifications_in_New_Relic\?{q:Can I monitor my Courier notifications in New Relic?}.pc-a_Yes\._Courier_forwards_its_own_notification_delivery_metrics_and_logs_into_New_Relic\,_so_you_can_track_how_your_messages_are_performing_inside_the_same_observability_platform_your_team_already_uses_to_watch_the_rest_of_your_stack\.{a:Yes. Courier forwards its own notification delivery metrics and logs into New Relic,so you can track how your messages are performing inside the same observability platform your team already uses to watch the rest of your stack.}.pc-name_Datadog{name:Datadog}.pc-hook_Stream_notification_metrics_into_Datadog\.{hook:Stream notification metrics into Datadog.}.pc-label_New_Relic_website{label:New Relic website}.pc-seo-title_Add_Okta_SSO_to_Courier{seo-title:Add Okta SSO to Courier}.pc-provider-logo_Okta{provider-logo:Okta}.pc-breadcrumb_Okta{breadcrumb:Okta}.pc-eyebrow_Okta_\+_Courier{eyebrow:Okta + Courier}.pc-h1_Add_Okta_SSO_to_Courier{h1:Add Okta SSO to Courier}.pc-subtitle_Let_your_team_sign_in_to_Courier_with_Okta_and_manage_access_from_one_place\.{subtitle:Let your team sign in to Courier with Okta and manage access from one place.}.pc-label_Talk_to_sales{label:Talk to sales}.pc-label_Read_the_Okta_docs{label:Read the Okta docs}.pc-title_What_Okta_is{title:What Okta is}.pc-prerequisite_Okta_SSO_is_available_on_the_Courier_Enterprise_plan_and_is_set_up_together_with_Courier_Support\.{prerequisite:Okta SSO is available on the Courier Enterprise plan and is set up together with Courier Support.}.pc-kicker_What_you_get{kicker:What you get}.pc-title_SSO_and_user_management_for_your_workspace{title:SSO and user management for your workspace}.pc-tag_SSO{tag:SSO}.pc-title_Sign_in_with_Okta{title:Sign in with Okta}.pc-body_Your_team_authenticates_to_Courier_through_Okta_using_SAML_2\.0\,_instead_of_an_email_and_password_or_Google_login\.{body:Your team authenticates to Courier through Okta using SAML 2,instead of an email and password or Google login.}.pc-title_Connect_Okta_to_Courier{title:Connect Okta to Courier}.pc-lead_Okta_SSO_is_configured_with_the_Courier_team\._Reach_out_first\,_then_set_up_the_app_in_Okta_and_share_your_details\.{lead:Okta SSO is configured with the Courier team. Reach out first,then set up the app in Okta and share your details.}.pc-title_Reach_out_to_Courier_Support{title:Reach out to Courier Support}.pc-body_Okta_SSO_is_an_Enterprise_feature_that_Courier_sets_up_with_you\,_so_coordinate_with_Courier_Support_before_you_begin\.{body:Okta SSO is an Enterprise feature that Courier sets up with you,so coordinate with Courier Support before you begin.}.pc-q_Can_I_use_Okta_with_Courier\?{q:Can I use Okta with Courier?}.pc-a_Yes\._Courier_supports_Okta_as_a_single_sign-on_provider\,_so_your_team_can_sign_in_to_your_Courier_workspace_with_their_existing_Okta_credentials_instead_of_a_separate_Courier_password\.{a:Yes. Courier supports Okta as a single sign-on provider,so your team can sign in to your Courier workspace with their existing Okta credentials instead of a separate Courier password.}.pc-category_SSO{category:SSO}.pc-works-with_SSO{works-with:SSO}.pc-label_Okta_website{label:Okta website}.pc-cta-note_Available_on_the_Enterprise_plan{cta-note:Available on the Enterprise plan}.pc-seo-title_Send_Email_with_OneSignal_and_Courier{seo-title:Send Email with OneSignal and Courier}.pc-provider-logo_OneSignal{provider-logo:OneSignal}.pc-breadcrumb_OneSignal{breadcrumb:OneSignal}.pc-eyebrow_OneSignal_\+_Courier{eyebrow:OneSignal + Courier}.pc-h1_Turn_OneSignal_into_a_multi-channel_notification_system{h1:Turn OneSignal into a multi-channel notification system}.pc-subtitle_Design_and_automate_every_message_with_Courier\._Keep_OneSignal_for_email_delivery\,_then_add_SMS\,_push\,_and_an_in-app_inbox_from_one_API\.{subtitle:Design and automate every message with Courier. Keep OneSignal for email delivery,then add SMS,push,and an in-app inbox from one API.}.pc-label_Read_the_OneSignal_docs{label:Read the OneSignal docs}.pc-title_What_OneSignal_is{title:What OneSignal is}.pc-paragraphs_OneSignal_is_a_customer_communication_platform_that_sends_notifications_and_messages\,_including_email\,_to_users_across_multiple_channels\.{paragraphs:OneSignal is a customer communication platform that sends notifications and messages,including email,to users across multiple channels.}.pc-prerequisite_You_need_a_Courier_account_and_your_own_OneSignal_account_with_an_App_ID_and_REST_API_Key\.{prerequisite:You need a Courier account and your own OneSignal account with an App ID and REST API Key.}.pc-title_What_you_get_with_OneSignal_\+_Courier{title:What you get with OneSignal + Courier}.pc-lead_An_admin_adds_OneSignal_once_on_the_Integrations_page_in_Courier\._Once_connected\,_anyone_on_your_team_can_design_and_send_email_through_OneSignal\,_and_add_channels_whenever_they_need_them\.{lead:An admin adds OneSignal once on the Integrations page in Courier. Once connected,anyone on your team can design and send email through OneSignal,and add channels whenever they need them.}.pc-title_Add_your_OneSignal_credentials{title:Add your OneSignal credentials}.pc-body_Add_OneSignal_as_an_email_provider_and_paste_your_App_ID_and_REST_API_Key_from_the_OneSignal_dashboard\.{body:Add OneSignal as an email provider and paste your App ID and REST API Key from the OneSignal dashboard.}.pc-q_Can_I_use_OneSignal_with_Courier\?{q:Can I use OneSignal with Courier?}.pc-a_Yes\._OneSignal_is_a_push_notification_service\,_and_Courier_supports_it_as_a_push_provider\._You_trigger_notifications_with_Courier\'s_Send_API_and_Journeys\,_and_OneSignal_delivers_them_to_your_users\'_devices\.{a:Yes. OneSignal is a push notification service,and Courier supports it as a push provider. You trigger notifications with Courier"s Send API and Journeys, and OneSignal delivers them to your users" devices.}.pc-hook_Design_and_automate_email_at_scale\.{hook:Design and automate email at scale.}.pc-label_OneSignal_alternatives{label:OneSignal alternatives}.pc-href_\/integrations\/alternatives\/onesignal{href:/integrations/alternatives/onesignal}.pc-label_OneSignal_website{label:OneSignal website}.pc-seo-title_Send_incident_alerts_to_PagerDuty_with_Courier{seo-title:Send incident alerts to PagerDuty with Courier}.pc-provider-logo_PagerDuty{provider-logo:PagerDuty}.pc-breadcrumb_PagerDuty{breadcrumb:PagerDuty}.pc-eyebrow_PagerDuty_\+_Courier{eyebrow:PagerDuty + Courier}.pc-h1_Add_PagerDuty_to_your_multichannel_notification_stack{h1:Add PagerDuty to your multichannel notification stack}.pc-subtitle_Reach_your_on-call_and_incident_tooling_as_one_channel_in_the_same_Courier_send\._Trigger_PagerDuty_incidents_alongside_email\,_SMS\,_push\,_and_an_in-app_inbox\,_all_from_one_API\.{subtitle:Reach your on-call and incident tooling as one channel in the same Courier send. Trigger PagerDuty incidents alongside email,SMS,push,and an in-app inbox,all from one API.}.pc-label_Read_the_PagerDuty_docs{label:Read the PagerDuty docs}.pc-title_What_PagerDuty_is{title:What PagerDuty is}.pc-paragraphs_PagerDuty_is_an_incident_management_platform_that_routes_alerts_to_on-call_responders_through_schedules\,_escalation_policies\,_and_services\.{paragraphs:PagerDuty is an incident management platform that routes alerts to on-call responders through schedules,escalation policies,and services.}.pc-prerequisite_You_need_a_Courier_account_and_an_Events_API_v2_integration_on_a_PagerDuty_service\,_which_gives_you_an_Integration_Key\.{prerequisite:You need a Courier account and an Events API v2 integration on a PagerDuty service,which gives you an Integration Key.}.pc-title_What_you_get_with_PagerDuty_\+_Courier{title:What you get with PagerDuty + Courier}.pc-tag_Incident_alerts{tag:Incident alerts}.pc-title_Trigger_incidents_from_a_send{title:Trigger incidents from a send}.pc-body_A_Courier_notification_triggers_a_PagerDuty_incident_through_the_Events_API_v2\,_so_on-call_gets_paged_the_same_way_you_send_every_other_message\.{body:A Courier notification triggers a PagerDuty incident through the Events API v2,so on-call gets paged the same way you send every other message.}.pc-items_Trigger_a_PagerDuty_incident_from_the_same_notification_that_alerts_a_user_by_email_or_SMS{items:Trigger a PagerDuty incident from the same notification that alerts a user by email or SMS}.pc-lead_An_admin_adds_PagerDuty_once_on_the_Integrations_page_in_Courier\._Once_connected\,_PagerDuty_behaves_like_any_other_channel_in_your_sends\.{lead:An admin adds PagerDuty once on the Integrations page in Courier. Once connected,PagerDuty behaves like any other channel in your sends.}.pc-title_Create_an_Events_API_v2_integration{title:Create an Events API v2 integration}.pc-body_In_your_PagerDuty_service_settings\,_add_an_Events_API_v2_integration_and_copy_the_Integration_Key\.{body:In your PagerDuty service settings,add an Events API v2 integration and copy the Integration Key.}.pc-q_Can_I_use_PagerDuty_with_Courier\?{q:Can I use PagerDuty with Courier?}.pc-a_Yes\._Courier_can_send_notifications_to_PagerDuty_as_an_incident_channel\,_so_an_alert_routed_through_Courier_opens_a_PagerDuty_incident_for_your_on-call_team\._It_sits_alongside_email\,_SMS\,_push\,_and_Courier_Inbox_in_one_Send_API_call\.{a:Yes. Courier can send notifications to PagerDuty as an incident channel,so an alert routed through Courier opens a PagerDuty incident for your on-call team. It sits alongside email,SMS,push,and Courier Inbox in one Send API call.}.pc-hook_Post_alerts_into_a_Slack_channel\.{hook:Post alerts into a Slack channel.}.pc-category_Incident_Management{category:Incident Management}.pc-works-with_Incidents{works-with:Incidents}.pc-label_PagerDuty_website{label:PagerDuty website}.pc-seo-title_Send_SMS_with_Plivo_and_Courier{seo-title:Send SMS with Plivo and Courier}.pc-provider-logo_Plivo{provider-logo:Plivo}.pc-breadcrumb_Plivo{breadcrumb:Plivo}.pc-eyebrow_Plivo_\+_Courier{eyebrow:Plivo + Courier}.pc-h1_Turn_Plivo_SMS_into_multi-channel_notifications{h1:Turn Plivo SMS into multi-channel notifications}.pc-subtitle_Design_and_automate_every_message_with_Courier\._Keep_Plivo_for_SMS_delivery\,_then_add_push_and_an_in-app_inbox_from_one_API\.{subtitle:Design and automate every message with Courier. Keep Plivo for SMS delivery,then add push and an in-app inbox from one API.}.pc-label_Read_the_Plivo_docs{label:Read the Plivo docs}.pc-title_What_Plivo_is{title:What Plivo is}.pc-paragraphs_Plivo_is_a_cloud_communications_platform_with_a_programmable_SMS_API\,_phone_numbers\,_and_a_global_carrier_network_for_sending_text_messages_at_scale\.{paragraphs:Plivo is a cloud communications platform with a programmable SMS API,phone numbers,and a global carrier network for sending text messages at scale.}.pc-prerequisite_You_need_a_Courier_account_and_your_own_Plivo_account_\(Auth_ID\,_Auth_Token\,_and_a_From_number\)\.{prerequisite:You need a Courier account and your own Plivo account (Auth ID,Auth Token,and a From number).}.pc-title_What_you_get_with_Plivo_\+_Courier{title:What you get with Plivo + Courier}.pc-lead_An_admin_adds_Plivo_once_on_the_Integrations_page_in_Courier\._Once_connected\,_anyone_on_your_team_can_send_SMS_through_Plivo_and_add_push_or_an_in-app_inbox_whenever_they_need_them\.{lead:An admin adds Plivo once on the Integrations page in Courier. Once connected,anyone on your team can send SMS through Plivo and add push or an in-app inbox whenever they need them.}.pc-title_Add_Plivo_in_Courier{title:Add Plivo in Courier}.pc-body_Open_Integrations_and_select_Plivo\.{body:Open Integrations and select Plivo.}.pc-q_Can_I_use_Plivo_with_Courier\?{q:Can I use Plivo with Courier?}.pc-name_Vonage{name:Vonage}.pc-hook_Route_SMS_through_Vonage\.{hook:Route SMS through Vonage.}.pc-label_Plivo_vs_Twilio{label:Plivo vs Twilio}.pc-href_\/integrations\/compare\/plivo-vs-twilio{href:/integrations/compare/plivo-vs-twilio}.pc-label_Plivo_website{label:Plivo website}.pc-seo-title_Send_Email_with_Postmark_and_Courier{seo-title:Send Email with Postmark and Courier}.pc-provider-logo_Postmark{provider-logo:Postmark}.pc-breadcrumb_Postmark{breadcrumb:Postmark}.pc-eyebrow_Postmark_\+_Courier{eyebrow:Postmark + Courier}.pc-h1_Turn_Postmark_into_a_multi-channel_notification_system{h1:Turn Postmark into a multi-channel notification system}.pc-subtitle_Design_and_automate_every_message_with_Courier\._Keep_Postmark_for_email_delivery\,_then_add_SMS\,_push\,_and_an_in-app_inbox_from_one_API\.{subtitle:Design and automate every message with Courier. Keep Postmark for email delivery,then add SMS,push,and an in-app inbox from one API.}.pc-label_Read_the_Postmark_docs{label:Read the Postmark docs}.pc-title_What_Postmark_is{title:What Postmark is}.pc-paragraphs_Postmark_is_a_transactional_email_service_that_sends_and_manages_email_through_an_API\,_with_a_focus_on_fast\,_reliable_delivery\.{paragraphs:Postmark is a transactional email service that sends and manages email through an API,with a focus on fast,reliable delivery.}.pc-prerequisite_You_need_a_Courier_account_and_your_own_Postmark_account_with_a_Server_API_Token\.{prerequisite:You need a Courier account and your own Postmark account with a Server API Token.}.pc-title_What_you_get_with_Postmark_\+_Courier{title:What you get with Postmark + Courier}.pc-lead_An_admin_adds_Postmark_once_on_the_Integrations_page_in_Courier\._Once_connected\,_anyone_on_your_team_can_design_and_send_email_through_Postmark\,_and_add_channels_whenever_they_need_them\.{lead:An admin adds Postmark once on the Integrations page in Courier. Once connected,anyone on your team can design and send email through Postmark,and add channels whenever they need them.}.pc-title_Add_your_Postmark_token{title:Add your Postmark token}.pc-q_Can_I_use_Postmark_with_Courier\?{q:Can I use Postmark with Courier?}.pc-a_Yes\._Postmark_is_a_supported_email_delivery_provider_in_Courier\._Courier_sends_your_transactional_email_through_Postmark_while_adding_template_design\,_Journeys\,_and_channels_like_SMS\,_push\,_and_in-app_inbox_on_one_API\.{a:Yes. Postmark is a supported email delivery provider in Courier. Courier sends your transactional email through Postmark while adding template design,Journeys,and channels like SMS,push,and in-app inbox on one API.}.pc-label_Postmark_vs_SendGrid{label:Postmark vs SendGrid}.pc-href_\/integrations\/compare\/postmark-vs-sendgrid{href:/integrations/compare/postmark-vs-sendgrid}.pc-label_Postmark_website{label:Postmark website}.pc-seo-title_Send_Push_with_Pusher_Beams_and_Courier{seo-title:Send Push with Pusher Beams and Courier}.pc-provider-logo_Pusher_Beams{provider-logo:Pusher Beams}.pc-breadcrumb_Pusher_Beams{breadcrumb:Pusher Beams}.pc-eyebrow_Pusher_Beams_\+_Courier{eyebrow:Pusher Beams + Courier}.pc-h1_Turn_Pusher_Beams_push_into_a_complete_mobile_notification_system{h1:Turn Pusher Beams push into a complete mobile notification system}.pc-subtitle_Design_and_automate_every_message_with_Courier\._Keep_Pusher_Beams_for_push_delivery\,_then_add_SMS_and_an_in-app_inbox_from_one_API\.{subtitle:Design and automate every message with Courier. Keep Pusher Beams for push delivery,then add SMS and an in-app inbox from one API.}.pc-label_Read_the_Pusher_Beams_docs{label:Read the Pusher Beams docs}.pc-title_What_Pusher_Beams_is{title:What Pusher Beams is}.pc-paragraphs_Pusher_Beams_is_a_hosted_push_notification_service_that_delivers_push_to_iOS\,_Android\,_and_web_across_multiple_delivery_channels\.{paragraphs:Pusher Beams is a hosted push notification service that delivers push to iOS,Android,and web across multiple delivery channels.}.pc-prerequisite_You_need_a_Courier_account_and_your_own_Pusher_Beams_instance_with_its_Instance_ID_and_Secret_Key\.{prerequisite:You need a Courier account and your own Pusher Beams instance with its Instance ID and Secret Key.}.pc-title_What_you_get_with_Pusher_Beams_\+_Courier{title:What you get with Pusher Beams + Courier}.pc-lead_An_admin_adds_Pusher_Beams_once_on_the_Integrations_page_in_Courier\._Once_connected\,_Courier_manages_tokens_and_your_team_can_send_push\,_add_an_in-app_inbox\,_and_layer_in_SMS\.{lead:An admin adds Pusher Beams once on the Integrations page in Courier. Once connected,Courier manages tokens and your team can send push,add an in-app inbox,and layer in SMS.}.pc-title_Add_Pusher_Beams_in_Courier{title:Add Pusher Beams in Courier}.pc-body_Open_Integrations\,_select_Pusher_Beams\,_and_enter_your_Instance_ID_and_Secret_Key\.{body:Open Integrations,select Pusher Beams,and enter your Instance ID and Secret Key.}.pc-q_Can_I_use_Pusher_Beams_with_Courier\?{q:Can I use Pusher Beams with Courier?}.pc-a_Yes\._Pusher_Beams_is_a_push_provider_you_configure_in_Courier\,_then_trigger_through_the_Send_API\._Beams_handles_delivery_to_devices_while_Courier_owns_the_content_and_routing_across_your_channels\.{a:Yes. Pusher Beams is a push provider you configure in Courier,then trigger through the Send API. Beams handles delivery to devices while Courier owns the content and routing across your channels.}.pc-label_Pusher_Beams_vs_Firebase_FCM{label:Pusher Beams vs Firebase FCM}.pc-href_\/integrations\/compare\/pusher-beams-vs-firebase-fcm{href:/integrations/compare/pusher-beams-vs-firebase-fcm}.pc-label_Pusher_Beams_website{label:Pusher Beams website}.pc-seo-title_Send_Email_with_Resend_and_Courier{seo-title:Send Email with Resend and Courier}.pc-provider-logo_\/images\/pages\/integrations\/logos\/resend\.svg{provider-logo:/images/pages/integrations/logos/resend.svg}.pc-breadcrumb_Resend{breadcrumb:Resend}.pc-eyebrow_Resend_\+_Courier{eyebrow:Resend + Courier}.pc-h1_Turn_Resend_into_a_multi-channel_notification_system{h1:Turn Resend into a multi-channel notification system}.pc-subtitle_Design_and_automate_every_message_with_Courier\._Keep_Resend_for_email_delivery\,_then_add_SMS\,_push\,_and_an_in-app_inbox_from_one_API\.{subtitle:Design and automate every message with Courier. Keep Resend for email delivery,then add SMS,push,and an in-app inbox from one API.}.pc-label_Read_the_Resend_docs{label:Read the Resend docs}.pc-title_What_Resend_is{title:What Resend is}.pc-paragraphs_Resend_is_a_developer-first_email_API_for_sending_transactional_and_marketing_email\,_built_by_the_team_behind_React_Email\.{paragraphs:Resend is a developer-first email API for sending transactional and marketing email,built by the team behind React Email.}.pc-prerequisite_You_need_a_Courier_account_and_your_own_Resend_account_and_API_key\.{prerequisite:You need a Courier account and your own Resend account and API key.}.pc-title_What_you_get_with_Resend_\+_Courier{title:What you get with Resend + Courier}.pc-lead_An_admin_adds_Resend_once_on_the_Integrations_page_in_Courier\._Once_connected\,_anyone_on_your_team_can_design_and_send_email_through_Resend\,_and_add_channels_whenever_they_need_them\.{lead:An admin adds Resend once on the Integrations page in Courier. Once connected,anyone on your team can design and send email through Resend,and add channels whenever they need them.}.pc-title_Add_your_Resend_key{title:Add your Resend key}.pc-body_Add_Resend_as_an_email_provider_in_Courier_and_paste_your_Resend_API_Key\,_plus_a_verified_From_Address_to_send_from\.{body:Add Resend as an email provider in Courier and paste your Resend API Key,plus a verified From Address to send from.}.pc-q_Can_I_use_Resend_with_Courier\?{q:Can I use Resend with Courier?}.pc-name_Postmark{name:Postmark}.pc-hook_Transactional_email_with_one_delivery_log\.{hook:Transactional email with one delivery log.}.pc-label_Resend_vs_SendGrid{label:Resend vs SendGrid}.pc-href_\/integrations\/compare\/resend-vs-sendgrid{href:/integrations/compare/resend-vs-sendgrid}.pc-label_Resend_website{label:Resend website}.pc-seo-title_Trigger_notifications_from_RudderStack_with_Courier{seo-title:Trigger notifications from RudderStack with Courier}.pc-provider-logo_Rudderstack{provider-logo:Rudderstack}.pc-breadcrumb_RudderStack{breadcrumb:RudderStack}.pc-eyebrow_RudderStack_\+_Courier{eyebrow:RudderStack + Courier}.pc-h1_Turn_RudderStack_events_into_notifications_and_multi-step_journeys{h1:Turn RudderStack events into notifications and multi-step journeys}.pc-subtitle_Your_product_data_already_lives_in_RudderStack\._Send_it_to_Courier_and_turn_those_events_into_notifications_and_journeys\,_from_one_API\.{subtitle:Your product data already lives in RudderStack. Send it to Courier and turn those events into notifications and journeys,from one API.}.pc-label_Read_the_RudderStack_docs{label:Read the RudderStack docs}.pc-title_What_RudderStack_is{title:What RudderStack is}.pc-paragraphs_RudderStack_is_a_warehouse-first_customer_data_platform_\(CDP\)_that_collects_events_and_traits_from_your_product_and_routes_them_to_your_tools\,_through_Identify\,_Track\,_and_Group_calls\.{paragraphs:RudderStack is a warehouse-first customer data platform (CDP) that collects events and traits from your product and routes them to your tools,through Identify,Track,and Group calls.}.pc-prerequisite_You_need_a_Courier_account_and_a_RudderStack_workspace_with_a_source_already_sending_events\.{prerequisite:You need a Courier account and a RudderStack workspace with a source already sending events.}.pc-title_What_you_get_with_RudderStack_\+_Courier{title:What you get with RudderStack + Courier}.pc-tag_Triggering{tag:Triggering}.pc-title_Map_events_to_notifications\,_no_code{title:Map events to notifications,no code}.pc-body_Add_Courier_as_a_RudderStack_destination_and_your_existing_events_map_to_notifications\._No_consumer_or_send_pipeline_to_build\.{body:Add Courier as a RudderStack destination and your existing events map to notifications. No consumer or send pipeline to build.}.pc-title_How_RudderStack_connects_to_Courier{title:How RudderStack connects to Courier}.pc-items_Onboarding_and_lifecycle_journeys_triggered_by_product_events\,_no_engineering_per_send{items:Onboarding and lifecycle journeys triggered by product events,no engineering per send}.pc-lead_Courier_is_a_destination_in_RudderStack\,_so_there_is_no_pipeline_to_build\._Add_it_once_and_your_existing_events_start_reaching_Courier\.{lead:Courier is a destination in RudderStack,so there is no pipeline to build. Add it once and your existing events start reaching Courier.}.pc-title_Add_Courier_in_RudderStack{title:Add Courier in RudderStack}.pc-q_Can_I_use_RudderStack_with_Courier\?{q:Can I use RudderStack with Courier?}.pc-a_Yes\._RudderStack\,_a_warehouse-first_CDP\,_connects_to_Courier_as_an_event_destination\,_so_the_customer_data_it_collects_can_trigger_notifications\._You_add_Courier_as_a_destination_and_route_your_RudderStack_sources_to_it\.{a:Yes. RudderStack,a warehouse-first CDP,connects to Courier as an event destination,so the customer data it collects can trigger notifications. You add Courier as a destination and route your RudderStack sources to it.}.pc-hook_Event-streaming_CDP\,_same_destination_setup\.{hook:Event-streaming CDP,same destination setup.}.pc-works-with_Events{works-with:Events}.pc-label_RudderStack_website{label:RudderStack website}.pc-seo-title_Trigger_notifications_from_Segment_with_Courier{seo-title:Trigger notifications from Segment with Courier}.pc-provider-logo_Segment{provider-logo:Segment}.pc-breadcrumb_Segment{breadcrumb:Segment}.pc-eyebrow_Segment_\+_Courier{eyebrow:Segment + Courier}.pc-h1_Turn_Segment_events_into_notifications_and_multi-step_journeys{h1:Turn Segment events into notifications and multi-step journeys}.pc-subtitle_Your_product_data_already_lives_in_Segment\._Send_it_to_Courier_and_turn_those_events_into_notifications_and_journeys\,_from_one_API\.{subtitle:Your product data already lives in Segment. Send it to Courier and turn those events into notifications and journeys,from one API.}.pc-label_Read_the_Segment_docs{label:Read the Segment docs}.pc-title_What_Segment_is{title:What Segment is}.pc-paragraphs_Segment_is_a_customer_data_platform_\(CDP\)_that_collects_events_and_user_traits_from_your_product_and_streams_them_to_the_tools_you_use\,_through_Identify\,_Track\,_and_Group_calls\.{paragraphs:Segment is a customer data platform (CDP) that collects events and user traits from your product and streams them to the tools you use,through Identify,Track,and Group calls.}.pc-prerequisite_You_need_a_Courier_account_and_a_Segment_workspace_with_a_source_already_sending_events\.{prerequisite:You need a Courier account and a Segment workspace with a source already sending events.}.pc-title_What_you_get_with_Segment_\+_Courier{title:What you get with Segment + Courier}.pc-body_Add_Courier_as_a_Segment_destination_and_your_existing_Track_events_map_to_notifications\._No_consumer_or_send_pipeline_to_build\.{body:Add Courier as a Segment destination and your existing Track events map to notifications. No consumer or send pipeline to build.}.pc-title_How_Segment_connects_to_Courier{title:How Segment connects to Courier}.pc-lead_Courier_is_a_destination_in_Segment\,_so_there_is_no_pipeline_to_build\._Add_it_once_and_your_existing_events_start_reaching_Courier\.{lead:Courier is a destination in Segment,so there is no pipeline to build. Add it once and your existing events start reaching Courier.}.pc-title_Add_Courier_in_Segment{title:Add Courier in Segment}.pc-q_Can_I_use_Segment_with_Courier\?{q:Can I use Segment with Courier?}.pc-a_Yes\._Segment_is_a_customer_data_platform_that_feeds_event_and_profile_data_into_Courier\,_so_behavior_tracked_in_your_product_can_drive_notifications_and_multi-step_journeys_across_email\,_SMS\,_push\,_and_Courier_Inbox\.{a:Yes. Segment is a customer data platform that feeds event and profile data into Courier,so behavior tracked in your product can drive notifications and multi-step journeys across email,SMS,push,and Courier Inbox.}.pc-name_Rudderstack{name:Rudderstack}.pc-hook_Warehouse-first_CDP\,_same_destination_setup\.{hook:Warehouse-first CDP,same destination setup.}.pc-label_Segment_website{label:Segment website}.pc-seo-title_Send_Email_with_SendGrid_and_Courier{seo-title:Send Email with SendGrid and Courier}.pc-provider-logo_SendGrid{provider-logo:SendGrid}.pc-breadcrumb_SendGrid{breadcrumb:SendGrid}.pc-eyebrow_SendGrid_\+_Courier{eyebrow:SendGrid + Courier}.pc-h1_Turn_SendGrid_into_a_multi-channel_notification_system{h1:Turn SendGrid into a multi-channel notification system}.pc-subtitle_Design_and_automate_every_message_with_Courier\._Keep_SendGrid_for_email_delivery\,_then_add_SMS\,_push\,_and_an_in-app_inbox_from_one_API\.{subtitle:Design and automate every message with Courier. Keep SendGrid for email delivery,then add SMS,push,and an in-app inbox from one API.}.pc-label_Read_the_SendGrid_docs{label:Read the SendGrid docs}.pc-title_What_SendGrid_is{title:What SendGrid is}.pc-prerequisite_You_need_a_Courier_account_and_your_own_SendGrid_account_and_API_key\.{prerequisite:You need a Courier account and your own SendGrid account and API key.}.pc-title_What_you_get_with_SendGrid_\+_Courier{title:What you get with SendGrid + Courier}.pc-lead_An_admin_adds_SendGrid_once_on_the_Integrations_page_in_Courier\._Once_connected\,_anyone_on_your_team_can_design_and_send_email_through_SendGrid\,_and_add_channels_whenever_they_need_them\.{lead:An admin adds SendGrid once on the Integrations page in Courier. Once connected,anyone on your team can design and send email through SendGrid,and add channels whenever they need them.}.pc-title_Add_your_SendGrid_key{title:Add your SendGrid key}.pc-body_Add_SendGrid_as_an_email_provider_and_paste_an_API_key_with_the_Mail_Send_permission\,_plus_a_verified_From_Address\.{body:Add SendGrid as an email provider and paste an API key with the Mail Send permission,plus a verified From Address.}.pc-q_Can_I_use_SendGrid_with_Courier\?{q:Can I use SendGrid with Courier?}.pc-label_SendGrid_vs_Mailgun{label:SendGrid vs Mailgun}.pc-href_\/integrations\/compare\/sendgrid-vs-mailgun{href:/integrations/compare/sendgrid-vs-mailgun}.pc-label_SendGrid_website{label:SendGrid website}.pc-seo-title_Send_SMS_with_Sinch_and_Courier{seo-title:Send SMS with Sinch and Courier}.pc-provider-logo_Sinch{provider-logo:Sinch}.pc-breadcrumb_Sinch{breadcrumb:Sinch}.pc-eyebrow_Sinch_\+_Courier{eyebrow:Sinch + Courier}.pc-h1_Turn_Sinch_SMS_into_multi-channel_notifications{h1:Turn Sinch SMS into multi-channel notifications}.pc-subtitle_Design_and_automate_every_message_with_Courier\._Keep_Sinch_for_SMS_delivery\,_then_add_push_and_an_in-app_inbox_from_one_API\.{subtitle:Design and automate every message with Courier. Keep Sinch for SMS delivery,then add push and an in-app inbox from one API.}.pc-label_Read_the_Sinch_docs{label:Read the Sinch docs}.pc-title_What_Sinch_is{title:What Sinch is}.pc-paragraphs_Sinch_is_a_global_communications_platform_that_provides_an_SMS_API_for_sending_text_messages_worldwide_through_its_direct_carrier_network\.{paragraphs:Sinch is a global communications platform that provides an SMS API for sending text messages worldwide through its direct carrier network.}.pc-prerequisite_You_need_a_Courier_account_and_your_own_Sinch_account_\(Service_Plan_ID\,_API_token\,_and_a_from_number\)\.{prerequisite:You need a Courier account and your own Sinch account (Service Plan ID,API token,and a from number).}.pc-title_What_you_get_with_Sinch_\+_Courier{title:What you get with Sinch + Courier}.pc-lead_An_admin_adds_Sinch_once_on_the_Integrations_page_in_Courier\._Once_connected\,_anyone_on_your_team_can_send_SMS_through_Sinch_and_add_push_or_an_in-app_inbox_whenever_they_need_them\.{lead:An admin adds Sinch once on the Integrations page in Courier. Once connected,anyone on your team can send SMS through Sinch and add push or an in-app inbox whenever they need them.}.pc-title_Add_Sinch_in_Courier{title:Add Sinch in Courier}.pc-body_Open_Integrations_and_select_Sinch\.{body:Open Integrations and select Sinch.}.pc-q_Can_I_use_Sinch_with_Courier\?{q:Can I use Sinch with Courier?}.pc-a_Yes\._Sinch_is_a_supported_SMS_provider_in_Courier\._Connect_it_and_Courier_routes_SMS_through_Sinch_while_you_send_with_one_Send_API_and_orchestrate_delivery_across_your_other_channels\.{a:Yes. Sinch is a supported SMS provider in Courier. Connect it and Courier routes SMS through Sinch while you send with one Send API and orchestrate delivery across your other channels.}.pc-label_Sinch_vs_Twilio{label:Sinch vs Twilio}.pc-href_\/integrations\/compare\/sinch-vs-twilio{href:/integrations/compare/sinch-vs-twilio}.pc-label_Sinch_website{label:Sinch website}.pc-seo-title_Send_Slack_notifications_with_Courier{seo-title:Send Slack notifications with Courier}.pc-provider-logo_Slack{provider-logo:Slack}.pc-breadcrumb_Slack{breadcrumb:Slack}.pc-eyebrow_Slack_\+_Courier{eyebrow:Slack + Courier}.pc-h1_Turn_Slack_into_a_notification_channel_for_your_users{h1:Turn Slack into a notification channel for your users}.pc-label_Read_the_Slack_docs{label:Read the Slack docs}.pc-title_What_Slack_is{title:What Slack is}.pc-paragraphs_Slack_is_the_messaging_tool_where_B2B_teams_spend_their_workday\,_so_it_is_a_place_your_users_already_want_to_receive_updates_from_the_products_they_use\.{paragraphs:Slack is the messaging tool where B2B teams spend their workday,so it is a place your users already want to receive updates from the products they use.}.pc-prerequisite_You_need_a_Courier_account_and_a_Slack_app_with_a_bot_token\,_so_your_users_can_connect_their_Slack\.{prerequisite:You need a Courier account and a Slack app with a bot token,so your users can connect their Slack.}.pc-title_What_you_get_with_Slack_\+_Courier{title:What you get with Slack + Courier}.pc-title_Let_users_choose_Slack{title:Let users choose Slack}.pc-body_Each_user_picks_where_they_get_a_given_notification\,_email_or_Slack\,_and_Courier_routes_to_their_choice_automatically\.{body:Each user picks where they get a given notification,email or Slack,and Courier routes to their choice automatically.}.pc-lead_An_admin_adds_Slack_once_on_the_Integrations_page_in_Courier\._Once_connected\,_anyone_on_your_team_can_deliver_notifications_to_Slack_from_any_notification\,_alongside_every_other_channel\.{lead:An admin adds Slack once on the Integrations page in Courier. Once connected,anyone on your team can deliver notifications to Slack from any notification,alongside every other channel.}.pc-title_Create_a_Slack_app{title:Create a Slack app}.pc-body_Create_a_Slack_app\,_add_the_bot_token_scopes_Courier_needs_\(such_as_chat\:write\,_users\:read\,_and_users\:read\.email\)\,_and_install_it_to_your_workspace\.{body:Create a Slack app,add the bot token scopes Courier needs (such as chat:write,users:read,and users:read.email),and install it to your workspace.}.pc-q_Can_I_use_Slack_with_Courier\?{q:Can I use Slack with Courier?}.pc-a_Yes\._Courier_supports_Slack_as_a_direct-message_provider\,_so_you_can_deliver_notifications_to_users_inside_Slack_through_the_Send_API_and_Journeys\,_not_only_through_email_or_push\.{a:Yes. Courier supports Slack as a direct-message provider,so you can deliver notifications to users inside Slack through the Send API and Journeys,not only through email or push.}.pc-name_Microsoft_Teams{name:Microsoft Teams}.pc-hook_Deliver_notifications_into_Teams\.{hook:Deliver notifications into Teams.}.pc-label_Slack_vs_Microsoft_Teams{label:Slack vs Microsoft Teams}.pc-href_\/integrations\/compare\/slack-vs-microsoft-teams{href:/integrations/compare/slack-vs-microsoft-teams}.pc-label_Slack_website{label:Slack website}.pc-seo-title_Send_SMS_with_SMSCentral_and_Courier{seo-title:Send SMS with SMSCentral and Courier}.pc-provider-logo_\/images\/pages\/integrations\/logos\/smscentral\.svg{provider-logo:/images/pages/integrations/logos/smscentral.svg}.pc-breadcrumb_SMSCentral{breadcrumb:SMSCentral}.pc-eyebrow_SMSCentral_\+_Courier{eyebrow:SMSCentral + Courier}.pc-h1_Turn_SMSCentral_SMS_into_multi-channel_notifications{h1:Turn SMSCentral SMS into multi-channel notifications}.pc-subtitle_Design_and_automate_every_message_with_Courier\._Keep_SMSCentral_for_SMS_delivery\,_then_add_push_and_an_in-app_inbox_from_one_API\.{subtitle:Design and automate every message with Courier. Keep SMSCentral for SMS delivery,then add push and an in-app inbox from one API.}.pc-label_Read_the_SMSCentral_docs{label:Read the SMSCentral docs}.pc-title_What_SMSCentral_is{title:What SMSCentral is}.pc-paragraphs_SMSCentral_is_an_Australian_SMS_delivery_provider_with_a_REST_API_for_sending_text_messages_to_customers\.{paragraphs:SMSCentral is an Australian SMS delivery provider with a REST API for sending text messages to customers.}.pc-prerequisite_You_need_a_Courier_account_and_your_own_SMSCentral_account_\(username_and_password\)\.{prerequisite:You need a Courier account and your own SMSCentral account (username and password).}.pc-title_What_you_get_with_SMSCentral_\+_Courier{title:What you get with SMSCentral + Courier}.pc-lead_An_admin_adds_SMSCentral_once_on_the_Integrations_page_in_Courier\._Once_connected\,_anyone_on_your_team_can_send_SMS_through_SMSCentral_and_add_push_or_an_in-app_inbox_whenever_they_need_them\.{lead:An admin adds SMSCentral once on the Integrations page in Courier. Once connected,anyone on your team can send SMS through SMSCentral and add push or an in-app inbox whenever they need them.}.pc-title_Add_SMSCentral_in_Courier{title:Add SMSCentral in Courier}.pc-body_Open_Integrations_and_select_SMSCentral\.{body:Open Integrations and select SMSCentral.}.pc-q_Can_I_use_SMSCentral_with_Courier\?{q:Can I use SMSCentral with Courier?}.pc-a_Yes\._Courier_integrates_with_SMSCentral_as_an_SMS_provider\,_so_texts_go_out_through_your_SMSCentral_account_while_Courier_handles_the_content\,_routing\,_and_other_channels_behind_one_Send_API_call\.{a:Yes. Courier integrates with SMSCentral as an SMS provider,so texts go out through your SMSCentral account while Courier handles the content,routing,and other channels behind one Send API call.}.pc-name_MessageMedia{name:MessageMedia}.pc-hook_Route_SMS_through_MessageMedia\.{hook:Route SMS through MessageMedia.}.pc-label_SMSCentral_vs_Twilio{label:SMSCentral vs Twilio}.pc-href_\/integrations\/compare\/smscentral-vs-twilio{href:/integrations/compare/smscentral-vs-twilio}.pc-label_SMSCentral_website{label:SMSCentral website}.pc-seo-title_Send_Email_with_SMTP_and_Courier{seo-title:Send Email with SMTP and Courier}.pc-provider-logo_SMTP{provider-logo:SMTP}.pc-breadcrumb_SMTP{breadcrumb:SMTP}.pc-eyebrow_SMTP_\+_Courier{eyebrow:SMTP + Courier}.pc-h1_Turn_SMTP_into_a_multi-channel_notification_system{h1:Turn SMTP into a multi-channel notification system}.pc-subtitle_Design_and_automate_every_message_with_Courier\._Keep_SMTP_for_email_delivery\,_then_add_SMS\,_push\,_and_an_in-app_inbox_from_one_API\.{subtitle:Design and automate every message with Courier. Keep SMTP for email delivery,then add SMS,push,and an in-app inbox from one API.}.pc-label_Read_the_SMTP_docs{label:Read the SMTP docs}.pc-title_What_SMTP_is{title:What SMTP is}.pc-paragraphs_SMTP_is_the_standard_protocol_for_sending_email_through_a_mail_server\,_so_you_can_connect_almost_any_mail_service_or_self-hosted_server_that_speaks_it\.{paragraphs:SMTP is the standard protocol for sending email through a mail server,so you can connect almost any mail service or self-hosted server that speaks it.}.pc-title_What_you_get_with_SMTP_\+_Courier{title:What you get with SMTP + Courier}.pc-lead_An_admin_adds_SMTP_once_on_the_Integrations_page_in_Courier\._Once_connected\,_anyone_on_your_team_can_design_and_send_email_through_your_SMTP_server\,_and_add_channels_whenever_they_need_them\.{lead:An admin adds SMTP once on the Integrations page in Courier. Once connected,anyone on your team can design and send email through your SMTP server,and add channels whenever they need them.}.pc-title_Add_your_SMTP_server{title:Add your SMTP server}.pc-body_Add_SMTP_as_an_email_provider_and_enter_your_host\,_port\,_username\,_and_password\,_plus_a_verified_From_Address\.{body:Add SMTP as an email provider and enter your host,port,username,and password,plus a verified From Address.}.pc-q_Can_I_use_SMTP_with_Courier\?{q:Can I use SMTP with Courier?}.pc-label_SMTP_alternatives{label:SMTP alternatives}.pc-href_\/integrations\/alternatives\/smtp{href:/integrations/alternatives/smtp}.pc-seo-title_Send_Email_with_SparkPost_and_Courier{seo-title:Send Email with SparkPost and Courier}.pc-provider-logo_SparkPost{provider-logo:SparkPost}.pc-breadcrumb_SparkPost{breadcrumb:SparkPost}.pc-eyebrow_SparkPost_\+_Courier{eyebrow:SparkPost + Courier}.pc-h1_Turn_SparkPost_into_a_multi-channel_notification_system{h1:Turn SparkPost into a multi-channel notification system}.pc-subtitle_Design_and_automate_every_message_with_Courier\._Keep_SparkPost_for_email_delivery\,_then_add_SMS\,_push\,_and_an_in-app_inbox_from_one_API\.{subtitle:Design and automate every message with Courier. Keep SparkPost for email delivery,then add SMS,push,and an in-app inbox from one API.}.pc-label_Read_the_SparkPost_docs{label:Read the SparkPost docs}.pc-title_What_SparkPost_is{title:What SparkPost is}.pc-paragraphs_SparkPost_is_an_email_delivery_service_that_sends_email_programmatically_through_its_Transmissions_API\,_with_sending_domains\,_deliverability_tooling\,_and_analytics\.{paragraphs:SparkPost is an email delivery service that sends email programmatically through its Transmissions API,with sending domains,deliverability tooling,and analytics.}.pc-prerequisite_You_need_a_Courier_account_and_your_own_SparkPost_account_and_API_key\.{prerequisite:You need a Courier account and your own SparkPost account and API key.}.pc-title_What_you_get_with_SparkPost_\+_Courier{title:What you get with SparkPost + Courier}.pc-lead_An_admin_adds_SparkPost_once_on_the_Integrations_page_in_Courier\._Once_connected\,_anyone_on_your_team_can_design_and_send_email_through_SparkPost\,_and_add_channels_whenever_they_need_them\.{lead:An admin adds SparkPost once on the Integrations page in Courier. Once connected,anyone on your team can design and send email through SparkPost,and add channels whenever they need them.}.pc-title_Add_your_SparkPost_key{title:Add your SparkPost key}.pc-body_Add_SparkPost_as_an_email_provider_and_paste_an_API_key_with_Transmissions_Read\/Write_permissions\,_plus_a_From_Address\.{body:Add SparkPost as an email provider and paste an API key with Transmissions Read/Write permissions,plus a From Address.}.pc-q_Can_I_use_SparkPost_with_Courier\?{q:Can I use SparkPost with Courier?}.pc-a_Yes\._SparkPost_works_as_an_email_delivery_provider_inside_Courier\._You_build_and_send_your_notifications_through_Courier_while_SparkPost_handles_the_actual_email_delivery\,_and_Courier_layers_content_design_and_multichannel_routing_on_top\.{a:Yes. SparkPost works as an email delivery provider inside Courier. You build and send your notifications through Courier while SparkPost handles the actual email delivery,and Courier layers content design and multichannel routing on top.}.pc-hook_Design_and_automate_email_on_top_of_SendGrid\.{hook:Design and automate email on top of SendGrid.}.pc-label_SparkPost_vs_SendGrid{label:SparkPost vs SendGrid}.pc-href_\/integrations\/compare\/sparkpost-vs-sendgrid{href:/integrations/compare/sparkpost-vs-sendgrid}.pc-label_SparkPost_website{label:SparkPost website}.pc-seo-title_Send_StreamChat_notifications_with_Courier{seo-title:Send StreamChat notifications with Courier}.pc-provider-logo_StreamChat{provider-logo:StreamChat}.pc-breadcrumb_StreamChat{breadcrumb:StreamChat}.pc-eyebrow_StreamChat_\+_Courier{eyebrow:StreamChat + Courier}.pc-h1_Add_StreamChat_to_your_multichannel_notification_stack{h1:Add StreamChat to your multichannel notification stack}.pc-subtitle_Already_using_StreamChat\?_Add_it_to_Courier_and_deliver_notifications_through_it_alongside_every_other_channel\,_from_one_API\.{subtitle:Already using StreamChat? Add it to Courier and deliver notifications through it alongside every other channel,from one API.}.pc-label_Read_the_StreamChat_docs{label:Read the StreamChat docs}.pc-title_What_StreamChat_is{title:What StreamChat is}.pc-paragraphs_StreamChat_is_a_developer_platform_for_building_in-app_chat_and_messaging_into_your_own_product\,_with_APIs_and_SDKs_for_real-time_channels\.{paragraphs:StreamChat is a developer platform for building in-app chat and messaging into your own product,with APIs and SDKs for real-time channels.}.pc-prerequisite_You_need_a_Courier_account_and_your_own_StreamChat_account_with_a_configured_project_\(API_key\,_API_secret\,_and_sender_ID\)\.{prerequisite:You need a Courier account and your own StreamChat account with a configured project (API key,API secret,and sender ID).}.pc-title_What_you_get_with_StreamChat_\+_Courier{title:What you get with StreamChat + Courier}.pc-tag_Multi-channel{tag:Multi-channel}.pc-title_One_more_channel\,_same_API{title:One more channel,same API}.pc-body_Add_StreamChat_from_the_same_Send_API_and_templates_you_already_use\,_so_there_is_no_separate_integration_to_build\.{body:Add StreamChat from the same Send API and templates you already use,so there is no separate integration to build.}.pc-items_Add_StreamChat_to_an_existing_multichannel_send_with_no_new_code{items:Add StreamChat to an existing multichannel send with no new code}.pc-lead_An_admin_adds_StreamChat_once_on_the_Integrations_page_in_Courier\._Once_connected\,_anyone_on_your_team_can_deliver_notifications_through_StreamChat\,_alongside_every_other_channel\.{lead:An admin adds StreamChat once on the Integrations page in Courier. Once connected,anyone on your team can deliver notifications through StreamChat,alongside every other channel.}.pc-title_Add_StreamChat_in_Courier{title:Add StreamChat in Courier}.pc-body_Open_Integrations_and_select_StreamChat\.{body:Open Integrations and select StreamChat.}.pc-q_Can_I_use_Stream_Chat_with_Courier\?{q:Can I use Stream Chat with Courier?}.pc-label_StreamChat_alternatives{label:StreamChat alternatives}.pc-href_\/integrations\/alternatives\/stream-chat{href:/integrations/alternatives/stream-chat}.pc-label_StreamChat_website{label:StreamChat website}.pc-seo-title_Send_SMS_with_Telnyx_and_Courier{seo-title:Send SMS with Telnyx and Courier}.pc-provider-logo_Telnyx{provider-logo:Telnyx}.pc-breadcrumb_Telnyx{breadcrumb:Telnyx}.pc-eyebrow_Telnyx_\+_Courier{eyebrow:Telnyx + Courier}.pc-h1_Turn_Telnyx_SMS_into_multi-channel_notifications{h1:Turn Telnyx SMS into multi-channel notifications}.pc-subtitle_Design_and_automate_every_message_with_Courier\._Keep_Telnyx_for_SMS_delivery\,_then_add_push_and_an_in-app_inbox_from_one_API\.{subtitle:Design and automate every message with Courier. Keep Telnyx for SMS delivery,then add push and an in-app inbox from one API.}.pc-label_Read_the_Telnyx_docs{label:Read the Telnyx docs}.pc-title_What_Telnyx_is{title:What Telnyx is}.pc-paragraphs_Telnyx_is_a_communications_platform_that_runs_its_own_carrier_network\,_offering_a_programmable_SMS_API_and_SMS-capable_phone_numbers_for_sending_text_messages_worldwide\.{paragraphs:Telnyx is a communications platform that runs its own carrier network,offering a programmable SMS API and SMS-capable phone numbers for sending text messages worldwide.}.pc-prerequisite_You_need_a_Courier_account_and_your_own_Telnyx_account_\(an_API_Key_and_an_SMS-capable_originating_phone_number\)\.{prerequisite:You need a Courier account and your own Telnyx account (an API Key and an SMS-capable originating phone number).}.pc-title_What_you_get_with_Telnyx_\+_Courier{title:What you get with Telnyx + Courier}.pc-lead_An_admin_adds_Telnyx_once_on_the_Integrations_page_in_Courier\._Once_connected\,_anyone_on_your_team_can_send_SMS_through_Telnyx_and_add_push_or_an_in-app_inbox_whenever_they_need_them\.{lead:An admin adds Telnyx once on the Integrations page in Courier. Once connected,anyone on your team can send SMS through Telnyx and add push or an in-app inbox whenever they need them.}.pc-title_Add_Telnyx_in_Courier{title:Add Telnyx in Courier}.pc-body_Open_Integrations_and_select_Telnyx\.{body:Open Integrations and select Telnyx.}.pc-q_Can_I_use_Telnyx_with_Courier\?{q:Can I use Telnyx with Courier?}.pc-a_Yes\._Telnyx_is_a_supported_SMS_provider_in_Courier\,_so_you_route_text_messages_through_your_Telnyx_number_while_Courier_handles_the_content\,_routing\,_and_delivery_across_email\,_push\,_and_Courier_Inbox_too\.{a:Yes. Telnyx is a supported SMS provider in Courier,so you route text messages through your Telnyx number while Courier handles the content,routing,and delivery across email,push,and Courier Inbox too.}.pc-label_Telnyx_vs_Twilio{label:Telnyx vs Twilio}.pc-href_\/integrations\/compare\/telnyx-vs-twilio{href:/integrations/compare/telnyx-vs-twilio}.pc-label_Telnyx_website{label:Telnyx website}.pc-seo-title_Send_SMS_with_Twilio_and_Courier{seo-title:Send SMS with Twilio and Courier}.pc-provider-logo_Twilio{provider-logo:Twilio}.pc-breadcrumb_Twilio{breadcrumb:Twilio}.pc-eyebrow_Twilio_\+_Courier{eyebrow:Twilio + Courier}.pc-h1_Turn_Twilio_SMS_into_multi-channel_notifications{h1:Turn Twilio SMS into multi-channel notifications}.pc-subtitle_Design_and_automate_every_message_with_Courier\._Keep_Twilio_for_SMS_delivery\,_then_add_push_and_an_in-app_inbox_from_one_API\.{subtitle:Design and automate every message with Courier. Keep Twilio for SMS delivery,then add push and an in-app inbox from one API.}.pc-label_Read_the_Twilio_docs{label:Read the Twilio docs}.pc-title_What_Twilio_is{title:What Twilio is}.pc-prerequisite_You_need_a_Courier_account_and_your_own_Twilio_account_\(Account_SID\,_Auth_Token\,_and_Messaging_Service_SID\)\.{prerequisite:You need a Courier account and your own Twilio account (Account SID,Auth Token,and Messaging Service SID).}.pc-title_What_you_get_with_Twilio_\+_Courier{title:What you get with Twilio + Courier}.pc-lead_An_admin_adds_Twilio_once_on_the_Integrations_page_in_Courier\._Once_connected\,_anyone_on_your_team_can_send_SMS_through_Twilio_and_add_push_or_an_in-app_inbox_whenever_they_need_them\.{lead:An admin adds Twilio once on the Integrations page in Courier. Once connected,anyone on your team can send SMS through Twilio and add push or an in-app inbox whenever they need them.}.pc-title_Add_Twilio_in_Courier{title:Add Twilio in Courier}.pc-body_Open_Integrations_and_select_Twilio\.{body:Open Integrations and select Twilio.}.pc-q_Can_I_use_Twilio_with_Courier\?{q:Can I use Twilio with Courier?}.pc-label_Twilio_vs_Vonage{label:Twilio vs Vonage}.pc-href_\/integrations\/compare\/twilio-vs-vonage{href:/integrations/compare/twilio-vs-vonage}.pc-label_Twilio_website{label:Twilio website}.pc-seo-title_Send_SMS_with_Vonage_and_Courier{seo-title:Send SMS with Vonage and Courier}.pc-provider-logo_Vonage{provider-logo:Vonage}.pc-breadcrumb_Vonage{breadcrumb:Vonage}.pc-eyebrow_Vonage_\+_Courier{eyebrow:Vonage + Courier}.pc-h1_Turn_Vonage_SMS_into_multi-channel_notifications{h1:Turn Vonage SMS into multi-channel notifications}.pc-subtitle_Design_and_automate_every_message_with_Courier\._Keep_Vonage_for_SMS_delivery\,_then_add_push_and_an_in-app_inbox_from_one_API\.{subtitle:Design and automate every message with Courier. Keep Vonage for SMS delivery,then add push and an in-app inbox from one API.}.pc-label_Read_the_Vonage_docs{label:Read the Vonage docs}.pc-title_What_Vonage_is{title:What Vonage is}.pc-paragraphs_Vonage_\(formerly_Nexmo\)_is_a_communications_platform_whose_SMS_API_delivers_text_messages_to_users_worldwide_across_a_global_carrier_network\.{paragraphs:Vonage (formerly Nexmo) is a communications platform whose SMS API delivers text messages to users worldwide across a global carrier network.}.pc-prerequisite_You_need_a_Courier_account_and_your_own_Vonage_account_\(API_key\,_API_secret\,_and_a_From_number\)\.{prerequisite:You need a Courier account and your own Vonage account (API key,API secret,and a From number).}.pc-title_What_you_get_with_Vonage_\+_Courier{title:What you get with Vonage + Courier}.pc-lead_An_admin_adds_Vonage_once_on_the_Integrations_page_in_Courier\._Once_connected\,_anyone_on_your_team_can_send_SMS_through_Vonage_and_add_push_or_an_in-app_inbox_whenever_they_need_them\.{lead:An admin adds Vonage once on the Integrations page in Courier. Once connected,anyone on your team can send SMS through Vonage and add push or an in-app inbox whenever they need them.}.pc-title_Add_Vonage_in_Courier{title:Add Vonage in Courier}.pc-body_Open_Integrations_and_select_Vonage\.{body:Open Integrations and select Vonage.}.pc-q_Can_I_use_Vonage_with_Courier\?{q:Can I use Vonage with Courier?}.pc-label_Vonage_vs_Twilio{label:Vonage vs Twilio}.pc-href_\/integrations\/compare\/vonage-vs-twilio{href:/integrations/compare/vonage-vs-twilio}.pc-label_Vonage_website{label:Vonage website}.pc-seo-title_Send_notifications_to_any_endpoint_with_a_webhook{seo-title:Send notifications to any endpoint with a webhook}.pc-provider-logo_Webhook{provider-logo:Webhook}.pc-breadcrumb_Webhook{breadcrumb:Webhook}.pc-eyebrow_Webhook_\+_Courier{eyebrow:Webhook + Courier}.pc-h1_Send_notifications_to_any_endpoint_with_a_webhook{h1:Send notifications to any endpoint with a webhook}.pc-subtitle_Deliver_a_notification_as_an_HTTP_request_to_any_URL_you_control\,_as_one_channel_in_your_Courier_stack\,_so_you_can_integrate_systems_Courier_does_not_natively_support\.{subtitle:Deliver a notification as an HTTP request to any URL you control,as one channel in your Courier stack,so you can integrate systems Courier does not natively support.}.pc-label_Read_the_Webhook_docs{label:Read the Webhook docs}.pc-title_What_the_Webhook_integration_is{title:What the Webhook integration is}.pc-paragraphs_The_Webhook_provider_delivers_HTTP_requests_through_Courier_to_a_static_or_dynamic_URL\._Instead_of_a_traditional_channel\,_the_notification_arrives_at_an_endpoint_you_control\.{paragraphs:The Webhook provider delivers HTTP requests through Courier to a static or dynamic URL. Instead of a traditional channel,the notification arrives at an endpoint you control.}.pc-prerequisite_You_need_a_Courier_account_and_an_HTTP_endpoint_that_can_receive_a_JSON_request\.{prerequisite:You need a Courier account and an HTTP endpoint that can receive a JSON request.}.pc-title_What_you_get_with_the_Webhook_channel{title:What you get with the Webhook channel}.pc-tag_Any_endpoint{tag:Any endpoint}.pc-title_Deliver_to_a_URL_you_control{title:Deliver to a URL you control}.pc-body_Point_the_webhook_at_a_static_URL_in_the_integration_settings\,_or_set_the_destination_per_recipient_with_a_dynamic_profile_field\.{body:Point the webhook at a static URL in the integration settings,or set the destination per recipient with a dynamic profile field.}.pc-items_Deliver_a_notification_to_an_internal_service_that_has_no_native_Courier_connector{items:Deliver a notification to an internal service that has no native Courier connector}.pc-lead_An_admin_adds_the_Webhook_provider_once_on_the_Integrations_page_in_Courier\._After_that_it_behaves_like_any_other_channel_in_your_sends\.{lead:An admin adds the Webhook provider once on the Integrations page in Courier. After that it behaves like any other channel in your sends.}.pc-title_Add_the_Webhook_provider{title:Add the Webhook provider}.pc-body_Open_Integrations_and_add_Webhook\,_then_set_a_static_URL_and_authorization_type\,_or_plan_to_pass_the_destination_per_recipient\.{body:Open Integrations and add Webhook,then set a static URL and authorization type,or plan to pass the destination per recipient.}.pc-q_Can_I_use_Webhook_with_Courier\?{q:Can I use Webhook with Courier?}.pc-a_Yes\._Webhook_is_a_built-in_Courier_delivery_channel_that_posts_your_notification_to_any_HTTPS_endpoint_or_API_you_define\._It_lets_you_treat_a_custom_service_as_a_channel_alongside_email\,_SMS\,_push\,_and_Courier_Inbox\.{a:Yes. Webhook is a built-in Courier delivery channel that posts your notification to any HTTPS endpoint or API you define. It lets you treat a custom service as a channel alongside email,SMS,push,and Courier Inbox.}.pc-name_Custom_Provider{name:Custom Provider}.pc-hook_Model_your_own_provider_on_a_channel\.{hook:Model your own provider on a channel.}.pc-works-with_Webhook{works-with:Webhook}.pc-seo-title_Send_WhatsApp_messages_with_Courier{seo-title:Send WhatsApp messages with Courier}.pc-provider-logo_WhatsApp{provider-logo:WhatsApp}.pc-breadcrumb_WhatsApp{breadcrumb:WhatsApp}.pc-eyebrow_WhatsApp_\+_Courier{eyebrow:WhatsApp + Courier}.pc-h1_Turn_WhatsApp_into_multi-channel_notifications{h1:Turn WhatsApp into multi-channel notifications}.pc-subtitle_Design_and_automate_every_message_with_Courier\._Keep_WhatsApp_for_delivery\,_then_add_SMS\,_push\,_and_an_in-app_inbox_from_one_API\.{subtitle:Design and automate every message with Courier. Keep WhatsApp for delivery,then add SMS,push,and an in-app inbox from one API.}.pc-label_Read_the_WhatsApp_docs{label:Read the WhatsApp docs}.pc-title_What_WhatsApp_is{title:What WhatsApp is}.pc-prerequisite_You_need_a_Courier_account_and_a_Twilio_account_with_WhatsApp_enabled_\(Twilio_Account_SID\,_Auth_Token\,_and_a_WhatsApp-enabled_From_number\)\.{prerequisite:You need a Courier account and a Twilio account with WhatsApp enabled (Twilio Account SID,Auth Token,and a WhatsApp-enabled From number).}.pc-title_What_you_get_with_WhatsApp_\+_Courier{title:What you get with WhatsApp + Courier}.pc-body_Reach_mobile_and_web_with_push_alongside_WhatsApp_from_one_notification\,_no_new_integration_in_your_code\.{body:Reach mobile and web with push alongside WhatsApp from one notification,no new integration in your code.}.pc-items_Send_a_WhatsApp_message_and_a_push_from_the_same_notification\,_so_users_get_it_wherever_they_are{items:Send a WhatsApp message and a push from the same notification,so users get it wherever they are}.pc-lead_An_admin_adds_WhatsApp_once_on_the_Integrations_page_in_Courier\._Once_connected\,_anyone_on_your_team_can_send_WhatsApp_messages_and_add_push_or_an_in-app_inbox_whenever_they_need_them\.{lead:An admin adds WhatsApp once on the Integrations page in Courier. Once connected,anyone on your team can send WhatsApp messages and add push or an in-app inbox whenever they need them.}.pc-title_Add_WhatsApp_in_Courier{title:Add WhatsApp in Courier}.pc-body_Open_Integrations_and_select_WhatsApp\.{body:Open Integrations and select WhatsApp.}.pc-q_Can_I_use_WhatsApp_with_Courier\?{q:Can I use WhatsApp with Courier?}.pc-a_Yes\._Courier_delivers_WhatsApp_Business_messages_through_the_Twilio_API_for_WhatsApp\,_letting_you_add_WhatsApp_as_a_channel_in_your_notification_stack_alongside_email\,_SMS\,_push\,_and_Courier_Inbox_from_one_Send_API_call\.{a:Yes. Courier delivers WhatsApp Business messages through the Twilio API for WhatsApp,letting you add WhatsApp as a channel in your notification stack alongside email,SMS,push,and Courier Inbox from one Send API call.}.pc-hook_Send_SMS_through_the_same_Twilio_account\.{hook:Send SMS through the same Twilio account.}.pc-label_WhatsApp_vs_Twilio{label:WhatsApp vs Twilio}.pc-href_\/integrations\/compare\/whatsapp-vs-twilio{href:/integrations/compare/whatsapp-vs-twilio}.pc-label_WhatsApp_website{label:WhatsApp website}.pc-bg-c_rgba\(255\,_255\,_255\,_0\.08\){background-color:#ffffff14}.pc-bg-i_linear-gradient\(to_left\,_\#9121C2\,_\#FF5E5E\){background-image:linear-gradient(270deg,#9121c2,#ff5e5e)}.pc-bg-i_url\(\'\/banner-pattern\.svg\'\){background-image:url(/banner-pattern.svg)}.pc-fs_30px{font-size:30px}.pc-lh_36px{line-height:36px}.pc-c_\#1F9D57{color:#1f9d57}.pc-c_\#57606a{color:#57606a}.pc-op_1{opacity:1}.pc-op_0\.55{opacity:.55}.pc-flex-g_1{flex-grow:1}.pc-c_rgba\(255\,_255\,_255\,_0\.72\){color:#ffffffb8}.pc-fs_13{font-size:13px}.pc-asp_2\.5_\/_1{aspect-ratio:2.5/1}.pc-grid-tc_repeat\(2\,_1fr\){grid-template-columns:repeat(2,1fr)}.pc-c_\#614E6A{color:#614e6a}.pc-bg-c_\#FDFCFD{background-color:#fdfcfd}.pc-bg-c_\#fff{background-color:#fff}.pc-bx-sh_0_12px_40px_rgba\(44\,_19\,_56\,_0\.08\){box-shadow:0 12px 40px #2c133814}.pc-lh_34px{line-height:34px}.pc-fw_700{font-weight:700}.pc-c_\#C9C1CC{color:#c9c1cc}.pc-fs_24px{font-size:24px}.pc-lh_40px{line-height:40px}.pc-z_2{z-index:2}.pc-flex-d_row{flex-direction:row}.pc-bg-c_var\(--dot-bg\){background-color:var(--dot-bg)}.pc-z_1{z-index:1}.pc-fs_3xl{font-size:var(--pc-font-sizes-3xl)}.pc-ls_3\.5px{letter-spacing:3.5px}.pc-bg-i_linear-gradient\(to_right\,_white_50\%\,_rgba\(255\,_255\,_255\,_0\.04\)\){background-image:linear-gradient(90deg,#fff 50%,#ffffff0a)}.pc-bg-i_linear-gradient\(to_left\,_white_50\%\,_rgba\(255\,_255\,_255\,_0\.04\)\){background-image:linear-gradient(270deg,#fff 50%,#ffffff0a)}.pc-jc_space-between{justify-content:space-between}.pc-ff_heading{font-family:var(--pc-fonts-heading)}.pc-lh_42px{line-height:42px}.pc-fw_bold{font-weight:var(--pc-font-weights-bold)}.pc-lh_32px{line-height:32px}.pc-c_secondary\.darkAlpha{color:var(--pc-colors-secondary-dark-alpha)}.pc-fill_true{fill:true}.pc-asp_16_\/_9{aspect-ratio:16/9}.pc-ff_sans-serif{font-family:sans-serif}.pc-d_-webkit-box{display:-webkit-box}.pc--webkit-line-clamp_2{-webkit-line-clamp:2}.pc--webkit-box-orient_vertical{-webkit-box-orient:vertical}.pc-lh_48px{line-height:48px}.pc-c_secondary\.dark{color:var(--pc-colors-secondary-dark)}.pc-lh_1\.33{line-height:1.33}.pc-c_secondary\.text{color:var(--pc-colors-secondary-text)}.pc-fw_400{font-weight:400}.pc-lh_24px{line-height:24px}.pc--webkit-line-clamp_3{-webkit-line-clamp:3}.pc-c_\#737373{color:#737373}.pc-as_flex-start{align-self:flex-start}.pc-fs_32px{font-size:32px}.pc-c_\#09090B{color:#09090b}.pc--webkit-line-clamp_4{-webkit-line-clamp:4}.pc-fs_28px{font-size:28px}.pc-cg_6{column-gap:var(--pc-spacing-6)}.pc-rg_14{row-gap:var(--pc-spacing-14)}.pc-fs_36px{font-size:36px}.pc-fs_lg{font-size:var(--pc-font-sizes-lg)}.pc-c_black{color:var(--pc-colors-black)}.pc-grid-tc_repeat\(2\,_minmax\(0\,_1fr\)\){grid-template-columns:repeat(2,minmax(0,1fr))}.pc-ap_none{appearance:none;-webkit-appearance:none}.pc-us_none{-webkit-user-select:none;user-select:none}.pc-va_middle{vertical-align:middle}.pc-isolation_isolate{isolation:isolate}.pc-lh_1\.2{line-height:1.2}.pc-bx-sh_0px_2px_10px_rgba\(0\,_0\,_0\,_0\.05\){box-shadow:0 2px 10px #0000000d}.pc-trs-prop_background-color\,_border-color\,_color\,_fill\,_stroke\,_opacity\,_box-shadow\,_transform{--transition-prop:background-color,border-color,color,fill,stroke,opacity,box-shadow,transform;transition-property:background-color,border-color,color,fill,stroke,opacity,box-shadow,transform}.pc-trs-dur_0\.2s{--transition-duration:0.2s;transition-duration:.2s}.pc-resize_none{resize:none}.pc-lh_1\.4{line-height:1.4}.pc-ai_stretch{align-items:stretch}.pc-ai_baseline{align-items:baseline}.pc-c_primary\.salmon{color:var(--pc-colors-primary-salmon)}.pc-rg_16{row-gap:var(--pc-spacing-16)}.pc-lh_22px{line-height:22px}.pc-c_rgba\(255\,255\,255\,0\.64\){color:#ffffffa3}.pc-bx-sh_rgba\(0\,_0\,_0\,_0\.12\)_0px_1px_1px_0px{box-shadow:0 1px 1px 0 #0000001f}.pc-bg-c_nav\.background{background-color:var(--pc-colors-nav-background)}.pc-pos_fixed{position:fixed}.pc-z_999{z-index:999}.pc-jc_flex-start{justify-content:flex-start}.pc-c_rgba\(18\,_18\,_18\){color:#121212}.pc-c_rgb\(255\,255\,255\,0\.64\){color:#ffffffa3}.pc-lh_16px{line-height:16px}.pc-ls_0\.04em{letter-spacing:.04em}.pc-c_rgb\(255\,255\,255\,0\.52\){color:#ffffff85}.pc-fs_1rem{font-size:1rem}.pc-c_\#27272a{color:#27272a}.pc-lh_1{line-height:1}.pc-obj-f_cover{object-fit:cover}.pc-op_0\.4{opacity:.4}.pc-justify-items_center{justify-items:center}.pc-z_1000{z-index:1000}.pc-ai_auto{align-items:auto}.pc-flex-d_column-reverse{flex-direction:column-reverse}.pc-ls_0\.12em{letter-spacing:.12em}.pc-fw_550{font-weight:550}.pc-ls_-0\.02em{letter-spacing:-.02em}.pc-c_rgba\(255\,255\,255\,0\.80\){color:#fffc}.pc-fs_1\.125rem{font-size:1.125rem}.pc-bg-i_radial-gradient\(closest-side\,_rgba\(140\,0\,85\,0\.55\)\,_rgba\(140\,0\,85\,0\)\){background-image:radial-gradient(closest-side,#8c00558c,#8c005500)}.pc-z_0{z-index:0}.pc-c_\#FFFFFF{color:#fff}.pc-bg-c_\#47424F{background-color:#47424f}.pc-bg-c_\#F5F5F5{background-color:#f5f5f5}.pc-fw_medium{font-weight:var(--pc-font-weights-medium)}.pc-c_gray\.500{color:var(--pc-colors-gray-500)}.pc-d_inline-block{display:inline-block}.pc-bd-s-c_transparent{border-inline-start-color:var(--pc-colors-transparent)}.pc-c_\#71717a{color:#71717a}.pc-fw_800{font-weight:800}.pc-ls_-0\.03em{letter-spacing:-.03em}.pc-fs_38px{font-size:38px}.pc-lh_1\.5rem{line-height:1.5rem}.pc-trf_translate\(-50\%\,_-50\%\){transform:translate(-50%,-50%)}.pc-fs_0\.875rem{font-size:.875rem}.pc-lh_1\.25rem{line-height:1.25rem}.pc-trf_translateY\(-50\%\){transform:translateY(-50%)}.pc-fs_11px{font-size:11px}.pc-bx-sh_inset_0_0_0_1px_\#e4e4e7{box-shadow:inset 0 0 0 1px #e4e4e7}.pc-c_\#1C1815{color:#1c1815}.pc-ff_body{font-family:var(--pc-fonts-body)}.pc-fs_11\.5px{font-size:11.5px}.pc-ls_\.04em{letter-spacing:.04em}.pc-c_rgba\(255\,255\,255\,\.5\){color:#ffffff80}.pc-op_0\.5{opacity:.5}.pc-lh_1\.06{line-height:1.06}.pc-fs_16\.5px{font-size:16.5px}.pc-c_rgba\(255\,255\,255\,\.72\){color:#ffffffb8}.pc-ls_\.12em{letter-spacing:.12em}.pc-c_rgba\(255\,255\,255\,\.42\){color:#ffffff6b}.pc-fs_10px{font-size:10px}.pc-c_\#7E756D{color:#7e756d}.pc-fs_20px{font-size:20px}.pc-fs_15\.5px{font-size:15.5px}.pc-fs_14\.5px{font-size:14.5px}.pc-ls_\.2em{letter-spacing:.2em}.pc-lh_1\.08{line-height:1.08}.pc-fs_10\.5px{font-size:10.5px}.pc-lh_1\.7{line-height:1.7}.pc-ls_\.02em{letter-spacing:.02em}.pc-bg-c_grayScale\.gray100{background-color:var(--pc-colors-gray-scale-gray100)}.pc-tov_ellipsis{text-overflow:ellipsis}.pc-li-t_none{list-style-type:none}.pc-c_contentPages\.textTertiary{color:var(--pc-colors-content-pages-text-tertiary)}.pc-c_\#FFF{color:#fff}.pc-pos_sticky{position:sticky}.pc-c_\#171717{color:#171717}.pc-bx-sh_0px_8px_18px_-6px_rgba\(24\,_39\,_75\,_0\.12\)\,_0px_12px_42px_-4px_rgba\(24\,_39\,_75\,_0\.12\){box-shadow:0 8px 18px -6px #18274b1f,0 12px 42px -4px #18274b1f}.pc-c_rgba\(26\,_32\,_44\,_0\.5\){color:#1a202c80}.pc-ls_0\.08em{letter-spacing:.08em}.pc-c_var\(--guide-accent\){color:var(--guide-accent)}.pc-lh_1\.3{line-height:1.3}.pc-ls_-0\.01em{letter-spacing:-.01em}.pc-fs_13\.5px{font-size:13.5px}.pc-c_\#55555F{color:#55555f}.pc-z_20{z-index:20}.pc-bkdp_blur\(8px\){backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.pc-c_\#8A8A95{color:#8a8a95}.pc-fw_650{font-weight:650}.pc-ls_0\.18em{letter-spacing:.18em}.pc-c_rgba\(255\,255\,255\,0\.55\){color:#ffffff8c}.pc-lh_1\.1{line-height:1.1}.pc-lh_1\.55{line-height:1.55}.pc-c_rgba\(255\,255\,255\,0\.78\){color:#ffffffc7}.pc-fs_12\.5px{font-size:12.5px}.pc-c_rgba\(255\,255\,255\,0\.5\){color:#ffffff80}.pc-c_var\(--btn-color\){color:var(--btn-color)}.pc-bg-c_\#FFE8E8{background-color:#ffe8e8}.pc-lh_18px{line-height:18px}.pc-bg-i_linear-gradient\(to_right\,_\#FFFFFF_14\.36\%\,_rgba\(255\,_255\,_255\,_0\)_100\%\){background-image:linear-gradient(90deg,#fff 14.36%,#fff0)}.pc-bg-i_linear-gradient\(to_left\,_\#FFFFFF_14\.36\%\,_rgba\(255\,_255\,_255\,_0\)_100\%\){background-image:linear-gradient(270deg,#fff 14.36%,#fff0)}.pc-bg-c_rgba\(44\,19\,56\,\.16\){background-color:#2c133829}.pc-filter_brightness\(0\)_invert\(1\)_contrast\(3\){filter:brightness(0) invert(1) contrast(3)}.pc-bx-sh_0_4px_14px_rgba\(0\,0\,0\,\.14\){box-shadow:0 4px 14px #00000024}.pc-ls_\.1em{letter-spacing:.1em}.pc-c_\#C0273D{color:#c0273d}.pc-ls_\.07em{letter-spacing:.07em}.pc-c_rgba\(255\,255\,255\,\.7\){color:#ffffffb3}.pc-ls_\.08em{letter-spacing:.08em}.pc-ls_\.06em{letter-spacing:.06em}.pc-c_\#177C44{color:#177c44}.pc-ls_-\.01em{letter-spacing:-.01em}.pc-c_\#A31E31{color:#a31e31}.pc-cg_28px{column-gap:28px}.pc-rg_14px{row-gap:14px}.pc-cg_14px{column-gap:14px}.pc-rg_12px{row-gap:12px}.pc-rg_8px{row-gap:8px}.pc-fs_34px{font-size:34px}.pc-lh_1\.05{line-height:1.05}.pc-ls_-\.025em{letter-spacing:-.025em}.pc-c_\#1A202C{color:#1a202c}.pc-c_var\(--pc-colors-ed-win-b\){color:var(--pc-colors-ed-win-b)}.pc-c_var\(--pc-colors-ed-text\){color:var(--pc-colors-ed-text)}.pc-c_rgba\(28\,24\,21\,\.38\){color:#1c181561}.pc-grid-tc_minmax\(0\,_1\.5fr\)_1fr_1fr{grid-template-columns:minmax(0,1.5fr) 1fr 1fr}.pc-c_rgba\(28\,24\,21\,\.62\){color:#1c18159e}.pc-c_var\(--pc-colors-ed-sub\){color:var(--pc-colors-ed-sub)}.pc-fs_19px{font-size:19px}.pc-c_rgba\(28\,24\,21\,\.72\){color:#1c1815b8}.pc-grid-tc_1\.5fr_1fr_1fr{grid-template-columns:1.5fr 1fr 1fr}.pc-c_rgba\(28\,24\,21\,\.5\){color:#1c181580}.pc-c_var\(--pc-colors-ed-on-dark-b\){color:var(--pc-colors-ed-on-dark-b)}.pc-lh_1\.15{line-height:1.15}.pc-c_var\(--pc-colors-ed-win-a\){color:var(--pc-colors-ed-win-a)}.pc-size_20px{width:20px;height:20px}.pc-bg-c_transparent{background-color:var(--pc-colors-transparent)}.pc-ls_2\.5{letter-spacing:2.5px}.pc-bg-grad_linear-gradient\(0deg\,_\#E2DEE4_0\%\,_rgba\(226\,_222\,_228\,_0\.25\)_100\%\){background-image:linear-gradient(0deg,#e2dee4,#e2dee440)}.pc-bx-sh_0px_2px_2px_rgba\(0\,_0\,_0\,_0\.05\){box-shadow:0 2px 2px #0000000d}.pc-bdr-t_13{border-top-left-radius:13px;border-top-right-radius:13px}.pc-fs_24{font-size:24px}.pc-fs_18{font-size:18px}.pc-ls_1px{letter-spacing:1px}.pc-cg_5{column-gap:var(--pc-spacing-5)}.pc-cg_2\.5{column-gap:var(--pc-spacing-2\.5)}.pc-rg_2\.5{row-gap:var(--pc-spacing-2\.5)}.pc-c_\#988B9D{color:#988b9d}.pc-c_rgba\(44\,_19\,_56\,_0\.48\){color:#2c13387a}.pc-bx-sh_inset_2px_0_transparent{box-shadow:inset 2px 0 #0000}.pc-white-space_initial{white-space:normal}.pc-bg-grad_linear-gradient\(to_bottom\,_rgba\(250\,_248\,_250\,_0\)\,_\#faf8fa_90\%\){background-image:linear-gradient(180deg,#faf8fa00,#faf8fa 90%)}.pc-rg_10px{row-gap:10px}.pc-ls_\.18em{letter-spacing:.18em}.pc-op_0\.45{opacity:.45}.pc-c_rgba\(255\,255\,255\,\.82\){color:#ffffffd1}.pc-c_rgba\(255\,255\,255\,\.78\){color:#ffffffc7}.pc-c_\#7fdba0{color:#7fdba0}.pc-bx-sh_0_6px_20px_rgba\(0\,0\,0\,\.35\){box-shadow:0 6px 20px #00000059}.pc-c_rgba\(28\,24\,21\,\.45\){color:#1c181573}.pc-c_rgba\(28\,24\,21\,\.75\){color:#1c1815bf}.pc-obj-f_contain{object-fit:contain}.pc-z_100{z-index:100}.pc-bx-sh_rgba\(0\,0\,0\,0\.25\)_0px_11px_22px_0px{box-shadow:0 11px 22px 0 #00000040}.pc-cursor_auto{cursor:auto}.pc-cursor_ew-resize{cursor:ew-resize}.pc-d_table{display:table}.pc-ai_left{align-items:left}.pc-jc_left{justify-content:left}.pc-max-w_1400{max-width:1400px}.pc-w_88px{width:88px}.pc-h_24px{height:24px}.pc-w_103px{width:103px}.pc-mt_92px{margin-top:92px}.pc-pt_10{padding-top:var(--pc-spacing-10)}.pc-pb_12px{padding-bottom:12px}.pc-max-w_8xl{max-width:var(--pc-sizes-8xl)}.pc-mt_-24px{margin-top:-24px}.pc-pt_16{padding-top:var(--pc-spacing-16)}.pc-max-w_570px{max-width:570px}.pc-max-w_450px{max-width:450px}.pc-pt_55px{padding-top:55px}.pc-min-w_0{min-width:var(--pc-sizes-0)}.pc-w_100\%{width:100%}.pc-h_45px{height:45px}.pc-mb_20px{margin-bottom:20px}.pc-min-h_360px{min-height:360px}.pc-w_515{width:515px}.pc-h_370{height:370px}.pc-bd-t-w_1px{border-top-width:1px}.pc-max-w_1240{max-width:1240px}.pc-pb_23px{padding-bottom:23px}.pc-mt_0{margin-top:var(--pc-spacing-0)}.pc-mt_88px{margin-top:88px}.pc-pt_42px{padding-top:42px}.pc-mt_32px{margin-top:32px}.pc-h_50px{height:50px}.pc-h_40px{height:40px}.pc-pl_10px{padding-left:10px}.pc-pr_14px{padding-right:14px}.pc-ml_20px{margin-left:20px}.pc-w_560px{width:560px}.pc-max-w_100\%{max-width:100%}.pc-h_100\%{height:100%}.pc-pb_4{padding-bottom:var(--pc-spacing-4)}.pc-mb_4{margin-bottom:var(--pc-spacing-4)}.pc-ov-x_auto{overflow-x:auto}.pc-mt_2{margin-top:var(--pc-spacing-2)}.pc-bd-b-w_1px{border-bottom-width:1px}.pc-pl_10{padding-left:var(--pc-spacing-10)}.pc-bd-l-c_primary\.sand{border-left-color:var(--pc-colors-primary-sand)}.pc-bd-l-w_4px{border-left-width:4px}.pc-pl_4{padding-left:var(--pc-spacing-4)}.pc-mb_3{margin-bottom:var(--pc-spacing-3)}.pc-mt_42px{margin-top:42px}.pc-h_58px{height:58px}.pc-w_19px{width:19px}.pc-h_14px{height:14px}.pc-w_17px{width:17px}.pc-h_11px{height:11px}.pc-mb_8{margin-bottom:var(--pc-spacing-8)}.pc-min-h_100vh{min-height:100vh}.pc-pt_72px{padding-top:72px}.pc-pb_32px{padding-bottom:32px}.pc-top_-40px{top:-40px}.pc-left_50\%{left:50%}.pc-w_820px{width:820px}.pc-max-w_120vw{max-width:120vw}.pc-h_520px{height:520px}.pc-mb_18px{margin-bottom:18px}.pc-max-w_820px{max-width:820px}.pc-max-w_600px{max-width:600px}.pc-max-w_920px{max-width:920px}.pc-max-w_560px{max-width:560px}.pc-left_16px{left:16px}.pc-top_50\%{top:50%}.pc-pl_42px{padding-left:42px}.pc-pr_16px{padding-right:16px}.pc-mt_20px{margin-top:20px}.pc-pb_48px{padding-bottom:48px}.pc-max-w_1120px{max-width:1120px}.pc-pt_36px{padding-top:36px}.pc-mt_8px{margin-top:8px}.pc-mb_22px{margin-bottom:22px}.pc-w_34px{width:34px}.pc-h_34px{height:34px}.pc-mt_1px{margin-top:1px}.pc-mr_auto{margin-right:auto}.pc-mt_5px{margin-top:5px}.pc-mt_3px{margin-top:3px}.pc-pb_72px{padding-bottom:72px}.pc-max-w_760px{max-width:760px}.pc-pt_40px{padding-top:40px}.pc-mb_36px{margin-bottom:36px}.pc-pb_18px{padding-bottom:18px}.pc-w_20px{width:20px}.pc-h_20px{height:20px}.pc-w_22px{width:22px}.pc-h_18px{height:18px}.pc-pt_1{padding-top:var(--pc-spacing-1)}.pc-mt_4{margin-top:var(--pc-spacing-4)}.pc-mt_8{margin-top:var(--pc-spacing-8)}.pc-w_40px{width:40px}.pc-mt_62px{margin-top:62px}.pc-pt_32px{padding-top:32px}.pc-pb_40px{padding-bottom:40px}.pc-pl_24px{padding-left:24px}.pc-mt_3{margin-top:var(--pc-spacing-3)}.pc-mt_5{margin-top:var(--pc-spacing-5)}.pc-mt_7{margin-top:var(--pc-spacing-7)}.pc-bdr-bl_16px{border-bottom-left-radius:16px}.pc-bdr-br_16px{border-bottom-right-radius:16px}.pc-min-h_100\%{min-height:100%}.pc-ml_32px{margin-left:32px}.pc-top_10px{top:10px}.pc-right_12px{right:12px}.pc-h_30px{height:30px}.pc-w_30px{width:30px}.pc-pt_16px{padding-top:16px}.pc-mr_3{margin-right:var(--pc-spacing-3)}.pc-min-h_0{min-height:var(--pc-sizes-0)}.pc-max-w_100px{max-width:100px}.pc-mt_14px{margin-top:14px}.pc-mb_-4px{margin-bottom:-4px}.pc-top_0{top:var(--pc-spacing-0)}.pc-left_0{left:var(--pc-spacing-0)}.pc-right_0{right:var(--pc-spacing-0)}.pc-h_540px{height:540px}.pc-mt_150px{margin-top:150px}.pc-max-w_480px{max-width:480px}.pc-ml_auto{margin-left:auto}.pc-pb_6{padding-bottom:var(--pc-spacing-6)}.pc-max-w_700px{max-width:700px}.pc-mt_6{margin-top:var(--pc-spacing-6)}.pc-mr_10{margin-right:var(--pc-spacing-10)}.pc-mb_15px{margin-bottom:15px}.pc-h_300px{height:300px}.pc-pt_56px{padding-top:56px}.pc-max-w_90\%{max-width:90%}.pc-w_60px{width:60px}.pc-h_60px{height:60px}.pc-pt_4{padding-top:var(--pc-spacing-4)}.pc-w_2{width:var(--pc-sizes-2)}.pc-h_2{height:var(--pc-sizes-2)}.pc-h_3px{height:3px}.pc-h_113px{height:113px}.pc-bd-t-w_3px{border-top-width:3px}.pc-border-top-style_solid{border-top-style:solid}.pc-right_auto{right:auto}.pc-left_auto{left:auto}.pc-max-w_995px{max-width:995px}.pc-w_60{width:var(--pc-sizes-60)}.pc-h_60{height:var(--pc-sizes-60)}.pc-mb_32px{margin-bottom:32px}.pc-ml_3{margin-left:var(--pc-spacing-3)}.pc-ml_0{margin-left:var(--pc-spacing-0)}.pc-ml_2{margin-left:var(--pc-spacing-2)}.pc-mt_0\.8px{margin-top:.8px}.pc-w_90\%{width:90%}.pc-max-w_768px{max-width:768px}.pc-mt_96px{margin-top:96px}.pc-mb_6{margin-bottom:var(--pc-spacing-6)}.pc-mt_0\.5{margin-top:var(--pc-spacing-0\.5)}.pc-mt_10{margin-top:var(--pc-spacing-10)}.pc-mt_12{margin-top:var(--pc-spacing-12)}.pc-mt_24{margin-top:var(--pc-spacing-24)}.pc-mb_24{margin-bottom:var(--pc-spacing-24)}.pc-mb_7{margin-bottom:var(--pc-spacing-7)}.pc-pt_96px{padding-top:96px}.pc-mb_0{margin-bottom:var(--pc-spacing-0)}.pc-mb_48px{margin-bottom:48px}.pc-pb_64px{padding-bottom:64px}.pc-mb_20{margin-bottom:var(--pc-spacing-20)}.pc-mb_30px{margin-bottom:30px}.pc-min-w_40px{min-width:40px}.pc-mb_-92px{margin-bottom:-92px}.pc-mt_50px{margin-top:50px}.pc-pt_60px{padding-top:60px}.pc-pb_60px{padding-bottom:60px}.pc-mb_5{margin-bottom:var(--pc-spacing-5)}.pc-mb_-4{margin-bottom:calc(var(--pc-spacing-4) * -1)}.pc-h_55{height:55px}.pc-w_136{width:136px}.pc-mb_14px{margin-bottom:14px}.pc-h_107px{height:107px}.pc-h_32px{height:32px}.pc-h_56px{height:56px}.pc-max-w_1392px{max-width:1392px}.pc-w_77px{width:77px}.pc-pr_0px{padding-right:0}.pc-w_32px{width:32px}.pc-bd-b-c_rgba\(255\,255\,255\,0\.08\){border-bottom-color:#ffffff14}.pc-border-bottom-style_solid{border-bottom-style:solid}.pc-bd-b-w_0px{border-bottom-width:0}.pc-ml_16px{margin-left:16px}.pc-mb_16px{margin-bottom:16px}.pc-bd-t-c_rgba\(255\,255\,255\,0\.08\){border-top-color:#ffffff14}.pc-mt_12px{margin-top:12px}.pc-top_56px{top:56px}.pc-ov-y_auto{overflow-y:auto}.pc-ov-x_hidden{overflow-x:hidden}.pc-w_2\.5rem{width:2.5rem}.pc-h_2\.5rem{height:2.5rem}.pc-mt_1{margin-top:var(--pc-spacing-1)}.pc-mr_1{margin-right:var(--pc-spacing-1)}.pc-ml_1{margin-left:var(--pc-spacing-1)}.pc-mb_25px{margin-bottom:25px}.pc-mt_25px{margin-top:25px}.pc-h_2px{height:2px}.pc-mt_2rem{margin-top:2rem}.pc-mb_3rem{margin-bottom:3rem}.pc-h_4px{height:4px}.pc-w_0\%{width:0}.pc-h_auto{height:auto}.pc-mb_52px{margin-bottom:52px}.pc-w_auto{width:auto}.pc-mb_10px{margin-bottom:10px}.pc-max-w_720px{max-width:720px}.pc-mt_20{margin-top:var(--pc-spacing-20)}.pc-mt_14{margin-top:var(--pc-spacing-14)}.pc-w_960px{width:960px}.pc-h_320px{height:320px}.pc-pb_44px{padding-bottom:44px}.pc-min-h_40vh{min-height:40vh}.pc-pt_28px{padding-top:28px}.pc-w_64{width:var(--pc-sizes-64)}.pc-h_64{height:var(--pc-sizes-64)}.pc-mr_2{margin-right:var(--pc-spacing-2)}.pc-pb_2{padding-bottom:var(--pc-spacing-2)}.pc-pb_1{padding-bottom:var(--pc-spacing-1)}.pc-w_1\.5rem{width:1.5rem}.pc-h_1\.5rem{height:1.5rem}.pc-bd-b-c_transparent{border-bottom-color:var(--pc-colors-transparent)}.pc-h_2\.75rem{height:2.75rem}.pc-min-w_2\.75rem{min-width:2.75rem}.pc-w_1\.25rem{width:1.25rem}.pc-h_1\.25rem{height:1.25rem}.pc-h_2\.25rem{height:2.25rem}.pc-min-w_2\.25rem{min-width:2.25rem}.pc-mb_10{margin-bottom:var(--pc-spacing-10)}.pc-left_12px{left:12px}.pc-pl_38px{padding-left:38px}.pc-pr_12px{padding-right:12px}.pc-min-h_1\.25rem{min-height:1.25rem}.pc-mt_16{margin-top:var(--pc-spacing-16)}.pc-pt_78px{padding-top:78px}.pc-mt_16px{margin-top:16px}.pc-mt_22px{margin-top:22px}.pc-pt_20px{padding-top:20px}.pc-mt_30px{margin-top:30px}.pc-mb_4px{margin-bottom:4px}.pc-pb_22px{padding-bottom:22px}.pc-w_42px{width:42px}.pc-h_42px{height:42px}.pc-max-w_1040px{max-width:1040px}.pc-mb_28px{margin-bottom:28px}.pc-max-w_520px{max-width:520px}.pc-mt_28px{margin-top:28px}.pc-pt_92px{padding-top:92px}.pc-pb_62px{padding-bottom:62px}.pc-max-h_96px{max-height:96px}.pc-right_24px{right:24px}.pc-left_24px{left:24px}.pc-bottom_24px{bottom:24px}.pc-mt_80px{margin-top:80px}.pc-w_320px{width:320px}.pc-pl_21px{padding-left:21px}.pc-pl_22px{padding-left:22px}.pc-bd-l-c_\#7B2668{border-left-color:#7b2668}.pc-bd-l-c_grayScale\.gray200{border-left-color:var(--pc-colors-gray-scale-gray200)}.pc-pr_22px{padding-right:22px}.pc-mt_45px{margin-top:45px}.pc-top_80px{top:80px}.pc-mb_80px{margin-bottom:80px}.pc-mt_19px{margin-top:19px}.pc-mb_1{margin-bottom:var(--pc-spacing-1)}.pc-max-w_60vw{max-width:60vw}.pc-h_1px{height:1px}.pc-w_36px{width:36px}.pc-mb_24px{margin-bottom:24px}.pc-mt_40px{margin-top:40px}.pc-max-w_260px{max-width:260px}.pc-top_100px{top:100px}.pc-mt_60px{margin-top:60px}.pc-mb_60px{margin-bottom:60px}.pc-mt_9{margin-top:var(--pc-spacing-9)}.pc-mb_50vh{margin-bottom:50vh}.pc-max-w_90vw{max-width:90vw}.pc-mt_auto{margin-top:auto}.pc-pt_6px{padding-top:6px}.pc-pt_8px{padding-top:8px}.pc-pb_80px{padding-bottom:80px}.pc-pt_44px{padding-top:44px}.pc-scr-mt_84px{scroll-margin-top:84px}.pc-mt_4px{margin-top:4px}.pc-max-w_1200{max-width:1200px}.pc-pb_56px{padding-bottom:56px}.pc-max-w_640px{max-width:640px}.pc-mt_26px{margin-top:26px}.pc-max-w_680px{max-width:680px}.pc-pl_5{padding-left:var(--pc-spacing-5)}.pc-pb_16px{padding-bottom:16px}.pc-mr_16px{margin-right:16px}.pc-bottom_0{bottom:var(--pc-spacing-0)}.pc-w_89px{width:89px}.pc-mr_24px{margin-right:24px}.pc-w_220px{width:220px}.pc-h_72px{height:72px}.pc-pl_14px{padding-left:14px}.pc-mb_1px{margin-bottom:1px}.pc-w_5px{width:5px}.pc-h_5px{height:5px}.pc-pt_22px{padding-top:22px}.pc-mb_26px{margin-bottom:26px}.pc-pb_8px{padding-bottom:8px}.pc-mb_9px{margin-bottom:9px}.pc-pt_2px{padding-top:2px}.pc-mt_-12px{margin-top:-12px}.pc-lc_1{overflow:hidden;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical}.pc-mb_3px{margin-bottom:3px}.pc-mt_2px{margin-top:2px}.pc-max-w_540px{max-width:540px}.pc-mb_6px{margin-bottom:6px}.pc-h_22px{height:22px}.pc-mt_18px{margin-top:18px}.pc-mb_8px{margin-bottom:8px}.pc-max-w_1160px{max-width:1160px}.pc-pt_14px{padding-top:14px}.pc-min-w_620px{min-width:620px}.pc-pb_20px{padding-bottom:20px}.pc-max-w_460px{max-width:460px}.pc-mt_92{margin-top:92px}.pc-mb_62px{margin-bottom:62px}.pc-w_410{width:410px}.pc-h_300{height:300px}.pc-ml_4{margin-left:var(--pc-spacing-4)}.pc-mb_42px{margin-bottom:42px}.pc-min-w_100\%{min-width:100%}.pc-ml_5{margin-left:var(--pc-spacing-5)}.pc-pt_90px{padding-top:90px}.pc-mt_1\.5{margin-top:var(--pc-spacing-1\.5)}.pc-mt_-4{margin-top:calc(var(--pc-spacing-4) * -1)}.pc-mr_-2{margin-right:calc(var(--pc-spacing-2) * -1)}.pc-mr_-1{margin-right:calc(var(--pc-spacing-1) * -1)}.pc-max-h_100\%{max-height:100%}.pc-pt_50px{padding-top:50px}.pc-mb_-1{margin-bottom:calc(var(--pc-spacing-1) * -1)}.pc-pb_0{padding-bottom:var(--pc-spacing-0)}.pc-max-w_620px{max-width:620px}.pc-mb_1\.5{margin-bottom:var(--pc-spacing-1\.5)}.pc-top_40px{top:40px}.pc-pt_30px{padding-top:30px}.pc-mt_2\.5{margin-top:var(--pc-spacing-2\.5)}.pc-pt_8{padding-top:var(--pc-spacing-8)}.pc-mt_10px{margin-top:10px}.pc-pl_3{padding-left:var(--pc-spacing-3)}.pc-h_8{height:var(--pc-sizes-8)}.pc-mb_2px{margin-bottom:2px}.pc-mb_12px{margin-bottom:12px}.pc-max-w_660px{max-width:660px}.pc-max-w_1140px{max-width:1140px}.pc-top_-80px{top:-80px}.pc-w_640px{width:640px}.pc-h_420px{height:420px}.pc-mt_24px{margin-top:24px}.pc-mt_6px{margin-top:6px}.pc-h_36px{height:36px}.pc-w_26px{width:26px}.pc-h_26px{height:26px}.pc-top_88px{top:88px}.pc-max-w_1100{max-width:1100px}.pc-pt_80px{padding-top:80px}.pc-max-w_62\%{max-width:62%}.pc-max-h_62\%{max-height:62%}.pc-ml_8px{margin-left:8px}.pc-top_100\%{top:100%}.pc-pt_12px{padding-top:12px}.pc-ml_10px{margin-left:10px}.pc-w_185px{width:185px}.pc-h_65px{height:65px}.pc-h_55px{height:55px}.pc-w_160px{width:160px}.pc-w_24px{width:24px}.pc-mb_2{margin-bottom:var(--pc-spacing-2)}.pc-ml_40px{margin-left:40px}.pc-mr_4{margin-right:var(--pc-spacing-4)}.pc-pl_6{padding-left:var(--pc-spacing-6)}.pc-pl_0{padding-left:var(--pc-spacing-0)}.\[\&\[data-selected\]\]\:pc-bg_linear-gradient\(270deg\,\#9121c2\,\#ff5e5e\)[data-selected]{background:linear-gradient(270deg,#9121c2,#ff5e5e)}.before\:pc-bg_var\(--guide-accent\):before{background:var(--guide-accent)}.\[\&_\>_span\.cta-arrow\]\:pc-trs_all_\.3s_ease-in-out>span.cta-arrow{transition:all .3s ease-in-out}.\[\&_\>_\*\:not\(style\)\]\:pc-ov_hidden>:not(style){overflow:hidden}.\[\&_a\]\:pc-td_underline a{text-decoration:underline}.before\:pc-trs_opacity_\.14s_ease:before{transition:opacity .14s ease}.disabled\:pc-op_0\.7:is(:disabled,[disabled],[data-disabled],[aria-disabled=true]){opacity:.7}.disabled\:pc-cursor_not-allowed:is(:disabled,[disabled],[data-disabled],[aria-disabled=true]){cursor:not-allowed}.\[\&_\>_span\.cta-arrow\]\:pc-d_inline-flex>span.cta-arrow{display:inline-flex}.last\:pc-bd-e-w_0:last-child{border-inline-end-width:0}.before\:pc-content_\"❝\":before{content:"❝"}.before\:pc-fs_36px:before{font-size:36px}.before\:pc-pos_absolute:before{position:absolute}.before\:pc-bg-i_linear-gradient\(to_right\,_\#FF5E5E\,_\#8554FF\):before{background-image:linear-gradient(90deg,#ff5e5e,#8554ff)}.before\:pc-bg-cp_text:before{background-clip:text;-webkit-background-clip:text}.before\:pc-c_transparent:before{color:var(--pc-colors-transparent)}.\[\&_p\:last-child\:not\(\:first-child\)\]\:pc-fs_14px p:last-child:not(:first-child){font-size:14px}.placeholder\:pc-c_rgba\(255\,255\,255\,\.4\)::placeholder,.placeholder\:pc-c_rgba\(255\,255\,255\,\.4\)[data-placeholder]{color:#fff6}.\[\&\[data-selected\]\]\:pc-c_white[data-selected]{color:var(--pc-colors-white)}.\[\&\[data-selected\]\]\:pc-op_1[data-selected]{opacity:1}.\[\&_\>_\*\]\:pc-pos_absolute>*{position:absolute}.before\:pc-content_\"\":before{content:""}.before\:pc-d_block:before{display:block}.\[\&_\>_\*\:not\(style\)\]\:pc-pos_absolute>:not(style){position:absolute}.\[\&_\>_\*\:not\(style\)\]\:pc-d_flex>:not(style){display:flex}.\[\&_\>_\*\:not\(style\)\]\:pc-jc_center>:not(style){justify-content:center}.\[\&_\>_\*\:not\(style\)\]\:pc-ai_center>:not(style){align-items:center}.\[\&_svg\]\:pc-fs_1\.2em svg{font-size:1.2em}.disabled\:pc-op_0\.5:is(:disabled,[disabled],[data-disabled],[aria-disabled=true]){opacity:.5}.placeholder\:pc-c_\#71717a::placeholder,.placeholder\:pc-c_\#71717a[data-placeholder]{color:#71717a}.before\:pc-op_0:before{opacity:0}.\[\&_a\]\:pc-c_\#8554FF a{color:#8554ff}.\[\&\:\:first-letter\]\:pc-tt_uppercase:first-letter{text-transform:uppercase}.placeholder\:pc-c_rgba\(44\,_19\,_56\,_0\.48\)::placeholder,.placeholder\:pc-c_rgba\(44\,_19\,_56\,_0\.48\)[data-placeholder]{color:#2c13387a}.\[\&_\>_span\.cta-arrow\]\:pc-ml_14px>span.cta-arrow{margin-left:14px}.before\:pc-left_0:before{left:var(--pc-spacing-0)}.before\:pc-top_-3px:before{top:-3px}.\[\&_\>_\*\]\:pc-top_0>*{top:var(--pc-spacing-0)}.\[\&_\>_\*\]\:pc-left_0>*{left:var(--pc-spacing-0)}.\[\&_\>_\*\]\:pc-w_100\%>*{width:100%}.\[\&_\>_\*\]\:pc-h_100\%>*{height:100%}.before\:pc-h_0:before{height:var(--pc-sizes-0)}.before\:pc-pb_40\%:before{padding-bottom:40%}.\[\&_\>_\*\:not\(style\)\]\:pc-top_0>:not(style){top:var(--pc-spacing-0)}.\[\&_\>_\*\:not\(style\)\]\:pc-right_0>:not(style){right:var(--pc-spacing-0)}.\[\&_\>_\*\:not\(style\)\]\:pc-bottom_0>:not(style){bottom:var(--pc-spacing-0)}.\[\&_\>_\*\:not\(style\)\]\:pc-left_0>:not(style){left:var(--pc-spacing-0)}.\[\&_\>_\*\:not\(style\)\]\:pc-w_100\%>:not(style){width:100%}.\[\&_\>_\*\:not\(style\)\]\:pc-h_100\%>:not(style){height:100%}.before\:pc-top_0:before{top:var(--pc-spacing-0)}.before\:pc-bottom_0:before{bottom:var(--pc-spacing-0)}.before\:pc-w_3px:before{width:3px}.focus\:pc-bd-c_rgba\(133\,84\,255\,\.55\):is(:focus,[data-focus]){border-color:#8554ff8c}.focusVisible\:pc-bd-c_\#8554FF:is(:focus-visible,[data-focus-visible]){border-color:#8554ff}.focusVisible\:pc-ring_none:is(:focus-visible,[data-focus-visible]){outline:var(--pc-borders-none)}.focusVisible\:pc-bx-sh_0_0_0_3px_\#F3EEFF:is(:focus-visible,[data-focus-visible]){box-shadow:0 0 0 3px #f3eeff}.hover\:pc-bg_\#E4E4E4:is(:hover,[data-hover]){background:#e4e4e4}.hover\:pc-bg_var\(--cta-hover-bg\):is(:hover,[data-hover]){background:var(--cta-hover-bg)}.hover\:pc-bg_rgba\(255\,255\,255\,\.055\):is(:hover,[data-hover]){background:hsla(0,0%,100%,.055)}.hover\:pc-bg_rgba\(27\,31\,36\,\.06\):is(:hover,[data-hover]){background:#1b1f240f}.hover\:pc-bg_\#f8f8f8:is(:hover,[data-hover]){background:#f8f8f8}.hover\:pc-bg_rgb\(255\,255\,255\,0\.12\):is(:hover,[data-hover]){background:#ffffff1f}.hover\:pc-bg_rgba\(255\,255\,255\,0\.08\):is(:hover,[data-hover]){background:#ffffff14}.hover\:pc-bg_\#fff:is(:hover,[data-hover]){background:#fff}.group:is(:hover,[data-hover]) .groupHover\:pc-bg_transparent{background:var(--pc-colors-transparent)}.hover\:pc-bg_\#f4f4f5:is(:hover,[data-hover]){background:#f4f4f5}.hover\:pc-bg_color-mix\(in_srgb\,_\#18181b_90\%\,_transparent\):is(:hover,[data-hover]){background:color-mix(in srgb,#18181b 90%,#0000)}.hover\:pc-bg_\#9468ff:is(:hover,[data-hover]){background:#9468ff}.hover\:pc-bg_rgba\(255\,255\,255\,\.16\):is(:hover,[data-hover]){background:#ffffff29}.hover\:pc-bg-p_100\%:is(:hover,[data-hover]){background-position:100%}.hover\:pc-bd-c_rgba\(255\,255\,255\,\.22\):is(:hover,[data-hover]){border-color:#ffffff38}.hover\:pc-td_none:is(:hover,[data-hover]){text-decoration:none}.hover\:pc-bd-c_rgba\(255\,255\,255\,0\.24\):is(:hover,[data-hover]){border-color:#ffffff3d}.hover\:pc-bd-c_\#8554FF:is(:hover,[data-hover]){border-color:#8554ff}.hover\:pc-td_underline:is(:hover,[data-hover]){text-decoration:underline}.hover\:pc-bd-c_transparent:is(:hover,[data-hover]){border-color:var(--pc-colors-transparent)}.hover\:pc-bd-c_rgba\(133\,84\,255\,\.45\):is(:hover,[data-hover]){border-color:#8554ff73}.hover\:pc-bd-c_var\(--pc-colors-ed-win-b\):is(:hover,[data-hover]){border-color:var(--pc-colors-ed-win-b)}.hover\:pc-c_\#fff:is(:hover,[data-hover]){color:#fff}.hover\:pc-c_var\(--cta-hover-fg\):is(:hover,[data-hover]){color:var(--cta-hover-fg)}.hover\:pc-bx-sh_var\(--cta-hover-shadow\):is(:hover,[data-hover]){box-shadow:var(--cta-hover-shadow)}.group:is(:hover,[data-hover]) .groupHover\:pc-bg-s_100\%{background-size:100%}.group:is(:hover,[data-hover]) .groupHover\:pc-trf_translateX\(3px\){transform:translateX(3px)}.group:is(:hover,[data-hover]) .groupHover\:pc-c_var\(--cta-arrow-hover\,_var\(--cta-arrow-color\)\){color:var(--cta-arrow-hover,var(--cta-arrow-color))}.hover\:pc-trf_translateY\(-2px\):is(:hover,[data-hover]){transform:translateY(-2px)}.hover\:pc-bg-c_rgba\(255\,_255\,_255\,_0\.12\):is(:hover,[data-hover]){background-color:#ffffff1f}.hover\:pc-op_1:is(:hover,[data-hover]){opacity:1}.hover\:pc-c_white:is(:hover,[data-hover]){color:var(--pc-colors-white)}.hover\:pc-c_secondary\.text:is(:hover,[data-hover]){color:var(--pc-colors-secondary-text)}.hover\:pc-bg-c_rgba\(44\,_19\,_56\,_0\.5\):is(:hover,[data-hover]){background-color:#2c133880}.hover\:pc-bg-c_rgba\(0\,_0\,_0\,_0\.04\):is(:hover,[data-hover]){background-color:#0000000a}.hover\:pc-op_0\.9:is(:hover,[data-hover]){opacity:.9}.group:is(:hover,[data-hover]) .groupHover\:pc-c_\#fff{color:#fff}.group:is(:hover,[data-hover]) .groupHover\:pc-c_inherit{color:inherit}.group:is(:hover,[data-hover]) .groupHover\:pc-c_rgb\(255\,255\,255\,0\.52\){color:#ffffff85}.hover\:pc-c_black:is(:hover,[data-hover]){color:var(--pc-colors-black)}.hover\:pc-c_\#8554FF:is(:hover,[data-hover]){color:#8554ff}.hover\:pc-bg-c_grayScale\.gray200:is(:hover,[data-hover]){background-color:var(--pc-colors-gray-scale-gray200)}.hover\:pc-c_contentPages\.textPrimary:is(:hover,[data-hover]){color:var(--pc-colors-content-pages-text-primary)}.hover\:pc-c_contentPages\.textSecondary:is(:hover,[data-hover]){color:var(--pc-colors-content-pages-text-secondary)}.hover\:pc-c_secondary\.dark:is(:hover,[data-hover]){color:var(--pc-colors-secondary-dark)}.hover\:pc-trf_translateY\(-3px\):is(:hover,[data-hover]){transform:translateY(-3px)}.hover\:pc-bx-sh_0px_12px_30px_-14px_rgba\(24\,_39\,_75\,_0\.28\):is(:hover,[data-hover]){box-shadow:0 12px 30px -14px #18274b47}.hover\:pc-c_var\(--btn-hover-color\):is(:hover,[data-hover]){color:var(--btn-hover-color)}.hover\:pc-op_0\.75:is(:hover,[data-hover]){opacity:.75}.group:is(:hover,[data-hover]) .groupHover\:pc-bg-c_\#fbfbfb{background-color:#fbfbfb}.hover\:pc-c_secondary\.darkAlpha:is(:hover,[data-hover]){color:var(--pc-colors-secondary-dark-alpha)}.\[\&\:hover_\.dropdown-trigger-label\,_\&\:hover_\.dropdown-trigger-icon\]\:pc-c_\#fff:hover .dropdown-trigger-icon,.\[\&\:hover_\.dropdown-trigger-label\,_\&\:hover_\.dropdown-trigger-icon\]\:pc-c_\#fff:hover .dropdown-trigger-label{color:#fff}.active\:pc-bg_var\(--cta-hover-bg\):is(:active,[data-active]){background:var(--cta-hover-bg)}.active\:pc-bg_\#f0f0f0:is(:active,[data-active]){background:#f0f0f0}.group:is(:active,[data-active]) .groupActive\:pc-bg_\#fff{background:#fff}.active\:pc-bg-p_100\%:is(:active,[data-active]){background-position:100%}.active\:pc-c_var\(--cta-hover-fg\):is(:active,[data-active]){color:var(--cta-hover-fg)}.active\:pc-bx-sh_var\(--cta-hover-shadow\):is(:active,[data-active]){box-shadow:var(--cta-hover-shadow)}.active\:pc-bg-c_rgba\(0\,_0\,_0\,_0\.06\):is(:active,[data-active]){background-color:#0000000f}.group:is(:active,[data-active]) .groupActive\:pc-c_nav\.background{color:var(--pc-colors-nav-background)}.group:is(:active,[data-active]) .groupActive\:pc-c_rgb\(255\,255\,255\,0\.72\){color:#ffffffb8}.active\:pc-c_var\(--btn-hover-color\):is(:active,[data-active]){color:var(--btn-hover-color)}.\[\&_p\:last-child\:not\(\:first-child\)\]\:\[\&_strong\]\:pc-fw_600 p:last-child:not(:first-child) strong{font-weight:600}.hover\:\[\&_\>_span\.cta-arrow\]\:pc-trf_translateX\(3px\):is(:hover,[data-hover])>span.cta-arrow{transform:translateX(3px)}.hover\:before\:pc-op_1:is(:hover,[data-hover]):before{opacity:1}@media screen and (min-width:30rem){.sm\:pc-px_4{padding-inline:var(--pc-spacing-4)}.sm\:pc-columns_2{column-count:2}.sm\:pc-gap_14px{gap:14px}.sm\:pc-gap_24px{gap:24px}.sm\:pc-tag_Courier_Inbox{tag:Courier Inbox}.sm\:pc-title_Add_an_in-app_inbox_for_web_and_mobile{title:Add an in-app inbox for web and mobile}.sm\:pc-body_Give_your_app_an_in-product_notification_center_\(SDKs_for_web\,_React\,_iOS\,_Android\,_Flutter\,_React_Native\)\,_so_users_see_more_than_just_texts\.{body:Give your app an in-product notification center (SDKs for web,React,iOS,Android,Flutter,React Native),so users see more than just texts.}.sm\:pc-items_Add_an_in-app_inbox_so_customers_can_revisit_messages_inside_your_product{items:Add an in-app inbox so customers can revisit messages inside your product}.sm\:pc-n_2{n:2px}.sm\:pc-title_Add_your_credentials{title:Add your credentials}.sm\:pc-a_Yes\._Courier_sends_through_your_own_Africa\'s_Talking_account_using_its_API_key_and_application_username\._Courier_does_not_resell_SMS\,_so_your_registered_sender_IDs_and_carrier_billing_stay_with_Africa\'s_Talking\.{a:Yes. Courier sends through your own Africa"s Talking account using its API key and application username. Courier does not resell SMS, so your registered sender IDs and carrier billing stay with Africa"s Talking.}.sm\:pc-name_Vonage{name:Vonage}.sm\:pc-hook_Add_Vonage_as_a_channel_without_new_code\.{hook:Add Vonage as a channel without new code.}.sm\:pc-href_\/integrations\/alternatives\/africas-talking{href:/integrations/alternatives/africas-talking}.sm\:pc-works-with_Push{works-with:Push}.sm\:pc-label_Courier_docs{label:Courier docs}.sm\:pc-paragraphs_Courier_sits_in_front_of_it_as_one_API\,_a_visual_editor\,_journeys\,_and_every_other_channel\,_so_you_keep_Amply_for_delivery_and_build_multi-channel_notifications_on_top\.{paragraphs:Courier sits in front of it as one API,a visual editor,journeys,and every other channel,so you keep Amply for delivery and build multi-channel notifications on top.}.sm\:pc-tag_Journeys{tag:Journeys}.sm\:pc-title_Automate_multi-step_journeys{title:Automate multi-step journeys}.sm\:pc-body_Onboarding\,_drip\,_and_lifecycle_sequences_with_delays_and_branching\,_all_delivered_through_Amply\.{body:Onboarding,drip,and lifecycle sequences with delays and branching,all delivered through Amply.}.sm\:pc-items_Beautifully_designed_transactional_email\,_receipts\,_welcomes\,_and_resets\,_from_one_template_set{items:Beautifully designed transactional email,receipts,welcomes,and resets,from one template set}.sm\:pc-title_Design_a_template{title:Design a template}.sm\:pc-q_Do_I_still_need_my_own_Amply_account\?{q:Do I still need my own Amply account?}.sm\:pc-name_Postmark{name:Postmark}.sm\:pc-hook_Transactional_email_with_one_delivery_log\.{hook:Transactional email with one delivery log.}.sm\:pc-label_Amply_alternatives{label:Amply alternatives}.sm\:pc-href_\/integrations\/alternatives\/amply{href:/integrations/alternatives/amply}.sm\:pc-works-with_Templates{works-with:Templates}.sm\:pc-paragraphs_Courier_sits_in_front_of_it\,_manages_device_tokens_for_you\,_and_adds_an_in-app_inbox_and_SMS\,_so_you_get_a_complete_mobile_messaging_stack_from_one_API\.{paragraphs:Courier sits in front of it,manages device tokens for you,and adds an in-app inbox and SMS,so you get a complete mobile messaging stack from one API.}.sm\:pc-title_Add_an_in-app_inbox{title:Add an in-app inbox}.sm\:pc-body_Pair_push_with_an_in-product_notification_center_\(web_and_mobile_SDKs\)\,_so_a_tapped_push_opens_the_full_message_history_inside_your_app\.{body:Pair push with an in-product notification center (web and mobile SDKs),so a tapped push opens the full message history inside your app.}.sm\:pc-items_Pair_push_with_an_in-app_inbox_so_users_can_revisit_notifications_inside_your_app{items:Pair push with an in-app inbox so users can revisit notifications inside your app}.sm\:pc-title_Store_device_tokens{title:Store device tokens}.sm\:pc-q_Do_I_still_need_my_own_APNs_account\?{q:Do I still need my own APNs account?}.sm\:pc-name_Expo{name:Expo}.sm\:pc-hook_Push_to_Expo_apps_without_managing_tokens\.{hook:Push to Expo apps without managing tokens.}.sm\:pc-label_Apple_Push_Notifications_alternatives{label:Apple Push Notifications alternatives}.sm\:pc-href_\/integrations\/alternatives\/apple-push-notification{href:/integrations/alternatives/apple-push-notification}.sm\:pc-works-with_In-app{works-with:In-app}.sm\:pc-paragraphs_Courier_sits_in_front_of_it_as_one_API\,_a_visual_editor\,_journeys\,_and_every_other_channel\,_so_you_keep_AWS_SES_for_delivery_and_build_multi-channel_notifications_on_top\.{paragraphs:Courier sits in front of it as one API,a visual editor,journeys,and every other channel,so you keep AWS SES for delivery and build multi-channel notifications on top.}.sm\:pc-body_Onboarding\,_drip\,_and_lifecycle_sequences_with_delays_and_branching\,_all_delivered_through_AWS_SES\.{body:Onboarding,drip,and lifecycle sequences with delays and branching,all delivered through AWS SES.}.sm\:pc-q_Do_I_still_need_my_own_AWS_SES_account\?{q:Do I still need my own AWS SES account?}.sm\:pc-label_AWS_SES_alternatives{label:AWS SES alternatives}.sm\:pc-href_\/integrations\/alternatives\/aws-ses{href:/integrations/alternatives/aws-ses}.sm\:pc-paragraphs_Courier_sits_in_front_of_it_as_one_API\,_so_you_keep_AWS_SNS_for_SMS_and_add_push\,_an_in-app_inbox\,_design\,_and_journeys_on_top\.{paragraphs:Courier sits in front of it as one API,so you keep AWS SNS for SMS and add push,an in-app inbox,design,and journeys on top.}.sm\:pc-body_Enter_your_Access_Key_ID\,_Secret_Access_Key\,_and_Region_from_the_AWS_console\.{body:Enter your Access Key ID,Secret Access Key,and Region from the AWS console.}.sm\:pc-q_Do_I_still_need_my_own_AWS_SNS_account\?{q:Do I still need my own AWS SNS account?}.sm\:pc-label_AWS_SNS_alternatives{label:AWS SNS alternatives}.sm\:pc-href_\/integrations\/alternatives\/aws-sns{href:/integrations/alternatives/aws-sns}.sm\:pc-paragraphs_Courier_sits_in_front_of_it_as_one_API\,_so_you_keep_Azure_SMS_for_SMS_and_add_push\,_an_in-app_inbox\,_design\,_and_journeys_on_top\.{paragraphs:Courier sits in front of it as one API,so you keep azure SMS for SMS and add push,an in-app inbox,design,and journeys on top.}.sm\:pc-body_Enter_your_access_key\,_endpoint\,_and_from_number_from_your_Azure_Communication_Services_resource\,_then_save\.{body:Enter your access key,endpoint,and from number from your azure Communication Services resource,then save.}.sm\:pc-q_Do_I_still_need_my_own_Azure_SMS_account\?{q:Do I still need my own azure SMS account?}.sm\:pc-a_Yes\._You_keep_your_own_Azure_Communication_Services_resource\._Courier_sends_through_it_using_your_access_key_and_endpoint\,_and_Azure_remains_the_carrier_that_owns_your_SMS-capable_from_number_and_handles_billing\.{a:Yes. You keep your own azure Communication Services resource. Courier sends through it using your access key and endpoint,and azure remains the carrier that owns your SMS-capable from number and handles billing.}.sm\:pc-name_Telnyx{name:Telnyx}.sm\:pc-hook_Add_Telnyx_as_a_channel_without_new_code\.{hook:Add Telnyx as a channel without new code.}.sm\:pc-label_Azure_SMS_alternatives{label:azure SMS alternatives}.sm\:pc-href_\/integrations\/alternatives\/azure-sms{href:/integrations/alternatives/azure-sms}.sm\:pc-paragraphs_Courier_uses_AI_inside_the_product\,_in_the_Journeys_AI_agent_node_and_AI_Translation_in_Design_Studio\,_and_your_ChatGPT_agent_drives_Courier_over_the_Model_Context_Protocol_\(MCP\)\,_agent_skills\,_and_the_CLI\.{paragraphs:Courier uses AI inside the product,in the Journeys AI agent node and AI Translation in Design Studio,and your ChatGPT agent drives Courier over the Model Context Protocol (MCP),agent skills,and the CLI.}.sm\:pc-tag_AI_Translation{tag:AI Translation}.sm\:pc-title_Translate_a_template_in_seconds{title:Translate a template in seconds}.sm\:pc-body_AI_Translation_in_Design_Studio_localizes_a_template_across_every_channel_\(email\,_SMS\,_push\,_in-app\,_chat\)\._Add_a_locale\,_review_side_by_side\,_override_anything\.{body:AI Translation in Design Studio localizes a template across every channel (email,SMS,push,in-app,chat). Add a locale,review side by side,override anything.}.sm\:pc-items_Auto-translate_a_template_into_every_language_with_AI_Translation\,_then_tweak_any_string{items:Auto-translate a template into every language with AI Translation,then tweak any string}.sm\:pc-n_→{n:→}.sm\:pc-title_Translate_a_template_instantly{title:Translate a template instantly}.sm\:pc-body_In_Design_Studio\,_pick_a_language_and_AI_Translation_localizes_the_whole_template_across_email\,_SMS\,_push\,_in-app\,_and_chat\.{body:In Design Studio,pick a language and AI Translation localizes the whole template across email,SMS,push,in-app,and chat.}.sm\:pc-q_Which_Courier_features_use_ChatGPT_or_AI\?{q:Which Courier features use ChatGPT or AI?}.sm\:pc-a_Two\._The_AI_agent_node_in_Journeys_can_run_frontier_models_including_OpenAI_GPT_to_classify_users_into_personas\,_branch_on_nuanced_logic\,_and_generate_channel-appropriate_copy_from_one_prompt\._AI_Translation_in_Design_Studio_localizes_a_full_template_across_email\,_SMS\,_push\,_in-app\,_and_chat\.{a:Two. The AI agent node in Journeys can run frontier models including OpenAI GPT to classify users into personas,branch on nuanced logic,and generate channel-appropriate copy from one prompt. AI Translation in Design Studio localizes a full template across email,SMS,push,in-app,and chat.}.sm\:pc-name_Slack{name:Slack}.sm\:pc-hook_Deliver_notifications_into_Slack\.{hook:Deliver notifications into Slack.}.sm\:pc-works-with_Agent_skills{works-with:Agent skills}.sm\:pc-label_Courier_MCP_docs{label:Courier MCP docs}.sm\:pc-paragraphs_Courier_uses_AI_inside_the_product\,_in_the_Journeys_AI_agent_node_and_AI_Translation_in_Design_Studio\,_and_your_Claude_agent_drives_Courier_over_the_Model_Context_Protocol_\(MCP\)\,_agent_skills\,_and_the_CLI\.{paragraphs:Courier uses AI inside the product,in the Journeys AI agent node and AI Translation in Design Studio,and your Claude agent drives Courier over the Model Context Protocol (MCP),agent skills,and the CLI.}.sm\:pc-q_Which_Courier_features_use_Claude_or_AI\?{q:Which Courier features use Claude or AI?}.sm\:pc-a_Two_features\._The_AI_agent_node_in_Journeys_runs_frontier_models_like_Claude_Opus_to_classify_users_into_personas\,_branch_on_nuanced_logic\,_and_generate_channel-appropriate_copy_from_one_prompt\._AI_Translation_in_Design_Studio_localizes_a_template_across_email\,_SMS\,_push\,_in-app\,_and_chat\.{a:Two features. The AI agent node in Journeys runs frontier models like Claude Opus to classify users into personas,branch on nuanced logic,and generate channel-appropriate copy from one prompt. AI Translation in Design Studio localizes a template across email,SMS,push,in-app,and chat.}.sm\:pc-tag_Your_endpoint{tag:Your endpoint}.sm\:pc-title_Deliver_to_your_own_infrastructure{title:Deliver to your own infrastructure}.sm\:pc-body_Configure_the_webhook_URL_and_an_authentication_model\,_then_add_the_Custom_Provider_to_a_channel_such_as_Push\.{body:Configure the webhook URL and an authentication model,then add the Custom Provider to a channel such as Push.}.sm\:pc-items_Design_the_notification_content_in_Studio_and_let_Courier_deliver_it_to_your_endpoint{items:Design the notification content in Studio and let Courier deliver it to your endpoint}.sm\:pc-title_Add_it_to_a_channel{title:Add it to a channel}.sm\:pc-body_Add_the_Custom_Provider_to_a_channel_such_as_Push\,_and_design_a_title_and_content_blocks_in_Studio\.{body:Add the Custom Provider to a channel such as Push,and design a title and content blocks in Studio.}.sm\:pc-q_When_should_I_use_the_Custom_Provider\?{q:When should I use the Custom Provider?}.sm\:pc-a_Reach_for_it_when_you_need_custom_handling_of_push_notifications\,_or_have_proprietary_infrastructure_Courier_does_not_natively_support\._Courier_hands_your_endpoint_the_notification_content_and_your_own_service_takes_over_delivery_or_processing_from_there\.{a:Reach for it when you need custom handling of push notifications,or have proprietary infrastructure Courier does not natively support. Courier hands your endpoint the notification content and your own service takes over delivery or processing from there.}.sm\:pc-name_Firebase_FCM{name:Firebase FCM}.sm\:pc-hook_Native_push_without_a_custom_endpoint\.{hook:Native push without a custom endpoint.}.sm\:pc-works-with_Webhook{works-with:Webhook}.sm\:pc-paragraphs_Courier_forwards_your_notification_metrics_and_logs_to_Datadog\,_so_you_can_build_dashboards_and_alerts_on_delivery_health_alongside_the_rest_of_your_stack\.{paragraphs:Courier forwards your notification metrics and logs to Datadog,so you can build dashboards and alerts on delivery health alongside the rest of your stack.}.sm\:pc-tag_Dashboards{tag:Dashboards}.sm\:pc-title_Build_delivery_dashboards{title:Build delivery dashboards}.sm\:pc-body_Chart_delivery\,_open\,_and_click_rates_over_time_in_Datadog\,_right_next_to_your_app_and_infrastructure_dashboards\.{body:Chart delivery,open,and click rates over time in Datadog,right next to your app and infrastructure dashboards.}.sm\:pc-items_Alert_the_on-call_team_when_failures_or_bounce_rates_spike_above_a_threshold{items:Alert the on-call team when failures or bounce rates spike above a threshold}.sm\:pc-title_Add_Datadog_in_Courier{title:Add Datadog in Courier}.sm\:pc-body_Open_the_Datadog_integration_page_in_Courier_and_enter_the_API_key\.{body:Open the Datadog integration page in Courier and enter the API key.}.sm\:pc-q_What_Courier_data_shows_up_in_Datadog\?{q:What Courier data shows up in Datadog?}.sm\:pc-a_Courier_emits_metrics_under_the_courier\._namespace_covering_message_volume_and_engagement\._Examples_include_courier\.message\.sent\,_courier\.message\.delivered\,_courier\.message\.total\.opened\,_and_courier\.message\.total\.clicked\,_plus_automation_counters_like_courier\.automation\.invoked\,_and_more\.{a:Courier emits metrics under the courier. namespace covering message volume and engagement. Examples include courier.message.sent,courier.message.delivered,courier.message.total.opened,and courier.message.total.clicked,plus automation counters like courier.automation.invoked,and more.}.sm\:pc-name_Segment{name:Segment}.sm\:pc-hook_Send_notification_events_to_your_CDP\.{hook:Send notification events to your CDP.}.sm\:pc-works-with_Logs{works-with:Logs}.sm\:pc-body_Pair_push_with_an_in-product_notification_center_\(web_and_mobile_SDKs\)\,_so_a_tapped_push_opens_the_full_message_history_in_your_app\.{body:Pair push with an in-product notification center (web and mobile SDKs),so a tapped push opens the full message history in your app.}.sm\:pc-q_Do_I_still_need_my_own_Expo_account\?{q:Do I still need my own Expo account?}.sm\:pc-hook_Send_push_to_Android\,_iOS\,_and_web_through_Firebase\.{hook:Send push to Android,iOS,and web through Firebase.}.sm\:pc-label_Expo_alternatives{label:Expo alternatives}.sm\:pc-href_\/integrations\/alternatives\/expo{href:/integrations/alternatives/expo}.sm\:pc-q_Do_I_still_need_my_own_FCM_account\?{q:Do I still need my own FCM account?}.sm\:pc-a_Yes\._Courier_delivers_through_your_own_Firebase_project_rather_than_replacing_it\._You_keep_your_Google_service_account_and\,_for_iOS\,_your_Apple_APNs_setup\,_and_Courier_authenticates_as_your_project_to_send\.{a:Yes. Courier delivers through your own Firebase project rather than replacing it. You keep your Google service account and,for iOS,your Apple APNs setup,and Courier authenticates as your project to send.}.sm\:pc-label_Firebase_FCM_alternatives{label:Firebase FCM alternatives}.sm\:pc-href_\/integrations\/alternatives\/firebase-fcm{href:/integrations/alternatives/firebase-fcm}.sm\:pc-paragraphs_Courier_sits_in_front_of_it_as_one_API\,_a_visual_editor\,_journeys\,_and_every_other_channel\,_so_you_keep_Gmail_for_delivery_and_build_multi-channel_notifications_on_top\.{paragraphs:Courier sits in front of it as one API,a visual editor,journeys,and every other channel,so you keep Gmail for delivery and build multi-channel notifications on top.}.sm\:pc-body_Onboarding\,_drip\,_and_lifecycle_sequences_with_delays_and_branching\,_all_delivered_through_your_Gmail_account\.{body:Onboarding,drip,and lifecycle sequences with delays and branching,all delivered through your Gmail account.}.sm\:pc-q_Do_I_still_need_my_own_Gmail_account\?{q:Do I still need my own Gmail account?}.sm\:pc-label_Gmail_alternatives{label:Gmail alternatives}.sm\:pc-href_\/integrations\/alternatives\/gmail{href:/integrations/alternatives/gmail}.sm\:pc-paragraphs_Sync_your_warehouse_data_and_audiences_into_Courier\,_then_use_them_to_trigger_notifications_and_kick_off_multi-step_journeys\,_with_no_send_pipeline_to_build_or_maintain\.{paragraphs:Sync your warehouse data and audiences into Courier,then use them to trigger notifications and kick off multi-step journeys,with no send pipeline to build or maintain.}.sm\:pc-tag_Audiences{tag:Audiences}.sm\:pc-title_Send_to_warehouse-defined_audiences{title:Send to warehouse-defined audiences}.sm\:pc-body_Model_an_audience_in_SQL_and_sync_it_to_a_Courier_list\,_then_broadcast_to_exactly_the_users_your_warehouse_says_qualify\.{body:Model an audience in SQL and sync it to a Courier list,then broadcast to exactly the users your warehouse says qualify.}.sm\:pc-items_Onboarding_and_lifecycle_journeys_triggered_from_freshly_synced_data{items:Onboarding and lifecycle journeys triggered from freshly synced data}.sm\:pc-title_Add_Courier_in_Hightouch{title:Add Courier in Hightouch}.sm\:pc-body_In_Hightouch\,_add_a_new_destination\,_choose_Courier\,_paste_the_token_into_the_API_Key_field\,_and_name_the_destination\.{body:In Hightouch,add a new destination,choose Courier,paste the token into the API Key field,and name the destination.}.sm\:pc-q_How_do_Hightouch_events_trigger_notifications_in_Courier\?{q:How do Hightouch events trigger notifications in Courier?}.sm\:pc-a_Through_syncs\,_not_a_live_event_stream\._Hightouch_pushes_warehouse_data_into_Courier_on_a_schedule\,_keeping_recipient_profiles_and_list_membership_current\._You_then_target_those_profiles_and_audiences_with_notifications_and_journeys\.{a:Through syncs,not a live event stream. Hightouch pushes warehouse data into Courier on a schedule,keeping recipient profiles and list membership current. You then target those profiles and audiences with notifications and journeys.}.sm\:pc-name_Rudderstack{name:Rudderstack}.sm\:pc-hook_Warehouse-first_CDP\,_add_Courier_as_a_destination\.{hook:Warehouse-first CDP,add Courier as a destination.}.sm\:pc-works-with_Profiles{works-with:Profiles}.sm\:pc-grid-tc_1fr_1fr{grid-template-columns:1fr 1fr}.sm\:pc-paragraphs_Courier_sits_in_front_of_it_as_one_API\,_a_visual_editor\,_journeys\,_and_every_other_channel\,_so_you_keep_MailerSend_for_delivery_and_build_multi-channel_notifications_on_top\.{paragraphs:Courier sits in front of it as one API,a visual editor,journeys,and every other channel,so you keep MailerSend for delivery and build multi-channel notifications on top.}.sm\:pc-body_Onboarding\,_drip\,_and_lifecycle_sequences_with_delays_and_branching\,_all_delivered_through_MailerSend\.{body:Onboarding,drip,and lifecycle sequences with delays and branching,all delivered through MailerSend.}.sm\:pc-q_Do_I_still_need_my_own_MailerSend_account\?{q:Do I still need my own MailerSend account?}.sm\:pc-a_Yes\._Courier_delivers_through_your_own_MailerSend_account\,_so_you_need_a_verified_one_with_your_sending_domain_added_and_DNS_verification_completed_in_MailerSend_before_any_email_will_send\.{a:Yes. Courier delivers through your own MailerSend account,so you need a verified one with your sending domain added and DNS verification completed in MailerSend before any email will send.}.sm\:pc-label_MailerSend_alternatives{label:MailerSend alternatives}.sm\:pc-href_\/integrations\/alternatives\/mailersend{href:/integrations/alternatives/mailersend}.sm\:pc-paragraphs_Courier_sits_in_front_of_it_as_one_API\,_a_visual_editor\,_journeys\,_and_every_other_channel\,_so_you_keep_Mailgun_for_delivery_and_build_multi-channel_notifications_on_top\.{paragraphs:Courier sits in front of it as one API,a visual editor,journeys,and every other channel,so you keep Mailgun for delivery and build multi-channel notifications on top.}.sm\:pc-body_Onboarding\,_drip\,_and_lifecycle_sequences_with_delays_and_branching\,_all_delivered_through_your_Mailgun_sending_domain\.{body:Onboarding,drip,and lifecycle sequences with delays and branching,all delivered through your Mailgun sending domain.}.sm\:pc-q_Do_I_still_need_my_own_Mailgun_account\?{q:Do I still need my own Mailgun account?}.sm\:pc-a_Yes\._Courier_does_not_resell_Mailgun\,_so_you_connect_your_own_account\,_and_its_sending_domain_must_be_verified_with_a_valid_MX_record_in_DNS_or_Mailgun_returns_550_errors\.{a:Yes. Courier does not resell Mailgun,so you connect your own account,and its sending domain must be verified with a valid MX record in DNS or Mailgun returns 550 errors.}.sm\:pc-label_Mailgun_alternatives{label:Mailgun alternatives}.sm\:pc-href_\/integrations\/alternatives\/mailgun{href:/integrations/alternatives/mailgun}.sm\:pc-paragraphs_Courier_sits_in_front_of_it_as_one_API\,_a_visual_editor\,_journeys\,_and_every_other_channel\,_so_you_keep_Mailjet_for_delivery_and_build_multi-channel_notifications_on_top\.{paragraphs:Courier sits in front of it as one API,a visual editor,journeys,and every other channel,so you keep Mailjet for delivery and build multi-channel notifications on top.}.sm\:pc-body_Onboarding\,_drip\,_and_lifecycle_sequences_with_delays_and_branching\,_all_delivered_through_Mailjet\.{body:Onboarding,drip,and lifecycle sequences with delays and branching,all delivered through Mailjet.}.sm\:pc-q_Do_I_still_need_my_own_Mailjet_account\?{q:Do I still need my own Mailjet account?}.sm\:pc-name_SendGrid{name:SendGrid}.sm\:pc-hook_Design_and_orchestrate_on_top_of_SendGrid\.{hook:Design and orchestrate on top of SendGrid.}.sm\:pc-label_Mailjet_alternatives{label:Mailjet alternatives}.sm\:pc-href_\/integrations\/alternatives\/mailjet{href:/integrations/alternatives/mailjet}.sm\:pc-paragraphs_Courier_sits_in_front_of_it_as_one_API\,_a_visual_editor\,_journeys\,_and_every_other_channel\,_so_you_keep_Mandrill_for_delivery_and_build_multi-channel_notifications_on_top\.{paragraphs:Courier sits in front of it as one API,a visual editor,journeys,and every other channel,so you keep Mandrill for delivery and build multi-channel notifications on top.}.sm\:pc-body_Onboarding\,_drip\,_and_lifecycle_sequences_with_delays_and_branching\,_all_delivered_through_Mandrill\.{body:Onboarding,drip,and lifecycle sequences with delays and branching,all delivered through Mandrill.}.sm\:pc-q_Do_I_still_need_my_own_Mandrill_account\?{q:Do I still need my own Mandrill account?}.sm\:pc-label_Mandrill_alternatives{label:Mandrill alternatives}.sm\:pc-href_\/integrations\/alternatives\/mandrill{href:/integrations/alternatives/mandrill}.sm\:pc-paragraphs_Courier_sits_in_front_of_it_as_one_API\,_so_you_keep_Bird_for_SMS_and_add_push\,_an_in-app_inbox\,_design\,_and_journeys_on_top\.{paragraphs:Courier sits in front of it as one API,so you keep Bird for SMS and add push,an in-app inbox,design,and journeys on top.}.sm\:pc-body_Enter_your_Access_Key_and_Originator_number_from_your_Bird_dashboard\,_then_save\.{body:Enter your Access Key and Originator number from your Bird dashboard,then save.}.sm\:pc-q_Do_I_still_need_my_own_Bird_account\?{q:Do I still need my own Bird account?}.sm\:pc-label_Bird_alternatives{label:Bird alternatives}.sm\:pc-href_\/integrations\/alternatives\/messagebird{href:/integrations/alternatives/messagebird}.sm\:pc-paragraphs_Courier_sits_in_front_of_it_as_one_API\,_so_you_keep_MessageMedia_for_SMS_and_add_push\,_an_in-app_inbox\,_design\,_and_journeys_on_top\.{paragraphs:Courier sits in front of it as one API,so you keep MessageMedia for SMS and add push,an in-app inbox,design,and journeys on top.}.sm\:pc-body_Enter_your_API_key_and_API_secret_from_the_MessageMedia_console\.{body:Enter your API key and API secret from the MessageMedia console.}.sm\:pc-q_Do_I_still_need_my_own_MessageMedia_account\?{q:Do I still need my own MessageMedia account?}.sm\:pc-a_Yes\._Courier_does_not_resell_SMS\,_so_you_keep_your_own_MessageMedia_account\._You_generate_the_API_credentials_there\,_and_your_sending_numbers_and_messaging_billing_stay_on_your_MessageMedia_plan\.{a:Yes. Courier does not resell SMS,so you keep your own MessageMedia account. You generate the API credentials there,and your sending numbers and messaging billing stay on your MessageMedia plan.}.sm\:pc-hook_Route_SMS_through_Vonage\.{hook:Route SMS through Vonage.}.sm\:pc-label_MessageMedia_alternatives{label:MessageMedia alternatives}.sm\:pc-href_\/integrations\/alternatives\/messagemedia{href:/integrations/alternatives/messagemedia}.sm\:pc-paragraphs_Courier_adds_Microsoft_Teams_as_another_channel_in_your_existing_notification_system\,_with_the_same_templates\,_routing\,_and_preferences_as_email\,_SMS\,_push\,_and_inbox\._There_is_no_separate_Teams_integration_to_build\.{paragraphs:Courier adds Microsoft Teams as another channel in your existing notification system,with the same templates,routing,and preferences as email,SMS,push,and inbox. There is no separate Teams integration to build.}.sm\:pc-tag_Rich_messages{tag:Rich messages}.sm\:pc-title_Deliver_messages_users_can_act_on{title:Deliver messages users can act on}.sm\:pc-body_Send_rich_Teams_messages_built_with_Adaptive_Cards\,_so_a_notification_can_carry_buttons_and_structure_users_act_on_in_the_conversation\.{body:Send rich Teams messages built with Adaptive Cards,so a notification can carry buttons and structure users act on in the conversation.}.sm\:pc-items_Give_each_user_a_channel_preference\,_so_some_get_email_and_others_get_Teams_from_the_same_send{items:Give each user a channel preference,so some get email and others get Teams from the same send}.sm\:pc-title_Add_the_bot_credentials_in_Courier{title:Add the bot credentials in Courier}.sm\:pc-q_Can_I_send_notifications_to_my_users_on_Microsoft_Teams\?{q:Can I send notifications to my users on Microsoft Teams?}.sm\:pc-a_Yes\._Your_users_receive_notifications_as_direct_messages_from_your_Teams_bot\._Courier_sends_through_the_bot_you_register_in_Azure\,_so_recipients_get_product_updates_right_in_their_Teams_chat\.{a:Yes. Your users receive notifications as direct messages from your Teams bot. Courier sends through the bot you register in azure,so recipients get product updates right in their Teams chat.}.sm\:pc-name_StreamChat{name:StreamChat}.sm\:pc-hook_Add_StreamChat_as_another_channel\.{hook:Add StreamChat as another channel.}.sm\:pc-label_Microsoft_Teams_alternatives{label:Microsoft Teams alternatives}.sm\:pc-href_\/integrations\/alternatives\/microsoft-teams{href:/integrations/alternatives/microsoft-teams}.sm\:pc-works-with_Preferences{works-with:Preferences}.sm\:pc-paragraphs_Courier_forwards_your_notification_metrics_and_logs_to_New_Relic\,_so_you_can_build_dashboards_and_alerts_on_delivery_health_alongside_the_rest_of_your_stack\.{paragraphs:Courier forwards your notification metrics and logs to New Relic,so you can build dashboards and alerts on delivery health alongside the rest of your stack.}.sm\:pc-tag_Prebuilt_dashboard{tag:Prebuilt dashboard}.sm\:pc-title_Import_the_Courier_dashboard{title:Import the Courier dashboard}.sm\:pc-body_New_Relic_offers_a_prebuilt_Courier_dashboard_as_downloadable_JSON\,_so_you_can_monitor_delivery_health_without_building_a_dashboard_from_scratch\.{body:New Relic offers a prebuilt Courier dashboard as downloadable JSON,so you can monitor delivery health without building a dashboard from scratch.}.sm\:pc-title_Add_New_Relic_in_Courier{title:Add New Relic in Courier}.sm\:pc-body_Log_in_to_Courier\,_open_the_Channels_page\,_click_New_Relic\,_and_enter_the_License_key_in_the_API_Key_field\.{body:Log in to Courier,open the Channels page,click New Relic,and enter the License key in the API Key field.}.sm\:pc-q_What_Courier_data_shows_up_in_New_Relic\?{q:What Courier data shows up in New Relic?}.sm\:pc-label_Prebuilt_dashboard_\(JSON\){label:Prebuilt dashboard (JSON)}.sm\:pc-paragraphs_Courier_connects_to_Okta_so_your_team_signs_in_to_their_Courier_workspace_with_SSO\,_and_admins_manage_access_to_Courier_from_Okta_instead_of_one_account_at_a_time\.{paragraphs:Courier connects to Okta so your team signs in to their Courier workspace with SSO,and admins manage access to Courier from Okta instead of one account at a time.}.sm\:pc-tag_Provisioning{tag:Provisioning}.sm\:pc-title_Manage_access_from_Okta{title:Manage access from Okta}.sm\:pc-title_Create_the_SAML_app_in_Okta{title:Create the SAML app in Okta}.sm\:pc-body_In_Okta\,_add_a_SAML_2\.0_app_integration_named_Courier_and_map_the_user\.id_and_user\.email_attributes\._Optionally_enable_SCIM_v2_for_provisioning\.{body:In Okta,add a SAML 2 app integration named Courier and map the user.id and user.email attributes. Optionally enable SCIM v2 for provisioning.}.sm\:pc-q_What_does_the_Okta_integration_do\?{q:What does the Okta integration do?}.sm\:pc-a_It_handles_team_sign-in_and_account_management\._Members_authenticate_through_Okta\,_and_the_users_you_assign_in_Okta_sync_to_your_Courier_workspace_automatically\,_so_you_control_who_has_access_from_one_place\.{a:It handles team sign-in and account management. Members authenticate through Okta,and the users you assign in Okta sync to your Courier workspace automatically,so you control who has access from one place.}.sm\:pc-works-with_Workspaces{works-with:Workspaces}.sm\:pc-paragraphs_Courier_sits_in_front_of_it_as_one_API\,_a_visual_editor\,_journeys\,_and_every_other_channel\,_so_you_keep_OneSignal_for_delivery_and_build_multi-channel_notifications_on_top\.{paragraphs:Courier sits in front of it as one API,a visual editor,journeys,and every other channel,so you keep OneSignal for delivery and build multi-channel notifications on top.}.sm\:pc-body_Onboarding\,_drip\,_and_lifecycle_sequences_with_delays_and_branching\,_all_delivered_through_OneSignal\.{body:Onboarding,drip,and lifecycle sequences with delays and branching,all delivered through OneSignal.}.sm\:pc-q_Do_I_still_need_my_own_OneSignal_account\?{q:Do I still need my own OneSignal account?}.sm\:pc-name_Mailgun{name:Mailgun}.sm\:pc-hook_Swap_providers_without_changing_code\.{hook:Swap providers without changing code.}.sm\:pc-label_OneSignal_vs_SendGrid{label:OneSignal vs SendGrid}.sm\:pc-href_\/integrations\/compare\/onesignal-vs-sendgrid{href:/integrations/compare/onesignal-vs-sendgrid}.sm\:pc-paragraphs_Courier_delivers_to_PagerDuty_using_its_Events_API_v2\,_so_a_notification_can_trigger_an_incident_in_PagerDuty_as_one_channel_in_your_stack\,_alongside_every_other_channel_you_send_through_Courier\.{paragraphs:Courier delivers to PagerDuty using its Events API v2,so a notification can trigger an incident in PagerDuty as one channel in your stack,alongside every other channel you send through Courier.}.sm\:pc-tag_Multi-channel{tag:Multi-channel}.sm\:pc-title_One_channel_among_many{title:One channel among many}.sm\:pc-body_Add_PagerDuty_to_a_send_that_already_reaches_email\,_SMS\,_push\,_and_inbox\._No_separate_integration_to_build_in_your_code\.{body:Add PagerDuty to a send that already reaches email,SMS,push,and inbox. No separate integration to build in your code.}.sm\:pc-items_Page_on-call_for_critical_events_while_routine_notifications_go_to_other_channels{items:Page on-call for critical events while routine notifications go to other channels}.sm\:pc-title_Add_PagerDuty_in_Courier{title:Add PagerDuty in Courier}.sm\:pc-body_Open_Integrations\,_select_PagerDuty\,_and_enter_the_Integration_Key_\(routing_key\)\,_event_action\,_source\,_and_severity_level\.{body:Open Integrations,select PagerDuty,and enter the Integration Key (routing key),event action,source,and severity level.}.sm\:pc-q_Do_I_still_need_my_own_PagerDuty_account\?{q:Do I still need my own PagerDuty account?}.sm\:pc-name_Webhook{name:Webhook}.sm\:pc-hook_Deliver_a_notification_to_any_endpoint\.{hook:Deliver a notification to any endpoint.}.sm\:pc-works-with_Routing{works-with:Routing}.sm\:pc-paragraphs_Courier_sits_in_front_of_it_as_one_API\,_so_you_keep_Plivo_for_SMS_and_add_push\,_an_in-app_inbox\,_design\,_and_journeys_on_top\.{paragraphs:Courier sits in front of it as one API,so you keep Plivo for SMS and add push,an in-app inbox,design,and journeys on top.}.sm\:pc-body_Enter_your_Auth_ID\,_Auth_Token\,_and_a_From_number_from_the_Plivo_Console\.{body:Enter your Auth ID,Auth Token,and a From number from the Plivo Console.}.sm\:pc-q_Do_I_still_need_my_own_Plivo_account\?{q:Do I still need my own Plivo account?}.sm\:pc-a_Yes\._Courier_does_not_resell_Plivo_or_provide_messaging_capacity\,_so_you_keep_your_own_Plivo_account_and_its_sender_number\._Courier_authenticates_as_you_and_sends_through_that_account_on_your_behalf\.{a:Yes. Courier does not resell Plivo or provide messaging capacity,so you keep your own Plivo account and its sender number. Courier authenticates as you and sends through that account on your behalf.}.sm\:pc-name_MessageBird{name:MessageBird}.sm\:pc-hook_Add_MessageBird_as_a_channel_without_new_code\.{hook:Add MessageBird as a channel without new code.}.sm\:pc-label_Plivo_alternatives{label:Plivo alternatives}.sm\:pc-href_\/integrations\/alternatives\/plivo{href:/integrations/alternatives/plivo}.sm\:pc-paragraphs_Courier_sits_in_front_of_it_as_one_API\,_a_visual_editor\,_journeys\,_and_every_other_channel\,_so_you_keep_Postmark_for_delivery_and_build_multi-channel_notifications_on_top\.{paragraphs:Courier sits in front of it as one API,a visual editor,journeys,and every other channel,so you keep Postmark for delivery and build multi-channel notifications on top.}.sm\:pc-body_Onboarding\,_drip\,_and_lifecycle_sequences_with_delays_and_branching\,_all_delivered_through_Postmark\.{body:Onboarding,drip,and lifecycle sequences with delays and branching,all delivered through Postmark.}.sm\:pc-q_Do_I_still_need_my_own_Postmark_account\?{q:Do I still need my own Postmark account?}.sm\:pc-a_Yes\._Courier_delivers_through_your_Postmark_account_using_its_Server_API_Token\,_so_Postmark_still_handles_the_actual_sending\,_sender_signatures\,_and_your_delivery_reputation\._Courier_orchestrates_the_message_and_content_on_top\.{a:Yes. Courier delivers through your Postmark account using its Server API Token,so Postmark still handles the actual sending,sender signatures,and your delivery reputation. Courier orchestrates the message and content on top.}.sm\:pc-label_Postmark_alternatives{label:Postmark alternatives}.sm\:pc-href_\/integrations\/alternatives\/postmark{href:/integrations/alternatives/postmark}.sm\:pc-q_Do_I_still_need_my_own_Pusher_Beams_account\?{q:Do I still need my own Pusher Beams account?}.sm\:pc-name_Apple_Push_Notifications_\(APNS\){name:Apple Push Notifications (APNS)}.sm\:pc-hook_Send_iOS_push_through_APNs\.{hook:Send iOS push through APNs.}.sm\:pc-label_Pusher_Beams_alternatives{label:Pusher Beams alternatives}.sm\:pc-href_\/integrations\/alternatives\/pusher-beams{href:/integrations/alternatives/pusher-beams}.sm\:pc-paragraphs_Courier_sits_in_front_of_it_as_one_API\,_a_visual_editor\,_journeys\,_and_every_other_channel\,_so_you_keep_Resend_for_delivery_and_build_multi-channel_notifications_on_top\.{paragraphs:Courier sits in front of it as one API,a visual editor,journeys,and every other channel,so you keep Resend for delivery and build multi-channel notifications on top.}.sm\:pc-body_Onboarding\,_drip\,_and_lifecycle_sequences_with_delays_and_branching\,_all_delivered_through_Resend\.{body:Onboarding,drip,and lifecycle sequences with delays and branching,all delivered through Resend.}.sm\:pc-q_Do_I_still_need_my_own_Resend_account\?{q:Do I still need my own Resend account?}.sm\:pc-label_Resend_alternatives{label:Resend alternatives}.sm\:pc-href_\/integrations\/alternatives\/resend{href:/integrations/alternatives/resend}.sm\:pc-paragraphs_Pipe_your_RudderStack_data_and_events_into_Courier\,_then_use_them_to_trigger_notifications_and_kick_off_multi-step_journeys\,_with_no_send_pipeline_to_build_or_maintain\.{paragraphs:Pipe your RudderStack data and events into Courier,then use them to trigger notifications and kick off multi-step journeys,with no send pipeline to build or maintain.}.sm\:pc-title_Kick_off_multi-step_journeys{title:Kick off multi-step journeys}.sm\:pc-body_Let_a_single_event_start_an_onboarding\,_drip\,_or_lifecycle_sequence_in_Courier_with_delays_and_branching\,_all_from_data_you_already_collect\.{body:Let a single event start an onboarding,drip,or lifecycle sequence in Courier with delays and branching,all from data you already collect.}.sm\:pc-paragraphs_Once_connected\,_Group\,_Identify\,_and_Track_events_flow_into_Courier_Studio\._To_trigger_and_supply_data_to_a_workflow\,_event_properties_are_scoped_under_the_courier\.automation_object\,_so_an_event_can_start_a_notification_or_a_journey\.{paragraphs:Once connected,Group,Identify,and Track events flow into Courier Studio. To trigger and supply data to a workflow,event properties are scoped under the courier.automation object,so an event can start a notification or a journey.}.sm\:pc-items_Behavioral_nudges_when_a_user_takes_\(or_skips\)_a_key_action_in_your_product{items:Behavioral nudges when a user takes (or skips) a key action in your product}.sm\:pc-title_Add_your_Courier_key{title:Add your Courier key}.sm\:pc-body_Copy_your_Courier_API_Key_and_add_it_to_the_Courier_destination_configuration_in_RudderStack\.{body:Copy your Courier API Key and add it to the Courier destination configuration in RudderStack.}.sm\:pc-q_How_do_RudderStack_events_trigger_notifications_in_Courier\?{q:How do RudderStack events trigger notifications in Courier?}.sm\:pc-name_Hightouch{name:Hightouch}.sm\:pc-hook_Sync_warehouse_audiences_straight_to_Courier\.{hook:Sync warehouse audiences straight to Courier.}.sm\:pc-works-with_Journeys{works-with:Journeys}.sm\:pc-paragraphs_Pipe_your_Segment_data_and_events_into_Courier\,_then_use_them_to_trigger_notifications_and_kick_off_multi-step_journeys\,_with_no_send_pipeline_to_build_or_maintain\.{paragraphs:Pipe your Segment data and events into Courier,then use them to trigger notifications and kick off multi-step journeys,with no send pipeline to build or maintain.}.sm\:pc-body_Copy_your_Courier_API_Key_or_Auth_Token_from_Courier_and_paste_it_into_the_Courier_destination_settings_in_Segment\.{body:Copy your Courier API Key or Auth Token from Courier and paste it into the Courier destination settings in Segment.}.sm\:pc-q_How_do_Segment_events_trigger_notifications_in_Courier\?{q:How do Segment events trigger notifications in Courier?}.sm\:pc-a_Not_automatically\._Segment_track_events_must_be_mapped_to_Courier_Automations\,_which_listen_for_a_specific_event_name_\(the_event_field\)_and_send_the_matching_notification\._Identify_and_group_calls_update_data_but_do_not_send_on_their_own\.{a:Not automatically. Segment track events must be mapped to Courier Automations,which listen for a specific event name (the event field) and send the matching notification. Identify and group calls update data but do not send on their own.}.sm\:pc-paragraphs_Courier_sits_in_front_of_it_as_one_API\,_a_visual_editor\,_journeys\,_and_every_other_channel\,_so_you_keep_SendGrid_for_delivery_and_build_multi-channel_notifications_on_top\.{paragraphs:Courier sits in front of it as one API,a visual editor,journeys,and every other channel,so you keep SendGrid for delivery and build multi-channel notifications on top.}.sm\:pc-body_Onboarding\,_drip\,_and_lifecycle_sequences_with_delays_and_branching\,_all_delivered_through_SendGrid\.{body:Onboarding,drip,and lifecycle sequences with delays and branching,all delivered through SendGrid.}.sm\:pc-q_Do_I_still_need_my_own_SendGrid_account\?{q:Do I still need my own SendGrid account?}.sm\:pc-a_Yes\._Courier_routes_email_through_your_SendGrid_account\,_not_its_own\._You_add_your_SendGrid_API_key_in_Courier\,_and_SendGrid_stays_your_sending_infrastructure_and_deliverability_record\.{a:Yes. Courier routes email through your SendGrid account,not its own. You add your SendGrid API key in Courier,and SendGrid stays your sending infrastructure and deliverability record.}.sm\:pc-label_SendGrid_alternatives{label:SendGrid alternatives}.sm\:pc-href_\/integrations\/alternatives\/sendgrid{href:/integrations/alternatives/sendgrid}.sm\:pc-paragraphs_Courier_sits_in_front_of_it_as_one_API\,_so_you_keep_Sinch_for_SMS_and_add_push\,_an_in-app_inbox\,_design\,_and_journeys_on_top\.{paragraphs:Courier sits in front of it as one API,so you keep Sinch for SMS and add push,an in-app inbox,design,and journeys on top.}.sm\:pc-body_Enter_your_Service_Plan_ID\,_API_token\,_and_from_number_from_your_Sinch_dashboard\.{body:Enter your Service Plan ID,API token,and from number from your Sinch dashboard.}.sm\:pc-q_Do_I_still_need_my_own_Sinch_account\?{q:Do I still need my own Sinch account?}.sm\:pc-a_Yes\._Courier_does_not_resell_Sinch\._You_keep_your_own_Sinch_account_and_Service_Plan\,_and_Courier_authenticates_with_your_credentials_so_Sinch_still_delivers_the_SMS\.{a:Yes. Courier does not resell Sinch. You keep your own Sinch account and Service Plan,and Courier authenticates with your credentials so Sinch still delivers the SMS.}.sm\:pc-label_Sinch_alternatives{label:Sinch alternatives}.sm\:pc-href_\/integrations\/alternatives\/sinch{href:/integrations/alternatives/sinch}.sm\:pc-paragraphs_Courier_adds_Slack_as_another_channel_in_your_existing_notification_system\,_with_the_same_templates\,_routing\,_and_preferences_as_email\,_SMS\,_push\,_and_inbox\._There_is_no_separate_Slack_integration_to_build\.{paragraphs:Courier adds Slack as another channel in your existing notification system,with the same templates,routing,and preferences as email,SMS,push,and inbox. There is no separate Slack integration to build.}.sm\:pc-body_Send_rich_Slack_messages_built_with_Block_Kit\,_so_a_notification_can_carry_buttons_and_structure_users_act_on_in_the_conversation\.{body:Send rich Slack messages built with Block Kit,so a notification can carry buttons and structure users act on in the conversation.}.sm\:pc-items_Give_each_user_a_channel_preference\,_so_some_get_email_and_others_get_Slack_from_the_same_send{items:Give each user a channel preference,so some get email and others get Slack from the same send}.sm\:pc-title_Add_the_bot_token_in_Courier{title:Add the bot token in Courier}.sm\:pc-body_Open_Integrations\,_select_Slack\,_and_paste_your_Bot_User_OAuth_Token_\(it_starts_with_xoxb-\)\.{body:Open Integrations,select Slack,and paste your Bot User OAuth Token (it starts with xoxb-).}.sm\:pc-q_Can_I_send_notifications_to_my_users_on_Slack\?{q:Can I send notifications to my users on Slack?}.sm\:pc-label_Slack_alternatives{label:Slack alternatives}.sm\:pc-href_\/integrations\/alternatives\/slack{href:/integrations/alternatives/slack}.sm\:pc-paragraphs_Courier_sits_in_front_of_it_as_one_API\,_so_you_keep_SMSCentral_for_SMS_and_add_push\,_an_in-app_inbox\,_design\,_and_journeys_on_top\.{paragraphs:Courier sits in front of it as one API,so you keep SMSCentral for SMS and add push,an in-app inbox,design,and journeys on top.}.sm\:pc-body_Enter_your_SMSCentral_username_and_password\,_then_save\.{body:Enter your SMSCentral username and password,then save.}.sm\:pc-q_Do_I_still_need_my_own_SMSCentral_account\?{q:Do I still need my own SMSCentral account?}.sm\:pc-a_Yes\._Courier_does_not_resell_SMS_capacity\,_so_you_bring_your_own_account_from_smscentral\.com\.au\._SMSCentral_delivers_each_text_and_bills_you_directly\,_while_Courier_orchestrates_the_message_and_sends_it_through_their_gateway\.{a:Yes. Courier does not resell SMS capacity,so you bring your own account from smscentral.com.au. SMSCentral delivers each text and bills you directly,while Courier orchestrates the message and sends it through their gateway.}.sm\:pc-label_SMSCentral_alternatives{label:SMSCentral alternatives}.sm\:pc-href_\/integrations\/alternatives\/smscentral{href:/integrations/alternatives/smscentral}.sm\:pc-paragraphs_Courier_sits_in_front_of_it_as_one_API\,_a_visual_editor\,_journeys\,_and_every_other_channel\,_so_you_keep_SMTP_for_delivery_and_build_multi-channel_notifications_on_top\.{paragraphs:Courier sits in front of it as one API,a visual editor,journeys,and every other channel,so you keep SMTP for delivery and build multi-channel notifications on top.}.sm\:pc-body_Onboarding\,_drip\,_and_lifecycle_sequences_with_delays_and_branching\,_all_delivered_through_your_SMTP_connection\.{body:Onboarding,drip,and lifecycle sequences with delays and branching,all delivered through your SMTP connection.}.sm\:pc-q_Do_I_need_my_own_SMTP_server\?{q:Do I need my own SMTP server?}.sm\:pc-paragraphs_Courier_sits_in_front_of_it_as_one_API\,_a_visual_editor\,_journeys\,_and_every_other_channel\,_so_you_keep_SparkPost_for_delivery_and_build_multi-channel_notifications_on_top\.{paragraphs:Courier sits in front of it as one API,a visual editor,journeys,and every other channel,so you keep SparkPost for delivery and build multi-channel notifications on top.}.sm\:pc-body_Onboarding\,_drip\,_and_lifecycle_sequences_with_delays_and_branching\,_all_delivered_through_SparkPost\.{body:Onboarding,drip,and lifecycle sequences with delays and branching,all delivered through SparkPost.}.sm\:pc-q_Do_I_still_need_my_own_SparkPost_account\?{q:Do I still need my own SparkPost account?}.sm\:pc-label_SparkPost_alternatives{label:SparkPost alternatives}.sm\:pc-href_\/integrations\/alternatives\/sparkpost{href:/integrations/alternatives/sparkpost}.sm\:pc-paragraphs_Courier_adds_StreamChat_as_another_channel_in_your_notification_stack\,_with_the_same_templates\,_routing\,_and_preferences_as_email\,_SMS\,_push\,_and_inbox\._Courier_delivers_messages_into_your_StreamChat_channels\.{paragraphs:Courier adds StreamChat as another channel in your notification stack,with the same templates,routing,and preferences as email,SMS,push,and inbox. Courier delivers messages into your StreamChat channels.}.sm\:pc-tag_Design_Studio{tag:Design Studio}.sm\:pc-title_Design_once\,_edit_without_code{title:Design once,edit without code}.sm\:pc-items_Route_to_StreamChat_by_user_preference\,_and_fall_back_to_another_channel_otherwise{items:Route to StreamChat by user preference,and fall back to another channel otherwise}.sm\:pc-body_Enter_your_API_key\,_API_secret\,_and_sender_ID_from_your_StreamChat_project\,_then_save\.{body:Enter your API key,API secret,and sender ID from your StreamChat project,then save.}.sm\:pc-q_Do_I_still_need_my_own_Stream_Chat_account\?{q:Do I still need my own Stream Chat account?}.sm\:pc-name_Microsoft_Teams{name:Microsoft Teams}.sm\:pc-hook_Deliver_notifications_into_Teams\.{hook:Deliver notifications into Teams.}.sm\:pc-paragraphs_Courier_sits_in_front_of_it_as_one_API\,_so_you_keep_Telnyx_for_SMS_and_add_push\,_an_in-app_inbox\,_design\,_and_journeys_on_top\.{paragraphs:Courier sits in front of it as one API,so you keep Telnyx for SMS and add push,an in-app inbox,design,and journeys on top.}.sm\:pc-body_Enter_your_API_Key_and_an_SMS-capable_originating_phone_number_from_the_Telnyx_portal\.{body:Enter your API Key and an SMS-capable originating phone number from the Telnyx portal.}.sm\:pc-q_Do_I_still_need_my_own_Telnyx_account\?{q:Do I still need my own Telnyx account?}.sm\:pc-label_Telnyx_alternatives{label:Telnyx alternatives}.sm\:pc-href_\/integrations\/alternatives\/telnyx{href:/integrations/alternatives/telnyx}.sm\:pc-paragraphs_Courier_sits_in_front_of_it_as_one_API\,_so_you_keep_Twilio_for_SMS_and_add_push\,_an_in-app_inbox\,_design\,_and_journeys_on_top\.{paragraphs:Courier sits in front of it as one API,so you keep Twilio for SMS and add push,an in-app inbox,design,and journeys on top.}.sm\:pc-body_Enter_your_Account_SID\,_Auth_Token\,_and_Messaging_Service_SID_from_the_Twilio_Console\.{body:Enter your Account SID,Auth Token,and Messaging Service SID from the Twilio Console.}.sm\:pc-q_Do_I_still_need_my_own_Twilio_account\?{q:Do I still need my own Twilio account?}.sm\:pc-label_Twilio_alternatives{label:Twilio alternatives}.sm\:pc-href_\/integrations\/alternatives\/twilio{href:/integrations/alternatives/twilio}.sm\:pc-paragraphs_Courier_sits_in_front_of_it_as_one_API\,_so_you_keep_Vonage_for_SMS_and_add_push\,_an_in-app_inbox\,_design\,_and_journeys_on_top\.{paragraphs:Courier sits in front of it as one API,so you keep Vonage for SMS and add push,an in-app inbox,design,and journeys on top.}.sm\:pc-body_Enter_your_API_key\,_API_secret\,_and_From_number_from_your_Vonage_dashboard\.{body:Enter your API key,API secret,and From number from your Vonage dashboard.}.sm\:pc-q_Do_I_still_need_my_own_Vonage_account\?{q:Do I still need my own Vonage account?}.sm\:pc-a_Yes\._Courier_does_not_resell_SMS\,_so_messages_send_through_your_own_Vonage_account\,_from_number\,_and_billing\._You_supply_your_Vonage_API_key_and_API_secret\,_and_Courier_orchestrates_the_sending_on_top_of_them\.{a:Yes. Courier does not resell SMS,so messages send through your own Vonage account,from number,and billing. You supply your Vonage API key and API secret,and Courier orchestrates the sending on top of them.}.sm\:pc-label_Vonage_alternatives{label:Vonage alternatives}.sm\:pc-href_\/integrations\/alternatives\/vonage{href:/integrations/alternatives/vonage}.sm\:pc-tag_HTTP_method{tag:HTTP method}.sm\:pc-title_Choose_method\,_headers\,_and_body{title:Choose method,headers,and body}.sm\:pc-body_Send_GET\,_POST\,_PUT\,_and_more\,_with_custom_headers\._Override_the_URL\,_method\,_headers\,_or_body_per_message_with_provider_overrides\.{body:Send GET,POST,PUT,and more,with custom headers. Override the URL,method,headers,or body per message with provider overrides.}.sm\:pc-items_Send_the_same_notification_to_users_and_to_a_downstream_endpoint_in_one_send{items:Send the same notification to users and to a downstream endpoint in one send}.sm\:pc-title_Configure_the_request{title:Configure the request}.sm\:pc-q_When_should_I_use_the_Webhook_channel\?{q:When should I use the Webhook channel?}.sm\:pc-a_Use_it_to_reach_a_system_Courier_does_not_natively_support\,_such_as_an_internal_service_or_a_partner_API\._It_is_the_general-purpose_way_to_deliver_a_Courier_notification_anywhere_over_HTTP\.{a:Use it to reach a system Courier does not natively support,such as an internal service or a partner API. It is the general-purpose way to deliver a Courier notification anywhere over HTTP.}.sm\:pc-name_PagerDuty{name:PagerDuty}.sm\:pc-hook_Trigger_incidents_from_a_send\.{hook:Trigger incidents from a send.}.sm\:pc-works-with_HTTP{works-with:HTTP}.sm\:pc-paragraphs_Courier_sits_in_front_of_it_as_one_API\,_so_you_keep_WhatsApp_for_chat_messaging_and_add_push\,_an_in-app_inbox\,_design\,_and_journeys_on_top\.{paragraphs:Courier sits in front of it as one API,so you keep WhatsApp for chat messaging and add push,an in-app inbox,design,and journeys on top.}.sm\:pc-body_Give_your_app_an_in-product_notification_center_\(SDKs_for_web\,_React\,_iOS\,_Android\,_Flutter\,_React_Native\)\,_so_users_see_more_than_just_chat_messages\.{body:Give your app an in-product notification center (SDKs for web,React,iOS,Android,Flutter,React Native),so users see more than just chat messages.}.sm\:pc-body_Enter_your_Twilio_Account_SID\,_Auth_Token\,_and_WhatsApp-enabled_From_number_from_the_Twilio_Console\.{body:Enter your Twilio Account SID,Auth Token,and WhatsApp-enabled From number from the Twilio Console.}.sm\:pc-q_Do_I_still_need_my_own_WhatsApp_account\?{q:Do I still need my own WhatsApp account?}.sm\:pc-label_WhatsApp_alternatives{label:WhatsApp alternatives}.sm\:pc-href_\/integrations\/alternatives\/whatsapp{href:/integrations/alternatives/whatsapp}.sm\:pc-grid-tc_repeat\(6\,_1fr\){grid-template-columns:repeat(6,1fr)}.sm\:pc-grid-tc_repeat\(4\,_minmax\(0\,_1fr\)\){grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:pc-grid-tc_repeat\(2\,_1fr\){grid-template-columns:repeat(2,1fr)}.sm\:pc-flex-d_row{flex-direction:row}.sm\:pc-ai_baseline{align-items:baseline}.sm\:pc-grid-tc_repeat\(2\,1fr\){grid-template-columns:repeat(2,1fr)}.sm\:pc-ta_right{text-align:right}.sm\:pc-grid-tc_repeat\(3\,1fr\){grid-template-columns:repeat(3,1fr)}.sm\:pc-w_190px{width:190px}.sm\:pc-w_80px{width:80px}}@media screen and (min-width:37.5rem){.customSm\:pc-tag_Journeys{tag:Journeys}.customSm\:pc-title_Automate_multi-step_flows{title:Automate multi-step flows}.customSm\:pc-items_Automate_reminders\,_verification_codes\,_and_lifecycle_messaging_without_new_infrastructure{items:Automate reminders,verification codes,and lifecycle messaging without new infrastructure}.customSm\:pc-n_3{n:3px}.customSm\:pc-title_Send_from_your_app{title:Send from your app}.customSm\:pc-a_An_Africa\'s_Talking_API_key_and_your_application_username\,_both_from_your_Africa\'s_Talking_account\._Add_them_on_the_Africa\'s_Talking_integration_in_Courier\'s_Integrations_catalog_to_start_sending_SMS\.{a:An Africa"s Talking API key and your application username, both from your Africa"s Talking account. Add them on the Africa"s Talking integration in Courier"s Integrations catalog to start sending SMS.}.customSm\:pc-name_MessageBird{name:MessageBird}.customSm\:pc-hook_Send_SMS_through_MessageBird\.{hook:Send SMS through MessageBird.}.customSm\:pc-works-with_Inbox{works-with:Inbox}.customSm\:pc-tag_Multi-channel{tag:Multi-channel}.customSm\:pc-title_Add_SMS\,_push\,_and_chat{title:Add SMS,push,and chat}.customSm\:pc-body_The_same_notification_can_reach_every_channel\._Add_one_when_you_need_it\,_no_new_integration_in_your_code\.{body:The same notification can reach every channel. Add one when you need it,no new integration in your code.}.customSm\:pc-items_Add_SMS_or_push_to_an_existing_email_flow_without_wiring_a_new_integration{items:Add SMS or push to an existing email flow without wiring a new integration}.customSm\:pc-body_Call_the_Send_API_with_a_recipient_and_template\._Courier_renders_and_delivers_through_Amply\.{body:Call the Send API with a recipient and template. Courier renders and delivers through Amply.}.customSm\:pc-q_What_do_I_need_to_connect_Amply_to_Courier\?{q:What do I need to connect Amply to Courier?}.customSm\:pc-name_Mailgun{name:Mailgun}.customSm\:pc-hook_Swap_providers_without_changing_code\.{hook:Swap providers without changing code.}.customSm\:pc-works-with_Journeys{works-with:Journeys}.customSm\:pc-tag_SMS{tag:SMS}.customSm\:pc-title_Complete_the_mobile_picture_with_SMS{title:Complete the mobile picture with SMS}.customSm\:pc-body_Add_SMS_alongside_push_from_the_same_notification\,_so_you_can_also_reach_users_who_have_push_turned_off\.{body:Add SMS alongside push from the same notification,so you can also reach users who have push turned off.}.customSm\:pc-items_Reach_users_with_SMS_when_push_is_off\,_for_complete_mobile_coverage_from_one_send{items:Reach users with SMS when push is off,for complete mobile coverage from one send}.customSm\:pc-body_Call_the_Send_API_with_a_recipient_and_template\._Courier_delivers_push_through_APNs\,_plus_any_other_channels_you_add\.{body:Call the Send API with a recipient and template. Courier delivers push through APNs,plus any other channels you add.}.customSm\:pc-q_What_do_I_need_to_connect_APNs_to_Courier\?{q:What do I need to connect APNs to Courier?}.customSm\:pc-a_Upload_your_APNs_authentication_key_\(a_\.p8_file\)_in_the_APNS_channel_settings\,_then_enter_the_matching_Key_ID_and_Team_ID\._Set_the_sandbox_or_production_environment_toggle_to_match_the_build_your_device_tokens_came_from\.{a:Upload your APNs authentication key (a .p8 file) in the APNS channel settings,then enter the matching Key ID and Team ID. Set the sandbox or production environment toggle to match the build your device tokens came from.}.customSm\:pc-name_Twilio{name:Twilio}.customSm\:pc-hook_Add_SMS_to_your_push_notifications\.{hook:Add SMS to your push notifications.}.customSm\:pc-works-with_SMS{works-with:SMS}.customSm\:pc-body_Call_the_Send_API_with_a_recipient_and_template\._Courier_renders_and_delivers_through_AWS_SES\.{body:Call the Send API with a recipient and template. Courier renders and delivers through AWS SES.}.customSm\:pc-q_What_do_I_need_to_connect_AWS_SES_to_Courier\?{q:What do I need to connect AWS SES to Courier?}.customSm\:pc-a_Either_an_IAM_user\'s_Access_Key_ID_and_Secret_Access_Key\,_or_an_IAM_role\'s_Role_ARN_with_your_Courier_workspace_ID_as_the_ExternalId\._You_also_choose_an_AWS_region_and_set_a_verified_From_Address\.{a:Either an IAM user"s Access Key ID and Secret Access Key, or an IAM role"s Role ARN with your Courier workspace ID as the ExternalId. You also choose an AWS region and set a verified From Address.}.customSm\:pc-body_Trigger_reminders\,_verification\,_and_lifecycle_sequences_with_delays_and_branching\,_all_delivered_through_AWS_SNS\.{body:Trigger reminders,verification,and lifecycle sequences with delays and branching,all delivered through AWS SNS.}.customSm\:pc-items_Automate_reminders\,_verification\,_and_lifecycle_messaging_without_new_infrastructure{items:Automate reminders,verification,and lifecycle messaging without new infrastructure}.customSm\:pc-body_Call_the_Send_API_with_a_recipient_and_template\._Courier_delivers_through_AWS_SNS\,_and_any_other_channels_you_add\.{body:Call the Send API with a recipient and template. Courier delivers through AWS SNS,and any other channels you add.}.customSm\:pc-q_What_do_I_need_to_connect_AWS_SNS_to_Courier\?{q:What do I need to connect AWS SNS to Courier?}.customSm\:pc-a_An_AWS_Access_Key_ID\,_Secret_Access_Key\,_and_region\._In_Courier\,_click_Add_Channel\,_select_the_Push_channel\,_then_use_the_search_bar_to_find_AWS_SNS_and_enter_those_credentials\.{a:An AWS Access Key ID,Secret Access Key,and region. In Courier,click Add Channel,select the Push channel,then use the search bar to find AWS SNS and enter those credentials.}.customSm\:pc-hook_Add_MessageBird_as_a_channel_without_new_code\.{hook:Add MessageBird as a channel without new code.}.customSm\:pc-body_Trigger_reminders\,_verification\,_and_lifecycle_sequences_with_delays_and_branching\,_all_delivered_through_Azure_SMS\.{body:Trigger reminders,verification,and lifecycle sequences with delays and branching,all delivered through azure SMS.}.customSm\:pc-body_Call_the_Send_API_with_a_recipient_and_template\._Courier_delivers_through_Azure_SMS\,_and_any_other_channels_you_add\.{body:Call the Send API with a recipient and template. Courier delivers through azure SMS,and any other channels you add.}.customSm\:pc-q_What_do_I_need_to_connect_Azure_SMS_to_Courier\?{q:What do I need to connect azure SMS to Courier?}.customSm\:pc-name_Firebase_FCM{name:Firebase FCM}.customSm\:pc-hook_Add_push_to_your_Azure_SMS\.{hook:Add push to your azure SMS.}.customSm\:pc-tag_MCP{tag:MCP}.customSm\:pc-title_Connect_your_agent_over_MCP{title:Connect your agent over MCP}.customSm\:pc-items_Add_an_AI_step_to_a_journey_that_classifies_a_user_and_writes_per-channel_copy_from_one_prompt{items:Add an AI step to a journey that classifies a user and writes per-channel copy from one prompt}.customSm\:pc-n_→{n:→}.customSm\:pc-title_Design_an_email_with_ChatGPT{title:Design an email with ChatGPT}.customSm\:pc-body_Have_ChatGPT_generate_the_HTML\,_paste_it_into_Courier_as_a_template\,_and_send\.{body:Have ChatGPT generate the HTML,paste it into Courier as a template,and send.}.customSm\:pc-q_How_do_I_connect_my_OpenAI-based_agent_to_Courier\?{q:How do I connect my OpenAI-based agent to Courier?}.customSm\:pc-hook_Add_SMS_to_what_your_agent_builds\.{hook:Add SMS to what your agent builds.}.customSm\:pc-works-with_CLI{works-with:CLI}.customSm\:pc-title_Design_an_email_with_Claude{title:Design an email with Claude}.customSm\:pc-body_Have_Claude_generate_the_HTML\,_paste_it_into_Courier_as_a_template\,_and_send\.{body:Have Claude generate the HTML,paste it into Courier as a template,and send.}.customSm\:pc-q_How_do_I_connect_my_AI_agent_to_Courier\?{q:How do I connect my AI agent to Courier?}.customSm\:pc-tag_Design_Studio{tag:Design Studio}.customSm\:pc-title_Design_the_content_in_Studio{title:Design the content in Studio}.customSm\:pc-body_Create_a_title_and_content_blocks_in_Studio\._Courier_sends_a_structured_payload_with_the_body_as_plain_text_and_blocks_as_an_array\.{body:Create a title and content blocks in Studio. Courier sends a structured payload with the body as plain text and blocks as an array.}.customSm\:pc-items_Override_the_request_body\,_headers\,_method\,_or_URL_per_message_when_a_send_needs_it{items:Override the request body,headers,method,or URL per message when a send needs it}.customSm\:pc-body_Call_the_Send_API\._Courier_delivers_a_JSON_payload_with_a_messageId_and_content_\(title\,_body\,_and_a_blocks_array\)_to_your_endpoint\.{body:Call the Send API. Courier delivers a JSON payload with a messageId and content (title,body,and a blocks array) to your endpoint.}.customSm\:pc-q_How_do_I_set_up_the_Custom_Provider_in_Courier\?{q:How do I set up the Custom Provider in Courier?}.customSm\:pc-name_PagerDuty{name:PagerDuty}.customSm\:pc-hook_Trigger_incidents_from_a_send\.{hook:Trigger incidents from a send.}.customSm\:pc-works-with_Templates{works-with:Templates}.customSm\:pc-tag_Alerts{tag:Alerts}.customSm\:pc-title_Alert_on_failures_and_bounces{title:Alert on failures and bounces}.customSm\:pc-body_Use_Datadog_monitors_to_page_or_notify_your_team_when_failures_or_undeliverable_rates_spike\,_using_the_same_alerting_you_already_trust\.{body:Use Datadog monitors to page or notify your team when failures or undeliverable rates spike,using the same alerting you already trust.}.customSm\:pc-items_Correlate_notification_delivery_with_app_performance\,_latency\,_and_deploys{items:Correlate notification delivery with app performance,latency,and deploys}.customSm\:pc-title_Confirm_your_Datadog_site{title:Confirm your Datadog site}.customSm\:pc-body_Check_that_the_Datadog_site_parameter_matches_your_Datadog_instance_URL\,_then_save\._Metrics_begin_flowing_right_away\.{body:Check that the Datadog site parameter matches your Datadog instance URL,then save. Metrics begin flowing right away.}.customSm\:pc-q_How_do_I_connect_Courier_to_Datadog\?{q:How do I connect Courier to Datadog?}.customSm\:pc-a_In_the_Courier_integrations_catalog\,_open_Datadog_and_paste_a_Datadog_API_key\,_then_set_the_site_parameter_to_match_your_Datadog_instance_URL\._Configure_it_per_environment\,_since_test_and_production_forward_metrics_separately\.{a:In the Courier integrations catalog,open Datadog and paste a Datadog API key,then set the site parameter to match your Datadog instance URL. Configure it per environment,since test and production forward metrics separately.}.customSm\:pc-name_Slack{name:Slack}.customSm\:pc-hook_Deliver_notifications_into_Slack_channels\.{hook:Deliver notifications into Slack channels.}.customSm\:pc-works-with_Dashboards{works-with:Dashboards}.customSm\:pc-body_Add_SMS_alongside_push_from_the_same_notification\,_so_you_can_reach_users_on_more_than_one_channel_from_a_single_send\.{body:Add SMS alongside push from the same notification,so you can reach users on more than one channel from a single send.}.customSm\:pc-items_Add_SMS_alongside_push_for_complete_mobile_coverage_from_a_single_send{items:Add SMS alongside push for complete mobile coverage from a single send}.customSm\:pc-body_Call_the_Send_API_with_a_recipient_and_template\._Courier_delivers_push_through_Expo\,_plus_any_other_channels_you_add\.{body:Call the Send API with a recipient and template. Courier delivers push through Expo,plus any other channels you add.}.customSm\:pc-q_What_do_I_need_to_connect_Expo_to_Courier\?{q:What do I need to connect Expo to Courier?}.customSm\:pc-body_Add_SMS_alongside_push_from_the_same_notification\,_so_you_can_still_reach_users_who_have_push_turned_off\.{body:Add SMS alongside push from the same notification,so you can still reach users who have push turned off.}.customSm\:pc-body_Call_the_Send_API_with_a_recipient_and_template\._Courier_delivers_push_through_FCM\,_plus_any_other_channels_you_add\.{body:Call the Send API with a recipient and template. Courier delivers push through FCM,plus any other channels you add.}.customSm\:pc-q_What_do_I_need_to_connect_FCM_to_Courier\?{q:What do I need to connect FCM to Courier?}.customSm\:pc-a_You_paste_the_contents_of_your_Firebase_service_account_private_key_JSON_into_the_FCM_Provider_Configuration_in_Courier\._That_authenticates_Courier_to_send_push_through_your_Firebase_project\.{a:You paste the contents of your Firebase service account private key JSON into the FCM Provider Configuration in Courier. That authenticates Courier to send push through your Firebase project.}.customSm\:pc-body_The_same_notification_can_reach_every_channel\._Add_one_when_you_need_it\,_with_no_new_integration_in_your_code\.{body:The same notification can reach every channel. Add one when you need it,with no new integration in your code.}.customSm\:pc-body_Call_the_Send_API_with_a_recipient_and_template\._Courier_renders_and_delivers_through_Gmail\.{body:Call the Send API with a recipient and template. Courier renders and delivers through Gmail.}.customSm\:pc-q_What_do_I_need_to_connect_Gmail_to_Courier\?{q:What do I need to connect Gmail to Courier?}.customSm\:pc-tag_Profiles{tag:Profiles}.customSm\:pc-title_Keep_profiles_current{title:Keep profiles current}.customSm\:pc-items_Behavioral_nudges_to_users_a_warehouse_query_flags_as_at-risk_or_inactive{items:Behavioral nudges to users a warehouse query flags as at-risk or inactive}.customSm\:pc-title_Build_a_model_and_sync{title:Build a model and sync}.customSm\:pc-body_Write_a_SQL_model\,_then_map_its_columns_to_Courier_profile_fields_or_list_subscriptions_and_choose_Upsert_or_Update\._Records_match_on_Recipient_ID\.{body:Write a SQL model,then map its columns to Courier profile fields or list subscriptions and choose Upsert or Update. Records match on Recipient ID.}.customSm\:pc-q_How_do_I_connect_Hightouch_to_Courier\?{q:How do I connect Hightouch to Courier?}.customSm\:pc-a_In_Courier\,_open_Settings_and_go_to_the_API_Keys_tab_to_copy_your_Published_token\._In_Hightouch\,_add_Courier_as_a_destination_and_paste_that_token_to_authenticate_the_connection\.{a:In Courier,open Settings and go to the API Keys tab to copy your Published token. In Hightouch,add Courier as a destination and paste that token to authenticate the connection.}.customSm\:pc-name_SendGrid{name:SendGrid}.customSm\:pc-hook_Deliver_the_email_your_syncs_power\.{hook:Deliver the email your syncs power.}.customSm\:pc-works-with_Lists{works-with:Lists}.customSm\:pc-body_Call_the_Send_API_with_a_recipient_and_template\._Courier_renders_and_delivers_through_MailerSend\.{body:Call the Send API with a recipient and template. Courier renders and delivers through MailerSend.}.customSm\:pc-q_What_do_I_need_to_connect_MailerSend_to_Courier\?{q:What do I need to connect MailerSend to Courier?}.customSm\:pc-hook_Route_email_at_scale_through_SendGrid\.{hook:Route email at scale through SendGrid.}.customSm\:pc-body_Call_the_Send_API_with_a_recipient_and_template\._Courier_renders_and_delivers_through_Mailgun\.{body:Call the Send API with a recipient and template. Courier renders and delivers through Mailgun.}.customSm\:pc-q_What_do_I_need_to_connect_Mailgun_to_Courier\?{q:What do I need to connect Mailgun to Courier?}.customSm\:pc-name_AWS_SES{name:AWS SES}.customSm\:pc-hook_Route_high-volume_email_through_SES\.{hook:Route high-volume email through SES.}.customSm\:pc-body_Call_the_Send_API_with_a_recipient_and_template\._Courier_renders_and_delivers_through_Mailjet\.{body:Call the Send API with a recipient and template. Courier renders and delivers through Mailjet.}.customSm\:pc-q_What_do_I_need_to_connect_Mailjet_to_Courier\?{q:What do I need to connect Mailjet to Courier?}.customSm\:pc-name_Postmark{name:Postmark}.customSm\:pc-hook_Transactional_email_with_one_delivery_log\.{hook:Transactional email with one delivery log.}.customSm\:pc-body_Call_the_Send_API_with_a_recipient_and_template\._Courier_renders_and_delivers_through_Mandrill\.{body:Call the Send API with a recipient and template. Courier renders and delivers through Mandrill.}.customSm\:pc-q_What_do_I_need_to_connect_Mandrill_to_Courier\?{q:What do I need to connect Mandrill to Courier?}.customSm\:pc-a_A_Mandrill_API_key_generated_from_the_Mandrill_Settings_page\,_plus_a_From_Address_and_From_Name_entered_on_the_Courier_Mandrill_integration_page\._Enter_them\,_click_Save\,_and_recipient_profiles_need_an_email_field_to_receive_messages\.{a:A Mandrill API key generated from the Mandrill Settings page,plus a From Address and From Name entered on the Courier Mandrill integration page. Enter them,click Save,and recipient profiles need an email field to receive messages.}.customSm\:pc-name_SparkPost{name:SparkPost}.customSm\:pc-hook_Route_high-volume_email_at_scale\.{hook:Route high-volume email at scale.}.customSm\:pc-body_Trigger_reminders\,_verification\,_and_lifecycle_sequences_with_delays_and_branching\,_all_delivered_through_Bird\.{body:Trigger reminders,verification,and lifecycle sequences with delays and branching,all delivered through Bird.}.customSm\:pc-body_Call_the_Send_API_with_a_recipient_and_template\._Courier_delivers_through_Bird\,_and_any_other_channels_you_add\.{body:Call the Send API with a recipient and template. Courier delivers through Bird,and any other channels you add.}.customSm\:pc-q_What_do_I_need_to_connect_Bird_to_Courier\?{q:What do I need to connect Bird to Courier?}.customSm\:pc-a_A_Bird_account_with_an_access_key_and_an_originating_phone_number\._In_Courier\,_open_the_Bird_integration_page\,_enter_your_access_key_and_originator_number\,_then_click_Save\.{a:A Bird account with an access key and an originating phone number. In Courier,open the Bird integration page,enter your access key and originator number,then click Save.}.customSm\:pc-hook_Add_push_to_your_Bird_SMS\.{hook:Add push to your Bird SMS.}.customSm\:pc-body_Trigger_reminders\,_verification\,_and_lifecycle_sequences_with_delays_and_branching\,_all_delivered_through_MessageMedia\.{body:Trigger reminders,verification,and lifecycle sequences with delays and branching,all delivered through MessageMedia.}.customSm\:pc-body_Call_the_Send_API_with_a_recipient_and_template\._Courier_delivers_through_MessageMedia\,_and_any_other_channels_you_add\.{body:Call the Send API with a recipient and template. Courier delivers through MessageMedia,and any other channels you add.}.customSm\:pc-q_What_do_I_need_to_connect_MessageMedia_to_Courier\?{q:What do I need to connect MessageMedia to Courier?}.customSm\:pc-hook_Add_push_to_your_MessageMedia_SMS\.{hook:Add push to your MessageMedia SMS.}.customSm\:pc-title_Add_Teams_to_any_journey{title:Add Teams to any journey}.customSm\:pc-body_Drop_Teams_into_an_existing_onboarding\,_reminder\,_or_digest_flow_with_delays_and_branching\,_no_new_code_in_your_app\.{body:Drop Teams into an existing onboarding,reminder,or digest flow with delays and branching,no new code in your app.}.customSm\:pc-items_Add_Teams_to_an_existing_notification_journey_without_wiring_a_new_integration{items:Add Teams to an existing notification journey without wiring a new integration}.customSm\:pc-body_Call_the_Send_API_with_a_recipient_whose_profile_includes_their_Teams_details\._Courier_delivers_through_Teams\,_plus_any_other_channels_you_add\.{body:Call the Send API with a recipient whose profile includes their Teams details. Courier delivers through Teams,plus any other channels you add.}.customSm\:pc-q_What_do_I_need_to_connect_Microsoft_Teams_to_Courier\?{q:What do I need to connect Microsoft Teams to Courier?}.customSm\:pc-hook_Add_push_next_to_Teams\.{hook:Add push next to Teams.}.customSm\:pc-body_Use_New_Relic_alert_conditions_to_notify_your_team_when_failures_or_undeliverable_rates_spike\,_using_the_same_alerting_you_already_trust\.{body:Use New Relic alert conditions to notify your team when failures or undeliverable rates spike,using the same alerting you already trust.}.customSm\:pc-title_Set_endpoints_and_import_the_dashboard{title:Set endpoints and import the dashboard}.customSm\:pc-body_Optionally_set_a_Metrics_and_Logs_endpoint_\(US_is_the_default\)\,_then_download_and_import_the_prebuilt_Courier_dashboard_from_the_docs_to_start_monitoring\.{body:Optionally set a Metrics and Logs endpoint (US is the default),then download and import the prebuilt Courier dashboard from the docs to start monitoring.}.customSm\:pc-q_How_do_I_connect_Courier_to_New_Relic\?{q:How do I connect Courier to New Relic?}.customSm\:pc-label_Courier_docs{label:Courier docs}.customSm\:pc-title_Share_your_details_with_Courier{title:Share your details with Courier}.customSm\:pc-body_Send_your_Okta_metadata_URL_and_email_domains_to_Courier_Support\._Courier_configures_your_workspace_and_gives_you_a_bookmark_link_your_team_uses_to_sign_in\.{body:Send your Okta metadata URL and email domains to Courier Support. Courier configures your workspace and gives you a bookmark link your team uses to sign in.}.customSm\:pc-q_How_do_I_set_up_Okta_SSO_with_Courier\?{q:How do I set up Okta SSO with Courier?}.customSm\:pc-a_Create_a_SAML_app_in_your_Okta_admin_console\,_then_contact_Courier_Support_for_the_connection_values_to_paste_into_the_SAML_settings\._Add_the_required_id_and_email_attribute_statements\,_then_assign_your_users_in_Okta\.{a:Create a SAML app in your Okta admin console,then contact Courier Support for the connection values to paste into the SAML settings. Add the required id and email attribute statements,then assign your users in Okta.}.customSm\:pc-body_Call_the_Send_API_with_a_recipient_and_template\._Courier_renders_and_delivers_through_OneSignal\.{body:Call the Send API with a recipient and template. Courier renders and delivers through OneSignal.}.customSm\:pc-q_What_do_I_need_to_connect_OneSignal_to_Courier\?{q:What do I need to connect OneSignal to Courier?}.customSm\:pc-tag_Routing{tag:Routing}.customSm\:pc-title_Route_by_rules_and_preferences{title:Route by rules and preferences}.customSm\:pc-body_Decide_when_a_notification_should_page_on-call_versus_reach_a_user_directly\,_using_Courier_routing_and_preferences\.{body:Decide when a notification should page on-call versus reach a user directly,using Courier routing and preferences.}.customSm\:pc-items_Escalate_to_PagerDuty_inside_a_journey_when_a_user_does_not_respond_in_time{items:Escalate to PagerDuty inside a journey when a user does not respond in time}.customSm\:pc-body_Call_the_Send_API_with_a_recipient_and_template\._Courier_triggers_a_PagerDuty_incident\,_and_any_other_channels_you_include\.{body:Call the Send API with a recipient and template. Courier triggers a PagerDuty incident,and any other channels you include.}.customSm\:pc-q_What_do_I_need_to_connect_PagerDuty_to_Courier\?{q:What do I need to connect PagerDuty to Courier?}.customSm\:pc-hook_Add_push_to_your_incident_alerts\.{hook:Add push to your incident alerts.}.customSm\:pc-body_Trigger_reminders\,_verification\,_and_lifecycle_sequences_with_delays_and_branching\,_all_delivered_through_Plivo\.{body:Trigger reminders,verification,and lifecycle sequences with delays and branching,all delivered through Plivo.}.customSm\:pc-body_Call_the_Send_API_with_a_recipient_and_template\._Courier_delivers_through_Plivo\,_and_any_other_channels_you_add\.{body:Call the Send API with a recipient and template. Courier delivers through Plivo,and any other channels you add.}.customSm\:pc-q_What_do_I_need_to_connect_Plivo_to_Courier\?{q:What do I need to connect Plivo to Courier?}.customSm\:pc-a_Your_Plivo_Auth_ID\,_Auth_Token\,_and_a_From_number\._Enter_them_on_the_Plivo_integration_page_in_the_Courier_dashboard_and_save\,_and_Courier_then_routes_SMS_through_your_Plivo_account\.{a:Your Plivo Auth ID,Auth Token,and a From number. Enter them on the Plivo integration page in the Courier dashboard and save,and Courier then routes SMS through your Plivo account.}.customSm\:pc-hook_Add_push_to_your_Plivo_SMS\.{hook:Add push to your Plivo SMS.}.customSm\:pc-body_Call_the_Send_API_with_a_recipient_and_template\._Courier_renders_and_delivers_through_Postmark\.{body:Call the Send API with a recipient and template. Courier renders and delivers through Postmark.}.customSm\:pc-q_What_do_I_need_to_connect_Postmark_to_Courier\?{q:What do I need to connect Postmark to Courier?}.customSm\:pc-body_Add_SMS_alongside_push_from_the_same_notification\,_so_you_can_reach_users_on_the_channel_that_fits_the_moment\.{body:Add SMS alongside push from the same notification,so you can reach users on the channel that fits the moment.}.customSm\:pc-items_Reach_users_with_SMS_alongside_push_for_complete_mobile_coverage_from_one_send{items:Reach users with SMS alongside push for complete mobile coverage from one send}.customSm\:pc-body_Call_the_Send_API_with_a_recipient_and_template\._Courier_delivers_push_through_Pusher_Beams\,_plus_any_other_channels_you_add\.{body:Call the Send API with a recipient and template. Courier delivers push through Pusher Beams,plus any other channels you add.}.customSm\:pc-q_What_do_I_need_to_connect_Pusher_Beams_to_Courier\?{q:What do I need to connect Pusher Beams to Courier?}.customSm\:pc-a_A_Beams_account_with_an_instance_already_configured\,_plus_that_instance\'s_instance_ID_and_secret_key\._Enter_both_on_Courier\'s_Pusher_Beams_integration_page_and_click_Save\.{a:A Beams account with an instance already configured,plus that instance"s instance ID and secret key. Enter both on Courier"s Pusher Beams integration page and click Save.}.customSm\:pc-name_Expo{name:Expo}.customSm\:pc-hook_Push_to_Expo_apps_without_managing_tokens\.{hook:Push to Expo apps without managing tokens.}.customSm\:pc-body_Call_the_Send_API_with_a_recipient_and_template\._Courier_renders_and_delivers_through_Resend\.{body:Call the Send API with a recipient and template. Courier renders and delivers through Resend.}.customSm\:pc-q_What_do_I_need_to_connect_Resend_to_Courier\?{q:What do I need to connect Resend to Courier?}.customSm\:pc-hook_Send_at_scale_from_an_established_provider\.{hook:Send at scale from an established provider.}.customSm\:pc-title_Sync_traits_and_profiles{title:Sync traits and profiles}.customSm\:pc-body_Identify_calls_keep_Courier_recipient_profiles_current_with_names\,_emails\,_and_traits\,_so_every_send_has_the_data_it_needs\.{body:Identify calls keep Courier recipient profiles current with names,emails,and traits,so every send has the data it needs.}.customSm\:pc-items_Real-time_transactional_notifications_fired_straight_from_an_event{items:Real-time transactional notifications fired straight from an event}.customSm\:pc-title_Trigger_from_events{title:Trigger from events}.customSm\:pc-body_Scope_event_properties_under_the_courier\.automation_object\,_then_map_them_to_notifications_and_journeys_in_Courier_Studio\.{body:Scope event properties under the courier.automation object,then map them to notifications and journeys in Courier Studio.}.customSm\:pc-q_How_do_I_connect_RudderStack_to_Courier\?{q:How do I connect RudderStack to Courier?}.customSm\:pc-hook_Deliver_the_SMS_your_events_trigger\.{hook:Deliver the SMS your events trigger.}.customSm\:pc-works-with_Profiles{works-with:Profiles}.customSm\:pc-body_Identify_calls_update_Courier_recipient_profiles_with_names\,_emails\,_and_traits\,_so_every_send_has_the_data_it_needs\.{body:Identify calls update Courier recipient profiles with names,emails,and traits,so every send has the data it needs.}.customSm\:pc-items_Real-time_transactional_notifications_fired_straight_from_a_Track_event{items:Real-time transactional notifications fired straight from a Track event}.customSm\:pc-q_How_do_I_connect_Segment_to_Courier\?{q:How do I connect Segment to Courier?}.customSm\:pc-a_Add_Courier_as_a_destination_in_Segment\'s_catalog\,_choose_your_data_source\,_then_paste_your_Courier_API_Key_\(from_the_Integrations_page\)_or_Auth_Token_\(from_Settings\)_into_the_destination\._Use_Segment\'s_Event_Tester_to_validate\.{a:Add Courier as a destination in Segment"s catalog, choose your data source, then paste your Courier API Key (from the Integrations page) or Auth Token (from Settings) into the destination. Use Segment"s Event Tester to validate.}.customSm\:pc-body_Call_the_Send_API_with_a_recipient_and_template\._Courier_renders_and_delivers_through_SendGrid\.{body:Call the Send API with a recipient and template. Courier renders and delivers through SendGrid.}.customSm\:pc-q_What_do_I_need_to_connect_SendGrid_to_Courier\?{q:What do I need to connect SendGrid to Courier?}.customSm\:pc-a_A_SendGrid_API_key_with_Mail_Send_permission_plus_a_From_address\._In_Courier_you_paste_the_key_and_set_that_from_address\,_and_each_recipient_profile_needs_an_email_field_for_delivery\.{a:A SendGrid API key with Mail Send permission plus a From address. In Courier you paste the key and set that from address,and each recipient profile needs an email field for delivery.}.customSm\:pc-body_Trigger_reminders\,_verification\,_and_lifecycle_sequences_with_delays_and_branching\,_all_delivered_through_Sinch\.{body:Trigger reminders,verification,and lifecycle sequences with delays and branching,all delivered through Sinch.}.customSm\:pc-body_Call_the_Send_API_with_a_recipient_and_template\._Courier_delivers_through_Sinch\,_and_any_other_channels_you_add\.{body:Call the Send API with a recipient and template. Courier delivers through Sinch,and any other channels you add.}.customSm\:pc-q_What_do_I_need_to_connect_Sinch_to_Courier\?{q:What do I need to connect Sinch to Courier?}.customSm\:pc-hook_Add_push_to_your_Sinch_SMS\.{hook:Add push to your Sinch SMS.}.customSm\:pc-title_Add_Slack_to_any_journey{title:Add Slack to any journey}.customSm\:pc-body_Drop_Slack_into_an_existing_onboarding\,_reminder\,_or_digest_flow_with_delays_and_branching\,_no_new_code_in_your_app\.{body:Drop Slack into an existing onboarding,reminder,or digest flow with delays and branching,no new code in your app.}.customSm\:pc-items_Add_Slack_to_an_existing_notification_journey_without_wiring_a_new_integration{items:Add Slack to an existing notification journey without wiring a new integration}.customSm\:pc-body_Call_the_Send_API_with_a_recipient_whose_profile_includes_their_Slack_details\._Courier_delivers_through_Slack\,_plus_any_other_channels_you_add\.{body:Call the Send API with a recipient whose profile includes their Slack details. Courier delivers through Slack,plus any other channels you add.}.customSm\:pc-q_What_do_I_need_to_connect_Slack_to_Courier\?{q:What do I need to connect Slack to Courier?}.customSm\:pc-hook_Add_push_next_to_Slack\.{hook:Add push next to Slack.}.customSm\:pc-body_Trigger_reminders\,_verification\,_and_lifecycle_sequences_with_delays_and_branching\,_all_delivered_through_SMSCentral\.{body:Trigger reminders,verification,and lifecycle sequences with delays and branching,all delivered through SMSCentral.}.customSm\:pc-body_Call_the_Send_API_with_a_recipient_and_template\._Courier_delivers_through_SMSCentral\,_and_any_other_channels_you_add\.{body:Call the Send API with a recipient and template. Courier delivers through SMSCentral,and any other channels you add.}.customSm\:pc-q_What_do_I_need_to_connect_SMSCentral_to_Courier\?{q:What do I need to connect SMSCentral to Courier?}.customSm\:pc-a_Your_SMSCentral_username_and_password\._On_the_SMSCentral_integration_page_in_Courier\,_enter_both_credentials_and_click_Save\._Courier_authenticates_with_those_alone\,_so_there_is_no_separate_API_key_or_sender_registration_step\.{a:Your SMSCentral username and password. On the SMSCentral integration page in Courier,enter both credentials and click Save. Courier authenticates with those alone,so there is no separate API key or sender registration step.}.customSm\:pc-name_Vonage{name:Vonage}.customSm\:pc-hook_Send_SMS_through_Vonage\.{hook:Send SMS through Vonage.}.customSm\:pc-body_Call_the_Send_API_with_a_recipient_and_template\._Courier_renders_and_delivers_through_your_SMTP_server\.{body:Call the Send API with a recipient and template. Courier renders and delivers through your SMTP server.}.customSm\:pc-q_What_do_I_need_to_connect_SMTP_to_Courier\?{q:What do I need to connect SMTP to Courier?}.customSm\:pc-body_Call_the_Send_API_with_a_recipient_and_template\._Courier_renders_and_delivers_through_SparkPost\.{body:Call the Send API with a recipient and template. Courier renders and delivers through SparkPost.}.customSm\:pc-q_What_do_I_need_to_connect_SparkPost_to_Courier\?{q:What do I need to connect SparkPost to Courier?}.customSm\:pc-body_Onboarding\,_reminders\,_and_lifecycle_sequences_with_delays_and_branching\,_all_delivered_through_StreamChat\.{body:Onboarding,reminders,and lifecycle sequences with delays and branching,all delivered through StreamChat.}.customSm\:pc-items_Keep_every_channel_on_one_template_and_one_API_as_you_add_StreamChat{items:Keep every channel on one template and one API as you add StreamChat}.customSm\:pc-body_Call_the_Send_API_with_a_recipient_whose_profile_includes_a_channelType_and_channelId\._Courier_delivers_into_your_StreamChat_channel\,_plus_any_other_channels_you_add\.{body:Call the Send API with a recipient whose profile includes a channelType and channelId. Courier delivers into your StreamChat channel,plus any other channels you add.}.customSm\:pc-q_What_do_I_need_to_connect_Stream_Chat_to_Courier\?{q:What do I need to connect Stream Chat to Courier?}.customSm\:pc-hook_Add_push_to_your_stack\.{hook:Add push to your stack.}.customSm\:pc-body_Trigger_reminders\,_verification\,_and_lifecycle_sequences_with_delays_and_branching\,_all_delivered_through_Telnyx\.{body:Trigger reminders,verification,and lifecycle sequences with delays and branching,all delivered through Telnyx.}.customSm\:pc-body_Call_the_Send_API_with_a_recipient_and_template\._Courier_delivers_through_Telnyx\,_and_any_other_channels_you_add\.{body:Call the Send API with a recipient and template. Courier delivers through Telnyx,and any other channels you add.}.customSm\:pc-q_What_do_I_need_to_connect_Telnyx_to_Courier\?{q:What do I need to connect Telnyx to Courier?}.customSm\:pc-name_Plivo{name:Plivo}.customSm\:pc-hook_Send_SMS_through_Plivo\.{hook:Send SMS through Plivo.}.customSm\:pc-body_Trigger_reminders\,_verification\,_and_lifecycle_sequences_with_delays_and_branching\,_all_delivered_through_Twilio\.{body:Trigger reminders,verification,and lifecycle sequences with delays and branching,all delivered through Twilio.}.customSm\:pc-body_Call_the_Send_API_with_a_recipient_and_template\._Courier_delivers_through_Twilio\,_and_any_other_channels_you_add\.{body:Call the Send API with a recipient and template. Courier delivers through Twilio,and any other channels you add.}.customSm\:pc-q_What_do_I_need_to_connect_Twilio_to_Courier\?{q:What do I need to connect Twilio to Courier?}.customSm\:pc-hook_Add_push_to_your_Twilio_SMS\.{hook:Add push to your Twilio SMS.}.customSm\:pc-body_Trigger_reminders\,_verification\,_and_lifecycle_sequences_with_delays_and_branching\,_all_delivered_through_Vonage\.{body:Trigger reminders,verification,and lifecycle sequences with delays and branching,all delivered through Vonage.}.customSm\:pc-body_Call_the_Send_API_with_a_recipient_and_template\._Courier_delivers_through_Vonage\,_and_any_other_channels_you_add\.{body:Call the Send API with a recipient and template. Courier delivers through Vonage,and any other channels you add.}.customSm\:pc-q_What_do_I_need_to_connect_Vonage_to_Courier\?{q:What do I need to connect Vonage to Courier?}.customSm\:pc-a_Your_Vonage_API_key\,_API_secret\,_and_from_number\._Enter_all_three_on_the_Vonage_integration_page_in_Courier_and_click_Save\._The_credentials_come_from_your_Vonage_account_dashboard\.{a:Your Vonage API key,API secret,and from number. Enter all three on the Vonage integration page in Courier and click Save. The credentials come from your Vonage account dashboard.}.customSm\:pc-hook_Add_push_to_your_Vonage_SMS\.{hook:Add push to your Vonage SMS.}.customSm\:pc-tag_Auth{tag:Auth}.customSm\:pc-title_Basic_or_bearer_authentication{title:Basic or bearer authentication}.customSm\:pc-body_Set_authentication\.mode_to_basic_or_bearer_and_provide_the_credentials\,_so_your_endpoint_stays_protected\.{body:Set authentication.mode to basic or bearer and provide the credentials,so your endpoint stays protected.}.customSm\:pc-items_Set_the_destination_URL_per_recipient_with_a_dynamic_webhook_profile_field{items:Set the destination URL per recipient with a dynamic webhook profile field}.customSm\:pc-body_Call_the_Send_API_with_a_recipient_and_any_custom_data\._Courier_delivers_a_JSON_request_with_the_template_ID\,_recipient_identifiers\,_and_your_data_to_the_endpoint\.{body:Call the Send API with a recipient and any custom data. Courier delivers a JSON request with the template ID,recipient identifiers,and your data to the endpoint.}.customSm\:pc-q_How_do_I_set_up_Webhook_in_Courier\?{q:How do I set up Webhook in Courier?}.customSm\:pc-hook_Post_to_a_Slack_channel\.{hook:Post to a Slack channel.}.customSm\:pc-works-with_Routing{works-with:Routing}.customSm\:pc-body_Trigger_reminders\,_verification\,_and_lifecycle_sequences_with_delays_and_branching\,_all_delivered_through_WhatsApp\.{body:Trigger reminders,verification,and lifecycle sequences with delays and branching,all delivered through WhatsApp.}.customSm\:pc-body_Call_the_Send_API_with_a_recipient_and_template\._Courier_delivers_through_WhatsApp\,_and_any_other_channels_you_add\.{body:Call the Send API with a recipient and template. Courier delivers through WhatsApp,and any other channels you add.}.customSm\:pc-q_What_do_I_need_to_connect_WhatsApp_to_Courier\?{q:What do I need to connect WhatsApp to Courier?}.customSm\:pc-hook_Add_push_to_your_WhatsApp_messages\.{hook:Add push to your WhatsApp messages.}}@media screen and (min-width:48rem){.md\:pc-p_0{padding:var(--pc-spacing-0)}.md\:pc-p_22px_24px{padding:22px 24px}.md\:pc-p_22px{padding:22px}.md\:pc-p_22px_26px{padding:22px 26px}.md\:pc-p_18px_20px{padding:18px 20px}.md\:pc-px_6{padding-inline:var(--pc-spacing-6)}.md\:pc-px_44px{padding-inline:44px}.md\:pc-flex_1{flex:1 1}.md\:pc-px_3{padding-inline:var(--pc-spacing-3)}.md\:pc-gap_0{gap:var(--pc-spacing-0)}.md\:pc-bdr_0_0_40px_40px{border-radius:0 0 40px 40px}.md\:pc-px_24px{padding-inline:24px}.md\:pc-px_22px{padding-inline:22px}.md\:pc-py_16px{padding-block:16px}.md\:pc-bdr_28px{border-radius:28px}.md\:pc-px_48px{padding-inline:48px}.md\:pc-py_60px{padding-block:60px}.md\:pc-mx_24px{margin-inline:24px}.md\:pc-columns_4{column-count:4}.md\:pc-columns_2{column-count:2}.md\:pc-px_34px{padding-inline:34px}.md\:pc-py_48px{padding-block:48px}.md\:pc-py_44px{padding-block:44px}.md\:pc-columns_3{column-count:3}.md\:pc-columns_1{column-count:1}.md\:pc-rg_16px{row-gap:16px}.md\:pc-d_none{display:none}.md\:pc-d_block{display:block}.md\:pc-tag_Design_Studio{tag:Design Studio}.md\:pc-title_Write_once\,_edit_without_code{title:Write once,edit without code}.md\:pc-items_Let_non-technical_teammates_edit_SMS_copy_and_add_languages_without_a_deploy{items:Let non-technical teammates edit SMS copy and add languages without a deploy}.md\:pc-a_Africa\'s_Talking_supports_an_optional_short_code_or_alphanumeric_sender_ID\._Register_it_with_your_Africa\'s_Talking_application_first\,_then_set_it_through_the_from_field_in_a_Courier_provider_override_on_the_message\.{a:Africa"s Talking supports an optional short code or alphanumeric sender ID. Register it with your Africa"s Talking application first,then set it through the from field in a Courier provider override on the message.}.md\:pc-works-with_Templates{works-with:Templates}.md\:pc-tag_Courier_Inbox{tag:Courier Inbox}.md\:pc-title_Add_an_in-app_inbox{title:Add an in-app inbox}.md\:pc-items_Give_users_an_in-app_inbox_so_they_see_the_same_messages_inside_your_product{items:Give users an in-app inbox so they see the same messages inside your product}.md\:pc-q_How_does_Courier_know_which_email_address_to_send_to\?{q:How does Courier know which email address to send to?}.md\:pc-a_Each_recipient_needs_an_email_address_on_their_Courier_profile_under_the_email_field\._Courier_reads_that_value\,_or_an_inline_recipient_email\,_and_passes_it_to_Amply_as_the_destination_for_the_send\.{a:Each recipient needs an email address on their Courier profile under the email field. Courier reads that value,or an inline recipient email,and passes it to Amply as the destination for the send.}.md\:pc-works-with_Inbox{works-with:Inbox}.md\:pc-title_Design_push_without_code{title:Design push without code}.md\:pc-items_Automate_onboarding_and_re-engagement_journeys_across_push\,_in-app\,_and_SMS{items:Automate onboarding and re-engagement journeys across push,in-app,and SMS}.md\:pc-q_How_does_Courier_handle_APNs_device_tokens\?{q:How does Courier handle APNs device tokens?}.md\:pc-a_You_can_set_a_device_token_on_the_recipient_profile_as_apn\.token_or_apn\.tokens\,_push_it_through_the_Device_Tokens_API\,_or_let_a_Courier_Mobile_SDK_sync_tokens_automatically_so_you_send_to_a_user_id_instead_of_a_raw_token\.{a:You can set a device token on the recipient profile as apn.token or apn.tokens,push it through the Device Tokens API,or let a Courier Mobile SDK sync tokens automatically so you send to a user_id instead of a raw token.}.md\:pc-works-with_Tokens{works-with:Tokens}.md\:pc-q_What_IAM_permissions_does_Courier_need_for_SES\?{q:What IAM permissions does Courier need for SES?}.md\:pc-q_How_does_Courier_target_a_device_on_AWS_SNS\?{q:How does Courier target a device on AWS SNS?}.md\:pc-q_What_credentials_do_I_enter_for_the_Azure_SMS_provider\?{q:What credentials do I enter for the azure SMS provider?}.md\:pc-tag_Agent_skills{tag:Agent skills}.md\:pc-title_Ship_with_Courier_agent_skills{title:Ship with Courier agent skills}.md\:pc-body_Courier_ships_agent_skill_packs_that_teach_AI_coding_assistants_Courier_best_practices\,_so_your_agent_builds_sends_the_right_way\.{body:Courier ships agent skill packs that teach AI coding assistants Courier best practices,so your agent builds sends the right way.}.md\:pc-n_→{n:→}.md\:pc-title_Connect_your_ChatGPT_agent{title:Connect your ChatGPT agent}.md\:pc-q_What_can_my_agent_do_through_the_Courier_MCP_server\?{q:What can my agent do through the Courier MCP server?}.md\:pc-a_The_server_exposes_more_than_140_tools_covering_the_Courier_API\._An_agent_can_send_messages\,_manage_recipient_profiles\,_work_with_notification_templates_and_lists\,_and_run_automations_and_journeys\,_all_scoped_by_your_API_key\.{a:The server exposes more than 140 tools covering the Courier API. An agent can send messages,manage recipient profiles,work with notification templates and lists,and run automations and journeys,all scoped by your API key.}.md\:pc-works-with_Journeys{works-with:Journeys}.md\:pc-title_Connect_your_Claude_agent{title:Connect your Claude agent}.md\:pc-a_It_exposes_more_than_140_tools_covering_the_full_Courier_API\._Your_agent_can_send_messages\,_manage_recipient_profiles\,_debug_deliveries\,_configure_lists\,_and_work_with_Journeys_and_Automations\,_all_from_natural-language_instructions\.{a:It exposes more than 140 tools covering the full Courier API. Your agent can send messages,manage recipient profiles,debug deliveries,configure lists,and work with Journeys and Automations,all from natural-language instructions.}.md\:pc-tag_Overrides{tag:Overrides}.md\:pc-title_Override_the_request_per_message{title:Override the request per message}.md\:pc-body_Use_the_custom_provider_object_in_the_API_to_override_the_body\,_headers\,_method\,_and_url_for_a_specific_send\.{body:Use the custom provider object in the API to override the body,headers,method,and url for a specific send.}.md\:pc-items_Send_through_your_custom_provider_alongside_every_other_channel_from_one_API{items:Send through your custom provider alongside every other channel from one API}.md\:pc-q_What_does_Courier_send_to_my_webhook_endpoint\?{q:What does Courier send to my webhook endpoint?}.md\:pc-works-with_Routing{works-with:Routing}.md\:pc-tag_Per-channel{tag:Per-channel}.md\:pc-title_Watch_per-channel_health{title:Watch per-channel health}.md\:pc-body_Email\,_SMS\,_push\,_and_direct_message_each_report_delivered\,_sent\,_error\,_and_undeliverable_status\,_so_you_can_track_health_channel_by_channel\.{body:Email,SMS,push,and direct message each report delivered,sent,error,and undeliverable status,so you can track health channel by channel.}.md\:pc-items_Watch_per-channel_health_over_time_across_email\,_SMS\,_push\,_and_chat{items:Watch per-channel health over time across email,SMS,push,and chat}.md\:pc-q_Will_Datadog_show_my_past_Courier_notifications\?{q:Will Datadog show my past Courier notifications?}.md\:pc-works-with_Alerts{works-with:Alerts}.md\:pc-q_How_do_I_send_push_to_iOS_devices_through_FCM\?{q:How do I send push to iOS devices through FCM?}.md\:pc-a_Create_an_APNs_authentication_key_\(a_\.p8_file\)_in_your_Apple_Developer_account_and_upload_it_to_your_Firebase_project_under_Apple_apps\._Courier_then_routes_iOS_push_through_FCM\,_with_iOS_values_set_via_providers\.firebase-fcm\.override\.body\.apns\.{a:Create an APNs authentication key (a .p8 file) in your Apple Developer account and upload it to your Firebase project under Apple apps. Courier then routes iOS push through FCM,with iOS values set via providers.firebase-fcm.override.body.apns.}.md\:pc-q_What_are_the_Gmail_sending_limits_in_Courier\?{q:What are the Gmail sending limits in Courier?}.md\:pc-tag_Journeys{tag:Journeys}.md\:pc-title_Kick_off_multi-step_journeys{title:Kick off multi-step journeys}.md\:pc-body_Use_synced_data_to_start_onboarding\,_drip\,_and_lifecycle_sequences_in_Courier_with_delays_and_branching\.{body:Use synced data to start onboarding,drip,and lifecycle sequences in Courier with delays and branching.}.md\:pc-items_Recipient_profiles_kept_current_from_the_warehouse\,_so_every_send_has_accurate_traits{items:Recipient profiles kept current from the warehouse,so every send has accurate traits}.md\:pc-q_What_can_Hightouch_sync_into_Courier\?{q:What can Hightouch sync into Courier?}.md\:pc-fs_19px{font-size:19px}.md\:pc-fs_30px{font-size:30px}.md\:pc-q_Why_does_my_MailerSend_email_fail_with_a_domain_mismatch\?{q:Why does my MailerSend email fail with a domain mismatch?}.md\:pc-q_Which_Mailgun_region_does_Courier_send_through\?{q:Which Mailgun region does Courier send through?}.md\:pc-q_Where_do_I_get_my_Mailjet_API_keys_and_set_them_up\?{q:Where do I get my Mailjet API keys and set them up?}.md\:pc-a_From_Mailjet\'s_API_Key_Management_page\._Copy_your_Public_and_Private_keys_there\,_then_paste_them_into_Courier\'s_Mailjet_integration_settings_and_click_Save\._Courier_then_begins_routing_email_through_Mailjet\.{a:From Mailjet"s API Key Management page. Copy your Public and Private keys there, then paste them into Courier"s Mailjet integration settings and click Save. Courier then begins routing email through Mailjet.}.md\:pc-q_Can_I_import_my_existing_Mandrill_templates_into_Courier\?{q:Can I import my existing Mandrill templates into Courier?}.md\:pc-q_What_phone_number_format_does_Courier_need_for_Bird_SMS\?{q:What phone number format does Courier need for Bird SMS?}.md\:pc-q_Where_do_I_get_my_MessageMedia_API_key_and_secret\?{q:Where do I get my MessageMedia API key and secret?}.md\:pc-a_In_the_MessageMedia_console_at_hub\.messagemedia\.com\/api-settings\,_create_a_new_API_key_to_generate_your_apiKey_and_apiSecret\._Copy_the_secret_immediately\,_since_MessageMedia_displays_it_once_and_it_cannot_be_retrieved_afterward\.{a:In the MessageMedia console at hub.messagemedia.com/api-settings,create a new API key to generate your apiKey and apiSecret. Copy the secret immediately,since MessageMedia displays it once and it cannot be retrieved afterward.}.md\:pc-title_One_template\,_every_channel{title:One template,every channel}.md\:pc-items_Let_a_user_act_on_a_notification_from_Teams\,_then_continue_the_flow_in_your_product{items:Let a user act on a notification from Teams,then continue the flow in your product}.md\:pc-q_How_does_Courier_authenticate_with_Microsoft_Teams\?{q:How does Courier authenticate with Microsoft Teams?}.md\:pc-a_Courier_authenticates_using_your_bot\'s_Azure_App_Registration\._You_supply_the_Application_\(client\)_ID_and_Client_Secret_generated_in_Azure\,_taken_from_the_bot\'s_registration_rather_than_the_Teams_Developer_Portal_app\.{a:Courier authenticates using your bot"s Azure App Registration. You supply the Application (client) ID and Client Secret generated in Azure, taken from the bot"s registration rather than the Teams Developer Portal app.}.md\:pc-body_Track_delivery_health_across_email\,_SMS\,_push\,_and_chat\,_so_a_problem_on_one_channel_does_not_hide_behind_a_healthy_total\.{body:Track delivery health across email,SMS,push,and chat,so a problem on one channel does not hide behind a healthy total.}.md\:pc-q_Which_Courier_plan_do_I_need_for_the_New_Relic_integration\?{q:Which Courier plan do I need for the New Relic integration?}.md\:pc-q_What_protocol_does_Courier_use_for_Okta_SSO\?{q:What protocol does Courier use for Okta SSO?}.md\:pc-a_SAML_2\.0_for_authentication_and_SCIM_v2_for_provisioning\._SAML_handles_the_login_handshake\,_while_SCIM_keeps_user_accounts_in_sync_between_Okta_and_your_Courier_workspace\.{a:SAML 2 for authentication and SCIM v2 for provisioning. SAML handles the login handshake,while SCIM keeps user accounts in sync between Okta and your Courier workspace.}.md\:pc-q_How_does_Courier_know_which_device_to_send_a_OneSignal_push_to\?{q:How does Courier know which device to send a OneSignal push to?}.md\:pc-tag_Severity{tag:Severity}.md\:pc-title_Set_severity_and_source{title:Set severity and source}.md\:pc-body_Control_the_event_action\,_severity_level\,_and_source_sent_to_PagerDuty\,_and_override_the_routing_key_per_recipient_when_you_need_to\.{body:Control the event action,severity level,and source sent to PagerDuty,and override the routing key per recipient when you need to.}.md\:pc-items_Set_severity_and_source_per_message_so_incidents_arrive_with_the_right_context{items:Set severity and source per message so incidents arrive with the right context}.md\:pc-q_What_triggers_a_PagerDuty_incident_from_Courier\?{q:What triggers a PagerDuty incident from Courier?}.md\:pc-a_A_notification_routed_to_the_PagerDuty_channel_fires_a_trigger_event_action_through_the_Events_API_v2\,_which_opens_an_incident_on_the_connected_service\._Any_Courier_notification_you_route_to_that_channel_becomes_a_PagerDuty_incident\.{a:A notification routed to the PagerDuty channel fires a trigger event action through the Events API v2,which opens an incident on the connected service. Any Courier notification you route to that channel becomes a PagerDuty incident.}.md\:pc-works-with_Multi-channel{works-with:Multi-channel}.md\:pc-q_How_should_I_format_phone_numbers_for_Plivo_in_Courier\?{q:How should I format phone numbers for Plivo in Courier?}.md\:pc-a_Use_E\.164_with_country_code_and_no_spaces_or_dashes\,_stored_as_the_phone_number_field_on_the_Courier_recipient_profile\,_for_example_\+12025550156\._Courier_passes_that_value_to_Plivo_as_the_destination_number\.{a:Use E.164 with country code and no spaces or dashes,stored as the phone_number field on the Courier recipient profile,for example 12025550156 Courier passes that value to Plivo as the destination number.}.md\:pc-q_Can_I_set_the_Postmark_message_stream_or_add_attachments\?{q:Can I set the Postmark message stream or add attachments?}.md\:pc-a_Yes\,_through_Courier_provider_overrides\._Set_the_MessageStream_parameter_to_target_a_specific_stream\,_or_pass_an_Attachments_array_with_Name\,_Content\,_and_ContentType_fields_to_include_files_per_message\.{a:Yes,through Courier provider overrides. Set the MessageStream parameter to target a specific stream,or pass an Attachments array with Name,Content,and ContentType fields to include files per message.}.md\:pc-q_How_do_I_target_recipients_on_Pusher_Beams_through_Courier\?{q:How do I target recipients on Pusher Beams through Courier?}.md\:pc-q_How_do_I_set_up_the_Resend_integration_in_Courier\?{q:How do I set up the Resend integration in Courier?}.md\:pc-a_Create_an_API_key_in_Resend\'s_API_Keys_section\,_paste_it_into_Courier\'s_Resend_integration_page\,_add_your_From_Address\,_then_click_Add_Integration_and_Save\._After_that\,_Courier_can_send_email_through_Resend\.{a:Create an API key in Resend"s API Keys section, paste it into Courier"s Resend integration page,add your From Address,then click Add Integration and Save. After that,Courier can send email through Resend.}.md\:pc-title_Design_messages_without_code{title:Design messages without code}.md\:pc-items_Audience_and_trait-based_sends_powered_by_the_profiles_RudderStack_keeps_in_sync{items:Audience and trait-based sends powered by the profiles RudderStack keeps in sync}.md\:pc-q_How_does_a_RudderStack_Identify_call_update_a_Courier_profile\?{q:How does a RudderStack Identify call update a Courier profile?}.md\:pc-a_Identify_calls_create_or_update_a_Courier_recipient_profile\._The_userId_becomes_the_profile_identifier_and_traits_map_to_profile_attributes\,_so_a_later_notification_can_address_that_user_by_their_stored_contact_details\.{a:Identify calls create or update a Courier recipient profile. The userId becomes the profile identifier and traits map to profile attributes,so a later notification can address that user by their stored contact details.}.md\:pc-items_Audience_and_trait-based_sends_powered_by_the_profiles_Segment_keeps_in_sync{items:Audience and trait-based sends powered by the profiles Segment keeps in sync}.md\:pc-q_Which_Segment_call_types_does_Courier_support\?{q:Which Segment call types does Courier support?}.md\:pc-a_Courier_supports_identify\,_track\,_and_group_calls\._Page_and_screen_calls_are_not_supported\._Track_calls_carry_the_actions_you_notify_on\,_while_identify_and_group_calls_keep_recipient_and_account_data_current\.{a:Courier supports identify,track,and group calls. Page and screen calls are not supported. Track calls carry the actions you notify on,while identify and group calls keep recipient and account data current.}.md\:pc-q_How_do_I_verify_the_From_address_for_SendGrid_in_Courier\?{q:How do I verify the From address for SendGrid in Courier?}.md\:pc-a_The_from_address_must_be_a_verified_Sender_Identity_in_SendGrid\,_set_up_through_Domain_Authentication_or_Single_Sender_Verification\._SendGrid_rejects_sends_from_unverified_senders\,_so_verify_before_your_first_Courier_send\.{a:The from address must be a verified Sender Identity in SendGrid,set up through Domain Authentication or Single Sender Verification. SendGrid rejects sends from unverified senders,so verify before your first Courier send.}.md\:pc-q_Can_I_override_Sinch_credentials_per_message_in_Courier\?{q:Can I override Sinch credentials per message in Courier?}.md\:pc-a_Yes\._Beyond_the_account-level_setup\,_you_can_override_apiToken\,_servicePlanId\,_url\,_and_from_per_message_via_message\.providers\.sinch\.override\,_which_is_useful_for_routing_through_a_different_Sinch_Service_Plan_or_sender\.{a:Yes. Beyond the account-level setup,you can override apiToken,servicePlanId,url,and from per message via message.providers.sinch.override,which is useful for routing through a different Sinch Service Plan or sender.}.md\:pc-items_Let_a_user_act_on_a_notification_from_Slack\,_then_continue_the_flow_in_your_product{items:Let a user act on a notification from Slack,then continue the flow in your product}.md\:pc-q_How_does_Courier_know_which_Slack_user_to_notify\?{q:How does Courier know which Slack user to notify?}.md\:pc-q_How_do_I_set_the_sender_ID_on_SMSCentral_messages_from_Courier\?{q:How do I set the sender ID on SMSCentral messages from Courier?}.md\:pc-a_Use_the_originator_field\,_which_SMSCentral_shows_as_the_sender\._Courier_lets_you_override_message\,_originator\,_and_reference_per_send\,_so_you_can_pass_a_sender_name_or_number_plus_a_tracking_reference_with_each_notification\.{a:Use the originator field,which SMSCentral shows as the sender. Courier lets you override message,originator,and reference per send,so you can pass a sender name or number plus a tracking reference with each notification.}.md\:pc-q_What_TLS_settings_does_Courier_support_for_SMTP\?{q:What TLS settings does Courier support for SMTP?}.md\:pc-q_What_permissions_does_the_SparkPost_API_key_need\?{q:What permissions does the SparkPost API key need?}.md\:pc-tag_Routing{tag:Routing}.md\:pc-title_Route_by_user_preference{title:Route by user preference}.md\:pc-body_Send_to_StreamChat_when_a_user_prefers_it\,_and_route_to_another_channel_when_they_do_not\,_all_from_one_send\.{body:Send to StreamChat when a user prefers it,and route to another channel when they do not,all from one send.}.md\:pc-items_Automate_reminders_and_lifecycle_messaging_that_reach_users_through_StreamChat{items:Automate reminders and lifecycle messaging that reach users through StreamChat}.md\:pc-q_How_does_Courier_know_which_Stream_Chat_channel_to_send_to\?{q:How does Courier know which Stream Chat channel to send to?}.md\:pc-q_What_phone_number_format_does_Telnyx_need_for_the_recipient\?{q:What phone number format does Telnyx need for the recipient?}.md\:pc-a_Set_it_on_the_recipient_profile_as_phone_number_in_E\.164_format\,_for_example_\+12025550156\._Courier_passes_that_value_to_Telnyx_as_the_SMS_destination_when_it_sends_the_message\.{a:Set it on the recipient profile as phone_number in E.164 format,for example 12025550156 Courier passes that value to Telnyx as the SMS destination when it sends the message.}.md\:pc-q_How_do_I_format_recipient_phone_numbers_for_Twilio_in_Courier\?{q:How do I format recipient phone numbers for Twilio in Courier?}.md\:pc-q_How_should_I_format_recipient_phone_numbers_for_Vonage\?{q:How should I format recipient phone numbers for Vonage?}.md\:pc-tag_Multi-channel{tag:Multi-channel}.md\:pc-title_One_channel_among_many{title:One channel among many}.md\:pc-body_Include_the_webhook_in_a_send_that_also_reaches_email\,_SMS\,_push\,_and_inbox\._No_separate_integration_to_build_in_your_code\.{body:Include the webhook in a send that also reaches email,SMS,push,and inbox. No separate integration to build in your code.}.md\:pc-items_Call_your_own_systems_as_a_step_inside_a_multi-step_journey{items:Call your own systems as a step inside a multi-step journey}.md\:pc-q_What_authentication_does_the_Webhook_channel_support\?{q:What authentication does the Webhook channel support?}.md\:pc-a_It_supports_basic_and_bearer_authentication\._Set_authentication\.mode_to_basic\,_with_a_username_and_password\,_or_bearer\,_with_a_token\._Authentication_defaults_to_none_if_you_provide_no_credentials\.{a:It supports basic and bearer authentication. Set authentication.mode to basic,with a username and password,or bearer,with a token. Authentication defaults to none if you provide no credentials.}.md\:pc-items_Let_non-technical_teammates_edit_WhatsApp_copy_and_add_languages_without_a_deploy{items:Let non-technical teammates edit WhatsApp copy and add languages without a deploy}.md\:pc-q_How_does_Courier_know_which_WhatsApp_number_to_message\?{q:How does Courier know which WhatsApp number to message?}.md\:pc-flex-d_row{flex-direction:row}.md\:pc-grid-tc_repeat\(6\,_1fr\){grid-template-columns:repeat(6,1fr)}.md\:pc-fs_50px{font-size:50px}.md\:pc-lh_64px{line-height:64px}.md\:pc-fs_48px{font-size:48px}.md\:pc-lh_68px{line-height:68px}.md\:pc-lh_50px{line-height:50px}.md\:pc-fs_28px{font-size:28px}.md\:pc-fs_16px{font-size:16px}.md\:pc-cg_10{column-gap:var(--pc-spacing-10)}.md\:pc-rg_62px{row-gap:62px}.md\:pc-fs_40px{font-size:40px}.md\:pc-grid-tc_repeat\(2\,_minmax\(0\,_1fr\)\){grid-template-columns:repeat(2,minmax(0,1fr))}.md\:pc-ta_left{text-align:left}.md\:pc-lh_2{line-height:2}.md\:pc-ai_center{align-items:center}.md\:pc-grid-tc_repeat\(3\,_minmax\(0\,_1fr\)\){grid-template-columns:repeat(3,minmax(0,1fr))}.md\:pc-rg_0{row-gap:var(--pc-spacing-0)}.md\:pc-fs_18px{font-size:18px}.md\:pc-grid-tc_repeat\(2\,_1fr\){grid-template-columns:repeat(2,1fr)}.md\:pc-fs_44px{font-size:44px}.md\:pc-as_flex-end{align-self:flex-end}.md\:pc-fs_46px{font-size:46px}.md\:pc-fs_38px{font-size:38px}.md\:pc-lh_1\.05{line-height:1.05}.md\:pc-fs_42px{font-size:42px}.md\:pc-fs_26px{font-size:26px}.md\:pc-fs_20px{font-size:20px}.md\:pc-grid-tc_1fr_1fr{grid-template-columns:1fr 1fr}.md\:pc-grid-tc_repeat\(3\,1fr\){grid-template-columns:repeat(3,1fr)}.md\:pc-d_flex{display:flex}.md\:pc-fs_31px{font-size:31px}.md\:pc-fs_32px{font-size:32px}.md\:pc-d_inline-flex{display:inline-flex}.md\:pc-w_438px{width:438px}.md\:pc-pt_88px{padding-top:88px}.md\:pc-pt_44px{padding-top:44px}.md\:pc-mt_12px{margin-top:12px}.md\:pc-pt_52px{padding-top:52px}.md\:pc-max-w_unset{max-width:unset}.md\:pc-mb_7{margin-bottom:var(--pc-spacing-7)}.md\:pc-h_412px{height:412px}.md\:pc-mb_10{margin-bottom:var(--pc-spacing-10)}.md\:pc-mb_40px{margin-bottom:40px}.md\:pc-mb_0{margin-bottom:var(--pc-spacing-0)}.md\:pc-w_340px{width:340px}.md\:pc-w_auto{width:auto}.md\:pc-mb_5{margin-bottom:var(--pc-spacing-5)}.md\:pc-mt_62px{margin-top:62px}.md\:pc-w_200px{width:200px}.md\:pc-mb_2{margin-bottom:var(--pc-spacing-2)}.md\:pc-pt_92px{padding-top:92px}.md\:pc-pb_56px{padding-bottom:56px}.md\:pc-mb_30px{margin-bottom:30px}.md\:pc-pt_28px{padding-top:28px}.md\:pc-pt_16px{padding-top:16px}.md\:pc-max-w_420px{max-width:420px}.md\:pc-pb_80px{padding-bottom:80px}.md\:pc-mb_34px{margin-bottom:34px}.md\:pc-pt_56px{padding-top:56px}.md\:pc-pb_12px{padding-bottom:12px}.md\:pc-pt_32px{padding-top:32px}.md\:pc-mt_48px{margin-top:48px}.md\:pc-pt_40px{padding-top:40px}.md\:pc-mt_32px{margin-top:32px}.md\:pc-h_80px{height:80px}.md\:pc-mt_26px{margin-top:26px}.md\:pc-pt_96px{padding-top:96px}.md\:pc-pb_52px{padding-bottom:52px}.md\:pc-mb_26px{margin-bottom:26px}.md\:pc-pt_48px{padding-top:48px}.md\:pc-mt_0{margin-top:var(--pc-spacing-0)}}@media screen and (min-width:56.25rem){.customMd\:pc-d_block{display:block}.customMd\:pc-d_none{display:none}.customMd\:pc-tag_Broadcasts{tag:Broadcasts}.customMd\:pc-title_Send_to_lists_and_audiences{title:Send to lists and audiences}.customMd\:pc-works-with_Journeys{works-with:Journeys}.customMd\:pc-tag_AI_Translation{tag:AI Translation}.customMd\:pc-title_Localize_a_template_in_seconds{title:Localize a template in seconds}.customMd\:pc-body_Pick_a_language_and_let_Courier_translate_the_whole_template_with_AI\,_then_tweak_any_string\._One_template\,_every_market\.{body:Pick a language and let Courier translate the whole template with AI,then tweak any string. One template,every market.}.customMd\:pc-q_Can_I_override_the_sender_name_or_add_attachments_per_message\?{q:Can I override the sender name or add attachments per message?}.customMd\:pc-a_Yes\._Set_message\.providers\.amply\.override_on_a_send_to_change_values_like_fromName\,_or_include_an_attachments_array_with_filename\,_contentType\,_and_base64_data\._The_override_replaces_what_Courier_sends_to_Amply\.{a:Yes. Set message.providers.amply.override on a send to change values like fromName,or include an attachments array with filename,contentType,and base64 data. The override replaces what Courier sends to Amply.}.customMd\:pc-works-with_Multi-channel{works-with:Multi-channel}.customMd\:pc-tag_Journeys{tag:Journeys}.customMd\:pc-title_Automate_multi-step_flows{title:Automate multi-step flows}.customMd\:pc-body_Onboarding\,_re-engagement\,_and_lifecycle_sequences_across_push\,_in-app\,_and_SMS_with_delays_and_branching\.{body:Onboarding,re-engagement,and lifecycle sequences across push,in-app,and SMS with delays and branching.}.customMd\:pc-items_Let_non-technical_teammates_design_and_edit_push_without_a_deploy{items:Let non-technical teammates design and edit push without a deploy}.customMd\:pc-q_Which_platforms_does_the_APNs_integration_cover\?{q:Which platforms does the APNs integration cover?}.customMd\:pc-q_How_do_I_set_the_sender_\(From\)_address_for_SES\?{q:How do I set the sender (From) address for SES?}.customMd\:pc-a_Set_a_verified_From_Address\,_like_support\@example\.com\,_that_exists_as_a_verified_identity_in_the_SES_region_you_selected\._Templates_can_override_it_per_channel\._New_SES_accounts_stay_in_sandbox_mode_until_you_request_production_access\.{a:Set a verified From Address,like support@example.com,that exists as a verified identity in the SES region you selected. Templates can override it per channel. New SES accounts stay in sandbox mode until you request production access.}.customMd\:pc-body_Broadcast_a_one-off_or_recurring_text_to_an_entire_list_through_AWS_SNS\,_alongside_your_transactional_messages\.{body:Broadcast a one-off or recurring text to an entire list through AWS SNS,alongside your transactional messages.}.customMd\:pc-q_Can_AWS_SNS_send_SMS_through_Courier\,_not_just_push\?{q:Can AWS SNS send SMS through Courier,not just push?}.customMd\:pc-body_Broadcast_a_one-off_or_recurring_text_to_an_entire_list_through_Azure_SMS\,_alongside_your_transactional_messages\.{body:Broadcast a one-off or recurring text to an entire list through azure SMS,alongside your transactional messages.}.customMd\:pc-q_How_does_Courier_know_which_number_to_text_through_Azure_SMS\?{q:How does Courier know which number to text through azure SMS?}.customMd\:pc-tag_Courier_CLI{tag:Courier CLI}.customMd\:pc-title_Drive_Courier_from_the_CLI{title:Drive Courier from the CLI}.customMd\:pc-body_Send_messages\,_manage_users\,_and_inspect_delivery_logs_from_the_command_line\,_as_part_of_your_agent_and_dev_workflow\.{body:Send messages,manage users,and inspect delivery logs from the command line,as part of your agent and dev workflow.}.customMd\:pc-q_What_are_Courier_agent_skills\?{q:What are Courier agent skills?}.customMd\:pc-a_A_public_repo_of_structured_guidance_that_AI_coding_agents_read_while_building_notifications\._Agents_start_from_a_SKILL\.md_routing_file_that_points_to_task-specific_resources_covering_channels\,_transactional_and_growth_types\,_compliance\,_and_code_examples\,_so_generated_code_follows_best_practices\.{a:A public repo of structured guidance that AI coding agents read while building notifications. Agents start from a SKILL.md routing file that points to task-specific resources covering channels,transactional and growth types,compliance,and code examples,so generated code follows best practices.}.customMd\:pc-a_They_are_a_public_repository_of_structured_guidance_that_AI_coding_agents_read_while_building_notifications\,_covering_the_channels\,_notification_types\,_and_compliance_with_code_examples\._A_SKILL\.md_routing_file_points_the_agent_to_the_one_or_two_relevant_files\._It_works_with_Claude_Code\.{a:They are a public repository of structured guidance that AI coding agents read while building notifications,covering the channels,notification types,and compliance with code examples. A SKILL.md routing file points the agent to the one or two relevant files. It works with Claude Code.}.customMd\:pc-tag_Multi-channel{tag:Multi-channel}.customMd\:pc-title_Use_it_like_any_other_channel{title:Use it like any other channel}.customMd\:pc-body_Include_your_custom_provider_in_a_send_that_also_reaches_email\,_SMS\,_push\,_and_inbox\,_with_no_new_send_code\.{body:Include your custom provider in a send that also reaches email,SMS,push,and inbox,with no new send code.}.customMd\:pc-q_Can_I_change_the_request_Courier_sends_to_my_endpoint\?{q:Can I change the request Courier sends to my endpoint?}.customMd\:pc-tag_Correlate{tag:Correlate}.customMd\:pc-title_Correlate_with_app_performance{title:Correlate with app performance}.customMd\:pc-body_Sit_notification_delivery_next_to_request_latency\,_error_rates\,_and_deploys\,_so_you_can_see_whether_a_delivery_dip_lines_up_with_an_app_issue\.{body:Sit notification delivery next to request latency,error rates,and deploys,so you can see whether a delivery dip lines up with an app issue.}.customMd\:pc-q_Can_I_see_Courier_delivery_metrics_broken_out_by_channel\?{q:Can I see Courier delivery metrics broken out by channel?}.customMd\:pc-a_Yes\._Alongside_aggregate_message_metrics\,_Courier_reports_per-channel_counters_so_you_can_compare_delivery_across_channels\._Examples_include_courier\.email\.sent\,_courier\.email\.delivered\,_courier\.sms\.delivered\,_and_courier\.push\.sent\,_making_a_failing_channel_easy_to_spot\.{a:Yes. Alongside aggregate message metrics,Courier reports per-channel counters so you can compare delivery across channels. Examples include courier.email.sent,courier.email.delivered,courier.sms.delivered,and courier.push.sent,making a failing channel easy to spot.}.customMd\:pc-q_Does_Expo_push_through_Courier_work_for_both_iOS_and_Android\?{q:Does Expo push through Courier work for both iOS and Android?}.customMd\:pc-q_How_does_Courier_handle_FCM_device_tokens\?{q:How does Courier handle FCM device tokens?}.customMd\:pc-q_Why_do_my_Gmail_sends_fail\,_and_how_do_I_fix_them\?{q:Why do my Gmail sends fail,and how do I fix them?}.customMd\:pc-a_OAuth_tokens_require_periodic_re-authorization\._If_a_send_fails\,_Courier_marks_it_UNDELIVERABLE_with_a_status_400_error\._To_restore_it\,_go_to_Channels_then_Gmail_and_click_Update_to_re-authorize_with_Google\._Token_refresh_is_otherwise_automatic\.{a:OAuth tokens require periodic re-authorization. If a send fails,Courier marks it UNDELIVERABLE with a status 400 error. To restore it,go to Channels then Gmail and click Update to re-authorize with Google. Token refresh is otherwise automatic.}.customMd\:pc-title_Reach_every_channel{title:Reach every channel}.customMd\:pc-body_The_same_data_can_send_email\,_SMS\,_push\,_chat\,_and_an_in-app_inbox\._Add_a_channel_when_you_need_it\,_no_change_to_your_Hightouch_syncs\.{body:The same data can send email,SMS,push,chat,and an in-app inbox. Add a channel when you need it,no change to your Hightouch syncs.}.customMd\:pc-q_How_does_Hightouch_match_synced_rows_to_Courier_recipients\?{q:How does Hightouch match synced rows to Courier recipients?}.customMd\:pc-q_How_do_I_send_attachments_or_override_settings_per_message_with_MailerSend\?{q:How do I send attachments or override settings per message with MailerSend?}.customMd\:pc-a_Use_the_providers\.mailersend\.override_object_on_the_send\._It_overrides_MailerSend_configuration_and_adds_attachments\,_whose_file_content_must_be_base64-encoded\._MailerSend_restricts_supported_file_types\,_so_check_its_API_docs\.{a:Use the providers.mailersend.override object on the send. It overrides MailerSend configuration and adds attachments,whose file content must be base64-encoded. MailerSend restricts supported file types,so check its API docs.}.customMd\:pc-q_How_does_Courier_track_Mailgun_delivery_status\?{q:How does Courier track Mailgun delivery status?}.customMd\:pc-q_How_does_Courier_decide_which_address_to_send_the_email_to\?{q:How does Courier decide which address to send the email to?}.customMd\:pc-q_Does_Courier_track_opens_and_clicks_from_Mandrill\?{q:Does Courier track opens and clicks from Mandrill?}.customMd\:pc-body_Broadcast_a_one-off_or_recurring_text_to_an_entire_list_through_Bird\,_alongside_your_transactional_messages\.{body:Broadcast a one-off or recurring text to an entire list through Bird,alongside your transactional messages.}.customMd\:pc-q_How_do_I_set_the_sender_for_Bird_SMS_messages\?{q:How do I set the sender for Bird SMS messages?}.customMd\:pc-a_The_originator_number_you_save_on_the_Bird_integration_page_is_the_default_sender\._To_change_it_per_message\,_override_body\.originator_\(a_number_or_alphanumeric_sender_like_MyCompany\)_inside_message\.providers\.messagebird-sms\.override\.{a:The originator number you save on the Bird integration page is the default sender. To change it per message,override body.originator (a number or alphanumeric sender like MyCompany) inside message.providers.messagebird-sms.override.}.customMd\:pc-body_Broadcast_a_one-off_or_recurring_text_to_an_entire_list_through_MessageMedia\,_alongside_your_transactional_messages\.{body:Broadcast a one-off or recurring text to an entire list through MessageMedia,alongside your transactional messages.}.customMd\:pc-q_What_phone_numbers_does_Courier_use_with_MessageMedia\?{q:What phone numbers does Courier use with MessageMedia?}.customMd\:pc-tag_Courier_Inbox{tag:Courier Inbox}.customMd\:pc-title_Add_an_in-app_inbox_too{title:Add an in-app inbox too}.customMd\:pc-body_Pair_Teams_with_a_drop-in_inbox_for_web_and_mobile_\(JavaScript\,_React\,_iOS\,_Android\,_Flutter\,_React_Native\)\,_so_users_also_see_messages_inside_your_product\.{body:Pair Teams with a drop-in inbox for web and mobile (JavaScript,React,iOS,Android,Flutter,React Native),so users also see messages inside your product.}.customMd\:pc-items_Deliver_into_a_customer\'s_own_Teams_tenant\,_not_just_your_team\'s{items:Deliver into a customer"s own Teams tenant, not just your team"s}.customMd\:pc-q_How_does_Courier_know_which_Teams_user_to_notify\?{q:How does Courier know which Teams user to notify?}.customMd\:pc-q_Can_I_build_a_dashboard_for_Courier_data_in_New_Relic\?{q:Can I build a dashboard for Courier data in New Relic?}.customMd\:pc-a_Yes\._Courier_publishes_a_dashboard_starter_kit\,_a_downloadable_JSON_you_import_into_New_Relic_to_visualize_your_Courier_notification_data_fast\._From_there_you_can_extend_it_with_your_own_charts_and_alerts_on_the_forwarded_metrics\.{a:Yes. Courier publishes a dashboard starter kit,a downloadable JSON you import into New Relic to visualize your Courier notification data fast. From there you can extend it with your own charts and alerts on the forwarded metrics.}.customMd\:pc-q_Does_Courier_support_SCIM_user_provisioning_with_Okta\?{q:Does Courier support SCIM user provisioning with Okta?}.customMd\:pc-a_Yes\,_on_the_Enterprise_plan\._Assigning_a_user_in_Okta_provisions_them_in_Courier_and_pushes_profile_updates\,_and_unassigning_removes_them\._A_role_attribute_maps_their_Courier_permissions\,_defaulting_to_Analyst_if_unset\.{a:Yes,on the Enterprise plan. Assigning a user in Okta provisions them in Courier and pushes profile updates,and unassigning removes them. A role attribute maps their Courier permissions,defaulting to Analyst if unset.}.customMd\:pc-q_Can_I_customize_the_OneSignal_push_payload_from_Courier\?{q:Can I customize the OneSignal push payload from Courier?}.customMd\:pc-a_Yes\._Any_field_on_OneSignal\'s_Create_notification_endpoint_can_be_set_through_the_providers\.onesignal\.override\.body_object\,_including_priority\,_ttl\,_and_small_icon\._This_lets_you_tune_delivery_behavior_beyond_Courier\'s_standard_push_content\.{a:Yes. Any field on OneSignal"s Create notification endpoint can be set through the providers.onesignal.override.body object, including priority, ttl, and small_icon. This lets you tune delivery behavior beyond Courier"s standard push content.}.customMd\:pc-title_Escalate_inside_a_flow{title:Escalate inside a flow}.customMd\:pc-body_Use_Courier_journeys_to_notify_a_user_first\,_then_page_PagerDuty_if_there_is_no_response\,_with_delays_and_branching\.{body:Use Courier journeys to notify a user first,then page PagerDuty if there is no response,with delays and branching.}.customMd\:pc-q_Can_I_send_incidents_to_different_PagerDuty_services_per_user\?{q:Can I send incidents to different PagerDuty services per user?}.customMd\:pc-works-with_Preferences{works-with:Preferences}.customMd\:pc-body_Broadcast_a_one-off_or_recurring_text_to_an_entire_list_through_Plivo\,_alongside_your_transactional_messages\.{body:Broadcast a one-off or recurring text to an entire list through Plivo,alongside your transactional messages.}.customMd\:pc-q_Can_I_see_Plivo_delivery_status_in_Courier\?{q:Can I see Plivo delivery status in Courier?}.customMd\:pc-q_Can_I_use_my_existing_Postmark_templates_with_Courier\?{q:Can I use my existing Postmark templates with Courier?}.customMd\:pc-q_Which_platforms_can_Pusher_Beams_reach_through_Courier\?{q:Which platforms can Pusher Beams reach through Courier?}.customMd\:pc-q_Does_my_sender_and_recipient_email_need_to_be_verified_or_set\?{q:Does my sender and recipient email need to be verified or set?}.customMd\:pc-body_The_same_event_can_send_email\,_SMS\,_push\,_chat\,_and_an_in-app_inbox\._Add_a_channel_when_you_need_it\,_no_change_to_your_RudderStack_setup\.{body:The same event can send email,SMS,push,chat,and an in-app inbox. Add a channel when you need it,no change to your RudderStack setup.}.customMd\:pc-q_How_does_RudderStack_event_data_map_into_a_Courier_notification\?{q:How does RudderStack event data map into a Courier notification?}.customMd\:pc-a_Data_flows_through_the_courier\.automation_object\._Properties_nested_under_that_scope\,_for_example_courier\.automation\.data\,_populate_the_notification_payload\,_so_template_variables_render_values_sent_from_RudderStack\.{a:Data flows through the courier.automation object. Properties nested under that scope,for example courier.automation.data,populate the notification payload,so template variables render values sent from RudderStack.}.customMd\:pc-works-with_Templates{works-with:Templates}.customMd\:pc-body_The_same_event_can_send_email\,_SMS\,_push\,_chat\,_and_an_in-app_inbox\._Add_a_channel_when_you_need_it\,_no_change_to_your_Segment_setup\.{body:The same event can send email,SMS,push,chat,and an in-app inbox. Add a channel when you need it,no change to your Segment setup.}.customMd\:pc-q_How_does_Segment_event_data_map_to_Courier_notification_data\?{q:How does Segment event data map to Courier notification data?}.customMd\:pc-a_A_track_call\'s_properties_object_maps_directly_into_Courier\'s_data_object\,_so_properties_-\>_data_is_what_your_templates_reference\._The_event_arrives_prefixed_as_track\/\,_and_the_track_name_is_available_in_the_event_field\.{a:A track call"s properties object maps directly into Courier"s data object,so properties -> data is what your templates reference. The event arrives prefixed as track/,and the track name is available in the event field.}.customMd\:pc-q_How_does_Courier_track_SendGrid_delivery_status\?{q:How does Courier track SendGrid delivery status?}.customMd\:pc-body_Broadcast_a_one-off_or_recurring_text_to_an_entire_list_through_Sinch\,_alongside_your_transactional_messages\.{body:Broadcast a one-off or recurring text to an entire list through Sinch,alongside your transactional messages.}.customMd\:pc-q_What_sets_the_SMS_sender_number_for_Sinch_in_Courier\?{q:What sets the SMS sender number for Sinch in Courier?}.customMd\:pc-a_The_from_field\._It_holds_the_SMS_sender_you_have_provisioned_in_Sinch\,_configured_on_the_integration_and_overridable_per_message\._Sinch_delivers_using_that_number_as_the_sender\.{a:The from field. It holds the SMS sender you have provisioned in Sinch,configured on the integration and overridable per message. Sinch delivers using that number as the sender.}.customMd\:pc-body_Pair_Slack_with_a_drop-in_inbox_for_web_and_mobile_\(JavaScript\,_React\,_iOS\,_Android\,_Flutter\,_React_Native\)\,_so_users_also_see_messages_inside_your_product\.{body:Pair Slack with a drop-in inbox for web and mobile (JavaScript,React,iOS,Android,Flutter,React Native),so users also see messages inside your product.}.customMd\:pc-items_Deliver_into_a_customer\'s_own_Slack_workspace\,_not_just_your_team\'s{items:Deliver into a customer"s own Slack workspace, not just your team"s}.customMd\:pc-q_Can_I_send_rich_Slack_messages_instead_of_just_plain_text\?{q:Can I send rich Slack messages instead of just plain text?}.customMd\:pc-a_Yes\._Courier_sends_plain_text_and_Slack_Block_Kit_layouts\,_so_notifications_can_include_header_and_section_blocks\,_buttons\,_and_markdown\._Pass_raw_blocks_via_providers\.slack\.override\.body\.blocks_or_build_them_in_the_template_designer\.{a:Yes. Courier sends plain text and Slack Block Kit layouts,so notifications can include header and section blocks,buttons,and markdown. Pass raw blocks via providers.slack.override.body.blocks or build them in the template designer.}.customMd\:pc-body_Broadcast_a_one-off_or_recurring_text_to_an_entire_list_through_SMSCentral\,_alongside_your_transactional_messages\.{body:Broadcast a one-off or recurring text to an entire list through SMSCentral,alongside your transactional messages.}.customMd\:pc-q_What_phone_number_format_does_SMSCentral_need_in_Courier\?{q:What phone number format does SMSCentral need in Courier?}.customMd\:pc-q_Can_I_use_different_SMTP_credentials_per_message\?{q:Can I use different SMTP credentials per message?}.customMd\:pc-a_Yes\._Override_the_transport_per_send_with_message\.providers\.smtp\.override\.config\,_so_one_Courier_workspace_can_route_individual_messages_through_different_SMTP_servers_or_credentials\._Attachments_can_also_be_passed_through_message_overrides\.{a:Yes. Override the transport per send with message.providers.smtp.override.config,so one Courier workspace can route individual messages through different SMTP servers or credentials. Attachments can also be passed through message overrides.}.customMd\:pc-q_How_does_Courier_know_which_email_address_to_send_to\?{q:How does Courier know which email address to send to?}.customMd\:pc-a_Each_recipient_needs_an_email_address_in_the_email_field_of_their_Courier_profile\._That_field_is_mandatory_for_SparkPost_delivery\,_and_Courier_reads_it_at_send_time_to_address_the_message\.{a:Each recipient needs an email address in the email field of their Courier profile. That field is mandatory for SparkPost delivery,and Courier reads it at send time to address the message.}.customMd\:pc-title_Add_an_in-app_inbox_for_web_and_mobile{title:Add an in-app inbox for web and mobile}.customMd\:pc-body_Pair_StreamChat_with_a_drop-in_inbox_\(JavaScript\,_React\,_iOS\,_Android\,_Flutter\,_React_Native\)\,_so_users_get_an_in-product_notification_center_too\.{body:Pair StreamChat with a drop-in inbox (JavaScript,React,iOS,Android,Flutter,React Native),so users get an in-product notification center too.}.customMd\:pc-q_Can_I_update_an_existing_Stream_Chat_message_with_Courier\?{q:Can I update an existing Stream Chat message with Courier?}.customMd\:pc-body_Broadcast_a_one-off_or_recurring_text_to_an_entire_list_through_Telnyx\,_alongside_your_transactional_messages\.{body:Broadcast a one-off or recurring text to an entire list through Telnyx,alongside your transactional messages.}.customMd\:pc-q_Which_number_does_Telnyx_send_from\?{q:Which number does Telnyx send from?}.customMd\:pc-a_The_originating_phone_number_you_configure_on_the_Telnyx_integration_page\._You_can_override_it_per_message_with_the_from_field_so_a_single_send_uses_a_different_Telnyx_number\.{a:The originating phone number you configure on the Telnyx integration page. You can override it per message with the from field so a single send uses a different Telnyx number.}.customMd\:pc-body_Broadcast_a_one-off_or_recurring_text_to_an_entire_list_through_Twilio\,_alongside_your_transactional_messages\.{body:Broadcast a one-off or recurring text to an entire list through Twilio,alongside your transactional messages.}.customMd\:pc-q_How_does_Courier_handle_SMS_opt-outs_with_Twilio\?{q:How does Courier handle SMS opt-outs with Twilio?}.customMd\:pc-a_Twilio_enforces_SMS_opt-outs\,_not_Courier\._If_a_recipient_replied_STOP\,_Twilio_blocks_further_messages_to_that_number_until_they_text_START_to_resubscribe\,_so_sends_to_unsubscribed_numbers_will_not_deliver\.{a:Twilio enforces SMS opt-outs,not Courier. If a recipient replied STOP,Twilio blocks further messages to that number until they text START to resubscribe,so sends to unsubscribed numbers will not deliver.}.customMd\:pc-body_Broadcast_a_one-off_or_recurring_text_to_an_entire_list_through_Vonage\,_alongside_your_transactional_messages\.{body:Broadcast a one-off or recurring text to an entire list through Vonage,alongside your transactional messages.}.customMd\:pc-q_Which_number_does_Courier_send_Vonage_SMS_from\?{q:Which number does Courier send Vonage SMS from?}.customMd\:pc-a_The_from_number_you_configured_on_the_integration\,_which_is_the_sender_your_recipients_see\._It_is_one_of_the_three_saved_settings_alongside_the_API_key_and_secret_that_Courier_passes_to_the_Vonage_SMS_API\.{a:The from number you configured on the integration,which is the sender your recipients see. It is one of the three saved settings alongside the API key and secret that Courier passes to the Vonage SMS API.}.customMd\:pc-tag_Extensibility{tag:Extensibility}.customMd\:pc-title_Integrate_systems_Courier_does_not_support{title:Integrate systems Courier does not support}.customMd\:pc-body_Reach_downstream_services_and_providers_without_a_native_connector_by_delivering_the_notification_straight_to_your_own_endpoint\.{body:Reach downstream services and providers without a native connector by delivering the notification straight to your own endpoint.}.customMd\:pc-q_What_does_Courier_send_in_the_webhook_payload\?{q:What does Courier send in the webhook payload?}.customMd\:pc-a_By_default_Courier_sends_a_JSON_body_built_from_your_Send_API_call\,_including_the_template\,_the_to_recipient\,_and_data\._Set_profile_to_limited_for_send-time_data_only\,_or_expanded_to_merge_in_stored_profile_data\.{a:By default Courier sends a JSON body built from your Send API call,including the template,the to recipient,and data. Set profile to limited for send-time data only,or expanded to merge in stored profile data.}.customMd\:pc-body_Broadcast_a_one-off_or_recurring_message_to_an_entire_list_through_WhatsApp\,_alongside_your_transactional_messages\.{body:Broadcast a one-off or recurring message to an entire list through WhatsApp,alongside your transactional messages.}.customMd\:pc-q_Do_WhatsApp_messages_need_approved_templates\?{q:Do WhatsApp messages need approved templates?}.customMd\:pc-a_Yes\._WhatsApp_requires_templates_approved_through_Twilio\,_each_assigned_a_Content_SID\._You_reference_that_Content_SID_in_your_Courier_WhatsApp_channel\._Templates_fall_under_Marketing\,_Authentication\,_or_Utility_categories\,_with_approval_taking_minutes_up_to_24_hours\.{a:Yes. WhatsApp requires templates approved through Twilio,each assigned a Content SID. You reference that Content SID in your Courier WhatsApp channel. Templates fall under Marketing,Authentication,or Utility categories,with approval taking minutes up to 24 hours.}}@media screen and (min-width:62rem){.lg\:pc-p_0_50px{padding:0 50px}.lg\:pc-p_30px{padding:30px}.lg\:pc-px_8{padding-inline:var(--pc-spacing-8)}.lg\:pc-bdr_24px{border-radius:24px}.lg\:pc-gap_16{gap:var(--pc-spacing-16)}.lg\:pc-gap_8{gap:var(--pc-spacing-8)}.lg\:pc-px_50px{padding-inline:50px}.lg\:pc-px_10{padding-inline:var(--pc-spacing-10)}.lg\:pc-gap_24{gap:var(--pc-spacing-24)}.lg\:pc-py_6{padding-block:var(--pc-spacing-6)}.lg\:pc-my_0{margin-block:var(--pc-spacing-0)}.lg\:pc-px_6{padding-inline:var(--pc-spacing-6)}.lg\:pc-px_24px{padding-inline:24px}.lg\:pc-gap_40px{gap:40px}.lg\:pc-gap_12px{gap:12px}.lg\:pc-gap_12{gap:var(--pc-spacing-12)}.lg\:pc-py_calc\(56px_\+_80px\){padding-block:calc(56px + 80px)}.lg\:pc-flex-flow_row{flex-flow:row}.lg\:pc-gap_96px{gap:96px}.lg\:pc-mx_0{margin-inline:var(--pc-spacing-0)}.lg\:pc-columns_3{column-count:3}.lg\:pc-columns_2{column-count:2}.lg\:pc-gap_44px{gap:44px}.lg\:pc-flex-d_row{flex-direction:row}.lg\:pc-as_flex-end{align-self:flex-end}.lg\:pc-d_none{display:none}.lg\:pc-d_block{display:block}.lg\:pc-tag_AI_Translation{tag:AI Translation}.lg\:pc-title_Localize_a_message_in_seconds{title:Localize a message in seconds}.lg\:pc-body_Pick_a_language_and_let_Courier_translate_your_message_with_AI\,_then_tweak_any_string\.{body:Pick a language and let Courier translate your message with AI,then tweak any string.}.lg\:pc-a_Yes\._A_provider_override_at_message\.providers\.africastalking-sms\.override\.body_sends_values_straight_to_the_Africa\'s_Talking_SMS_API\,_so_you_can_access_options_beyond_Courier\'s_standard_SMS_fields_for_a_given_send\.{a:Yes. A provider override at message.providers.africastalking-sms.override.body sends values straight to the Africa"s Talking SMS API, so you can access options beyond Courier"s standard SMS fields for a given send.}.lg\:pc-tag_Broadcasts{tag:Broadcasts}.lg\:pc-title_Send_to_lists_and_audiences{title:Send to lists and audiences}.lg\:pc-body_Broadcast_a_one-off_or_recurring_message_to_an_entire_list_through_Amply\,_alongside_your_transactional_email\.{body:Broadcast a one-off or recurring message to an entire list through Amply,alongside your transactional email.}.lg\:pc-q_How_do_I_send_an_email_through_Amply_once_it_is_connected\?{q:How do I send an email through Amply once it is connected?}.lg\:pc-body_Pick_a_language_and_let_Courier_translate_your_push_content_with_AI\,_then_tweak_any_string\.{body:Pick a language and let Courier translate your push content with AI,then tweak any string.}.lg\:pc-q_How_do_I_customize_the_APNs_payload\,_like_badges_or_a_deep_link\?{q:How do I customize the APNs payload,like badges or a deep link?}.lg\:pc-a_Use_the_override_schema_on_a_send_request\._Settings_such_as_sounds_and_badges_live_under_providers\.apn\.override\.body\.aps\,_and_you_can_add_your_own_keys_there_\(for_example\,_a_screen_to_open\)_or_send_a_silent_notification\.{a:Use the override schema on a send request. Settings such as sounds and badges live under providers.apn.override.body.aps,and you can add your own keys there (for example,a screen to open) or send a silent notification.}.lg\:pc-body_Broadcast_a_one-off_or_recurring_message_to_an_entire_list_through_AWS_SES\,_alongside_your_transactional_email\.{body:Broadcast a one-off or recurring message to an entire list through AWS SES,alongside your transactional email.}.lg\:pc-q_Can_Courier_track_SES_delivery_status\?{q:Can Courier track SES delivery status?}.lg\:pc-q_Can_I_override_AWS_SNS_credentials_per_message\?{q:Can I override AWS SNS credentials per message?}.lg\:pc-a_Yes\._Courier_lets_you_override_the_stored_credentials_and_region_at_send_time_using_the_config_override_inside_the_providers_block_of_the_request\._That_lets_one_workspace_publish_through_different_AWS_accounts_or_regions_per_message\.{a:Yes. Courier lets you override the stored credentials and region at send time using the config override inside the providers block of the request. That lets one workspace publish through different AWS accounts or regions per message.}.lg\:pc-q_Can_I_override_the_sender_number_or_message_body_per_send\?{q:Can I override the sender number or message body per send?}.lg\:pc-a_Yes\._Overrides_let_you_replace_config_values_\(from\,_accessKey\,_endpoint\)_or_body_fields_\(to\,_message\)_on_a_single_request\,_without_changing_the_provider_settings_you_saved_in_Courier\.{a:Yes. Overrides let you replace config values (from,accessKey,endpoint) or body fields (to,message) on a single request,without changing the provider settings you saved in Courier.}.lg\:pc-tag_HTML_email{tag:HTML email}.lg\:pc-title_Design_an_email_with_ChatGPT\,_send_it_with_Courier{title:Design an email with ChatGPT,send it with Courier}.lg\:pc-body_Ask_ChatGPT_to_generate_a_ready-to-send_HTML_email\,_bring_it_into_Courier_as_a_template\,_and_deliver_it_to_your_users_on_any_channel\.{body:Ask ChatGPT to generate a ready-to-send HTML email,bring it into Courier as a template,and deliver it to your users on any channel.}.lg\:pc-q_What_is_the_Courier_CLI\?{q:What is the Courier CLI?}.lg\:pc-a_A_native_binary_covering_the_full_Courier_REST_API\,_running_on_macOS\,_Linux\,_and_Windows_with_no_runtime_dependencies\._It_sends_messages\,_manages_profiles_and_templates\,_and_suits_AI_agents_and_CI\/CD_pipelines_with_machine-readable_JSON_output\.{a:A native binary covering the full Courier REST API,running on macOS,Linux,and Windows with no runtime dependencies. It sends messages,manages profiles and templates,and suits AI agents and CI/CD pipelines with machine-readable JSON output.}.lg\:pc-title_Design_an_email_with_Claude\,_send_it_with_Courier{title:Design an email with Claude,send it with Courier}.lg\:pc-body_Ask_Claude_to_generate_a_ready-to-send_HTML_email\,_bring_it_into_Courier_as_a_template\,_and_deliver_it_to_your_users_on_any_channel\.{body:Ask Claude to generate a ready-to-send HTML email,bring it into Courier as a template,and deliver it to your users on any channel.}.lg\:pc-a_The_Courier_CLI_is_a_native_binary_covering_the_full_Courier_REST_API_on_macOS\,_Linux\,_and_Windows\,_with_no_runtime_dependencies\._Send_messages\,_manage_profiles\,_and_inspect_delivery_logs_from_the_terminal\._It_suits_AI_agents_like_Claude_Code_and_CI\/CD_pipelines\.{a:The Courier CLI is a native binary covering the full Courier REST API on macOS,Linux,and Windows,with no runtime dependencies. Send messages,manage profiles,and inspect delivery logs from the terminal. It suits AI agents like Claude Code and CI/CD pipelines.}.lg\:pc-tag_Routing{tag:Routing}.lg\:pc-title_Same_routing_and_preferences{title:Same routing and preferences}.lg\:pc-body_Apply_the_same_routing_rules_and_user_preferences_you_use_for_every_other_channel_in_Courier\.{body:Apply the same routing rules and user preferences you use for every other channel in Courier.}.lg\:pc-q_How_is_rich_content_structured_in_the_payload\?{q:How is rich content structured in the payload?}.lg\:pc-a_Alongside_the_plain_text\,_Courier_sends_a_blocks_array_built_from_what_you_add_in_the_designer\._Blocks_are_either_text_blocks_or_action_blocks\,_and_each_action_block_carries_a_URL_and_its_clickable_text\.{a:Alongside the plain text,Courier sends a blocks array built from what you add in the designer. Blocks are either text blocks or action blocks,and each action block carries a URL and its clickable text.}.lg\:pc-tag_Full_activity{tag:Full activity}.lg\:pc-title_Automation\,_users\,_inbox\,_and_lists{title:Automation,users,inbox,and lists}.lg\:pc-body_Automation_invocations_and_throttling\,_user_and_account_activity\,_inbox_connections\,_and_list_subscriptions_all_flow_through_as_metrics_too\.{body:Automation invocations and throttling,user and account activity,inbox connections,and list subscriptions all flow through as metrics too.}.lg\:pc-q_What_can_I_build_with_Courier_data_in_Datadog\?{q:What can I build with Courier data in Datadog?}.lg\:pc-a_You_can_build_dashboards_and_monitors_on_the_forwarded_metrics_and_alert_when_delivery_or_open_rates_drop\._Courier_also_provides_a_downloadable_dashboard_JSON_starter_kit_to_visualize_your_notification_metrics_without_building_every_panel_yourself\.{a:You can build dashboards and monitors on the forwarded metrics and alert when delivery or open rates drop. Courier also provides a downloadable dashboard JSON starter kit to visualize your notification metrics without building every panel yourself.}.lg\:pc-q_Can_I_customize_the_Expo_payload_Courier_sends\?{q:Can I customize the Expo payload Courier sends?}.lg\:pc-q_Which_platforms_can_I_send_FCM_push_to_with_Courier\?{q:Which platforms can I send FCM push to with Courier?}.lg\:pc-a_Android\,_iOS\,_React_Native\,_and_Flutter\._Each_is_covered_by_a_Courier_Mobile_SDK\,_and_Android_handles_token_syncing_automatically_while_iOS_also_needs_the_APNs_key_configured_in_Firebase\.{a:Android,iOS,React Native,and Flutter. Each is covered by a Courier Mobile SDK,and Android handles token syncing automatically while iOS also needs the APNs key configured in Firebase.}.lg\:pc-body_Broadcast_a_one-off_or_recurring_message_to_an_entire_list_through_Gmail\,_alongside_your_transactional_email\.{body:Broadcast a one-off or recurring message to an entire list through Gmail,alongside your transactional email.}.lg\:pc-q_Can_I_set_provider-level_body_overrides_for_Gmail\?{q:Can I set provider-level body overrides for Gmail?}.lg\:pc-a_No\._Gmail_does_not_support_provider-level_body_overrides_in_Courier\._You_design_the_message_in_the_Courier_notification_or_Design_Studio\,_and_it_sends_as_authored_through_the_Gmail_channel\.{a:No. Gmail does not support provider-level body overrides in Courier. You design the message in the Courier notification or Design Studio,and it sends as authored through the Gmail channel.}.lg\:pc-title_Localize_in_seconds{title:Localize in seconds}.lg\:pc-body_Pick_a_language_and_let_Courier_translate_the_message_with_AI\,_then_tweak_any_string\._One_template\,_every_market\.{body:Pick a language and let Courier translate the message with AI,then tweak any string. One template,every market.}.lg\:pc-q_What_is_the_difference_between_Upsert_and_Update_sync_modes\?{q:What is the difference between Upsert and Update sync modes?}.lg\:pc-grid-tc_repeat\(3\,1fr\){grid-template-columns:repeat(3,1fr)}.lg\:pc-body_Broadcast_a_one-off_or_recurring_message_to_an_entire_list_through_MailerSend\,_alongside_your_transactional_email\.{body:Broadcast a one-off or recurring message to an entire list through MailerSend,alongside your transactional email.}.lg\:pc-q_How_does_Courier_know_which_address_to_send_the_MailerSend_email_to\?{q:How does Courier know which address to send the MailerSend email to?}.lg\:pc-body_Broadcast_a_one-off_or_recurring_message_to_an_entire_list_through_Mailgun\,_alongside_your_transactional_email\.{body:Broadcast a one-off or recurring message to an entire list through Mailgun,alongside your transactional email.}.lg\:pc-q_Can_I_send_attachments_or_pass_Mailgun-specific_options\?{q:Can I send attachments or pass Mailgun-specific options?}.lg\:pc-body_Broadcast_a_one-off_or_recurring_message_to_an_entire_list_through_Mailjet\,_alongside_your_transactional_email\.{body:Broadcast a one-off or recurring message to an entire list through Mailjet,alongside your transactional email.}.lg\:pc-q_Can_I_customize_the_request_Courier_sends_to_Mailjet\?{q:Can I customize the request Courier sends to Mailjet?}.lg\:pc-body_Broadcast_a_one-off_or_recurring_message_to_an_entire_list_through_Mandrill\,_alongside_your_transactional_email\.{body:Broadcast a one-off or recurring message to an entire list through Mandrill,alongside your transactional email.}.lg\:pc-q_How_do_I_add_attachments\,_CC\,_or_BCC_on_a_Mandrill_email\?{q:How do I add attachments,CC,or BCC on a Mandrill email?}.lg\:pc-q_Can_I_override_the_Bird_access_key_per_message\?{q:Can I override the Bird access key per message?}.lg\:pc-a_Yes\._Override_the_accessKey_via_the_config_object_under_message\.providers\.messagebird-sms\.override\._This_lets_you_send_from_a_different_Bird_account_for_a_given_message_without_changing_your_saved_integration\.{a:Yes. Override the accessKey via the config object under message.providers.messagebird-sms.override. This lets you send from a different Bird account for a given message without changing your saved integration.}.lg\:pc-q_Can_I_track_SMS_delivery_status_from_MessageMedia\?{q:Can I track SMS delivery status from MessageMedia?}.lg\:pc-tag_Multi-channel{tag:Multi-channel}.lg\:pc-title_Same_API_as_your_other_channels{title:Same API as your other channels}.lg\:pc-body_Teams_joins_your_stack_from_the_same_Send_API_and_templates_you_already_use\,_so_there_is_nothing_new_to_wire_up\.{body:Teams joins your stack from the same Send API and templates you already use,so there is nothing new to wire up.}.lg\:pc-q_What_message_formats_can_I_send_to_Microsoft_Teams\?{q:What message formats can I send to Microsoft Teams?}.lg\:pc-a_Courier_supports_plain_text_and_Microsoft_Teams_Adaptive_Cards_with_interactive_elements\,_designed_in_the_template_editor\._You_can_add_\@mentions_inside_cards_using_\<at\>username\<\/at\>_with_a_matching_entities_object\.{a:Courier supports plain text and Microsoft Teams Adaptive Cards with interactive elements,designed in the template editor. You can add @mentions inside cards using <at>username</at> with a matching entities object.}.lg\:pc-tag_Regions{tag:Regions}.lg\:pc-title_US_or_EU_endpoints{title:US or EU endpoints}.lg\:pc-body_Send_to_the_default_US_endpoints\,_or_set_your_own_Metrics_and_Logs_endpoints_to_keep_data_in_the_region_you_need\.{body:Send to the default US endpoints,or set your own Metrics and Logs endpoints to keep data in the region you need.}.lg\:pc-q_Can_I_control_which_New_Relic_region_Courier_sends_data_to\?{q:Can I control which New Relic region Courier sends data to?}.lg\:pc-q_Can_users_open_Courier_from_the_Okta_app_tile\?{q:Can users open Courier from the Okta app tile?}.lg\:pc-a_No\._Courier_does_not_support_IdP-initiated_login\,_so_clicking_the_tile_in_Okta_will_not_launch_it\._Users_sign_in_through_the_Courier_bookmark_app_or_the_email_login_flow_instead\._Invitations_expire_after_14_days\.{a:No. Courier does not support IdP-initiated login,so clicking the tile in Okta will not launch it. Users sign in through the Courier bookmark app or the email login flow instead. Invitations expire after 14 days.}.lg\:pc-body_Broadcast_a_one-off_or_recurring_message_to_an_entire_list_through_OneSignal\,_alongside_your_transactional_email\.{body:Broadcast a one-off or recurring message to an entire list through OneSignal,alongside your transactional email.}.lg\:pc-q_Why_do_some_OneSignal_pushes_fail_in_automated_workflows\?{q:Why do some OneSignal pushes fail in automated workflows?}.lg\:pc-a_OneSignal_caps_push_payload_size\,_so_batched_Automations_carrying_large_data_payloads_can_exceed_it_and_fail\._Enable_data_mapping_in_Courier_to_control_which_data_passes_to_the_push_channel_and_stay_under_the_limit\.{a:OneSignal caps push payload size,so batched Automations carrying large data payloads can exceed it and fail. Enable data mapping in Courier to control which data passes to the push channel and stay under the limit.}.lg\:pc-tag_On-call_reach{tag:On-call reach}.lg\:pc-title_Reach_responders_where_they_are{title:Reach responders where they are}.lg\:pc-body_Let_PagerDuty_handle_schedules_and_escalation_policies_while_Courier_decides_what_triggers_an_incident_and_when\.{body:Let PagerDuty handle schedules and escalation policies while Courier decides what triggers an incident and when.}.lg\:pc-q_Can_I_override_severity_or_source_per_message\?{q:Can I override severity or source per message?}.lg\:pc-q_Can_I_set_Plivo_provider-level_overrides_in_Courier\?{q:Can I set Plivo provider-level overrides in Courier?}.lg\:pc-a_No\._The_Plivo_integration_does_not_support_provider-level_overrides_in_Courier\,_so_you_cannot_override_Plivo_API_fields_per_message\._Sending_is_driven_by_your_saved_credentials_and_the_recipient_profile\.{a:No. The Plivo integration does not support provider-level overrides in Courier,so you cannot override Plivo API fields per message. Sending is driven by your saved credentials and the recipient profile.}.lg\:pc-body_Broadcast_a_one-off_or_recurring_message_to_an_entire_list_through_Postmark\,_alongside_your_transactional_email\.{body:Broadcast a one-off or recurring message to an entire list through Postmark,alongside your transactional email.}.lg\:pc-q_Why_is_my_Postmark_email_subject_line_getting_cut_off\?{q:Why is my Postmark email subject line getting cut off?}.lg\:pc-a_This_is_email_client_display_behavior\,_not_a_Postmark_limit\._Postmark_accepts_long_subject_lines\,_but_inboxes_like_Gmail\,_Outlook\,_and_mobile_clients_only_show_the_first_50_to_70_characters\._Front-load_the_important_words_in_your_Courier_subject_line_so_it_still_reads_well_when_a_client_truncates_it\.{a:This is email client display behavior,not a Postmark limit. Postmark accepts long subject lines,but inboxes like Gmail,Outlook,and mobile clients only show the first 50 to 70 characters. Front-load the important words in your Courier subject line so it still reads well when a client truncates it.}.lg\:pc-q_Can_I_customize_the_Pusher_Beams_payload_or_credentials_per_send\?{q:Can I customize the Pusher Beams payload or credentials per send?}.lg\:pc-a_Yes\._Use_the_override_object_to_modify_the_request_body_sent_to_Beams\,_such_as_the_FCM_notification_title_and_body\._You_can_also_override_the_instanceId_or_secretKey_at_send_time\.{a:Yes. Use the override object to modify the request body sent to Beams,such as the FCM notification title and body. You can also override the instanceId or secretKey at send time.}.lg\:pc-body_Broadcast_a_one-off_or_recurring_message_to_an_entire_list_through_Resend\,_alongside_your_transactional_email\.{body:Broadcast a one-off or recurring message to an entire list through Resend,alongside your transactional email.}.lg\:pc-q_Can_I_override_the_Resend_request_or_send_attachments\?{q:Can I override the Resend request or send attachments?}.lg\:pc-q_Can_Courier_send_data_back_to_RudderStack\?{q:Can Courier send data back to RudderStack?}.lg\:pc-a_Yes\._The_integration_is_bidirectional\._Courier_forwards_its_notification_events_to_RudderStack_using_a_write_key_and_data_plane_URL\,_so_delivery_data_can_activate_downstream_in_your_warehouse_and_other_connected_tools\.{a:Yes. The integration is bidirectional. Courier forwards its notification events to RudderStack using a write key and data plane URL,so delivery data can activate downstream in your warehouse and other connected tools.}.lg\:pc-q_How_do_Segment_identify_calls_update_Courier_recipient_profiles\?{q:How do Segment identify calls update Courier recipient profiles?}.lg\:pc-a_Identify_traits\,_including_name_and_email\,_update_the_matching_Courier_recipient_profile_over_time\._Keep_the_email_inside_the_traits_object_so_Courier_stores_it_correctly_for_use_in_email_delivery\.{a:Identify traits,including name and email,update the matching Courier recipient profile over time. Keep the email inside the traits object so Courier stores it correctly for use in email delivery.}.lg\:pc-body_Broadcast_a_one-off_or_recurring_message_to_an_entire_list_through_SendGrid\,_alongside_your_transactional_email\.{body:Broadcast a one-off or recurring message to an entire list through SendGrid,alongside your transactional email.}.lg\:pc-q_Can_I_import_my_SendGrid_templates_into_Courier\?{q:Can I import my SendGrid templates into Courier?}.lg\:pc-q_What_phone_number_format_does_Sinch_require_in_Courier\?{q:What phone number format does Sinch require in Courier?}.lg\:pc-body_Slack_joins_your_stack_from_the_same_Send_API_and_templates_you_already_use\,_so_there_is_nothing_new_to_wire_up\.{body:Slack joins your stack from the same Send API and templates you already use,so there is nothing new to wire up.}.lg\:pc-q_Does_Courier_confirm_when_a_Slack_message_is_delivered\?{q:Does Courier confirm when a Slack message is delivered?}.lg\:pc-q_Can_I_override_the_SMSCentral_username_or_password_per_message\?{q:Can I override the SMSCentral username or password per message?}.lg\:pc-a_Yes\._Alongside_the_body_fields\,_Courier_exposes_username_and_password_as_config_overrides\,_so_one_Courier_account_can_route_sends_through_different_SMSCentral_logins_without_setting_up_separate_provider_integrations\.{a:Yes. Alongside the body fields,Courier exposes username and password as config overrides,so one Courier account can route sends through different SMSCentral logins without setting up separate provider integrations.}.lg\:pc-body_Broadcast_a_one-off_or_recurring_message_to_an_entire_list_through_SMTP\,_alongside_your_transactional_email\.{body:Broadcast a one-off or recurring message to an entire list through SMTP,alongside your transactional email.}.lg\:pc-q_Does_Courier_send_from_fixed_IP_addresses\?{q:Does Courier send from fixed IP addresses?}.lg\:pc-body_Broadcast_a_one-off_or_recurring_message_to_an_entire_list_through_SparkPost\,_alongside_your_transactional_email\.{body:Broadcast a one-off or recurring message to an entire list through SparkPost,alongside your transactional email.}.lg\:pc-q_Can_I_add_attachments_or_other_SparkPost_fields_to_a_message\?{q:Can I add attachments or other SparkPost fields to a message?}.lg\:pc-body_Pick_a_language_and_let_Courier_translate_your_message_with_AI\,_then_tweak_any_string\._One_template\,_every_market\.{body:Pick a language and let Courier translate your message with AI,then tweak any string. One template,every market.}.lg\:pc-q_Can_I_customize_the_Stream_Chat_request_body_or_endpoint_region\?{q:Can I customize the Stream Chat request body or endpoint region?}.lg\:pc-a_Yes\._Through_provider_overrides_on_the_stream-chat_provider\,_you_can_override_any_field_on_Stream\'s_POST_\/channels\/\{type\}\/\{id\}\/message_body\,_swap_apiKey\,_apiSecret\,_or_senderId_per_send\,_and_set_baseUrl\,_which_defaults_to_Stream\'s_US_East_region\.{a:Yes. Through provider overrides on the stream-chat provider,you can override any field on Stream"s POST /channels/type/id/message body, swap apiKey, apiSecret, or senderId per send, and set baseUrl, which defaults to Stream"s US East region.}.lg\:pc-q_Can_I_override_Telnyx_settings_for_a_single_message\?{q:Can I override Telnyx settings for a single message?}.lg\:pc-a_Yes\._Use_message\.providers\.telnyx\.override_to_change_the_message_text\,_recipient_to\,_API_key\,_or_endpoint_URL_for_one_send\,_without_touching_your_saved_integration_settings\.{a:Yes. Use message.providers.telnyx.override to change the message text,recipient to,API key,or endpoint URL for one send,without touching your saved integration settings.}.lg\:pc-q_Can_I_override_my_Twilio_credentials_per_message\?{q:Can I override my Twilio credentials per message?}.lg\:pc-a_You_can\,_but_keep_credentials_at_the_account_level_for_tracking\._Courier_polls_Twilio_for_delivery_status\,_and_using_per-message_credential_overrides_disables_that_polling\,_so_you_lose_delivery_status_for_those_messages\.{a:You can,but keep credentials at the account level for tracking. Courier polls Twilio for delivery status,and using per-message credential overrides disables that polling,so you lose delivery status for those messages.}.lg\:pc-q_Can_I_override_Vonage_settings_for_a_single_message\?{q:Can I override Vonage settings for a single message?}.lg\:pc-a_Yes\._Anything_inside_message\.providers\.vonage\.override_replaces_what_Courier_sends_to_the_Vonage_SMS_API\._You_can_override_apiKey\,_apiSecret\,_fromNumber\,_and_url_per_message\,_useful_for_multi-tenant_sending_from_different_accounts\.{a:Yes. Anything inside message.providers.vonage.override replaces what Courier sends to the Vonage SMS API. You can override apiKey,apiSecret,fromNumber,and url per message,useful for multi-tenant sending from different accounts.}.lg\:pc-tag_Journeys{tag:Journeys}.lg\:pc-title_Fire_an_HTTP_request_inside_a_flow{title:Fire an HTTP request inside a flow}.lg\:pc-body_Use_the_webhook_as_a_step_in_a_journey\,_so_a_multi-step_notification_can_call_your_systems_with_delays_and_branching\.{body:Use the webhook as a step in a journey,so a multi-step notification can call your systems with delays and branching.}.lg\:pc-q_Can_I_customize_the_request_Courier_sends_to_my_endpoint\?{q:Can I customize the request Courier sends to my endpoint?}.lg\:pc-q_Can_I_change_the_Twilio_sender_or_template_per_send\?{q:Can I change the Twilio sender or template per send?}.lg\:pc-a_Yes\._Courier_supports_config_overrides\,_so_you_can_swap_the_Twilio_credentials_and_\"From\"_number_at_send_time\,_and_set_the_Content_SID_dynamically_through_body_overrides_for_a_specific_message\.{a:Yes. Courier supports config overrides,so you can swap the Twilio credentials and "From" number at send time,and set the Content SID dynamically through body overrides for a specific message.}.lg\:pc-grid-tc_repeat\(var\(--customer-cols\)\,_1fr\){grid-template-columns:repeat(var(--customer-cols),1fr)}.lg\:pc-bg-s_100\%{background-size:100%}.lg\:pc-ai_flex-start{align-items:flex-start}.lg\:pc-ta_initial{text-align:initial}.lg\:pc-fs_24px{font-size:24px}.lg\:pc-fs_56px{font-size:56px}.lg\:pc-flex-d_column{flex-direction:column}.lg\:pc-fs_36px{font-size:36px}.lg\:pc-fs_18px{font-size:18px}.lg\:pc-fs_32px{font-size:32px}.lg\:pc-grid-tc_repeat\(3\,_minmax\(0\,_1fr\)\){grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:pc-cg_20{column-gap:var(--pc-spacing-20)}.lg\:pc-fs_50px{font-size:50px}.lg\:pc-d_flex{display:flex}.lg\:pc-ai_stretch{align-items:stretch}.lg\:pc-cg_72px{column-gap:72px}.lg\:pc-grid-tc_repeat\(3\,_1fr\){grid-template-columns:repeat(3,1fr)}.lg\:pc-fs_52px{font-size:52px}.lg\:pc-pos_sticky{position:sticky}.lg\:pc-fs_54px{font-size:54px}.lg\:pc-fs_48px{font-size:48px}.lg\:pc-lh_64px{line-height:64px}.lg\:pc-fs_20px{font-size:20px}.lg\:pc-fs_16px{font-size:16px}.lg\:pc-fs_32{font-size:32px}.lg\:pc-cg_9{column-gap:var(--pc-spacing-9)}.lg\:pc-rg_5{row-gap:var(--pc-spacing-5)}.lg\:pc-grid-tc_1\.05fr_\.95fr{grid-template-columns:1.05fr .95fr}.lg\:pc-w_103px{width:103px}.lg\:pc-mt_132px{margin-top:132px}.lg\:pc-mt_0{margin-top:var(--pc-spacing-0)}.lg\:pc-pt_4{padding-top:var(--pc-spacing-4)}.lg\:pc-pb_4{padding-bottom:var(--pc-spacing-4)}.lg\:pc-pl_60px{padding-left:60px}.lg\:pc-mb_55px{margin-bottom:55px}.lg\:pc-mt_62px{margin-top:62px}.lg\:pc-mt_112px{margin-top:112px}.lg\:pc-pl_52px{padding-left:52px}.lg\:pc-pr_52px{padding-right:52px}.lg\:pc-ml_8{margin-left:var(--pc-spacing-8)}.lg\:pc-mr_0{margin-right:var(--pc-spacing-0)}.lg\:pc-mt_88px{margin-top:88px}.lg\:pc-mb_0{margin-bottom:var(--pc-spacing-0)}.lg\:pc-mb_32px{margin-bottom:32px}.lg\:pc-mr_28px{margin-right:28px}.lg\:pc-pb_40px{padding-bottom:40px}.lg\:pc-pb_72px{padding-bottom:72px}.lg\:pc-pt_48px{padding-top:48px}.lg\:pc-mr_30px{margin-right:30px}.lg\:pc-mb_-132px{margin-bottom:-132px}.lg\:pc-pt_110px{padding-top:110px}.lg\:pc-pb_80px{padding-bottom:80px}.lg\:pc-ml_-10{margin-left:calc(var(--pc-spacing-10) * -1)}.lg\:pc-w_85px{width:85px}.lg\:pc-pr_60px{padding-right:60px}.lg\:pc-mt_3rem{margin-top:3rem}.lg\:pc-h_420px{height:420px}.lg\:pc-h_350px{height:350px}.lg\:pc-h_340px{height:340px}.lg\:pc-pb_56px{padding-bottom:56px}.lg\:pc-pt_40px{padding-top:40px}.lg\:pc-max-h_112px{max-height:112px}.lg\:pc-max-w_30vw{max-width:30vw}.lg\:pc-w_324px{width:324px}.lg\:pc-mt_100px{margin-top:100px}.lg\:pc-mr_16{margin-right:var(--pc-spacing-16)}.lg\:pc-ml_388px{margin-left:388px}.lg\:pc-pl_102px{padding-left:102px}.lg\:pc-mr_-78px{margin-right:-78px}.lg\:pc-min-w_250px{min-width:250px}.lg\:pc-pt_170px{padding-top:170px}.lg\:pc-pb_100px{padding-bottom:100px}.lg\:pc-mt_5{margin-top:var(--pc-spacing-5)}.lg\:pc-max-w_1132px{max-width:1132px}.lg\:pc-w_260px{width:260px}.lg\:pc-mr_50px{margin-right:50px}.lg\:pc-pt_60px{padding-top:60px}.lg\:pc-mt_30px{margin-top:30px}.lg\:pc-w_auto{width:auto}.lg\:pc-max-h_calc\(100vh_-_40px\){max-height:calc(100vh - 40px)}.group:is(:hover,[data-hover]) .groupHover\:lg\:pc-bg_\#fff{background:#fff}.group:is(:hover,[data-hover]) .groupHover\:lg\:pc-c_nav\.background{color:var(--pc-colors-nav-background)}.group:is(:hover,[data-hover]) .groupHover\:lg\:pc-c_rgb\(255\,255\,255\,0\.72\){color:#ffffffb8}}@media screen and (min-width:80rem){.xl\:pc-p_0_100px{padding:0 100px}.xl\:pc-p_32px{padding:32px}.xl\:pc-px_100px{padding-inline:100px}.xl\:pc-mx_0{margin-inline:var(--pc-spacing-0)}.xl\:pc-bdr_12px{border-radius:12px}.xl\:pc-px_0{padding-inline:var(--pc-spacing-0)}.xl\:pc-gap_160px{gap:160px}.xl\:pc-columns_3{column-count:3}.xl\:pc-cg_122px{column-gap:122px}.xl\:pc-q_Is_Courier_a_replacement_for_Amply\?{q:Is Courier a replacement for Amply?}.xl\:pc-q_Is_Courier_a_replacement_for_APNs\?{q:Is Courier a replacement for APNs?}.xl\:pc-q_Is_Courier_a_replacement_for_AWS_SES\?{q:Is Courier a replacement for AWS SES?}.xl\:pc-a_No\._Courier_sits_in_front_of_SES\,_which_still_delivers_the_actual_email\._Courier_adds_the_Send_API\,_Journeys\,_and_Design_Studio\,_plus_SMS\,_push\,_and_Courier_Inbox\,_so_you_orchestrate_SES_alongside_other_channels\.{a:No. Courier sits in front of SES,which still delivers the actual email. Courier adds the Send API,Journeys,and Design Studio,plus SMS,push,and Courier Inbox,so you orchestrate SES alongside other channels.}.xl\:pc-q_Is_Courier_a_replacement_for_AWS_SNS\?{q:Is Courier a replacement for AWS SNS?}.xl\:pc-q_Is_Courier_a_replacement_for_Azure_Communication_Services_SMS\?{q:Is Courier a replacement for azure Communication Services SMS?}.xl\:pc-a_No\._Azure_still_delivers_the_SMS_through_your_resource\._Courier_sits_in_front_as_orchestration\,_adding_the_Send_API\,_Design_Studio\,_and_Journeys\,_plus_push_and_Courier_Inbox_as_extra_channels\.{a:No. azure still delivers the SMS through your resource. Courier sits in front as orchestration,adding the Send API,Design Studio,and Journeys,plus push and Courier Inbox as extra channels.}.xl\:pc-q_Is_Courier_an_AI_provider\,_or_does_it_replace_ChatGPT_\(OpenAI_models\)\?{q:Is Courier an AI provider,or does it replace ChatGPT (OpenAI models)?}.xl\:pc-q_Is_Courier_an_AI_provider\,_or_does_it_replace_Claude\?{q:Is Courier an AI provider,or does it replace Claude?}.xl\:pc-q_Do_I_need_a_Custom_Provider_if_Courier_already_supports_my_provider\?{q:Do I need a Custom Provider if Courier already supports my provider?}.xl\:pc-a_No\._If_Courier_has_a_built-in_provider_for_your_service\,_use_that_integration_directly\._The_Custom_Provider_exists_for_anything_Courier_does_not_support_natively\,_delivered_as_one_channel_alongside_email\,_SMS\,_push\,_and_Courier_Inbox\.{a:No. If Courier has a built-in provider for your service,use that integration directly. The Custom Provider exists for anything Courier does not support natively,delivered as one channel alongside email,SMS,push,and Courier Inbox.}.xl\:pc-q_Does_Courier_send_notifications_through_Datadog\?{q:Does Courier send notifications through Datadog?}.xl\:pc-q_Is_Courier_a_replacement_for_Expo\?{q:Is Courier a replacement for Expo?}.xl\:pc-a_No\._Expo_still_delivers_the_push_to_devices\._Courier_adds_one_API_for_content_design\,_Journeys\,_and_other_channels_like_email\,_SMS\,_and_Courier_Inbox_on_top_of_Expo_delivery\.{a:No. Expo still delivers the push to devices. Courier adds one API for content design,Journeys,and other channels like email,SMS,and Courier Inbox on top of Expo delivery.}.xl\:pc-q_Is_Courier_a_replacement_for_FCM\?{q:Is Courier a replacement for FCM?}.xl\:pc-a_No\._FCM_still_delivers_the_push_notifications_to_devices\._Courier_sits_in_front\,_giving_you_one_Send_API\,_content_design_in_Design_Studio\,_Journeys\,_and_other_channels_like_email\,_SMS\,_and_Courier_Inbox\.{a:No. FCM still delivers the push notifications to devices. Courier sits in front,giving you one Send API,content design in Design Studio,Journeys,and other channels like email,SMS,and Courier Inbox.}.xl\:pc-q_Is_Courier_a_replacement_for_Gmail\?{q:Is Courier a replacement for Gmail?}.xl\:pc-q_Is_Courier_a_replacement_for_Hightouch\?{q:Is Courier a replacement for Hightouch?}.xl\:pc-q_Is_Courier_a_replacement_for_MailerSend\?{q:Is Courier a replacement for MailerSend?}.xl\:pc-a_No\._Courier_sits_in_front_of_MailerSend\,_which_still_delivers_your_email\._Courier_adds_the_Send_API\,_Journeys\,_and_Design_Studio\,_plus_SMS\,_push\,_and_Courier_Inbox\,_so_one_integration_drives_every_channel\.{a:No. Courier sits in front of MailerSend,which still delivers your email. Courier adds the Send API,Journeys,and Design Studio,plus SMS,push,and Courier Inbox,so one integration drives every channel.}.xl\:pc-q_Is_Courier_a_replacement_for_Mailgun\?{q:Is Courier a replacement for Mailgun?}.xl\:pc-a_No\._Courier_sits_in_front_of_Mailgun\,_which_still_delivers_every_email\._Courier_adds_the_Send_API\,_Journeys\,_and_Design_Studio\,_plus_other_channels_like_SMS\,_push\,_and_Courier_Inbox\.{a:No. Courier sits in front of Mailgun,which still delivers every email. Courier adds the Send API,Journeys,and Design Studio,plus other channels like SMS,push,and Courier Inbox.}.xl\:pc-q_Is_Courier_a_replacement_for_Mailjet\?{q:Is Courier a replacement for Mailjet?}.xl\:pc-a_No\._Courier_sits_in_front_of_Mailjet\,_which_still_delivers_your_email\._Courier_adds_a_single_Send_API\,_Journeys\,_and_Design_Studio\,_plus_other_channels_like_SMS\,_push\,_and_Courier_Inbox_on_top_of_it\.{a:No. Courier sits in front of Mailjet,which still delivers your email. Courier adds a single Send API,Journeys,and Design Studio,plus other channels like SMS,push,and Courier Inbox on top of it.}.xl\:pc-q_Is_Courier_a_replacement_for_Mandrill\?{q:Is Courier a replacement for Mandrill?}.xl\:pc-q_Is_Courier_a_replacement_for_Bird\?{q:Is Courier a replacement for Bird?}.xl\:pc-a_No\._Courier_sits_in_front_of_Bird\,_which_still_delivers_the_SMS\._Courier_adds_one_Send_API\,_Design_Studio\,_and_Journeys\,_plus_channels_like_push_and_Courier_Inbox\,_so_you_orchestrate_SMS_alongside_them\.{a:No. Courier sits in front of Bird,which still delivers the SMS. Courier adds one Send API,Design Studio,and Journeys,plus channels like push and Courier Inbox,so you orchestrate SMS alongside them.}.xl\:pc-q_Is_Courier_a_replacement_for_MessageMedia\?{q:Is Courier a replacement for MessageMedia?}.xl\:pc-q_Is_Microsoft_Teams_just_for_internal_alerts_with_Courier\?{q:Is Microsoft Teams just for internal alerts with Courier?}.xl\:pc-a_No\._Teams_is_a_user-facing_notification_channel_in_Courier\,_not_only_internal_ops_or_alerting\._You_can_send_end-user_product_notifications_there_alongside_email\,_SMS\,_push\,_and_the_in-app_Courier_Inbox\.{a:No. Teams is a user-facing notification channel in Courier,not only internal ops or alerting. You can send end-user product notifications there alongside email,SMS,push,and the in-app Courier Inbox.}.xl\:pc-q_Does_Courier_send_notifications_through_New_Relic\?{q:Does Courier send notifications through New Relic?}.xl\:pc-q_Is_Courier_an_identity_provider\?{q:Is Courier an identity provider?}.xl\:pc-q_Is_Courier_a_replacement_for_OneSignal\?{q:Is Courier a replacement for OneSignal?}.xl\:pc-q_Does_Courier_replace_PagerDuty\?{q:Does Courier replace PagerDuty?}.xl\:pc-q_Is_Courier_a_replacement_for_Plivo\?{q:Is Courier a replacement for Plivo?}.xl\:pc-a_No\._Courier_sits_in_front_of_Plivo\,_which_still_delivers_the_SMS_over_its_carrier_network\._Courier_adds_the_Send_API\,_Design_Studio\,_and_Journeys\,_plus_push_and_Courier_Inbox\,_so_you_orchestrate_SMS_alongside_other_channels\.{a:No. Courier sits in front of Plivo,which still delivers the SMS over its carrier network. Courier adds the Send API,Design Studio,and Journeys,plus push and Courier Inbox,so you orchestrate SMS alongside other channels.}.xl\:pc-q_Is_Courier_a_replacement_for_Postmark\?{q:Is Courier a replacement for Postmark?}.xl\:pc-a_No\._Courier_sits_in_front_of_Postmark\,_which_still_delivers_your_email\._Courier_adds_the_Send_API\,_Journeys\,_and_Design_Studio\,_plus_other_channels_like_SMS\,_push\,_and_Courier_Inbox_on_one_integration\.{a:No. Courier sits in front of Postmark,which still delivers your email. Courier adds the Send API,Journeys,and Design Studio,plus other channels like SMS,push,and Courier Inbox on one integration.}.xl\:pc-q_Is_Courier_a_replacement_for_Pusher_Beams\?{q:Is Courier a replacement for Pusher Beams?}.xl\:pc-a_No\._Pusher_Beams_still_delivers_the_push_to_devices\._Courier_adds_one_Send_API\,_content_design\,_Journeys\,_and_other_channels_like_email\,_SMS\,_and_Courier_Inbox_on_top_of_it\.{a:No. Pusher Beams still delivers the push to devices. Courier adds one Send API,content design,Journeys,and other channels like email,SMS,and Courier Inbox on top of it.}.xl\:pc-q_Is_Courier_a_replacement_for_Resend\?{q:Is Courier a replacement for Resend?}.xl\:pc-a_No\._Courier_sits_in_front_of_Resend\,_and_Resend_still_delivers_the_email\._Courier_adds_the_Send_API\,_Journeys\,_and_Design_Studio\,_plus_other_channels_like_SMS\,_push\,_and_Courier_Inbox\.{a:No. Courier sits in front of Resend,and Resend still delivers the email. Courier adds the Send API,Journeys,and Design Studio,plus other channels like SMS,push,and Courier Inbox.}.xl\:pc-q_Is_Courier_a_replacement_for_RudderStack\?{q:Is Courier a replacement for RudderStack?}.xl\:pc-q_Is_Courier_a_replacement_for_Segment\?{q:Is Courier a replacement for Segment?}.xl\:pc-q_Is_Courier_a_replacement_for_SendGrid\?{q:Is Courier a replacement for SendGrid?}.xl\:pc-a_No\._Courier_sits_in_front_of_SendGrid\,_which_still_delivers_your_email\._Courier_adds_the_Send_API\,_Journeys\,_and_Design_Studio\,_plus_SMS\,_push\,_and_Courier_Inbox_on_one_API\.{a:No. Courier sits in front of SendGrid,which still delivers your email. Courier adds the Send API,Journeys,and Design Studio,plus SMS,push,and Courier Inbox on one API.}.xl\:pc-q_Is_Courier_a_replacement_for_Sinch\?{q:Is Courier a replacement for Sinch?}.xl\:pc-a_No\._Sinch_still_delivers_the_SMS\._Courier_sits_in_front_as_one_Send_API\,_adding_Design_Studio_and_Journeys\,_plus_push\,_email\,_and_Courier_Inbox_across_channels\.{a:No. Sinch still delivers the SMS. Courier sits in front as one Send API,adding Design Studio and Journeys,plus push,email,and Courier Inbox across channels.}.xl\:pc-q_Is_Slack_just_for_internal_alerts_with_Courier\?{q:Is Slack just for internal alerts with Courier?}.xl\:pc-q_Is_Courier_a_replacement_for_SMSCentral\?{q:Is Courier a replacement for SMSCentral?}.xl\:pc-a_No\._SMSCentral_still_delivers_your_SMS\._Courier_sits_in_front_as_one_Send_API\,_adding_Design_Studio\,_Journeys\,_plus_push\,_email\,_and_Courier_Inbox\,_so_you_orchestrate_SMSCentral_alongside_your_other_channels\.{a:No. SMSCentral still delivers your SMS. Courier sits in front as one Send API,adding Design Studio,Journeys,plus push,email,and Courier Inbox,so you orchestrate SMSCentral alongside your other channels.}.xl\:pc-q_Is_Courier_a_replacement_for_my_SMTP_server\?{q:Is Courier a replacement for my SMTP server?}.xl\:pc-q_Is_Courier_a_replacement_for_SparkPost\?{q:Is Courier a replacement for SparkPost?}.xl\:pc-a_No\._Courier_sits_in_front_of_SparkPost\,_which_still_delivers_your_email\._Courier_adds_the_Send_API\,_Journeys\,_and_Design_Studio\,_plus_SMS\,_push\,_and_Courier_Inbox_on_one_API\.{a:No. Courier sits in front of SparkPost,which still delivers your email. Courier adds the Send API,Journeys,and Design Studio,plus SMS,push,and Courier Inbox on one API.}.xl\:pc-q_Is_Courier_a_replacement_for_Stream_Chat\?{q:Is Courier a replacement for Stream Chat?}.xl\:pc-q_Is_Courier_a_replacement_for_Telnyx\?{q:Is Courier a replacement for Telnyx?}.xl\:pc-a_No\._Telnyx_still_delivers_the_SMS_from_your_number\._Courier_sits_in_front\,_adding_the_Send_API\,_Design_Studio\,_and_Journeys\,_plus_push_and_Courier_Inbox_so_one_integration_reaches_multiple_channels\.{a:No. Telnyx still delivers the SMS from your number. Courier sits in front,adding the Send API,Design Studio,and Journeys,plus push and Courier Inbox so one integration reaches multiple channels.}.xl\:pc-q_Is_Courier_a_replacement_for_Twilio\?{q:Is Courier a replacement for Twilio?}.xl\:pc-a_No\._Courier_sits_in_front_of_Twilio\,_which_still_delivers_the_SMS\._Courier_adds_a_unified_Send_API\,_Design_Studio\,_and_Journeys\,_plus_other_channels_like_push_and_Courier_Inbox\.{a:No. Courier sits in front of Twilio,which still delivers the SMS. Courier adds a unified Send API,Design Studio,and Journeys,plus other channels like push and Courier Inbox.}.xl\:pc-q_Is_Courier_a_replacement_for_Vonage\?{q:Is Courier a replacement for Vonage?}.xl\:pc-a_No\._The_Webhook_channel_sends_notifications_out_from_Courier_to_an_endpoint_you_define\._Inbound_webhooks_are_separate_and_receive_events_into_Courier\._This_page_covers_the_outbound_delivery_channel\.{a:No. The Webhook channel sends notifications out from Courier to an endpoint you define. Inbound webhooks are separate and receive events into Courier. This page covers the outbound delivery channel.}.xl\:pc-q_Is_Courier_a_replacement_for_WhatsApp\?{q:Is Courier a replacement for WhatsApp?}.xl\:pc-grid-tc_repeat\(3\,_minmax\(0\,_1fr\)\){grid-template-columns:repeat(3,minmax(0,1fr))}.xl\:pc-cg_92px{column-gap:92px}.xl\:pc-flex-d_row{flex-direction:row}.xl\:pc-grid-tc_repeat\(3\,_1fr\){grid-template-columns:repeat(3,1fr)}.xl\:pc-max-w_1240px{max-width:1240px}.xl\:pc-w_80\%{width:80%}.xl\:pc-right_32px{right:32px}.xl\:pc-left_32px{left:32px}.xl\:pc-bottom_32px{bottom:32px}.xl\:pc-mt_72px{margin-top:72px}.xl\:pc-pt_56px{padding-top:56px}.xl\:pc-pt_80px{padding-top:80px}.xl\:pc-max-w_360px{max-width:360px}.xl\:pc-max-w_700px{max-width:700px}}@media screen and (min-width:96rem){.\32xl\:pc-w_1392px{width:1392px}.\32xl\:pc-max-w_20vw{max-width:20vw}}}@font-face{font-family:__Inter_f367f3;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__Inter_f367f3;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Inter_f367f3;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:__Inter_f367f3;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:__Inter_f367f3;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Inter_f367f3;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Inter_f367f3;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Inter_Fallback_f367f3;src:local("Arial");ascent-override:90.49%;descent-override:22.56%;line-gap-override:0.00%;size-adjust:107.06%}.__className_f367f3{font-family:__Inter_f367f3,__Inter_Fallback_f367f3,system-ui,Segoe UI,Roboto,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol;font-style:normal}.__variable_f367f3{--font-inter:"__Inter_f367f3","__Inter_Fallback_f367f3",system-ui,Segoe UI,Roboto,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol}@font-face{font-family:__monaSansFont_64691f;src:url(/_next/static/media/3f54b1d5a9c0da2e-s.p.woff2) format("woff2");font-display:swap;font-weight:200 900;font-style:normal}@font-face{font-family:__monaSansFont_Fallback_64691f;src:local("Arial");ascent-override:106.37%;descent-override:31.23%;line-gap-override:0.00%;size-adjust:102.48%}.__className_64691f{font-family:__monaSansFont_64691f,__monaSansFont_Fallback_64691f,system-ui,Segoe UI,Roboto,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol;font-style:normal}.__variable_64691f{--font-mona-sans:"__monaSansFont_64691f","__monaSansFont_Fallback_64691f",system-ui,Segoe UI,Roboto,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol}