Skip to main content

SmartLink API

SmartLink API supports importing contacts into SmartLink and updating user information. For information about each API, more details can be found in the sidebar.

note

For more information about the production environment, contact SmartLink_service@proximabeta.com.

For more information about importing contacts, see SyncUserByEmail.

Basic structure

  • Protocol: HTTP/HTTPS
  • Character encoding: UTF-8
  • API restrictions: Supports being called from backend or the web, reach out to the SmartLink representative to add your domain name to the allowlist if you wish to enable API functions for web.
note

SmartLink APIs are recommended to be called from your project's backend, after verifying that the user information has been entered correctly, to ensure that the parameters being sent to the SmartLink API are valid.

URL format

The standard URL format of an HTTP API request is:

https://openapi.smartlink.intlgame.com/api/v3/report/login?gameid=11&seq=abcdefg&sig=xxx
\____________________________________/\__________________/ \___________________________/
server URL endpoint path query parameters

Query parameters

Query parameters are placed after the URL, and parameters of specific API protocols are placed in the POST body in JSON format. In order to ensure signature consistency, sig should be placed after all other query parameters.

AttributeData typeRemarksDescription
gameidintrequiredProject ID centrally assigned by IEGG, can be retrieved from SmartLink console in My project under Project info
seqstringoptionalPass-through parameters.
The returned JSON will contain such pass-through parameters for asynchronous use by the caller.
Can only consist of alphanumeric characters and underscores. Empty by default.
tsuintrequiredStandard unix timestamp (seconds)
sigstringrequiredSignature

Signature

sig = md5 (path + "?" + params + body + API key)

  • path: HTTP path of the API excluding the domain, such as /api/v3/report/login.
  • params: Query parameters of the API excluding sig, parameters sorted in ascending ASCII order and concatenated using the "&" symbol, such as gameid=1&seq=abcdefg.
  • body: JSON string, may contain line breaks, such as {"data":{"msg":"abcd"}}.
  • API key: API key obtained from SmartLink, see Manage API keys for more details.

Sample query parameters

ParamValues
gameid30123
seqseq_test_str
ts1694920114
sig253b34340520237319cf5d125a72e90d
GAME_ID=30123
YOUR_RANDOM_STRING=seq_test_str
SIGNATURE=253b34340520237319cf5d125a72e90d
TS=1694920114

curl --request POST "https://openapi.smartlink.intlgame.com/api/v3/report/login?gameid=${GAME_ID}&seq=${YOUR_RANDOM_STRING}&ts=${TS}&sig=${SIGNATURE}" \
--header 'Content-Type: application/json' \
--data-raw '{
"login_time": 1694917726,
"openid": "5450588341569",
"location": "004",
"language": "ar",
"level":4
}'

Return code

