Use OneSignal’s built in AI to write and adjust push notifications to suit your needs and send the right message quickly and easily
The OneSignal AI Message Composer helps you quickly generate and fine-tune push notification content using a simple prompt. It’s designed to help you strike the right tone and messaging for your audience—whether you’re starting from scratch or optimizing an existing message.With just one prompt, the AI can generate a complete push notification or enhance your current text. You can continue refining your message by selecting predefined tone styles or entering additional instructions to get closer to your desired output.
In the OneSignal dashboard, click ”+ Create”, select “Push”, then choose “AI-generated Push”.
Image showing 'AI-generated Push' option
2
Describe your message
Enter a description of what you want to say, or choose from the predefined prompt suggestions. Then click “Generate” to create the initial message.
Image showing AI input box
Image showing AI-generated message
3
Refine your message
To adjust tone or content, click “Refine”. You can choose from preset
tonal options or select “Writing Assistant” to enter a custom prompt for
further refinements.
Image showing AI composer refine option
Image showing AI composer writing assistant option
4
Insert your message
Once you’re satisfied with the message or ready to make final manual edits,
click “Insert” to add the AI-generated content to your notification.
5
Finalize and send
Add any additional content or adjust settings as needed. Then complete the usual steps to send your push notification.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"OneSignal Documentation","description":"OneSignal is a platform for sending push notifications, emails, in-app messages, and SMS campaigns via a single API, Journey Builder, and a dashboard.","colors":{"primary":"#3A3DB3","light":"#E54B4D","dark":"#3A3DB3"},"logo":{"light":"https://mintcdn.com/onesignal/yJcueeDCO7UpHnnY/logo/OneSignal-Logo.svg?fit=max\u0026auto=format\u0026n=yJcueeDCO7UpHnnY\u0026q=85\u0026s=1fcfb6fef6d820fd9d99c74850711107","dark":"https://mintcdn.com/onesignal/s4WC_KzLxf8ornqq/logo/OneSignal-Logo-White.svg?fit=max\u0026auto=format\u0026n=s4WC_KzLxf8ornqq\u0026q=85\u0026s=2573a53b5aea961e18c82b3af8f31925"},"favicon":"https://mintcdn.com/onesignal/SGduBFHpiRdg5l6h/favicon.ico?fit=max\u0026auto=format\u0026n=SGduBFHpiRdg5l6h\u0026q=85\u0026s=c0a99fadc0553c658a83741c5611cef4","api":{"examples":{"languages":["curl","typescript","python","php","go","ruby","java","csharp","rust"],"autogenerate":true}},"navbar":{"links":[{"href":"mailto:support@onesignal.com","label":"Support"}],"primary":{"type":"button","label":"Dashboard","href":"https://dashboard.onesignal.com"}},"footer":{"socials":{"github":"https://github.com/OneSignal","linkedin":"https://linkedin.com/company/onesignal","youtube":"https://www.youtube.com/@onesignalofficial/playlists"}},"seo":{"metatags":{"apple-mobile-web-app-title":"OneSignal Docs"}},"fonts":{"family":"Nunito Sans"},"styling":{"eyebrows":"breadcrumbs","latex":true},"integrations":{"ga4":{"measurementId":"G-2DGWL0VYP5"},"posthog":{"apiKey":"phc_vZpvE0f5eyzcOt30FHer34yddVmNdo9kmlMVRBzLMtn","apiHost":"https://eu.i.posthog.com","sessionRecording":true}},"contextual":{"options":["copy","view","chatgpt","claude"],"display":"header"},"navigation":{"languages":[{"language":"en","href":"docs/en/home"},{"language":"cn","href":"docs/cn/home"},{"language":"ko","href":"docs/ko/home"},{"language":"ja","href":"docs/ja/home"},{"language":"tr","href":"docs/tr/home"},{"language":"pt-BR","href":"docs/pt-BR/home"},{"language":"es","href":"docs/es/home"},{"language":"fr","href":"docs/fr/home"}]}},"deployment":{"deploymentMetadataValue":{"subdomain":"onesignal","hasAudioNarration":false,"actualSubdomain":"onesignal","customDomains":["documentation.onesignal.com"],"gitSource":{"type":"github","owner":"onesignal","repo":"mintlify-docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"feedback":{"thumbs":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6af3b762ba298f9b99480a99","clientVersion":"0.0.4102","searchFilterCounts":[{"language":"en","tag":"User Guides","count":204},{"language":"es","tag":"Guías del Usuario","count":178},{"language":"fr","tag":"Guides utilisateur","count":178},{"language":"ja","tag":"ユーザーガイド","count":178},{"language":"ko","tag":"사용자 가이드","count":178},{"language":"pt-BR","tag":"Guia do Usuário","count":178},{"language":"tr","tag":"Kullanıcı Kılavuzları","count":178},{"language":"cn","tag":"用户指南","count":176},{"language":"en","tag":"Message channels","count":90},{"language":"es","tag":"Canales de mensajería","count":84},{"language":"fr","tag":"Canaux de messagerie","count":84},{"language":"ja","tag":"メッセージングチャネル","count":84},{"language":"ko","tag":"메시지 채널","count":84},{"language":"pt-BR","tag":"Canais de mensagem","count":84},{"language":"tr","tag":"Mesaj kanalları","count":84},{"language":"cn","tag":"消息渠道","count":83},{"language":"default","tag":"API Reference","count":68},{"language":"default","tag":"API reference","count":64},{"language":"en","tag":"Analytics \u0026 Integrations","count":53},{"language":"es","tag":"Analítica \u0026 Integraciones","count":52},{"language":"fr","tag":"Analyses et intégrations","count":52},{"language":"ja","tag":"分析 \u0026 統合","count":52},{"language":"ko","tag":"분석 \u0026 통합","count":52},{"language":"pt-BR","tag":"Análises \u0026 Integrações","count":52},{"language":"tr","tag":"Analitik ve Entegrasyonlar","count":52},{"language":"cn","tag":"分析和集成","count":51},{"language":"cn","tag":"开发者指南","count":48},{"language":"es","tag":"Guías del desarrollador","count":48},{"language":"fr","tag":"Guides développeur","count":48},{"language":"ja","tag":"開発者ガイド","count":48},{"language":"ko","tag":"개발자 가이드","count":48},{"language":"tr","tag":"Geliştirici Kılavuzları","count":48},{"language":"en","tag":"Developer Guides","count":47},{"language":"pt-BR","tag":"Guia de desenvolvedor","count":47},{"language":"en","tag":"Integrations","count":37},{"language":"es","tag":"Integraciones","count":37},{"language":"fr","tag":"Intégrations","count":37},{"language":"ja","tag":"統合","count":37},{"language":"ko","tag":"통합","count":37},{"language":"pt-BR","tag":"Integrações","count":37},{"language":"tr","tag":"Entegrasyonlar","count":37},{"language":"cn","tag":"集成","count":36},{"language":"en","tag":"Tutorials","count":35},{"language":"cn","tag":"推送通知","count":31},{"language":"cn","tag":"OneSignal 作为目的地","count":31},{"language":"en","tag":"Push","count":31},{"language":"en","tag":"OneSignal as destination","count":31},{"language":"es","tag":"Push notificaciones","count":31},{"language":"es","tag":"OneSignal como destino","count":31},{"language":"fr","tag":"Push","count":31},{"language":"fr","tag":"OneSignal comme destination","count":31},{"language":"ja","tag":"プッシュ通知","count":31},{"language":"ja","tag":"OneSignal as 宛先","count":31},{"language":"ko","tag":"푸시","count":31},{"language":"ko","tag":"OneSignal을 데이터 목적지로 사용","count":31},{"language":"pt-BR","tag":"Push notificações","count":31},{"language":"pt-BR","tag":"OneSignal como destino","count":31},{"language":"tr","tag":"Anlık bildirimler","count":31},{"language":"tr","tag":"OneSignal hedef","count":31},{"language":"en","tag":"Mobile SDKs","count":26},{"language":"cn","tag":"移动SDK","count":25},{"language":"es","tag":"SDKs móviles","count":25},{"language":"fr","tag":"SDK mobiles","count":25},{"language":"ja","tag":"モバイルSDK","count":25},{"language":"ko","tag":"모바일 SDKs","count":25},{"language":"pt-BR","tag":"SDKs móveis","count":25},{"language":"tr","tag":"Mobil SDK'lar","count":25},{"language":"cn","tag":"教程","count":24},{"language":"es","tag":"Tutoriales","count":24},{"language":"fr","tag":"Tutoriels","count":24},{"language":"ja","tag":"チュートリアル","count":24},{"language":"ko","tag":"튜토리얼","count":24},{"language":"pt-BR","tag":"Tutoriais","count":24},{"language":"tr","tag":"Eğitimler","count":24},{"language":"en","tag":"Mobile SDK setup","count":19},{"language":"cn","tag":"移动SDK设置","count":18},{"language":"es","tag":"Configuración del SDK móvil","count":18},{"language":"fr","tag":"Configuration SDK mobile","count":18},{"language":"ja","tag":"モバイルSDKセットアップ","count":18},{"language":"ko","tag":"모바일 SDK 설정","count":18},{"language":"pt-BR","tag":"Configuração do SDK móvel","count":18},{"language":"tr","tag":"Mobil SDK kurulumu","count":18},{"language":"default","tag":"Messages","count":9},{"language":"default","tag":"Users","count":9},{"language":"default","tag":"Organization","count":9},{"language":"default","tag":"Journeys","count":8},{"language":"default","tag":"Deprecated","count":6},{"language":"default","tag":"Templates","count":6},{"language":"default","tag":"Subscriptions","count":6},{"language":"default","tag":"Segments","count":5}]},"assistantConfig":{"enableStarterQuestions":false,"deflection":{"enabled":true,"email":"support@onesignal.com","showHelpButton":true}},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-rbac-roles","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":true},"customCss":[],"page":{"pagePath":"docs/en/ai-message-composer","slug":"/docs/en/ai-message-composer","pageMetadata":{"title":"AI message composer","description":"Use OneSignal's built in AI to write and adjust push notifications to suit your needs and send the right message quickly and easily","keywords":["AI message composer","push notification AI","AI-generated push","notification writing assistant","tone adjustment","generate push copy with AI","rewrite push message","shorten notification text","AI prompt for notifications","edit existing push with AI","AI Writing Assistant","preset tone options","prompt suggestions"],"href":"/docs/en/ai-message-composer"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Use OneSignal’s built in AI to write and adjust push notifications to suit your needs and send the right message quickly and easily\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,li:`li`,p:`p`,strong:`strong`,ul:`ul`,..._provideComponents(),...props.components},{Frame,Heading,Info,OptimizedImage,Step,Steps}=_components;if(!Frame)_missingMdxReference(`Frame`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Info)_missingMdxReference(`Info`,true);if(!OptimizedImage)_missingMdxReference(`OptimizedImage`,true);if(!Step)_missingMdxReference(`Step`,true);if(!Steps)_missingMdxReference(`Steps`,true);return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[`The OneSignal `,_jsx(_components.strong,{children:`AI Message Composer`}),` helps you quickly generate and fine-tune push notification content using a simple prompt. It’s designed to help you strike the right tone and messaging for your audience—whether you’re starting from scratch or optimizing an existing message.`]}),`\n`,_jsx(_components.p,{children:`With just one prompt, the AI can generate a complete push notification or enhance your current text. You can continue refining your message by selecting predefined tone styles or entering additional instructions to get closer to your desired output.`}),`\n`,_jsx(Heading,{level:`2`,id:`creating-a-new-push-notification-with-ai`,children:`Creating a New Push Notification with AI`}),`\n`,_jsxs(Steps,{children:[_jsxs(Step,{title:`Create a new push notification`,children:[_jsxs(_components.p,{children:[`In the OneSignal dashboard, click `,_jsx(_components.strong,{children:`”+ Create”`}),`, select `,_jsx(_components.strong,{children:`“Push”`}),`, then choose `,_jsx(_components.strong,{children:`“AI-generated Push”`}),`.`]}),_jsx(Frame,{caption:`Image showing 'AI-generated Push' option`,children:_jsx(OptimizedImage,{src:`https://mintcdn.com/onesignal/56ctKxZSV4m5VEkn/images/docs/ai-new-push.png?fit=max\u0026auto=format\u0026n=56ctKxZSV4m5VEkn\u0026q=85\u0026s=c6e80b7915b998ff33c1f6dc0b3266e2`,\"data-og-width\":`1179`,width:`1179`,\"data-og-height\":`350`,height:`350`,\"data-path\":`images/docs/ai-new-push.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/onesignal/56ctKxZSV4m5VEkn/images/docs/ai-new-push.png?w=280\u0026fit=max\u0026auto=format\u0026n=56ctKxZSV4m5VEkn\u0026q=85\u0026s=b35562b81663d5812f30a9115054bc3e 280w, https://mintcdn.com/onesignal/56ctKxZSV4m5VEkn/images/docs/ai-new-push.png?w=560\u0026fit=max\u0026auto=format\u0026n=56ctKxZSV4m5VEkn\u0026q=85\u0026s=f1c50992f84c5e15b2c0a8ac8c003fcd 560w, https://mintcdn.com/onesignal/56ctKxZSV4m5VEkn/images/docs/ai-new-push.png?w=840\u0026fit=max\u0026auto=format\u0026n=56ctKxZSV4m5VEkn\u0026q=85\u0026s=b8f6a99b1fc69f27476e103e39d3272d 840w, https://mintcdn.com/onesignal/56ctKxZSV4m5VEkn/images/docs/ai-new-push.png?w=1100\u0026fit=max\u0026auto=format\u0026n=56ctKxZSV4m5VEkn\u0026q=85\u0026s=d50858689c5c2a7e0c672e3f8d217d68 1100w, https://mintcdn.com/onesignal/56ctKxZSV4m5VEkn/images/docs/ai-new-push.png?w=1650\u0026fit=max\u0026auto=format\u0026n=56ctKxZSV4m5VEkn\u0026q=85\u0026s=2bc0a3a74b98eedd909aa0d0ef87194a 1650w, https://mintcdn.com/onesignal/56ctKxZSV4m5VEkn/images/docs/ai-new-push.png?w=2500\u0026fit=max\u0026auto=format\u0026n=56ctKxZSV4m5VEkn\u0026q=85\u0026s=2c34fd39fe50df038b914435f947fa5d 2500w`})})]}),_jsxs(Step,{title:`Describe your message`,children:[_jsxs(_components.p,{children:[`Enter a description of what you want to say, or choose from the predefined prompt suggestions. Then click `,_jsx(_components.strong,{children:`“Generate”`}),` to create the initial message.`]}),_jsx(Frame,{caption:`Image showing AI input box`,children:_jsx(OptimizedImage,{src:`https://mintcdn.com/onesignal/56ctKxZSV4m5VEkn/images/docs/ai-pre-generate.png?fit=max\u0026auto=format\u0026n=56ctKxZSV4m5VEkn\u0026q=85\u0026s=366bc35bc90aafc768ede7aa27b9dd40`,\"data-og-width\":`588`,width:`588`,\"data-og-height\":`305`,height:`305`,\"data-path\":`images/docs/ai-pre-generate.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/onesignal/56ctKxZSV4m5VEkn/images/docs/ai-pre-generate.png?w=280\u0026fit=max\u0026auto=format\u0026n=56ctKxZSV4m5VEkn\u0026q=85\u0026s=e04d5eb748b2a71bd9f943bed3265089 280w, https://mintcdn.com/onesignal/56ctKxZSV4m5VEkn/images/docs/ai-pre-generate.png?w=560\u0026fit=max\u0026auto=format\u0026n=56ctKxZSV4m5VEkn\u0026q=85\u0026s=70827d76e7d01ad8c5df682e5d747838 560w, https://mintcdn.com/onesignal/56ctKxZSV4m5VEkn/images/docs/ai-pre-generate.png?w=840\u0026fit=max\u0026auto=format\u0026n=56ctKxZSV4m5VEkn\u0026q=85\u0026s=1b7097ab4ca22a9b7730745342d92b82 840w, https://mintcdn.com/onesignal/56ctKxZSV4m5VEkn/images/docs/ai-pre-generate.png?w=1100\u0026fit=max\u0026auto=format\u0026n=56ctKxZSV4m5VEkn\u0026q=85\u0026s=518dee9eb9910feb788a0d945efd3f76 1100w, https://mintcdn.com/onesignal/56ctKxZSV4m5VEkn/images/docs/ai-pre-generate.png?w=1650\u0026fit=max\u0026auto=format\u0026n=56ctKxZSV4m5VEkn\u0026q=85\u0026s=adea058ed9c1a152f1993db920633a81 1650w, https://mintcdn.com/onesignal/56ctKxZSV4m5VEkn/images/docs/ai-pre-generate.png?w=2500\u0026fit=max\u0026auto=format\u0026n=56ctKxZSV4m5VEkn\u0026q=85\u0026s=24111d4c152db27f1c6526c6892b521f 2500w`})}),_jsx(Frame,{caption:`Image showing AI-generated message`,children:_jsx(OptimizedImage,{src:`https://mintcdn.com/onesignal/56ctKxZSV4m5VEkn/images/docs/ai-generate-with-text.png?fit=max\u0026auto=format\u0026n=56ctKxZSV4m5VEkn\u0026q=85\u0026s=7c77fc14889988cdb49b3910b3baf840`,\"data-og-width\":`590`,width:`590`,\"data-og-height\":`310`,height:`310`,\"data-path\":`images/docs/ai-generate-with-text.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/onesignal/56ctKxZSV4m5VEkn/images/docs/ai-generate-with-text.png?w=280\u0026fit=max\u0026auto=format\u0026n=56ctKxZSV4m5VEkn\u0026q=85\u0026s=54674e7b1fb22c8972c804d9b4faa036 280w, https://mintcdn.com/onesignal/56ctKxZSV4m5VEkn/images/docs/ai-generate-with-text.png?w=560\u0026fit=max\u0026auto=format\u0026n=56ctKxZSV4m5VEkn\u0026q=85\u0026s=81a984441fc9094cc64fca9291f828a2 560w, https://mintcdn.com/onesignal/56ctKxZSV4m5VEkn/images/docs/ai-generate-with-text.png?w=840\u0026fit=max\u0026auto=format\u0026n=56ctKxZSV4m5VEkn\u0026q=85\u0026s=87e42456309b023b1ff5511fb7e64b80 840w, https://mintcdn.com/onesignal/56ctKxZSV4m5VEkn/images/docs/ai-generate-with-text.png?w=1100\u0026fit=max\u0026auto=format\u0026n=56ctKxZSV4m5VEkn\u0026q=85\u0026s=f4d131a4af61930f4e6025437afdcba3 1100w, https://mintcdn.com/onesignal/56ctKxZSV4m5VEkn/images/docs/ai-generate-with-text.png?w=1650\u0026fit=max\u0026auto=format\u0026n=56ctKxZSV4m5VEkn\u0026q=85\u0026s=dbfb97cffaa3998f1e376349770bd067 1650w, https://mintcdn.com/onesignal/56ctKxZSV4m5VEkn/images/docs/ai-generate-with-text.png?w=2500\u0026fit=max\u0026auto=format\u0026n=56ctKxZSV4m5VEkn\u0026q=85\u0026s=a93cac1cc9c515a5ff063e3915456c94 2500w`})})]}),_jsxs(Step,{title:`Refine your message`,children:[_jsxs(_components.p,{children:[`To adjust tone or content, click `,_jsx(_components.strong,{children:`“Refine”`}),`. You can choose from preset\ntonal options or select `,_jsx(_components.strong,{children:`“Writing Assistant”`}),` to enter a custom prompt for\nfurther refinements.`]}),_jsx(Frame,{caption:`Image showing AI composer refine option`,children:_jsx(OptimizedImage,{src:`https://mintcdn.com/onesignal/56ctKxZSV4m5VEkn/images/docs/ai-generate-refine.png?fit=max\u0026auto=format\u0026n=56ctKxZSV4m5VEkn\u0026q=85\u0026s=f2b905ef16968591b138e51a86a030fb`,\"data-og-width\":`592`,width:`592`,\"data-og-height\":`477`,height:`477`,\"data-path\":`images/docs/ai-generate-refine.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/onesignal/56ctKxZSV4m5VEkn/images/docs/ai-generate-refine.png?w=280\u0026fit=max\u0026auto=format\u0026n=56ctKxZSV4m5VEkn\u0026q=85\u0026s=97dc7d757f73c7ad1a0a76970a5cd1e0 280w, https://mintcdn.com/onesignal/56ctKxZSV4m5VEkn/images/docs/ai-generate-refine.png?w=560\u0026fit=max\u0026auto=format\u0026n=56ctKxZSV4m5VEkn\u0026q=85\u0026s=db89780502922bb32b211e2e6050a683 560w, https://mintcdn.com/onesignal/56ctKxZSV4m5VEkn/images/docs/ai-generate-refine.png?w=840\u0026fit=max\u0026auto=format\u0026n=56ctKxZSV4m5VEkn\u0026q=85\u0026s=ac6dc229a3e3a949337261b8fef05f55 840w, https://mintcdn.com/onesignal/56ctKxZSV4m5VEkn/images/docs/ai-generate-refine.png?w=1100\u0026fit=max\u0026auto=format\u0026n=56ctKxZSV4m5VEkn\u0026q=85\u0026s=ba9e7baf4d3dc6ed640eae7520af96e8 1100w, https://mintcdn.com/onesignal/56ctKxZSV4m5VEkn/images/docs/ai-generate-refine.png?w=1650\u0026fit=max\u0026auto=format\u0026n=56ctKxZSV4m5VEkn\u0026q=85\u0026s=4ded7d6cfefe7b5d05b7be01277d51bd 1650w, https://mintcdn.com/onesignal/56ctKxZSV4m5VEkn/images/docs/ai-generate-refine.png?w=2500\u0026fit=max\u0026auto=format\u0026n=56ctKxZSV4m5VEkn\u0026q=85\u0026s=ca6a38e18aed42bf71dc8b48598fe36f 2500w`})}),_jsx(Frame,{caption:`Image showing AI composer writing assistant option`,children:_jsx(OptimizedImage,{src:`https://mintcdn.com/onesignal/56ctKxZSV4m5VEkn/images/docs/ai-generate-writing-assistant.png?fit=max\u0026auto=format\u0026n=56ctKxZSV4m5VEkn\u0026q=85\u0026s=8076f231dbcece9ede9553fe4d598f86`,\"data-og-width\":`589`,width:`589`,\"data-og-height\":`498`,height:`498`,\"data-path\":`images/docs/ai-generate-writing-assistant.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/onesignal/56ctKxZSV4m5VEkn/images/docs/ai-generate-writing-assistant.png?w=280\u0026fit=max\u0026auto=format\u0026n=56ctKxZSV4m5VEkn\u0026q=85\u0026s=71ffc996f73f4a4d5a170a8c05111d90 280w, https://mintcdn.com/onesignal/56ctKxZSV4m5VEkn/images/docs/ai-generate-writing-assistant.png?w=560\u0026fit=max\u0026auto=format\u0026n=56ctKxZSV4m5VEkn\u0026q=85\u0026s=5316c2f3d0822776264a3033c4862f28 560w, https://mintcdn.com/onesignal/56ctKxZSV4m5VEkn/images/docs/ai-generate-writing-assistant.png?w=840\u0026fit=max\u0026auto=format\u0026n=56ctKxZSV4m5VEkn\u0026q=85\u0026s=fbfd15706deedd6efacaf8871a169b0d 840w, https://mintcdn.com/onesignal/56ctKxZSV4m5VEkn/images/docs/ai-generate-writing-assistant.png?w=1100\u0026fit=max\u0026auto=format\u0026n=56ctKxZSV4m5VEkn\u0026q=85\u0026s=e8d5bfcf295da345e08d2d838914e89d 1100w, https://mintcdn.com/onesignal/56ctKxZSV4m5VEkn/images/docs/ai-generate-writing-assistant.png?w=1650\u0026fit=max\u0026auto=format\u0026n=56ctKxZSV4m5VEkn\u0026q=85\u0026s=a55a914ecb450cbdafa9c8c84031b1a4 1650w, https://mintcdn.com/onesignal/56ctKxZSV4m5VEkn/images/docs/ai-generate-writing-assistant.png?w=2500\u0026fit=max\u0026auto=format\u0026n=56ctKxZSV4m5VEkn\u0026q=85\u0026s=fb8200d95da63385a5f56ac2bdc4965a 2500w`})})]}),_jsx(Step,{title:`Insert your message`,children:_jsxs(_components.p,{children:[`Once you’re satisfied with the message or ready to make final manual edits,\nclick `,_jsx(_components.strong,{children:`“Insert”`}),` to add the AI-generated content to your notification.`]})}),_jsx(Step,{title:`Finalize and send`,children:_jsx(_components.p,{children:`Add any additional content or adjust settings as needed. Then complete the usual steps to send your push notification.`})})]}),`\n`,_jsx(Heading,{level:`2`,id:`editing-an-existing-push-notification-with-ai`,children:`Editing an Existing Push Notification with AI`}),`\n`,_jsxs(_components.p,{children:[`While editing an existing push, begin typing in the `,_jsx(_components.strong,{children:`Title`}),` or `,_jsx(_components.strong,{children:`Message`}),` field. This will reveal the option to refine your message using the AI composer.`]}),`\n`,_jsx(Frame,{caption:`Image showing AI editor refine option`,children:_jsx(OptimizedImage,{src:`https://mintcdn.com/onesignal/RWtLFPeffHrC81wI/images/docs/ai-edit-refine.png?fit=max\u0026auto=format\u0026n=RWtLFPeffHrC81wI\u0026q=85\u0026s=d27fe8d870cb8133665e37f330914479`,\"data-og-width\":`831`,width:`831`,\"data-og-height\":`378`,height:`378`,\"data-path\":`images/docs/ai-edit-refine.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/onesignal/RWtLFPeffHrC81wI/images/docs/ai-edit-refine.png?w=280\u0026fit=max\u0026auto=format\u0026n=RWtLFPeffHrC81wI\u0026q=85\u0026s=19a6009ecbdf250fa2c853e6cd8a73b7 280w, https://mintcdn.com/onesignal/RWtLFPeffHrC81wI/images/docs/ai-edit-refine.png?w=560\u0026fit=max\u0026auto=format\u0026n=RWtLFPeffHrC81wI\u0026q=85\u0026s=c55b61e0f626e3bd71c0afd5a0bdea07 560w, https://mintcdn.com/onesignal/RWtLFPeffHrC81wI/images/docs/ai-edit-refine.png?w=840\u0026fit=max\u0026auto=format\u0026n=RWtLFPeffHrC81wI\u0026q=85\u0026s=74915b54ef862b820214afa8588d9a78 840w, https://mintcdn.com/onesignal/RWtLFPeffHrC81wI/images/docs/ai-edit-refine.png?w=1100\u0026fit=max\u0026auto=format\u0026n=RWtLFPeffHrC81wI\u0026q=85\u0026s=7cc4d4d82f5ee9943643074c4426a0dd 1100w, https://mintcdn.com/onesignal/RWtLFPeffHrC81wI/images/docs/ai-edit-refine.png?w=1650\u0026fit=max\u0026auto=format\u0026n=RWtLFPeffHrC81wI\u0026q=85\u0026s=0ec913a56ea8d2f54855497dc98c3c85 1650w, https://mintcdn.com/onesignal/RWtLFPeffHrC81wI/images/docs/ai-edit-refine.png?w=2500\u0026fit=max\u0026auto=format\u0026n=RWtLFPeffHrC81wI\u0026q=85\u0026s=1a37ff1e71727fd0160c68de6f1ed391 2500w`})}),`\n`,_jsxs(Info,{children:[_jsx(_components.p,{children:`Need help?`}),_jsxs(_components.p,{children:[`Chat with our Support team or email `,_jsx(_components.code,{children:`support@onesignal.com`})]}),_jsx(_components.p,{children:`Please include:`}),_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Details of the issue you’re experiencing and steps to reproduce if available`}),`\n`,_jsx(_components.li,{children:`Your OneSignal App ID`}),`\n`,_jsx(_components.li,{children:`The External ID or Subscription ID if applicable`}),`\n`,_jsx(_components.li,{children:`The URL to the message you tested in the OneSignal Dashboard if applicable`}),`\n`,_jsxs(_components.li,{children:[`Any relevant `,_jsx(_components.a,{href:`/docs/en/capturing-a-debug-log`,children:`logs or error messages`})]}),`\n`]}),_jsx(_components.p,{children:`We’re happy to help!`})]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"AI message composer","description":"Use OneSignal's built in AI to write and adjust push notifications to suit your needs and send the right message quickly and easily","keywords":["AI message composer","push notification AI","AI-generated push","notification writing assistant","tone adjustment","generate push copy with AI","rewrite push message","shorten notification text","AI prompt for notifications","edit existing push with AI","AI Writing Assistant","preset tone options","prompt suggestions"],"href":"/docs/en/ai-message-composer"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Creating a New Push Notification with AI","slug":"creating-a-new-push-notification-with-ai","depth":2,"children":[]},{"title":"Editing an Existing Push Notification with AI","slug":"editing-an-existing-push-notification-with-ai","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":["/_mintlify/custom/onesignal/e069c1b9f3157e14/hotjar-koala.js","/_mintlify/custom/onesignal/3e5d03885ab32f49/intercom.js","/_mintlify/custom/onesignal/dbb7af4794d1b586/munchkin-marketo.js"],"subdomain":"onesignal","siteName":"OneSignal Documentation","title":"AI message composer - OneSignal Documentation","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{"en":{"href":"/docs/en/ai-message-composer","matchLevel":0},"cn":{"href":"/docs/cn/home","matchLevel":4},"ko":{"href":"/docs/ko/home","matchLevel":4},"ja":{"href":"/docs/ja/home","matchLevel":4},"tr":{"href":"/docs/tr/home","matchLevel":4},"pt-BR":{"href":"/docs/pt-BR/home","matchLevel":4},"es":{"href":"/docs/es/home","matchLevel":4},"fr":{"href":"/docs/fr/home","matchLevel":4}}},"lastModified":"2026-01-28T10:01:56.326Z","originalFileLocation":"docs/en/ai-message-composer.mdx","locale":"en"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Use OneSignal\u0026#x27;s built in AI to write and adjust push notifications to suit your needs and send the right message quickly and easily\">\u003cmeta data-mint-head name=\"application-name\" content=\"OneSignal Documentation\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/onesignal/eCiRydtW5fLfLRWp/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/onesignal/eCiRydtW5fLfLRWp/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/onesignal/eCiRydtW5fLfLRWp/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/onesignal/eCiRydtW5fLfLRWp/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/onesignal/eCiRydtW5fLfLRWp/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/onesignal/eCiRydtW5fLfLRWp/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/onesignal/eCiRydtW5fLfLRWp/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/onesignal/eCiRydtW5fLfLRWp/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/onesignal/eCiRydtW5fLfLRWp/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"AI message composer - OneSignal Documentation\">\u003cmeta data-mint-head property=\"og:description\" content=\"Use OneSignal\u0026#x27;s built in AI to write and adjust push notifications to suit your needs and send the right message quickly and easily\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"OneSignal Documentation\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://documentation.onesignal.com/docs/en/ai-message-composer\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://onesignal.mintlify.site/_mintlify/api/og/v2?division=OneSignal+AI\u0026amp;title=AI+message+composer\u0026amp;description=Use+OneSignal%27s+built+in+AI+to+write+and+adjust+push+notifications+to+suit+your+needs+and+send+the+right+message+quickly+and+easily\u0026amp;theme=12e705baa88dc8cc6d7a9877\u0026amp;signature=a85998065501d6269c452a6603530af48a7cc5b89a7334f593c44b148edf9c7c\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"AI message composer - OneSignal Documentation\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Use OneSignal\u0026#x27;s built in AI to write and adjust push notifications to suit your needs and send the right message quickly and easily\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://onesignal.mintlify.site/_mintlify/api/og/v2?division=OneSignal+AI\u0026amp;title=AI+message+composer\u0026amp;description=Use+OneSignal%27s+built+in+AI+to+write+and+adjust+push+notifications+to+suit+your+needs+and+send+the+right+message+quickly+and+easily\u0026amp;theme=12e705baa88dc8cc6d7a9877\u0026amp;signature=a85998065501d6269c452a6603530af48a7cc5b89a7334f593c44b148edf9c7c\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/onesignal/eCiRydtW5fLfLRWp/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"OneSignal Docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#3A3DB3\">\u003clink data-mint-head rel=\"canonical\" href=\"https://documentation.onesignal.com/docs/en/ai-message-composer\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/docs/en/ai-message-composer.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://documentation.onesignal.com/#organization\",\"name\":\"OneSignal Documentation\",\"url\":\"https://documentation.onesignal.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/onesignal/yJcueeDCO7UpHnnY/logo/OneSignal-Logo.svg?fit=max\u0026auto=format\u0026n=yJcueeDCO7UpHnnY\u0026q=85\u0026s=1fcfb6fef6d820fd9d99c74850711107\"}},{\"@type\":\"WebSite\",\"@id\":\"https://documentation.onesignal.com#website\",\"name\":\"OneSignal Documentation\",\"url\":\"https://documentation.onesignal.com\",\"publisher\":{\"@id\":\"https://documentation.onesignal.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://documentation.onesignal.com/docs/en/ai-message-composer#webpage\",\"url\":\"https://documentation.onesignal.com/docs/en/ai-message-composer\",\"name\":\"AI message composer\",\"description\":\"Use OneSignal's built in AI to write and adjust push notifications to suit your needs and send the right message quickly and easily\",\"dateModified\":\"2026-01-28T10:01:56.326Z\",\"isPartOf\":{\"@id\":\"https://documentation.onesignal.com#website\"},\"breadcrumb\":{\"@id\":\"https://documentation.onesignal.com/docs/en/ai-message-composer#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://documentation.onesignal.com/docs/en/ai-message-composer#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"OneSignal AI\",\"item\":\"https://documentation.onesignal.com/docs/en/onesignal-ai\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"AI message composer\",\"item\":\"https://documentation.onesignal.com/docs/en/ai-message-composer\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://documentation.onesignal.com/docs/en/ai-message-composer#article\",\"headline\":\"AI message composer\",\"name\":\"AI message composer\",\"description\":\"Use OneSignal's built in AI to write and adjust push notifications to suit your needs and send the right message quickly and easily\",\"url\":\"https://documentation.onesignal.com/docs/en/ai-message-composer\",\"mainEntityOfPage\":{\"@id\":\"https://documentation.onesignal.com/docs/en/ai-message-composer#webpage\"},\"dateModified\":\"2026-01-28T10:01:56.326Z\",\"keywords\":\"AI message composer, push notification AI, AI-generated push, notification writing assistant, tone adjustment, generate push copy with AI, rewrite push message, shorten notification text, AI prompt for notifications, edit existing push with AI, AI Writing Assistant, preset tone options, prompt suggestions\",\"publisher\":{\"@id\":\"https://documentation.onesignal.com/#organization\"},\"isPartOf\":{\"@id\":\"https://documentation.onesignal.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"OneSignal Documentation\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"OneSignal Documentation\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/docs/en/ai-message-composer.md","siteName":"OneSignal Documentation","nav":{"global":null,"languages":[{"language":"en","tabs":[{"tab":"Home","pages":[{"title":"Home","href":"/docs/en/home"}]},{"tab":"User Guides","groups":[{"group":"First steps \u0026 settings","pages":[{"title":"Getting started with OneSignal","href":"/docs/en/quickstart-guide"},{"group":"OneSignal dashboard","pages":[{"title":"Apps, Organizations, \u0026 Accounts","href":"/docs/en/apps-organizations"},{"title":"Team members","href":"/docs/en/manage-team-members"},{"title":"Keys \u0026 IDs","href":"/docs/en/keys-and-ids"},{"title":"Audit logs","href":"/docs/en/audit-logs"},{"title":"Usage \u0026 billing","href":"/docs/en/billing-faq"},{"title":"Organization discovery","href":"/docs/en/organization-discovery"},{"title":"Disabled apps \u0026 organizations","href":"/docs/en/disabled-apps"}]},{"title":"Migrating to OneSignal","href":"/docs/en/migrating-to-onesignal"}]},{"group":"Message channels","pages":[{"title":"Channel setup","href":"/docs/en/channel-setup"},{"group":"Push","pages":[{"title":"Push overview","href":"/docs/en/push"},{"group":"Mobile push","pages":[{"title":"Mobile push setup","href":"/docs/en/mobile-push-setup"},{"title":"Prompt for push permissions","href":"/docs/en/prompt-for-push-permissions"},{"title":"iOS provisional push notifications","href":"/docs/en/ios-provisional-push-notifications"},{"title":"Android notification categories","href":"/docs/en/android-notification-categories"},{"title":"Data \u0026 background notifications","href":"/docs/en/data-notifications"},{"title":"VoIP push notifications","href":"/docs/en/voip-notifications"}]},{"group":"Web push","pages":[{"title":"Web push setup","href":"/docs/en/web-push-setup"},{"title":"Web permission prompts","href":"/docs/en/permission-requests"},{"title":"Web push FAQ","href":"/docs/en/web-push-setup-faq"},{"title":"Web push browser behavior","href":"/docs/en/browser-behavior-and-unsubscribes"},{"title":"Shopify integration (via Vendo)","href":"/docs/en/shopify"},{"title":"OneSignal WordPress plugin setup for web push","href":"/docs/en/wordpress"},{"title":"WordPress troubleshooting","href":"/docs/en/troubleshooting-wordpress-web-push"}]},{"group":"Push features","pages":[{"title":"Notification icons","href":"/docs/en/notification-icons"},{"title":"Notification images \u0026 rich media","href":"/docs/en/rich-media"},{"title":"Notification sounds","href":"/docs/en/notification-sounds"},{"title":"Notification badges","href":"/docs/en/badges"},{"title":"Action buttons for push notifications","href":"/docs/en/action-buttons"},{"title":"Push frequency capping","href":"/docs/en/frequency-capping"},{"title":"Push throttling","href":"/docs/en/throttling"},{"title":"iOS: Focus modes and interruption levels","href":"/docs/en/ios-focus-modes-and-interruption-levels"},{"title":"iOS: Relevance score","href":"/docs/en/ios-relevance-score"}]},{"group":"Push analytics \u0026 troubleshooting","pages":[{"title":"Push message reports","href":"/docs/en/push-notification-message-reports"},{"title":"Confirmed receipt","href":"/docs/en/confirmed-delivery"},{"title":"Notification click-through rate (CTR)","href":"/docs/en/notification-ctr"},{"title":"Mobile push: Notifications not shown or delayed","href":"/docs/en/notifications-show-successful-but-are-not-being-shown"},{"title":"Web push: Notifications not shown","href":"/docs/en/notifications-not-shown-web-push"},{"title":"Notification Images Not Showing","href":"/docs/en/notification-images-not-showing"},{"title":"Duplicated notifications","href":"/docs/en/duplicated-notifications"},{"title":"FCM expired token FAQ","href":"/docs/en/fcm-expired-token-faq"}]}]},{"group":"In-app messages","pages":[{"title":"In-app overview","href":"/docs/en/in-app-messages-setup"},{"title":"In-app triggers","href":"/docs/en/iam-triggers"},{"title":"In-app click actions","href":"/docs/en/iam-click-actions"},{"group":"In-app design","pages":[{"title":"Design in-app messages with drag-and-drop","href":"/docs/en/design-your-in-app-message"},{"title":"Design in-app messages with HTML","href":"/docs/en/design-your-in-app-message-with-html"},{"title":"In-app message templates \u0026 quickstarts","href":"/docs/en/in-app-html-templates"},{"title":"In-app message JavaScript API reference","href":"/docs/en/in-app-message-api"}]},{"title":"In-app message reports","href":"/docs/en/in-app-message-reports"},{"title":"In-app troubleshooting","href":"/docs/en/in-app-message-troubleshooting"}]},{"group":"Email","pages":[{"title":"Email overview","href":"/docs/en/email-messaging"},{"group":"Email setup","pages":[{"title":"Email setup","href":"/docs/en/email-setup"},{"title":"Email DNS configuration","href":"/docs/en/email-dns-configuration"},{"title":"Senders","href":"/docs/en/senders"},{"title":"BCC emails","href":"/docs/en/email-bcc"},{"title":"Transactional emails","href":"/docs/en/setup-transactional-emails"},{"title":"Create a custom email unsubscribe page","href":"/docs/en/create-custom-unsubscribe-page"}]},{"group":"Email deliverability \u0026 analytics","pages":[{"title":"Email message reports","href":"/docs/en/email-message-reports"},{"title":"Email deliverability","href":"/docs/en/email-deliverability"},{"title":"Deliverability insights by inbox provider","href":"/docs/en/email-deliverability-insights"},{"title":"Email reputation best practices","href":"/docs/en/email-reputation-best-practices"},{"title":"Email address validation","href":"/docs/en/email-address-validation"},{"title":"Email warm-up","href":"/docs/en/email-warm-up"},{"title":"Google Postmaster Tools","href":"/docs/en/google-postmaster-tools"},{"title":"Suppressions","href":"/docs/en/suppressions"},{"title":"Email troubleshooting","href":"/docs/en/email-troubleshooting"}]},{"group":"Design your emails","pages":[{"title":"Design emails with drag-and-drop","href":"/docs/en/design-emails-with-drag-and-drop"},{"title":"Design emails with HTML","href":"/docs/en/design-emails-with-html"},{"title":"Email unsubscribe links \u0026 headers","href":"/docs/en/unsubscribe-links-email-subscriptions"},{"title":"Email template forwarding","href":"/docs/en/email-template-forwarding"}]}]},{"group":"SMS \u0026 RCS","pages":[{"title":"SMS, MMS, and RCS overview","href":"/docs/en/sms-messaging"},{"title":"Rich Communication Services (RCS)","href":"/docs/en/rcs-messaging"},{"group":"SMS setup","pages":[{"title":"SMS setup","href":"/docs/en/sms-setup"},{"title":"Sender resource applications and country requirements","sidebarTitle":"Sender resource applications","href":"/docs/en/sms-registration-requirements"},{"title":"SMS opt-in and collection","href":"/docs/en/sms-opt-in-and-collection"},{"title":"SMS consent keyword management","href":"/docs/en/sms-consent-keyword-management"},{"title":"SMS keywords","href":"/docs/en/keywords"}]},{"group":"SMS messaging","pages":[{"title":"Promotional messaging","href":"/docs/en/sms-promotional-messaging"},{"title":"Transactional messaging","href":"/docs/en/sms-transactional-messaging"},{"title":"One-time passwords (OTP)","sidebarTitle":"One-time passwords","href":"/docs/en/sms-verify"},{"title":"Composing messages","href":"/docs/en/sms-composing-messages"},{"title":"SMS message reports","href":"/docs/en/sms-message-reports"}]}]},{"group":"Live Activities","pages":[{"title":"Live Activities","href":"/docs/en/live-activities"},{"title":"Live Activities analytics","href":"/docs/en/live-activities-analytics"}]},{"group":"Features","pages":[{"title":"A/B testing","href":"/docs/en/ab-testing"},{"title":"Multi-language messaging","href":"/docs/en/multi-language-messaging"},{"title":"Brand Kit","href":"/docs/en/brand-kit"},{"group":"Personalization","pages":[{"title":"Personalization","href":"/docs/en/message-personalization"},{"title":"Using Liquid syntax","href":"/docs/en/using-liquid-syntax"},{"title":"Data feeds","href":"/docs/en/data-feeds"},{"title":"Personalize with Custom Events","href":"/docs/en/personalization-custom-event"},{"title":"Personalize with properties","href":"/docs/en/personalization-properties-and-tags"},{"title":"Personalize messages with API custom_data","href":"/docs/en/personalization-api-custom-data"},{"title":"Dynamic Content with CSV","href":"/docs/en/dynamic-content"}]},{"group":"URLs, Links, \u0026 Deep Links","pages":[{"title":"URLs, links, \u0026 deep links","href":"/docs/en/links"},{"title":"Deep linking","href":"/docs/en/deep-linking"},{"title":"Email unsubscribe links \u0026 headers","href":"/docs/en/unsubscribe-links-email-subscriptions"}]},{"title":"Retargeting messages","href":"/docs/en/retargeting"},{"title":"Templates","href":"/docs/en/templates"},{"title":"Labels","href":"/docs/en/labels"}]}]},{"group":"Journeys","pages":[{"title":"Journeys overview","href":"/docs/en/journeys-overview"},{"group":"Journey features","pages":[{"title":"Journey settings","href":"/docs/en/journeys-settings"},{"title":"Journey messages","href":"/docs/en/journeys-messages"},{"title":"Journey message A/B testing","sidebarTitle":"A/B testing","tag":"BETA","href":"/docs/en/journeys-ab-testing"},{"title":"Journey actions","href":"/docs/en/journeys-actions"},{"title":"Journey webhooks","href":"/docs/en/journeys-webhook"},{"title":"Send WhatsApp Messages via Journey Webhooks","href":"/docs/en/sending-whatsapp-messages-via-journey-webhooks"},{"title":"Managing journeys","href":"/docs/en/managing-journeys"},{"title":"Journey version history","tag":"NEW","href":"/docs/en/journeys-version-history"},{"title":"Journey analytics","href":"/docs/en/journeys-analytics"}]},{"title":"Journey examples","href":"/docs/en/journeys-examples"},{"title":"Control Journey membership with tags","href":"/docs/en/journeys-membership-tags"}]},{"group":"OneSignal AI","pages":[{"title":"OneSignal AI","tag":"BETA","href":"/docs/en/onesignal-ai"},{"title":"OneSignal AI skills","sidebarTitle":"Skills","tag":"BETA","href":"/docs/en/onesignal-ai-skills"},{"title":"Check message","tag":"BETA","href":"/docs/en/check-message"},{"title":"OneSignal Home","href":"/docs/en/onesignal-home"},{"title":"OneSignal MCP Server","href":"/docs/en/model-context-protocol"},{"title":"Manage Journeys with MCP","href":"/docs/en/mcp-journeys"},{"title":"OneSignal AI data practices","description":"What data OneSignal AI uses, how long it is retained, the controls you have, and what OneSignal does and does not do with that data.","mode":"frame","href":"/docs/en/ai-data-practices"},{"title":"AI message composer","href":"/docs/en/ai-message-composer"},{"title":"OneSignal Slack Agent","description":"Ask questions about your OneSignal account and take supported actions from Slack, in channels, threads, and direct messages.","hidden":true,"tag":"BETA","href":"/docs/en/slack-agent"}]},{"group":"Audience \u0026 events","pages":[{"title":"Segments","description":"Create and manage dynamic user segments in OneSignal to target personalized messaging based on activity, location, tags, and more.","href":"/docs/en/segmentation"},{"title":"User-based segmentation","tag":"BETA","href":"/docs/en/user-based-segmentation"},{"group":"Users \u0026 Subscriptions","pages":[{"title":"Users","href":"/docs/en/users"},{"title":"Subscriptions","href":"/docs/en/subscriptions"},{"title":"Sessions","href":"/docs/en/sessions"},{"title":"User and Subscription Profiles","href":"/docs/en/user-subscription-profiles"},{"title":"Aliases","href":"/docs/en/aliases"},{"title":"Test users","href":"/docs/en/test-users"},{"title":"Delete users","href":"/docs/en/delete-users"}]},{"group":"Events","pages":[{"title":"Message events","href":"/docs/en/message-events"},{"title":"Session events","href":"/docs/en/session-events"},{"group":"Custom events","pages":[{"title":"Custom events","href":"/docs/en/custom-events"},{"title":"Custom event best practices","href":"/docs/en/custom-event-best-practices"},{"title":"Custom event storage and retention","href":"/docs/en/custom-event-storage"}]}]},{"group":"Tags","pages":[{"title":"Tags","href":"/docs/en/add-user-data-tags"},{"title":"Tags: Time Operators","href":"/docs/en/time-operators"}]},{"title":"Import","href":"/docs/en/import"}]},{"group":"Analytics \u0026 Integrations","pages":[{"group":"Analytics","pages":[{"title":"Analytics overview","href":"/docs/en/analytics-overview"},{"title":"Metrics glossary","href":"/docs/en/analytics-metrics-glossary"},{"title":"Goals","sidebarTitle":"Goals","tag":"BETA","href":"/docs/en/goals"},{"title":"Exporting data","href":"/docs/en/exporting-data"},{"title":"Template analytics","href":"/docs/en/template-analytics"},{"title":"Conversion metrics","href":"/docs/en/conversion-metrics"},{"title":"Engagement trends","href":"/docs/en/engagement-analytics"},{"title":"Subscription trends","href":"/docs/en/subscription-trends"},{"title":"Sessions volume","href":"/docs/en/sessions-volume"},{"group":"Retention metrics","pages":[{"title":"Retention metrics","href":"/docs/en/retention-metrics"},{"title":"Interpreting retention curves","href":"/docs/en/interpreting-retention-curves"}]},{"title":"Custom Outcomes","href":"/docs/en/custom-outcomes"}]},{"group":"Event Streams","pages":[{"title":"Event Streams","href":"/docs/en/event-streams"},{"title":"Event Stream data reference","sidebarTitle":"Event Stream data","href":"/docs/en/event-streams-data"},{"title":"In-app message event streams","href":"/docs/en/iam-event-streams"},{"title":"Google Sheets integration with Event Streams","href":"/docs/en/google-sheets-integration-with-event-streams"}]},{"group":"Integrations","pages":[{"title":"Integrations overview","href":"/docs/en/integrations"},{"title":"Data warehouse, DMP, \u0026 CRM integration","href":"/docs/en/database-dmp-crm-integration"},{"group":"OneSignal as data source","pages":[{"title":"Amplitude","href":"/docs/en/amplitude"},{"title":"Databricks","href":"/docs/en/databricks"},{"title":"Google BigQuery","href":"/docs/en/bigquery"},{"title":"Mixpanel","href":"/docs/en/mixpanel"},{"title":"Snowflake","href":"/docs/en/snowflake"},{"title":"Segment (Twilio)","href":"/docs/en/segment-onesignal-integration"}]},{"group":"OneSignal as destination","pages":[{"title":"Adobe Audience Manager","href":"/docs/en/adobe-audience-manager"},{"title":"AlloyDB","href":"/docs/en/alloydb"},{"title":"Amazon Athena","href":"/docs/en/amazon-athena"},{"title":"Amazon S3","href":"/docs/en/s3"},{"title":"Amplitude","href":"/docs/en/amplitude"},{"title":"Apache Kafka","href":"/docs/en/kafka"},{"title":"Amazon Redshift","href":"/docs/en/amazon-redshift"},{"title":"Azure Synapse","href":"/docs/en/azure-synapse"},{"title":"ClickHouse","href":"/docs/en/clickhouse"},{"title":"Confluent Cloud","href":"/docs/en/confluent-cloud"},{"title":"Databricks","href":"/docs/en/databricks"},{"title":"Elasticsearch","href":"/docs/en/elasticsearch"},{"title":"Google BigQuery","href":"/docs/en/bigquery"},{"title":"Google Cloud SQL","href":"/docs/en/google-cloud-sql"},{"title":"Google Sheets","href":"/docs/en/google-sheets"},{"title":"Greenplum","href":"/docs/en/greenplum"},{"title":"HubSpot","href":"/docs/en/hubspot"},{"title":"Materialize","href":"/docs/en/materialize"},{"title":"Microsoft Fabric","href":"/docs/en/microsoft-fabric"},{"title":"Mixpanel","href":"/docs/en/mixpanel"},{"title":"MotherDuck","href":"/docs/en/motherduck"},{"title":"MySQL","href":"/docs/en/mysql"},{"title":"PostgreSQL","href":"/docs/en/postgresql"},{"title":"Pub/Sub","href":"/docs/en/google-pubsub"},{"title":"SingleStore","href":"/docs/en/singlestore"},{"title":"Snowflake","href":"/docs/en/snowflake"},{"title":"SQL Server","href":"/docs/en/sql-server"},{"title":"Starburst Enterprise","href":"/docs/en/starburst-enterprise"},{"title":"Starburst Galaxy","href":"/docs/en/starburst-galaxy"},{"title":"Trino","href":"/docs/en/trino"},{"title":"Segment (Twilio)","href":"/docs/en/segment-onesignal-integration"}]},{"group":"Attribution","pages":[{"title":"RevenueCat","href":"/docs/en/revenuecat"},{"title":"Adjust","href":"/docs/en/adjust"},{"title":"BlueConic","href":"/docs/en/blueconic"}]},{"title":"Building an integration with OneSignal: partner guide","href":"/docs/en/building-an-integration-with-onesignal-partner-guide"}]}]},{"group":"Privacy \u0026 Security","pages":[{"group":"Security credentials","pages":[{"title":"SOC 2 Type II","href":"/docs/en/soc-2-type-ii"},{"title":"ISO 27001","href":"/docs/en/iso27001"},{"title":"HIPAA","href":"/docs/en/hipaa"}]},{"group":"Data privacy \u0026 regulatory compliance","pages":[{"title":"GDPR \u0026 Individual Rights","href":"/docs/en/gdpr-compliance"},{"title":"EU-US Data Privacy Framework","href":"/docs/en/eu-us-data-privacy-framework"},{"title":"Email regulatory compliance","href":"/docs/en/email-compliance"},{"title":"SMS regulatory compliance","href":"/docs/en/sms-regulatory-compliance"},{"title":"Apple App Privacy Requirements","href":"/docs/en/apple-app-privacy-requirements"},{"title":"Google Play Data Safety Requirements","href":"/docs/en/google-play-data-safety-requirements"},{"title":"Data collection \u0026 security FAQs","href":"/docs/en/data-questions"},{"title":"Data collected by the OneSignal SDK","href":"/docs/en/data-collected-by-the-onesignal-sdk"},{"title":"Handling personal data","href":"/docs/en/handling-personal-data"},{"title":"Data taxonomy","href":"/docs/en/data-taxonomy"},{"title":"OneSignal AI data practices","mode":"frame","href":"/docs/en/ai-data-practices"}]},{"group":"Authentication","pages":[{"title":"2-step authentication","href":"/docs/en/2-step-authentication"},{"title":"Single Sign-On (SSO)","href":"/docs/en/sso"}]}]}]},{"tab":"Developer Guides","pages":[{"title":"Developer Guides","href":"/docs/en/developers"}]},{"tab":"Tutorials","pages":[{"title":"Tutorials","href":"/docs/en/tutorials"}]},{"tab":"API Reference","pages":[{"title":"API Reference","href":"/reference/rest-api-overview"}]},{"tab":"Release Notes","pages":[{"title":"Release Notes","href":"/release-notes/changelog"}]},{"tab":"Customer Success Hub","pages":[{"title":"Customer Success Hub","href":"/docs/en/customer-success-hub"}]}],"global":{"anchors":[{"anchor":"Blog","icon":"newspaper","href":"https://onesignal.com/blog"},{"anchor":"GitHub","icon":"github","href":"https://github.com/OneSignal"},{"anchor":"YouTube","icon":"youtube","href":"https://www.youtube.com/@onesignalofficial/playlists"}]}},{"language":"cn","pages":[{"title":"cn","href":"/docs/cn/home"}]},{"language":"ko","pages":[{"title":"ko","href":"/docs/ko/home"}]},{"language":"ja","pages":[{"title":"ja","href":"/docs/ja/home"}]},{"language":"tr","pages":[{"title":"tr","href":"/docs/tr/home"}]},{"language":"pt-BR","pages":[{"title":"pt-BR","href":"/docs/pt-BR/home"}]},{"language":"es","pages":[{"title":"es","href":"/docs/es/home"}]},{"language":"fr","pages":[{"title":"fr","href":"/docs/fr/home"}]}]},"basePath":"","title":"AI message composer - OneSignal Documentation","buildId":"dpl_596ePT575z4qnAFksq1biRW97aLY","deploymentId":"dpl_596ePT575z4qnAFksq1biRW97aLY","dynamics":["07c022d89b","a74be98ba7"],"chunks":["Frame-BXrZabKK.js","DynamicMarkdown-CtasenyM.js","zoom-image-lightbox-C5F0mVLH.js","lightbox-handle-r17bVUz3.js"]}