private long getEventVersion(IVersionedApimanEvent event) {
        ApimanEventHeaders headers = event.getHeaders();
        // Version was not set, get it from the annotation if possible.
        if (headers.getEventVersion() <= 0) {
            if (event.getClass().isAnnotationPresent(ApimanEvent.class)) {
                ApimanEvent ev = event.getClass().getAnnotation(ApimanEvent.class);
                return ev.version();
            } else {
                throw new IllegalStateException("No version set for @ApimanEvent event: " + event.getClass().getCanonicalName());
            }
        } else {
            return headers.getEventVersion();
        }
    }
Use version number in priority: (1) provided in headers, (2) in @ApimanEvent annotation.
manager/api/rest-impl/src/main/java/io/apiman/manager/api/events/EventService.java