diff --git a/src/data/languages/languageData.ts b/src/data/languages/languageData.ts
index 605d7eac9d..f5c1120992 100644
--- a/src/data/languages/languageData.ts
+++ b/src/data/languages/languageData.ts
@@ -5,6 +5,18 @@ export default {
platform: {
javascript: '2.16',
nodejs: '2.16',
+ typescript: '2.16',
+ react: '2.16',
+ csharp: '1.2',
+ flutter: '1.2',
+ java: '1.4',
+ kotlin: '1.4',
+ objc: '1.2',
+ php: '1.1',
+ python: '2.1',
+ ruby: '1.2',
+ swift: '1.2',
+ go: '1.3',
},
pubsub: {
javascript: '2.16',
diff --git a/src/data/nav/platform.ts b/src/data/nav/platform.ts
index 2630e7b854..ce1a3b6682 100644
--- a/src/data/nav/platform.ts
+++ b/src/data/nav/platform.ts
@@ -325,10 +325,15 @@ export default {
],
},
{
- name: 'Debugging and errors',
+ name: 'Support and debugging',
pages: [
{
- name: 'Overview',
+ name: 'Support tickets',
+ link: '/docs/platform/support',
+ index: true,
+ },
+ {
+ name: 'Debugging',
link: '/docs/platform/errors',
index: true,
},
diff --git a/src/pages/docs/platform/errors/index.mdx b/src/pages/docs/platform/errors/index.mdx
index 0f521336af..cd041ee816 100644
--- a/src/pages/docs/platform/errors/index.mdx
+++ b/src/pages/docs/platform/errors/index.mdx
@@ -225,18 +225,7 @@ The Dev console displays a realtime feed of events. It does not store historical
## Support tickets
-If the provided information does not resolve your issue, contact Ably [support](https://ably.com/support). When contacting, include details such as your app ID, the error code, and any relevant logs to help troubleshoot.
-
-The following information is essential for effective troubleshooting, include as much of the following information as possible:
-
-* Provide timestamps in UTC format.
-* Include complete SDK logs from the time of the failure. Ensure these logs show activity before and after the timeout, as SDKs retry failed requests by default.
-* Specify which endpoints were accessed. Mention if you use custom client options, the environment setting, and the failing SDK operation.
-* State the SDK/s you use, including the platform and versions.
-* Include any stack traces related to the error.
-* Indicate whether the issue occurs consistently or was a one-time event.
-* Provide details to confirm whether the issue was related to your network or Ably's availability. For example, note whether other internet operations were succeeding simultaneously.
-* Include the `appID` associated with the request.
+If the debugging tools provided didn't resolve your issue then contact [Ably support](https://ably.com/support). Provide the [requested information](/docs/platform/support#info) so that Ably can help to resolve your issue as quickly as possible.
### Generating a HAR file
diff --git a/src/pages/docs/platform/support/index.mdx b/src/pages/docs/platform/support/index.mdx
new file mode 100644
index 0000000000..179c7ebfa8
--- /dev/null
+++ b/src/pages/docs/platform/support/index.mdx
@@ -0,0 +1,129 @@
+---
+title: Support tickets
+intro: "The best way to get support from Ably is by asking Ably's AI Assistant, or creating a ticket for the support team."
+meta_description: "Learn more about Ably's AI Transport and the features that enable you to quickly build functionality into new and existing applications."
+meta_keywords: "support, help, support ticket, ticket, escalation, incident, incident escalation, enterprise"
+---
+
+## Ask Ably's AI assistant
+
+When you're logged into your Ably Account, reading the documentation, or on Ably.com, you always have the option to start a chat with Ably's AI assistant. Look out for **Ask AI**.
+
+You can ask the AI assistant any question about Ably and let it do the hard work for you. If the assistant can't help, you have the option to **Get Support** which will let you create a ticket for Ably's support team.
+
+## Submit a support ticket
+
+If you require assistance or experience technical issues with Ably, [submit a support ticket](https://ably.com/support) via your Ably account. Ably's support team will be able to investigate the matter for you and help to resolve it.
+
+Support response service levels vary depending on the type of subscription you have with Ably. To check your subscription level, and view your SLAs, log in to [your Ably account](https://ably.com/login) and visit the [support page](https://ably.com/support).
+
+To submit a support ticket:
+
+1. Visit the [support page](https://ably.com/support).
+2. Click the **Raise a support ticket** button.
+3. Fill out the form with the relevant information, providing as much detail as possible.
+4. Click **Submit** and the Support team will be in touch via email to assist you.
+
+
+
+### Support ticket information
+
+The following information is useful for helping troubleshoot your issue when you submit a support ticket:
+
+* Time and date that the issue occurred.
+ * Note whether it is consistent or a one-time event.
+ * Provide timestamps in UTC format.
+* Information about the SDK(s) used.
+ * Include the platform and versions.
+ * If the issue occurred following an upgrade, please mention the previous and current versions.
+* Client information.
+ * Include the `appID` associated with the request.
+ * Include the `clientId`s of any affected clients.
+ * Specify on which channel the issue occurred.
+ * State whether you use custom client options, for example a custom environment.
+ * Specify which endpoints or which SDK operation was used.
+ * List any error codes received.
+* Verbose logs replicating the issue.
+ * Include logs from the time immediately before and after the issue occurred.
+ * Include any relevant parts of your code which might assist us in replicating the issue.
+ * If the issue is easily reproducible, sharing a screen recording or Gist can be helpful.
+
+The following code demonstrates how to enable verbose logging in Ably Pub/Sub SDKs:
+
+
+```javascript
+var ably = new Ably.Realtime(
+{ /* existing options */,
+logLevel:4
+});
+```
+
+```java
+ClientOptions clientOptions = new ClientOptions();
+/* existing options */
+clientOptions.logLevel = Log.VERBOSE;
+ablyRealtime = new AblyRealtime(clientOptions);
+```
+
+```go
+client, err := ably.NewRealtime(/*existing options*/,ably.WithLogLevel(4))
+ if err != nil {
+ panic(err)
+ }
+```
+
+```swift
+let clientOptions = ARTClientOptions();
+/* existing options */
+clientOptions.logLevel = .debug;
+let realtime = ARTRealtime(options: clientOptions);
+```
+
+```php
+$clientOptions = array(
+ /* existing options */,
+'logLevel' => 4, );
+
+$ably = new \Ably\AblyRest($clientOptions);
+```
+
+```python
+import logging
+import ably
+
+ablyLog = logging.getLogger('ably')
+ablyLog.setLevel(logging.DEBUG)
+ablyLog.addHandler(logging.StreamHandler())
+
+# add a formatter object to format timestamps:
+formatter = logging.Formatter('%(asctime)s - %(message)s')
+handler.setFormatter(formatter)
+```
+
+```ruby
+ably = Ably::Realtime.new(=begin existing client options =end, log_level: :debug)
+```
+
+```flutter
+import 'package:ably_flutter/ably_flutter.dart' as ably;
+
+var clientOptions = ably.ClientOptions(/* existing client options */,
+logLevel: ably.LogLevel.verbose);
+```
+
+
+## Enterprise escalation process
+
+Enterprise customers have the ability to escalate incidents and receive a response within 15 minutes.
+
+If you ever require urgent attention to a critical issue you are facing, or are experiencing a major incident, you can page Ably's engineering team 24/7 any day of the year.
+
+To escalate an incident:
+
+1. Log into your [Ably account](https://ably.com/login).
+2. Select **Support** from the main menu or visit the [support page](https://ably.com/support) directly.
+3. Click the **Raise a support ticket** button and select the option for **Incident escalation - service disrupted**.
+4. Fill out the form with the relevant information, providing as much detail as possible.
+5. Click **Submit** and an engineer will reach out to you within 15 minutes. If you have a Slack channel with Ably they will reach out to you via Slack, otherwise they will contact you via email.