return 409 for conflicts