CodeDescription
0Request successful
10001Invalid gameid
10002Invalid ts, timestamp in seconds
10003Signature error
10004Unsupported source
10005Invalid seq, can only consist of alphanumeric characters and underscores
10006Invalid request parameter JSON
10024Form API not added to allowlist
11001email cannot be empty
11002email length exceeds limit of 255 characters
11003Invalid email format
11004Email address not authenticated
11005Contacts uploaded in bulk out of range, between 0 and 200 (for BatchSyncUserByEmail only)
12001openid cannot be empty
12002Invalid openid, length cannot exceed 20 numeric characters
12003LI PASS preregistration failed, openid preregistered with another email
12004LI PASS preregistration failed, openid already linked to email
13001Source cannot be empty
13002Source character length exceeds limit
13003Source character is not available
13004Source exceeds cumulative limit
13005Unsupported source
14001Subscription status is invalid
14002Subscription status cannot be empty
14003Subscription status is set and cannot be updated to not set
14004Subscription status cannot be modified, current status is pending
15001Country invalid
15002Country cannot be empty
16001Language invalid
16002Language cannot be empty
17001Invalid tags, not created in SmartLink
17002Tags exceed cumulative limit
18001Invalid custom attribute name, not created in SmartLink
18002Custom attribute int type value error, between -9223372036854775808 and 9223372036854775807
18003Custom attribute string type value error, cannot exceed 1000 characters
18004Custom attribute datetime type value error, formatted as 2001-03-31+08:00 or 2001-03-31 00:00:00+08:00
18005Custom attribute exceeds cumulative limit of 50
18006Custom attribute value cannot be empty
18007Custom attribute drop down type value format invalid, value is []string
19001Invalid preferences, not created in SmartLink
19002Preferences cannot be empty
19003Preferences exceed cumulative limit of 20
20001Update time invalid, timestamp in milliseconds
20002Update time cannot be earlier than last update
20003Online time cannot be greater than or equal to 86,400 seconds
21001money_cn cannot be less than 0
21002money_source cannot be less than 0
21003money_us cannot be less than or equal to 0
22010report is not open
40001User does not exist
50001Server internal error
50002Server internal error
50003Server internal error
50004Server internal error
50005Server internal error
50006Server internal error
60001LI PASS preregistration is not enabled
60002LI PASS already preregistered
60003Registration form is invalid or does not exist
70001Transactional email domain not configured
70002Transactional email template not configured
70003Transactional email template variable json error
70004Transactional email template variable exceeds limit
70005Transactional email template variable does not exist
70006Transactional email template variable missing
70007Transactional email template variable format error
70008Transactional email daily limit reached
70009Transaction email sending anti shake, same sig cannot be requested repeatedly within one second

Language information

CodeLanguage
arArabic
csCzech
deGerman
enEnglish
en-GBEnglish (United Kingdom)
en-USEnglish (United States)
esSpanish
es-MXSpanish (Mexico)
fiFinnish
fil-PHFilipino
frFrench
hiHindi
idIndonesian
itItalian
jaJapanese
koKorean
msMalay
nlDutch
plPolish
ptPortuguese
pt-BRPortuguese (Brazil)
ruRussian
thThai
trTurkish
urUrdu
uzUzbek
viVietnamese
zh-HansChinese (Simplified)
zh-HantChinese (Hong Kong Traditional)
zh-TWChinese (Taiwan Traditional)

Country or region information

