Quick Troubleshooting Checklist

  • Is your channel key and configuration correct?
  • Are you using the latest version of the SDK?
  • Have you enabled logging to capture errors?
  • Are all required permissions and entitlements set in your Info.plist?
  • Is your JWT token valid and not expired?

Common Issues & Solutions

Initialization Failure

  • Symptom: SDK fails to initialize.
  • Possible Causes: Incorrect channel key, missing permissions, network issues.
  • Solution: Double-check your channel key, ensure all required permissions and entitlements are set, and check your network connection.

Authentication Errors

  • Symptom: Users cannot authenticate or are logged out unexpectedly.
  • Possible Causes: Expired or invalid JWT token.
  • Solution: Ensure your backend generates valid JWTs and handles token refresh.

Logging Best Practices

  • Enable logging during development and troubleshooting:

    Swift

    import ZendeskSDKLoggerLogger.enabled = trueLogger.level = .default

    Objective-C

    #import <ZendeskSDKLogger/ZendeskSDKLogger.h>ZDKLogger.enabled = YES;ZDKLogger.level = ZDKLogLevelDefault;
  • Adjust the log level as needed (.info, .debug, .error, .fault).

  • Collect logs and include them when contacting Zendesk support.


Reporting Issues

When contacting Zendesk support, please include:

  • SDK version
  • iOS version and device model
  • Steps to reproduce the issue
  • Relevant logs (with logging enabled)
  • Screenshots or screen recordings if possible
  • A demo app that reproduces the issue, if applicable

Note: We recommend tracking the cause of any initialization failures in your crash reporting dashboard. This will help in troubleshooting your integration once deployed in production.


Demo Apps

Zendesk provides multiple demo apps to showcase SDK features such as basic implementation and JWT authentication. Each app contains a README with setup instructions.

You can find them in our Zendesk SDK Demo app GitHub.