Several APIs build off the pure virtual ones. The following pure virtuals must be implemented by a derived class. virtual bool StartSession(const TArray& Attributes) virtual void EndSession() virtual FString GetSessionID() const virtual bool SetSessionID(const FString& InSessionID) virtual void FlushEvents() virtual void SetUserID(const FString& InUserID) virtual FString GetUserID() const virtual void RecordEvent(const FString& EventName, const TArray& Attributes)