ERROR_CODE_AUTHORIZATION = 'authorization_error' ERROR_CODE_BAD_GRASS_REQUEST = 'bad_grass_request_error' ERROR_CODE_CONFLICT = 'workflow_executed_already' ERROR_CODE_DB_ERROR = 'db_error' ERROR_CODE_INVALID_JSON = 'invalid_json_error' ERROR_CODE_INVALID_PERIOD = 'invalid_period_error' ERROR_CODE_INVALID_ATTACHMENT_PERIOD = 'invalid_attachment_period_error' ERROR_CODE_INVALID_REQUEST = 'invalid_request_error' ERROR_CODE_OWS_CONTRACTS = 'ows_contracts_error' ERROR_CODE_ELASTICACHE_ERROR = 'aws_elasticache_error' ERROR_CODE_INVALID_RESPONSE_CODE = 'invalid_response_code' ERROR_MESSAGE_FORBIDDEN_USER = 'User is forbidden' ERROR_MESSAGE_INCOMPLETE_GRASS_HEADERS = 'Incomplete Grass Headers' ERROR_MESSAGE_INVALID_ORCHARD_USER_HEADERS = 'Invalid Orchard-User-Id provided' ERROR_MESSAGE_INVALID_ACCOUNT = 'Invalid Account (Id or Type)' ERROR_MESSAGE_INVALID_FILE_TYPE = 'Invalid file type' ERROR_MESSAGE_INVALID_GRASS_ACCOUNT_ID = 'Invalid Grass Account Id' ERROR_MESSAGE_INVALID_GRASS_ACCOUNT_TYPE = 'Invalid Grass Account Type' ERROR_MESSAGE_INVALID_PERIOD = 'Invalid accounting period' ERROR_MESSAGE_INVALID_ATTACHMENT_PERIOD = 'Invalid attachment period' ERROR_MESSAGE_INVALID_NUMBER = 'Invalid number format' ERROR_MESSAGE_INVALID_REPORT_TYPE = 'Invalid report type' ERROR_MESSAGE_INVALID_TRANSACTION_TYPE = 'Invalid transaction type' ERROR_MESSAGE_INVALID_USER_DATA = 'Invalid user data' ERROR_MESSAGE_MISSING_GRASS_HEADERS = 'Missing Grass Headers' ERROR_MESSAGE_NO_MATCH = 'No match for request' ERROR_MESSAGE_UNAVAILABLE = 'Source data not available' ERROR_MESSAGE_CURRENCY_NOT_FOUND = 'Currency not found' ERROR_MESSAGE_ACCOUNTING_PERIOD_NOT_FOUND = 'Accounting period not found' ERROR_MESSAGE_ELASTICACHE_RECORD = 'Elasticache redis record cannot be created' ERROR_MESSAGE_INVALID_PAGINATION = 'Invalid pagination information' ERROR_MESSAGE_CONTRACTS_NOT_FOUND = 'Contracts not found' SUCCESS_CODE = 'ok' JSON_SCHEMA_ERRORS = { 'periods': ERROR_MESSAGE_INVALID_PERIOD, 'transaction_types': ERROR_MESSAGE_INVALID_TRANSACTION_TYPE, 'file_type': ERROR_MESSAGE_INVALID_FILE_TYPE, 'number_format': ERROR_MESSAGE_INVALID_NUMBER, 'request_context': ERROR_MESSAGE_INVALID_USER_DATA }