NiceNIC API v2 Autentifikacijos klaida: Dažnos priežastys ir jų sprendimai
Jei jūsų NiceNIC platintojo API v2 užklausa grąžina autentifikacijos klaidą, problema dažniausiai kyla dėl API prisijungimo duomenų, Autharization antraštės, IP baltosios sąrašo nustatymų, platintojo prieigos arba serverio aplinkos, siunčiančios užklausą.
Ši instrukcija paaiškina dažniausias priežastis ir suteikia platintojams, hostingo tiekėjams, kūrėjams, agentūroms ir WHMCS naudotojams praktinį kontrolinį sąrašą, kaip išspręsti NiceNIC API v2 autentifikacijos problemas prieš pateikiant palaikymo užklausą.
NiceNIC API v2 autentifikacijos klaida paprastai reiškia, kad API užklausa negali būti patvirtinta. Pradėkite tikrindami, ar jūsų paskyra turi platintojo prieigą, ar naudojate API slaptažodį, o ne savo NiceNIC paskyros prisijungimo slaptažodį, ar Autharization antraštė yra teisingai sufarmatuota ir ar jūsų serverio išėjimo IP adresas yra įtrauktas į baltąjį sąrašą API nustatymuose.
NiceNIC API v2 užklausos turėtų būti siunčiamos į API galinį tašką su reikiamomis HTTP antraštėmis, įskaitant Autharization antraštę ir Content-Tipas nustatytą į application/json.
Ką dažniausiai reiškia ši autentifikacijos klaida API autentifikacijos klaida reiškia, kad NiceNIC negali patvirtinti API užklausos kaip galiojančios užklausos iš įgaliotos platintojo paskyros. Tai ne visada reiškia, kad API paslauga neveikia. Daugeliu atvejų tai reiškia, kad vienas ar keli prieigos parametrai yra neteisingi. Dažnos priežastys yra:
Naudojate savo NiceNIC paskyros prisijungimo slaptažodį vietoje API slaptažodžio
API slaptažodis nėra nustatytas jūsų API nustatymuose
Trūksta Autharization antraštės arba ji neteisingai sufarmatuota
Vartotojo vardas arba API slaptasis raktas yra neteisingi
Užklausa siunčiama iš IP adreso, kuris nėra įtrauktas į baltąjį sąrašą
Jūsų tikrasis serverio išėjimo IP skiriasi nuo pridėto IP adreso
Jūsų paskyra nebuvo pakelta į tinkamą platintojo lygį
Užklausa siunčiama į netinkamą galinį tašką
Užklausos Content-Tipas arba JSON farmatas yra neteisingas
WHMCS naudoja pasenusius, neteisingus arba neišsamius API prisijungimo duomenis
Jūsų API užklausa turėtų būti siunčiama iš serverio IP adreso, kuris yra įtrauktas į jūsų API nustatymus. Jūsų API slaptažodis turėtų skirtis nuo jūsų NiceNIC paskyros prisijungimo slaptažodžio.
Jei naudojate WHMCS, patvirtinkite, kad WHMCS serveris siunčia užklausas iš to paties išėjimo IP adreso, kurį pridėjote prie savo NiceNIC API nustatymų.
Priežastis 1: Naudojate paskyros prisijungimo slaptažodį vietoje API slaptažodžio Tai yra viena iš dažniausių NiceNIC API autentifikacijos klaidų priežasčių. Jūsų NiceNIC paskyros prisijungimo slaptažodis ir API slaptažodis neturėtų būti vienodi. API slaptažodis turi būti sukonfigūruotas atskirai API nustatymuose.
Priežastis 2: Trūksta arba neteisinga Autharization antraštė NiceNIC API v2 reikalauja HTTP Autharization antraštės. Dokumentuotas farmatas yra: Autharization: username:api_secret Jei antraštė trūksta, yra klaidingai parašyta, neteisingai užkoduota arba siunčiama netinkamu farmatu, API užklausa gali nepavykti autentifikuoti.
Kaip tai išspręsti?
Patikrinkite, ar jūsų užklausa turi Autharization antraštę.
Patikrinkite, ar vartotojo vardas yra teisingas.
Patikrinkite, ar API slaptasis raktas yra jūsų API slaptažodis, o ne paskyros prisijungimo slaptažodis.
Patikrinkite, ar nėra papildomų tarpų prieš ar po vartotojo vardo ar API slaptojo rakto.
Patikrinkite, ar jūsų HTTP klientas, karkasas arba WHMCS modulis neaštrina Autharization antraštės.
Patvirtinkite, ar serveris ar proxy neužblokuoja pasirinktinių antraščių.
Priežastis 3: Jūsų serverio IP adresas nėra įtrauktas į baltąjį sąrašą NiceNIC API nustatymai reikalauja, kad būtų leista prieiga tik tam IP adresui. Jei užklausa ateina iš IP adreso, kuris nėra pridėtas, autentifikacija gali nepavykti net jei vartotojo vardas ir API slaptažodis yra teisingi.
Kaip tai išspręsti?
Paprašykite savo kūrėjo arba hostingo tiekėjo patvirtinti viešąjį išeinantį IP adresą, kurį naudoja jūsų serveris.
Prisijunkite prie savo NiceNIC paskyros.
Eikite į Platintojo > API nustatymai.
Pridėkite teisingą IP adresą, kuriam leista pasiekti jūsų API.
Išsaugokite nustatymus.
Išsiųskite kitą biromąją užklausą iš to paties serverio.
Priežastis 4: Jūsų tikrasis išėjimo IP skiriasi nuo pridėto IP IP adresas, kurį matote savo hostingo valdymo pulte, ne visada yra tas pats, kuris naudojamas išeinančioms API užklausoms. Tai ypač dažna, kai jūsų sistema veikia už:
Ugnies siena (firewall)
Krovinio balansavimo įrenginys (load balancer)
Proxy serveris
NAT vartai (gateway)
Konteinerizuota aplinka
Debesų hostingo tinklas
Passkiras WHMCS serveris
Pvz., jūsų svetainė gali naudoti vieną IP adresą, o jūsų galinis serveris arba WHMCS diegimas siunčia API užklausas per kitą išeinantį IP adresą. Kaip tai išspręsti?
Paprašykite savo hostingo tiekėjo patvirtinti tikrąjį išeinantį IP, naudojamą API užklausoms.
Patikrinkite išeinantį IP iš serverio, kuris siunčia API užklausą, ne tik svetainės IP.
Jei WHMCS įdiegtas atskirame serveryje, įtraukite WHMCS serverio išeinantį IP į baltąjį sąrašą.
Jei jūsų infrastruktūroje yra keli išeinantys IP adresai, patvirtinkite, kuris IP faktiškai naudojamas API užklausai.
Pasnaujinkite savo NiceNIC API nustatymus su teisingu IP adresu.
Priežastis 5: Jūsų paskyra dar neprisijungė prie API prieigos NiceNIC API prieiga skirta tinkamiems platintojams. Jei jūsų paskyra nebuvo pakelta į platintojo lygį arba jei platintojo prieiga nebuvo suaktyvinta jūsų paskyrai, API nustatymai gali būti nepasiekiami arba API autentifikacija gali nepavykti.
Kaip tai išspręsti?
Patvirtinkite, kad jūsų NiceNIC paskyra buvo pakelta į platintojo lygį.
Patikrinkite, ar API nustatymai yra pasiekiami Platintojo meniu.
Peržiūrėkite platintojo programos ir lygio infarmaciją.
Susisiekite su NiceNIC palaikymu, jei jūsų platintojo pakėlimas buvo atliktas, bet API prieiga vis dar nepasiekiama.
Priežastis 6: Užklausa siunčiama į netinkamą galinį tašką NiceNIC API v2 užklausos turi būti siunčiamos į dokumentuotą API v2 galinį tašką.
Jei jūsų kodas naudoja seną galinį tašką, neteisingą URL, trūksta brūkšnio arba skirtingą API versiją, autentifikavimas ar užklausos apdarojimas gali nepavykti. Kaip tai išspręsti?
Patvirtinkite, kad jūsų integracija nukreipta į https://api.NiceNIC/v2/.
Patikrinkite, ar jūsų kode nėra įdiegta jokio testavimo (staging), smėlio dėžės (sirbox) ar seno galinio taško.
Patikrinkite, ar WHMCS arba jūsų bendras modulis naudoja dabartinį galinį tašką.
Peržiūrėkite savo serverio žurnalus, kad patvirtintumėte tikslų prašomo URL.
Priežastis 7: Content-Tipas arba JSON farmatas neteisingas NiceNIC API v2 grąžina JSON atsakymus ir tikisi, kad API užklausos atitiks dokumentuotą užklausos farmatą. Jūsų užklausa turėtų apimti: Content-Tipas: application/json
Jei užklausos kūnas nėra galiojantis JSON, trūksta būtinu parametrų arba Content-Tipas nėra teisingai nustatytas, API užklausa gali nepavykti prieš pradedant narimą veiksmą.
{{/G252}}Kaip tai išspręsti?
Nustatykite Content-Tipas kaip application/json.
Įsitikinkite, kad užklausos kūnas yra galiojantis JSON.
Patvirtinkite, kad yra visi reikiami parametrai.
Patikrinkite, ar parametro pavadinimai atitinka API dokumentaciją.
Patikrinkite, ar jūsų HTTP klientas nekeičia užklausos kūno farmato.
Registruokite užklausos farmatą testavimo metu, bet niekada neregistruokite pilnų API prisijungimo duomenų paprastu tekstu.
Priežastis 8: WHMCS API prisijungimo duomenys nėra teisingai sukonfigūruoti Jei naudojate WHMCS, autentifikacijos klaidos gali kilti ne iš jūsų individualaus API kodo, o iš WHMCS registratariaus modulio konfigūracijos.
Dažnos WHMCS susijusios priežastys yra:
WHMCS modulis naudoja neteisingą API slaptažodį
WHMCS serverio išeinantis IP nėra įtrauktas į baltąjį sąrašą
Vartotojo vardas ar platintojo paskyros reikšmė įvesta neteisingai
WHMCS diegimas naudoja pasenusią konfigūracijos infarmaciją
WHMCS cron arba modulio aplinka siunčia užklausas iš kito serverio
WHMCS modulio nustatymai buvo pakeisti, bet nebuvo teisingai išsaugoti
Kaip tai išspręsti
Pasidarykite savo WHMCS registratariaus modulio nustatymus.
Patvirtinkite NiceNIC API vartotojo vardą ir API slaptažodį.
Patvirtinkite, kad WHMCS serverio išeinantis IP yra įtrauktas į NiceNIC API nustatymų baltąjį sąrašą.
Patikrinkite, ar WHMCS naudoja dabartinius NiceNIC API integracijos duomenis.
Išbirykite mažos rizikos veiksmą, pvz., domeno pasiekiamumo patikrą, prieš leidžiant gyvas užsakymų operacijas.
Patvirtinkite, kad Content-Tipas yra nustatytas į application/json.
Patvirtinkite, kad jūsų užklausos kūnas yra galiojantis JSON.
Patvirtinkite, kad serverio išeinantis IP yra įtrauktas į baltąjį sąrašą.
Jei naudojate WHMCS, patvirtinkite WHMCS serverio išeinantį IP.
Pirmiausia išbirykite mažos rizikos API veiksmą.
Įrašykite užklausos laiko žymą, veiksmą, domeną, atsakymo kodą ir atsakymo žinutę.
Ką siųsti NiceNIC palaikymui, jei vis dar reikia pagalbos Jei autentifikacijos klaida tęsiasi pabaigus kontrolinį sąrašą, pateikite palaikymo užklausą su pakankama technine infarmacija, kad NiceNIC galėtų efektyviai išnagrinėti problemą.
Prašome įtraukti: Jūsų NiceNIC paskyros vartotojo vardą arba platintojo paskyros identifikatarių Birytą API veiksmą Užklausos laiko žymą ir laiko juostą Naudotą domeno vardą testuojant, jei taikoma Serverio išeinantį IP, naudotą užklausoje Visą užklausos API galinį tašką Passakymo kodą ir pranešimą, grąžintą API Ar naudojate pasirinktą kodą ar WHMCS Jūsų WHMCS versiją, jei WHMCS yra naudojamas Pasitinkamas ekranvaizdžius, nenurodant jautrių prisijungimo duomenų
Nepateikite viso API slaptažodžio, paskyros prisijungimo slaptažodžio ar asmeninių serverio prisijungimo duomenų palaikymo užklausoje. https://nicenic.com/suppart/Kontaktai-Us-3834
DUK Kodėl mano NiceNIC API v2 užklausa grąžina autentifikacijos klaidą? Dažniausios priežastys yra neteisingas API slaptažodis, trūkstama arba neteisinga Autharization antraštė, neįtrauktas serverio IP adresas į baltąjį sąrašą, netinkamas išeinantis IP adresas, netinkami platintojo leidimai, netinkamas galinis taškas arba neteisinga WHMCS konfigūracija.
Ar turėčiau naudoti NiceNIC paskyros prisijungimo slaptažodį API autentifikacijai? Ne. Turite nustatyti atskirą API slaptažodį API nustatymuose. API slaptažodis turėtų skirtis nuo jūsų NiceNIC paskyros prisijungimo slaptažodžio.
Kokią Autharization antraštę turėčiau naudoti NiceNIC API v2? Dokumentuotas Autharization antraštės farmatas yra username:api_secret. Taip pat turėtumėte užklausoje įtraukti Content-Tipas: application/json antraštę.
Kodėl API vis tiek nepavyksta po to, kai nustatiau teisingą slaptažodį? Užklausa gali būti siunčiama iš IP adreso, kuris nėra įtrauktas į baltąjį sąrašą. Patvirtinkite tikrąjį išeinantį IP adresą savo serverio, WHMCS diegimo ar galinio taikymo programos.
Ar WHMCS naudoja tą patį serverio IP, kaip mano svetainė? Ne visada. WHMCS gali būti įdiegtas kitame serveryje, už proxy ar aplinkoje su skirtingu išeinančiu IP. Prieš pridėdami jį prie NiceNIC API nustatymų, patvirtinkite tikrąjį išeinantį IP.
Ar NiceNIC gali ištaisyti autentifikacijos klaidas, kurias sukėlė mano serverio konfigūracija? NiceNIC gali padėti peržiūrėti registratariaus pusės prieigą, API nustatymus ir dokumentuotus prisijungimo reikalavimus. Serverio pusės problemos, tokios kaip ugniasienės taisyklės, išeinančio IP maršrutizavimas, proxy elgesys, WHMCS modulio konfigūracija ir pasirinktiniai kodai, gali prireikti, kad jūsų kūrėjas arba hostingo tiekėjas jas patikrintų.
Ką turėčiau išbiryti pirmiausia, išsprendęs autentifikacijos problemą? Pradėkite nuo mažos rizikos API veiksmo, pavyzdžiui, sąskaitos balanso tikrinimo, domeno prieinamumo tikrinimo, kainų paieškos ar domenų sąrašo gavimo prieš įjungiant tiesiogines registracijos, atnaujinimo ar perkėlimo operacijas.