MoEngageExperienceFailureReason

@objc
public class MoEngageExperienceFailureReason : NSObject

Failure reason for experience fetch operations. Used in both onFailure callback (complete failures) and onSuccess failures array (partial failures).

  • Error code as enum for type-safe handling of business logic errors.

    Declaration

    Swift

    @objc
    public let code: MoEngageExperienceFailureReasonCode
  • Human-readable error message (from server or descriptive message).

    Declaration

    Swift

    @objc
    public let message: String
  • Underlying error object, if available (e.g., network-layer NSError).

    Declaration

    Swift

    @objc
    public let errorObject: NSError?
  • Experience keys affected by this error (for key-specific failures).

    Declaration

    Swift

    @objc
    public let experienceKeys: [String]?
  • Original server error code string (for unknownServerError, e.g., “E006”). Only populated when code is .unknownServerError.

    Declaration

    Swift

    @objc
    public let originalServerCode: String?
  • HTTP status code (only populated when code is .httpError). Passed through directly from server response.

    Declaration

    Swift

    @objc
    public let httpStatusCode: NSNumber?
  • Display code for logging/debugging.

    • For HTTP errors: “HTTP{statusCode}” (e.g., “HTTP404”, “HTTP500”)
    • For unknown server errors: original server code (e.g., “E006”)
    • For enum cases: enum name (e.g., “userNotInSegment”)

    Declaration

    Swift

    @objc
    public var displayCode: String { get }