cn_nameen_namecountry_two_digit_codecountry_three_digit_codenumber_code
阿富汗AfghanistanAFAFG004
奥兰群岛Åland IslandsAXALA248
阿尔巴尼亚AlbaniaALALB008
阿尔及利亚AlgeriaDZDZA012
美属萨摩亚American SamoaASASM016
安道尔AndorraADAND020
安哥拉AngolaAOAGO024
安圭拉AnguillaAIAIA660
南极洲AntarcticaAQATA010
安提瓜和巴布达Antigua and BarbudaAGATG028
阿根廷ArgentinaARARG032
亚美尼亚ArmeniaAMARM051
阿鲁巴ArubaAWABW533
澳大利亚AustraliaAUAUS036
奥地利AustriaATAUT040
阿塞拜疆AzerbaijanAZAZE031
巴哈马BahamasBSBHS044
巴林BahrainBHBHR048
孟加拉国BangladeshBDBGD050
巴巴多斯BarbadosBBBRB052
白俄罗斯BelarusBYBLR112
比利时BelgiumBEBEL056
伯利兹BelizeBZBLZ084
贝宁BeninBJBEN204
百慕大BermudaBMBMU060
不丹BhutanBTBTN064
玻利维亚Bolivia (Plurinational State of)BOBOL068
博内尔Bonaire, Sint Eustatius and SabaBQBES535
波斯尼亚和黑塞哥维那Bosnia and HerzegovinaBABIH070
博茨瓦那BotswanaBWBWA072
布韦岛Bouvet IslandBVBVT074
巴西BrazilBRBRA076
英属印度洋领地British Indian Ocean TerritoryIOIOT086
文莱Brunei DarussalamBNBRN096
保加利亚BulgariaBGBGR100
布基纳法索Burkina FasoBFBFA854
布隆迪BurundiBIBDI108
佛得角Cabo VerdeCVCPV132
柬埔寨CambodiaKHKHM116
喀麦隆CameroonCMCMR120
加拿大CanadaCACAN124
开曼群岛Cayman IslandsKYCYM136
中非Central African RepublicCFCAF140
乍得ChadTDTCD148
智利ChileCLCHL152
中国ChinaCNCHN156
圣诞岛Christmas IslandCXCXR162
科科斯(基林)群岛Cocos (Keeling) IslandsCCCCK166
哥伦比亚ColombiaCOCOL170
科摩罗ComorosKMCOM174
刚果共和国CongoCGCOG178
刚果 (刚果民主共和国)Congo (Democratic Republic of the)CDCOD180
库克群岛Cook IslandsCKCOK184
哥斯达黎加Costa RicaCRCRI188
科特迪瓦Côte d'IvoireCICIV384
克罗地亚CroatiaHRHRV191
库拉索CuraçaoCWCUW531
塞浦路斯CyprusCYCYP196
捷克CzechiaCZCZE203
丹麦DenmarkDKDNK208
吉布提DjiboutiDJDJI262
多米尼克DominicaDMDMA212
多米尼加Dominican RepublicDODOM214
厄瓜多尔EcuadorECECU218
埃及EgyptEGEGY818
萨尔瓦多El SalvadorSVSLV222
赤道几内亚Equatorial GuineaGQGNQ226
厄立特里亚EritreaERERI232
爱沙尼亚EstoniaEEEST233
斯威士兰EswatiniSZSWZ748
埃塞俄比亚EthiopiaETETH231
福克兰群岛(马尔维纳斯)Falkland Islands (Malvinas)FKFLK238
法罗群岛Faroe IslandsFOFRO234
斐济FijiFJFJI242
芬兰FinlandFIFIN246
法国FranceFRFRA250
法属圭亚那French GuianaGFGUF254
法属波利尼西亚French PolynesiaPFPYF258
法国南部领地French Southern TerritoriesTFATF260
加蓬GabonGAGAB266
冈比亚GambiaGMGMB270
格鲁吉亚GeorgiaGEGEO268
德国GermanyDEDEU276
加纳GhanaGHGHA288
直布罗陀GibraltarGIGIB292
希腊GreeceGRGRC300
格陵兰GreenlandGLGRL304
格林纳达GrenadaGDGRD308
瓜德罗普GuadeloupeGPGLP312
关岛GuamGUGUM316
危地马拉GuatemalaGTGTM320
根西GuernseyGGGGY831
几内亚GuineaGNGIN324
几内亚比绍Guinea-BissauGWGNB624
圭亚那GuyanaGYGUY328
海地HaitiHTHTI332
赫德岛和麦克唐纳群岛Heard Island and McDonald IslandsHMHMD334
梵蒂冈Holy SeeVAVAT336
洪都拉斯HondurasHNHND340
香港Hong KongHKHKG344
匈牙利HungaryHUHUN348
冰岛IcelandISISL352
印度IndiaININD356
印尼IndonesiaIDIDN360
伊拉克IraqIQIRQ368
爱尔兰IrelandIEIRL372
马恩岛Isle of ManIMIMN833
以色列IsraelILISR376
意大利ItalyITITA380
牙买加JamaicaJMJAM388
日本JapanJPJPN392
泽西JerseyJEJEY832
约旦JordanJOJOR400
哈萨克斯坦KazakhstanKZKAZ398
肯尼亚KenyaKEKEN404
基里巴斯KiribatiKIKIR296
大韩(民国)Korea (Republic of)KRKOR410
科威特KuwaitKWKWT414
吉尔吉斯斯坦KyrgyzstanKGKGZ417
老挝Lao People's Democratic RepublicLALAO418
拉脱维亚LatviaLVLVA428
黎巴嫩LebanonLBLBN422
莱索托LesothoLSLSO426
利比里亚LiberiaLRLBR430
利比亚LibyaLYLBY434
列支敦士登LiechtensteinLILIE438
立陶宛LithuaniaLTLTU440
卢森堡LuxembourgLULUX442
澳门MacauMOMAC446
马达加斯加MadagascarMGMDG450
马拉维MalawiMWMWI454
马来西亚MalaysiaMYMYS458
马尔代夫MaldivesMVMDV462
马里MaliMLMLI466
马耳他MaltaMTMLT470
马绍尔群岛Marshall IslandsMHMHL584
马提尼克MartiniqueMQMTQ474
毛里塔尼亚MauritaniaMRMRT478
毛里求斯MauritiusMUMUS480
马约特MayotteYTMYT175
墨西哥MexicoMXMEX484
密克罗尼西亚(联邦)Micronesia (Federated States of)FMFSM583
摩尔多瓦Moldova (Republic of)MDMDA498
摩纳哥MonacoMCMCO492
蒙古MongoliaMNMNG496
黑山MontenegroMEMNE499
蒙特塞拉特MontserratMSMSR500
摩洛哥MoroccoMAMAR504
莫桑比克MozambiqueMZMOZ508
缅甸MyanmarMMMMR104
纳米比亚NamibiaNANAM516
瑙鲁NauruNRNRU520
尼泊尔NepalNPNPL524
荷兰NetherlandsNLNLD528
新喀里多尼亚New CaledoniaNCNCL540
新西兰New ZealandNZNZL554
尼加拉瓜NicaraguaNINIC558
尼日尔NigerNENER562
尼日利亚NigeriaNGNGA566
NiueNUNIU570
诺福克岛Norfolk IslandNFNFK574
北马其顿North MacedoniaMKMKD807
北马里亚纳群岛Northern Mariana IslandsMPMNP580
挪威NorwayNONOR578
阿曼OmanOMOMN512
巴基斯坦PakistanPKPAK586
帕劳PalauPWPLW585
巴勒斯坦Palestine, State ofPSPSE275
巴拿马PanamaPAPAN591
巴布亚新几內亚Papua New GuineaPGPNG598
巴拉圭ParaguayPYPRY600
秘鲁PeruPEPER604
菲律宾PhilippinesPHPHL608
皮特凯恩群岛PitcairnPNPCN612
波兰PolandPLPOL616
葡萄牙PortugalPTPRT620
波多黎各Puerto RicoPRPRI630
卡塔尔QatarQAQAT634
留尼汪RéunionREREU638
罗马尼亚RomaniaROROU642
俄罗斯Russian FederationRURUS643
卢旺达RwandaRWRWA646
圣巴泰勒米Saint BarthélemyBLBLM652
圣卢西亚Saint Helena, Ascension and Tristan da CunhaSHSHN654
圣基茨和尼维斯Saint Kitts and NevisKNKNA659
圣卢西亚Saint LuciaLCLCA662
法属圣马丁Saint Martin (French part)MFMAF663
圣皮埃尔和密克隆Saint Pierre and MiquelonPMSPM666
圣文森特和格林纳丁斯Saint Vincent and the GrenadinesVCVCT670
萨摩亚SamoaWSWSM882
圣马力诺San MarinoSMSMR674
圣多美和普林西比Sao Tome and PrincipeSTSTP678
沙特阿拉伯Saudi ArabiaSASAU682
塞内加尔SenegalSNSEN686
塞尔维亚SerbiaRSSRB688
塞舌尔SeychellesSCSYC690
塞拉利昂Sierra LeoneSLSLE694
新加坡SingaporeSGSGP702
荷属圣马丁Sint Maarten (Dutch part)SXSXM534
斯洛伐克SlovakiaSKSVK703
斯洛文尼亚SloveniaSISVN705
所罗门群岛Solomon IslandsSBSLB090
索马里SomaliaSOSOM706
南非South AfricaZAZAF710
南乔治亚和南桑威奇群岛South Georgia and the South Sandwich IslandsGSSGS239
南苏丹South SudanSSSSD728
西班牙SpainESESP724
斯里兰卡Sri LankaLKLKA144
苏丹SudanSDSDN729
苏里南SurinameSRSUR740
斯瓦尔巴和扬马延岛Svalbard and Jan MayenSJSJM744
瑞典SwedenSESWE752
瑞士SwitzerlandCHCHE756
台湾TaiwanTWTWN158
塔吉克斯坦TajikistanTJTJK762
坦桑尼亚Tanzania, United Republic ofTZTZA834
泰国ThailandTHTHA764
东帝汶Timor-LesteTLTLS626
多哥TogoTGTGO768
托克劳TokelauTKTKL772
汤加TongaTOTON776
特立尼达和多巴哥Trinidad and TobagoTTTTO780
突尼斯TunisiaTNTUN788
土耳其TürkiyeTRTUR792
土库曼斯坦TurkmenistanTMTKM795
特克斯和凯科斯群岛Turks and Caicos IslandsTCTCA796
图瓦卢TuvaluTVTUV798
乌干达UgandaUGUGA800
乌克兰UkraineUAUKR804
阿联酋United Arab EmiratesAEARE784
英国United Kingdom of Great Britain and Northern IrelandGBGBR826
美国United States of AmericaUSUSA840
乌拉圭UruguayUYURY858
乌兹别克斯坦UzbekistanUZUZB860
瓦努阿图VanuatuVUVUT548
委内瑞拉Venezuela (Bolivarian Republic of)VEVEN862
越南Viet NamVNVNM704
英属维尔京群岛Virgin Islands (British)VGVGB092
美属维尔京群岛Virgin Islands (U.S.)VIVIR850
瓦利斯和富图纳Wallis and FutunaWFWLF876
西撒哈拉Western SaharaEHESH732
也门YemenYEYEM887
赞比亚ZambiaZMZMB894
津巴布韦ZimbabweZWZWE716
未知区域UNKNOWNnone(null)999
欧盟European UnionEU(null)998
美国本土外小岛屿United States Minor Outlying IslandsUMUMI581

