@@ -17,44 +17,51 @@ class AWS_ENV(Enum):
1717 PRODUCTION = "PRODUCTION"
1818 SANDBOX = "SANDBOX"
1919
20- config = dotenv_values (".env" )
2120
22- AWS_ENVIRONMENT = config .get ('AWS_ENV' )
21+ class Marketplaces (Enum ):
22+ NA = {'sandbox' : 'advertising-api-test.amazon.com' ,
23+ 'prod' : 'advertising-api.amazon.com' ,
24+ 'currency' : 'USD' ,
25+ 'token_url' : 'api.amazon.com/auth/o2/token' }
2326
24- BASE_URL_EU = "https://advertising-api-eu.amazon.com"
25- BASE_URL_US = "https://advertising-api.amazon.com"
27+ EU = {'sandbox' : 'advertising-api-test.amazon.com' ,
28+ 'prod' : 'advertising-api-eu.amazon.com' ,
29+ 'currency' : 'EUR' ,
30+ 'token_url' : 'api.amazon.com/auth/o2/token' }
2631
27- if AWS_ENVIRONMENT is not None :
28- logging .warning ('Running in choosen mode : %s' % AWS_ENVIRONMENT )
32+ GB = {'sandbox' : 'advertising-api-test.amazon.com' ,
33+ 'prod' : 'advertising-api-eu.amazon.com' ,
34+ 'currency' : 'GBP' ,
35+ 'token_url' : 'api.amazon.com/auth/o2/token' }
2936
30- if AWS_ENVIRONMENT is None :
31- default_mode = os .environ ["__MODE__" ] = "SANDBOX"
32- AWS_ENVIRONMENT = default_mode
37+ ES = {'sandbox' : 'advertising-api-test.amazon.com' ,
38+ 'prod' : 'advertising-api-eu.amazon.com' ,
39+ 'currency' : 'EUR' ,
40+ 'token_url' : 'api.amazon.com/auth/o2/token' }
3341
34- if AWS_ENVIRONMENT is not None :
35- logging .warning ('Running in default: %s' % default_mode )
42+ DE = {'sandbox' : 'advertising-api-test.amazon.com' ,
43+ 'prod' : 'advertising-api-eu.amazon.com' ,
44+ 'currency' : 'EUR' ,
45+ 'token_url' : 'api.amazon.com/auth/o2/token' }
3646
47+ IT = {'sandbox' : 'advertising-api-test.amazon.com' ,
48+ 'prod' : 'advertising-api-eu.amazon.com' ,
49+ 'currency' : 'EUR' ,
50+ 'token_url' : 'api.amazon.com/auth/o2/token' }
3751
38- if AWS_ENV (AWS_ENVIRONMENT ) is AWS_ENV .SANDBOX :
39- BASE_URL_EU = "https://advertising-api-test.amazon.com"
40- BASE_URL_US = "https://advertising-api-test.amazon.com"
52+ FR = {'sandbox' : 'advertising-api-test.amazon.com' ,
53+ 'prod' : 'advertising-api-eu.amazon.com' ,
54+ 'currency' : 'EUR' ,
55+ 'token_url' : 'api.amazon.com/auth/o2/token' }
4156
42- class Marketplaces (Enum ):
43- """Enumeration for MWS marketplaces, containing endpoints and marketplace IDs.
44- Example, endpoint and ID for UK marketplace:
45- endpoint = Marketplaces.UK.endpoint
46- marketplace_id = Marketplaces.UK.marketplace_id
47- """
48-
49- US = (f"{ BASE_URL_US } " , 'EUR' )
50- ES = (f"{ BASE_URL_EU } " , 'EUR' )
51- GB = (f"{ BASE_URL_EU } " , 'GBP' )
52- IT = (f"{ BASE_URL_EU } " , 'EUR' )
53- FR = (f"{ BASE_URL_EU } " , 'EUR' )
54- DE = (f"{ BASE_URL_EU } " , 'EUR' )
55-
56-
57- def __init__ (self , endpoint , currency ):
58- """Easy dot access like: Marketplaces.endpoint ."""
59- self .endpoint = endpoint
60- self .currency = currency
57+ def __init__ (self , info ):
58+
59+ config = dotenv_values (".env" )
60+ AWS_ENVIRONMENT = config .get ('AWS_ENV' ) or os .environ .get ('API_PASSWORD' )
61+ if AWS_ENVIRONMENT == "PRODUCTION" :
62+ self .region_url = info .get ('prod' )
63+ else :
64+ self .region_url = info .get ('sandbox' )
65+
66+ self .endpoint = 'https://{}' .format (self .region_url )
67+ self .currency = info .get ('currency' )
0 commit comments