User info

AttributeData typeDescription
emailstringEmail
openidstringUnique user ID (up to 20 numeric characters)
source[]stringUser data source. Determines the exact source when data is updated from multiple sources, for segmentation in contact management and analytics in SmartLink:
  • Length cannot exceed 100 characters.
  • Number of sources cannot exceed 100.
  • Cannot be equal to "API", and cannot contain any special characters, such as !^?$%"'*/<>#.
Examples of source can include official website subscriptions, mobile email campaigns, and external third-party campaigns.
subscribeint1: Subscribed
0: Unsubscribed
-1: Non-subscribed
locationstringThree-digit country code, see number_code from Country or region information.
languagestringLanguage code, see language_code from Language information.
tags[]stringCustom tags for the grouping of users, used in user segmentation:
  • Ensure the imported tags have been created in SmartLink > Contacts > Tag management, else the update will fail.
  • Tags can only be added, existing tags will not be overwritten.
  • Each user can be associated with up to 100 tags.
attributesobjectCustom user attribute. Supports updating other contact attributes, such as gender and birthday.
Used in user segmentation, for the creation of personalized campaigns:
  • Ensure the imported attributes have been created in SmartLink > All Contacts > Attribute settings, else the update may fail.
  • User attributes can only be added or updated, existing attributes will not be overwritten if not included in the update.
  • Each user can have a total of up to 50 custom attributes.
attributes type and format:
  • Text type: formatted as { "key":"value" }
    - key: attribute name
    - value: string, cannot exceed 1000 characters
  • Number type: formatted as { "key":"value" }
    - key: attribute name
    - value: string, between -9223372036854775808 and 9223372036854775807
  • Date type: formatted as { "key":"value" }
    - key: attribute name
    - value: string, date formatted as 2001-03-31+08:00 or 2001-03-31 00:00:00+08:00
  • Drop down type: formatted as { "key":["value"] }
    - key: attribute name
    - value: []string, each string cannot exceed 1000 characters, such as ["option1","option2"]
preferences[]stringAttribute to determine a contact's subscription groups, which can be used to classify subscribers based on interests and subscriber preferences.
Used in user segmentation, for sending targeted emails to users with specific subscriber preferences:
  • Ensure the imported subscription groups have been created in SmartLink > Contacts > Preferences, else the update will fail.
  • The lastest subscriber preferences set by the user will take precedence, and is not affected by the user subscription status.
  • Each user can have up to 20 subscription groups selected.