Π Π°Π±ΠΎΡΠ° Ρ API Π°Π²ΡΠΎΡ ΠΈΠΌΠΈΡΠ΅ΡΠΊΠΈΡ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΉ, ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠΎΠ² ΠΌΠΎΡΠΎΡΠ½ΡΡ ΠΌΠ°ΡΠ΅Π» ΠΈΠ»ΠΈ ΡΠ΅ΡΠ²ΠΈΡΠΎΠ² ΠΏΠΎΠ΄Π±ΠΎΡΠ° ΡΠΌΠ°Π·ΠΎΠΊ ΡΠ°ΡΡΠΎ ΡΡΠ°Π»ΠΊΠΈΠ²Π°Π΅ΡΡΡ Ρ ΠΎΡΠΈΠ±ΠΊΠΎΠΉ Β«ΠΡΡΡΡΡΡΠ²ΡΠ΅Ρ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ client_idΒ». ΠΡΠ° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Π±Π»ΠΎΠΊΠΈΡΡΠ΅Ρ Π΄ΠΎΡΡΡΠΏ ΠΊ Π΄Π°Π½Π½ΡΠΌ ΠΎ ΠΏΡΠΎΠ΄ΡΠΊΡΠ°Ρ , ΡΠ΅Π½Π°Ρ ΠΈΠ»ΠΈ ΡΡΠ°ΡΡΡΠ°Ρ Π·Π°ΠΊΠ°Π·ΠΎΠ², ΠΏΠ°ΡΠ°Π»ΠΈΠ·ΡΡ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ Π²Π°ΡΠ΅ΠΉ ΡΠΈΡΡΠ΅ΠΌΡ Ρ Π²Π½Π΅ΡΠ½ΠΈΠΌΠΈ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°ΠΌΠΈ. ΠΠΎ ΠΏΠΎΡΠ΅ΠΌΡ ΠΎΠ½Π° Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ β ΠΈ ΠΊΠ°ΠΊ Π΅Ρ ΡΠ΅ΡΠΈΡΡ Π±ΡΡΡΡΠΎ ΠΈ Π±Π΅Π· ΠΏΠΎΡΠ»Π΅Π΄ΡΡΠ²ΠΈΠΉ?
Π Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π΅ ΡΠ»ΡΡΠ°Π΅Π² ΠΎΡΠΈΠ±ΠΊΠ° ΡΠ²ΡΠ·Π°Π½Π° Ρ Π½Π΅ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎΠΉ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠ΅ΠΉ ΠΈΠ»ΠΈ Π½Π΅Π²Π΅ΡΠ½ΠΎΠΉ ΡΡΡΡΠΊΡΡΡΠΎΠΉ Π·Π°ΠΏΡΠΎΡΠ°. Client_id β ΡΡΠΎ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΉ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈΠ»ΠΈ Π°ΠΊΠΊΠ°ΡΠ½ΡΠ° Π² ΡΠΈΡΡΠ΅ΠΌΠ΅ ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠ°, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π°Π΅Ρ Π»Π΅Π³ΠΈΡΠΈΠΌΠ½ΠΎΡΡΡ Π·Π°ΠΏΡΠΎΡΠ°. ΠΠ΅Π· Π½Π΅Π³ΠΎ API ΠΏΡΠΎΡΡΠΎ Π½Π΅ Π·Π½Π°Π΅Ρ, ΠΊΠΎΠΌΡ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡ Π΄Π°Π½Π½ΡΠ΅. ΠΠ΄Π½Π°ΠΊΠΎ ΠΏΡΠΈΡΠΈΠ½Ρ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ Π³Π»ΡΠ±ΠΆΠ΅: ΠΎΡ Π±Π°Π½Π°Π»ΡΠ½ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΠΊ Π΄ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΠΏΠΎΠ»ΠΈΡΠΈΠΊΠ΅ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ ΡΠ΅ΡΠ²ΠΈΡΠ°.
ΠΠ°Π»Π΅Π΅ ΡΠ°Π·Π±Π΅ΡΡΠΌ Π²ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠ΅ ΡΡΠ΅Π½Π°ΡΠΈΠΈ β ΠΎΡ ΡΡΠΈΠ²ΠΈΠ°Π»ΡΠ½ΡΡ Π΄ΠΎ ΡΠ»ΠΎΠΆΠ½ΡΡ , β Π° ΡΠ°ΠΊΠΆΠ΅ Π΄Π°Π΄ΠΈΠΌ ΠΏΠΎΡΠ°Π³ΠΎΠ²ΡΠ΅ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ², ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΠΎΠ² Π°Π²ΡΠΎΡΠ΅ΡΠ²ΠΈΡΠΎΠ² ΠΈ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΎΡΠΎΠ². ΠΡΠ»ΠΈ Π²Ρ ΡΠ°Π±ΠΎΡΠ°Π΅ΡΠ΅ Ρ API Liqui Moly, Castrol, Mobil ΠΈΠ»ΠΈ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΡΠΎΡΠΎΠ² Π°Π²ΡΠΎΡ ΠΈΠΌΠΈΠΈ, ΡΡΠ° ΡΡΠ°ΡΡΡ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ ΡΡΠΊΠΎΠ½ΠΎΠΌΠΈΡΡ ΡΠ°ΡΡ Π΄Π΅Π±Π°Π³Π°.
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ client_id ΠΈ Π·Π°ΡΠ΅ΠΌ ΠΎΠ½ Π½ΡΠΆΠ΅Π½ Π² API Π°Π²ΡΠΎΡ ΠΈΠΌΠΈΠΈ
Client_id (ΠΈΠ»ΠΈ clientId, app_id) β ΡΡΠΎ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΉ ΠΊΠ»ΡΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π²ΡΠ΄Π°ΡΡΡΡ Π²Π°ΡΠ΅ΠΉ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ΠΏΡΠΈ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΈ Π² ΡΠΈΡΡΠ΅ΠΌΠ΅ ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠ°. ΠΠ½ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΡΡΠΈ ΠΊΠ»ΡΡΠ΅Π²ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ:
- π ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ: API ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅Ρ, ΠΊΠ°ΠΊΠΎΠ΅ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΡΠ΅ΡΠ²ΠΈΡ ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ Π·Π°ΠΏΡΠΎΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π²Π°Ρ Π°Π²ΡΠΎΡΠ΅ΡΠ²ΠΈΡ ΠΈΠ»ΠΈ ΠΌΠ°Π³Π°Π·ΠΈΠ½ Π·Π°ΠΏΡΠ°ΡΡΠ΅ΠΉ).
- π ΠΠ½Π°Π»ΠΈΡΠΈΠΊΠ°: ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅Ρ, ΡΠΊΠΎΠ»ΡΠΊΠΎ Π·Π°ΠΏΡΠΎΡΠΎΠ² Π΄Π΅Π»Π°Π΅Ρ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΊΠ»ΠΈΠ΅Π½Ρ, ΡΡΠΎΠ±Ρ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠΈΡΡ ΠΏΠ΅ΡΠ΅Π³ΡΡΠ·ΠΊΡ ΡΠΈΡΡΠ΅ΠΌΡ.
- π‘οΈ ΠΠ΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ: Π·Π°ΡΠΈΡΠ° ΠΎΡ Π½Π΅ΡΠ°Π½ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ Π΄Π°Π½Π½ΡΠΌ ΠΎ ΡΠΌΠ°Π·ΠΊΠ°Ρ , ΠΌΠ°ΡΠ»Π°Ρ ΠΈΠ»ΠΈ ΠΊΠΎΠΌΠΌΠ΅ΡΡΠ΅ΡΠΊΠΈΡ ΡΡΠ»ΠΎΠ²ΠΈΡΡ .
ΠΠ΅Π· client_id API Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ ΠΎΡΠ»ΠΈΡΠΈΡΡ Π²Π°Ρ Π»Π΅Π³ΠΈΡΠΈΠΌΠ½ΡΠΉ Π·Π°ΠΏΡΠΎΡ ΠΎΡ Π°ΡΠ°ΠΊΠΈ Π±ΠΎΡΠ° ΠΈΠ»ΠΈ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎΠ³ΠΎ ΡΠΊΡΠΈΠΏΡΠ°. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠΈ Π·Π°ΠΏΡΠΎΡΠ΅ Π΄Π°Π½Π½ΡΡ
ΠΎ Π²ΡΠ·ΠΊΠΎΡΡΠΈ ΠΌΠ°ΡΠ»Π° Mobil 1 5W-30 ΡΠΈΡΡΠ΅ΠΌΠ° ΡΠ½Π°ΡΠ°Π»Π° ΠΏΡΠΎΠ²Π΅ΡΡΠ΅Ρ:
{
"headers": {
"X-Client-ID": "Π²Π°Ρ_ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΉ_ΠΊΠΎΠ΄",
"Authorization": "Bearer Π²Π°Ρ_ΡΠΎΠΊΠ΅Π½"
}
}
ΠΡΠ»ΠΈ X-Client-ID ΠΎΡΡΡΡΡΡΠ²ΡΠ΅Ρ ΠΈΠ»ΠΈ Π½Π΅Π²Π΅ΡΠ΅Π½, Π²Ρ ΠΏΠΎΠ»ΡΡΠΈΡΠ΅ ΠΎΡΠ²Π΅Ρ Ρ ΠΊΠΎΠ΄ΠΎΠΌ 400 Bad Request ΠΈ ΡΠ΅ΠΊΡΡΠΎΠΌ Β«ΠΡΡΡΡΡΡΠ²ΡΠ΅Ρ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ client_idΒ».
β οΈ ΠΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ API (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Ρ Motul ΠΈΠ»ΠΈ TotalEnergies) ΡΡΠ΅Π±ΡΡΡ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ client_id, Π½ΠΎ ΠΈ client_secret β Π²ΡΠΎΡΠΎΠΉ ΠΊΠ»ΡΡ Π΄Π»Ρ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ ΡΠΎΠΊΠ΅Π½Π°. Π£ΡΠΎΡΠ½ΠΈΡΠ΅ ΡΡΠΎ Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ!
Π’ΠΎΠΏ-5 ΠΏΡΠΈΡΠΈΠ½ ΠΎΡΠΈΠ±ΠΊΠΈ Β«ΠΡΡΡΡΡΡΠ²ΡΠ΅Ρ client_idΒ»
ΠΡΠΈΠ±ΠΊΠ° ΠΌΠΎΠΆΠ΅Ρ Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡΡ ΠΊΠ°ΠΊ Π½Π° ΡΡΠΎΡΠΎΠ½Π΅ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° (Π²Π°ΡΠ΅Π³ΠΎ ΠΊΠΎΠ΄Π°), ΡΠ°ΠΊ ΠΈ Π½Π° ΡΡΠΎΡΠΎΠ½Π΅ ΡΠ΅ΡΠ²Π΅ΡΠ° (ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠ°). ΠΠΎΡ ΡΠ°ΠΌΡΠ΅ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ½Π½ΡΠ΅ ΠΏΡΠΈΡΠΈΠ½Ρ, ΡΠ°Π½ΠΆΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΏΠΎ ΡΠ°ΡΡΠΎΡΠ΅:
| ΠΡΠΈΡΠΈΠ½Π° | ΠΠ°ΠΊ ΠΏΡΠΎΡΠ²Π»ΡΠ΅ΡΡΡ | Π Π΅ΡΠ΅Π½ΠΈΠ΅ |
|---|---|---|
| ΠΠΏΠ΅ΡΠ°ΡΠΊΠ° Π² ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ΅ | ΠΠ°ΠΏΡΠΎΡ ΡΡ
ΠΎΠ΄ΠΈΡ Ρ clent_id Π²ΠΌΠ΅ΡΡΠΎ client_id |
ΠΡΠΎΠ²Π΅ΡΡΡΠ΅ ΡΠ΅Π³ΠΈΡΡΡ ΠΈ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠ΅ Π² ΠΊΠΎΠ΄Π΅ ΠΈ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ |
| ΠΡΡΡΡΡΡΠ²ΡΠ΅Ρ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ | ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ Π½Π΅ ΠΏΠ΅ΡΠ΅Π΄Π°Π½ Π² headers ΠΈΠ»ΠΈ query |
ΠΠΎΠ±Π°Π²ΡΡΠ΅ X-Client-ID Π² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ Π·Π°ΠΏΡΠΎΡΠ° |
| ΠΡΡΡΠΊ ΡΡΠΎΠΊ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ | Π Π°Π½Π΅Π΅ ΡΠ°Π±ΠΎΡΠ°Π²ΡΠΈΠΉ client_id ΠΏΠ΅ΡΠ΅ΡΡΠ°Π» ΠΏΡΠΎΡ
ΠΎΠ΄ΠΈΡΡ |
ΠΠ±Π½ΠΎΠ²ΠΈΡΠ΅ ΠΊΠ»ΡΡ Π² Π»ΠΈΡΠ½ΠΎΠΌ ΠΊΠ°Π±ΠΈΠ½Π΅ΡΠ΅ ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠ° |
| IP-Π°Π΄ΡΠ΅Ρ Π½Π΅ Π² Π±Π΅Π»ΠΎΠΌ ΡΠΏΠΈΡΠΊΠ΅ | ΠΡΠΈΠ±ΠΊΠ° ΠΏΠΎΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Ρ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΡΠ΅ΡΠ²Π΅ΡΠ° | ΠΠΎΠ±Π°Π²ΡΡΠ΅ IP Π²Π°ΡΠ΅Π³ΠΎ ΡΠ΅ΡΠ²Π΅ΡΠ° Π² Π½Π°ΡΡΡΠΎΠΉΠΊΠ°Ρ API |
| ΠΠ·ΠΌΠ΅Π½ΠΈΠ»ΡΡ ΡΠΎΡΠΌΠ°Ρ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ | API ΡΡΠ΅Π±ΡΠ΅Ρ ΡΠ΅ΠΏΠ΅ΡΡ app_id Π²ΠΌΠ΅ΡΡΠΎ client_id |
ΠΠ±Π½ΠΎΠ²ΠΈΡΠ΅ ΠΊΠΎΠ΄ ΡΠΎΠ³Π»Π°ΡΠ½ΠΎ Π½ΠΎΠ²ΠΎΠΉ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ |
π ΠΠΈΠ°Π³Π½ΠΎΡΡΠΈΡΠ΅ΡΠΊΠΈΠΉ Π»Π°ΠΉΡΡ Π°ΠΊ: ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ Π²ΡΠΎΠ΄Π΅ Postman ΠΈΠ»ΠΈ cURL, ΡΡΠΎΠ±Ρ ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ ΡΠ΅ΡΡΠΎΠ²ΡΠΉ Π·Π°ΠΏΡΠΎΡ ΠΈ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ, ΠΊΠ°ΠΊΠΎΠΉ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ ΠΎΡΡΡΡΡΡΠ²ΡΠ΅Ρ Π² ΠΎΡΠ²Π΅ΡΠ΅. ΠΡΠΈΠΌΠ΅Ρ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
curl -X GET "https://api.supplier.com/oils" \
-H "X-Client-ID: Π²Π°Ρ_ΠΊΠΎΠ΄" \
-H "Authorization: Bearer Π²Π°Ρ_ΡΠΎΠΊΠ΅Π½"
ΠΡΠ»ΠΈ ΠΎΡΠ²Π΅Ρ ΠΏΠΎ-ΠΏΡΠ΅ΠΆΠ½Π΅ΠΌΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΎΡΠΈΠ±ΠΊΡ, ΠΏΡΠΎΠ²Π΅ΡΡΡΠ΅:
- π ΠΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ API: Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ ΡΠ΅ΠΏΠ΅ΡΡ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΠΈΠ½Π°ΡΠ΅ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ,
partner_id). - π ΠΠΎΠ³ΠΈ ΡΠ΅ΡΠ²Π΅ΡΠ°: ΡΠ°ΠΌ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΠ΅ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΎΡΠΈΠ±ΠΊΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Β«Client_id expiredΒ»).
- π§ ΠΠΈΡΡΠΌΠ° ΠΎΡ ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠ°: ΠΈΠ½ΠΎΠ³Π΄Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² API Π°Π½ΠΎΠ½ΡΠΈΡΡΡΡΡΡ Π·Π°ΡΠ°Π½Π΅Π΅.
Π‘ΠΎΡ ΡΠ°Π½ΠΈΡΠ΅ ΡΠ°Π±Π»ΠΎΠ½ ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ° Π² Postman ΠΈΠ»ΠΈ Insomnia β ΡΡΠΎ ΡΡΠΊΠΎΡΠΈΡ ΠΎΡΠ»Π°Π΄ΠΊΡ Π² Π±ΡΠ΄ΡΡΠ΅ΠΌ.
ΠΠ°ΠΊ Π½Π°ΠΉΡΠΈ ΡΠ²ΠΎΠΉ client_id Π² ΡΠΈΡΡΠ΅ΠΌΠ°Ρ ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠΎΠ² Π°Π²ΡΠΎΡ ΠΈΠΌΠΈΠΈ
ΠΡΠ»ΠΈ Π²Ρ ΡΠ²Π΅ΡΠ΅Π½Ρ, ΡΡΠΎ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡΡΡ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ, Π½ΠΎ ΠΎΡΠΈΠ±ΠΊΠ° ΡΠΎΡ
ΡΠ°Π½ΡΠ΅ΡΡΡ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΡΠ°ΠΌ client_id Π½Π΅Π²Π΅ΡΠ΅Π½ ΠΈΠ»ΠΈ ΡΡΡΠ°ΡΠ΅Π». ΠΠΎΡ Π³Π΄Π΅ Π΅Π³ΠΎ ΠΈΡΠΊΠ°ΡΡ Ρ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΡ
ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠΎΠ²:
- π§ Liqui Moly: ΠΠΈΡΠ½ΡΠΉ ΠΊΠ°Π±ΠΈΠ½Π΅Ρ β
API-ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈβ ΡΠ°Π·Π΄Π΅Π» Β«ΠΠ»ΡΡΠΈ Π΄ΠΎΡΡΡΠΏΠ°Β». - π’οΈ Castrol: ΠΠΎΡΡΠ°Π» ΠΏΠ°ΡΡΠ½ΡΡΠΎΠ² β
ΠΠ°ΡΡΡΠΎΠΉΠΊΠΈ APIβ Π²ΠΊΠ»Π°Π΄ΠΊΠ° Β«ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΡΒ». - π Mobil: Π‘ΠΈΡΡΠ΅ΠΌΠ° ExxonMobil Lubricants Portal β
My Account β API Credentials. - π© Motul: ΠΠ»Π°ΡΡΠΎΡΠΌΠ° MotulTech β
ΠΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ β Π£ΡΡΡΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅.
π ΠΠ°ΠΆΠ½ΠΎ: Π£ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ
ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠΎΠ² (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, TotalEnergies) client_id Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅ΡΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΏΡΠΈ ΠΏΠ΅ΡΠ²ΠΎΠΌ Π·Π°ΠΏΡΠΎΡΠ΅ Π½Π° Π΄ΠΎΡΡΡΠΏ ΠΊ API. ΠΡΠ»ΠΈ Π²Ρ Π½Π΅ Π²ΠΈΠ΄ΠΈΡΠ΅ Π΅Π³ΠΎ Π² Π»ΠΈΡΠ½ΠΎΠΌ ΠΊΠ°Π±ΠΈΠ½Π΅ΡΠ΅, ΡΠ²ΡΠΆΠΈΡΠ΅ΡΡ Ρ ΡΠ΅Ρ
Π½ΠΈΡΠ΅ΡΠΊΠΎΠΉ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΎΠΉ ΠΈ Π·Π°ΠΏΡΠΎΡΠΈΡΠ΅ Π°ΠΊΡΠΈΠ²Π°ΡΠΈΡ.
β οΈ ΠΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ (Π²ΡΠΎΠ΄Π΅ Shell) ΠΏΡΠΈΠ²ΡΠ·ΡΠ²Π°ΡΡ ΠΠ±ΡΠ°ΡΠΈΡΠ΅ΡΡ ΠΊ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΡ Π²Π°ΡΠ΅Π³ΠΎ ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠ° Ρ ΠΏΡΠΎΡΡΠ±ΠΎΠΉ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ API. Π£ΠΊΠ°ΠΆΠΈΡΠ΅ ΡΠ΅Π»Ρ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Β«ΡΠΈΠ½Ρ
ΡΠΎΠ½ΠΈΠ·Π°ΡΠΈΡ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π° ΠΌΠ°ΡΠ΅Π» Ρ Π½Π°ΡΠΈΠΌ ΡΠ°ΠΉΡΠΎΠΌΒ») ΠΈ ΠΏΡΠΈΠΊΡΠ΅ΠΏΠΈΡΠ΅ ΡΠ΅ΠΊΠ²ΠΈΠ·ΠΈΡΡ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ. ΠΡΠΎΡΠ΅ΡΡ ΠΌΠΎΠΆΠ΅Ρ Π·Π°Π½ΡΡΡ ΠΎΡ 1 Π΄ΠΎ 5 ΡΠ°Π±ΠΎΡΠΈΡ
Π΄Π½Π΅ΠΉ.client_id ΠΊ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΌΡ ΡΡΠΈΠ΄ΠΈΡΠ΅ΡΠΊΠΎΠΌΡ Π»ΠΈΡΡ. ΠΡΠ»ΠΈ Π²Ρ ΠΌΠ΅Π½ΡΠ»ΠΈ ΡΠ΅ΠΊΠ²ΠΈΠ·ΠΈΡΡ ΠΈΠ»ΠΈ ΠΠΠ, ΡΡΠ°ΡΡΠΉ ΠΊΠ»ΡΡ ΠΏΠ΅ΡΠ΅ΡΡΠ°Π½Π΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ!
Π§ΡΠΎ Π΄Π΅Π»Π°ΡΡ, Π΅ΡΠ»ΠΈ Π² Π»ΠΈΡΠ½ΠΎΠΌ ΠΊΠ°Π±ΠΈΠ½Π΅ΡΠ΅ Π½Π΅Ρ ΡΠ°Π·Π΄Π΅Π»Π° Ρ API?
ΠΠΎΡΠ°Π³ΠΎΠ²Π°Ρ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ: ΠΊΠ°ΠΊ ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ ΠΎΡΠΈΠ±ΠΊΡ Π² ΠΊΠΎΠ΄Π΅
ΠΡΠ»ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Π½Π° Π²Π°ΡΠ΅ΠΉ ΡΡΠΎΡΠΎΠ½Π΅, ΡΠ»Π΅Π΄ΡΠΉΡΠ΅ ΡΡΠΎΠΌΡ Π°Π»Π³ΠΎΡΠΈΡΠΌΡ (ΠΏΡΠΈΠΌΠ΅Π½ΠΈΠΌΠΎ Π΄Π»Ρ Python, JavaScript, PHP ΠΈ Π΄ΡΡΠ³ΠΈΡ ΡΠ·ΡΠΊΠΎΠ²):
- ΠΡΠΎΠ²Π΅ΡΡΡΠ΅ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°:
Π£Π±Π΅Π΄ΠΈΡΠ΅ΡΡ, ΡΡΠΎ
client_idΠΏΠ΅ΡΠ΅Π΄Π°ΡΡΡΡ Π² ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠΌ ΠΌΠ΅ΡΡΠ΅:- ΠΠ»Ρ
GET-Π·Π°ΠΏΡΠΎΡΠΎΠ²: Π²query parameters(Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ,?client_id=Π²Π°Ρ_ΠΊΠΎΠ΄). - ΠΠ»Ρ
POST/PUT: Π²headers(Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ,X-Client-ID) ΠΈΠ»ΠΈ Π² ΡΠ΅Π»Π΅ Π·Π°ΠΏΡΠΎΡΠ°.
- ΠΠ»Ρ
- ΠΠ°Π»ΠΈΠ΄ΠΈΡΡΠΉΡΠ΅ ΡΠΎΡΠΌΠ°Ρ:
Client_idΠΎΠ±ΡΡΠ½ΠΎ ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· 16β32 ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² (ΡΠΈΡΡΡ ΠΈ Π»Π°ΡΠΈΠ½ΡΠΊΠΈΠ΅ Π±ΡΠΊΠ²Ρ). ΠΡΠΈΠΌΠ΅Ρ:a1b2c3d4-e5f6-7890-g1h2-i3j4k5l6m7n8. - ΠΠ±Π½ΠΎΠ²ΠΈΡΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ:
ΠΡΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ SDK (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Castrol API Client), ΠΎΠ±Π½ΠΎΠ²ΠΈΡΠ΅ Π΅Π³ΠΎ Π΄ΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ Π²Π΅ΡΡΠΈΠΈ:
pip install --upgrade castrol-api - Π’Π΅ΡΡΠΈΡΡΠΉΡΠ΅ Π²ΡΡΡΠ½ΡΡ:
ΠΡΠΏΡΠ°Π²ΡΡΠ΅ Π·Π°ΠΏΡΠΎΡ ΡΠ΅ΡΠ΅Π· cURL ΠΈΠ»ΠΈ Postman, ΡΡΠΎΠ±Ρ ΠΈΡΠΊΠ»ΡΡΠΈΡΡ ΠΎΡΠΈΠ±ΠΊΠΈ Π² ΠΊΠΎΠ΄Π΅.
- π ΠΠ΅Π²Π΅ΡΠ½ΡΠΉ
Content-Type: API ΠΎΠΆΠΈΠ΄Π°Π΅Ρapplication/json, Π° Π²Ρ ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅ΡΠ΅text/plain. - π ΠΡΡΡΠΊΡΠΈΠΉ ΡΠΎΠΊΠ΅Π½:
client_idΠ²Π΅ΡΠ½ΡΠΉ, Π½ΠΎ ΡΠΎΠΊΠ΅Π½ Π΄ΠΎΡΡΡΠΏΠ° ΠΏΡΠΎΡΡΠΎΡΠ΅Π½ (ΠΎΠ±ΡΡΠ½ΠΎ ΠΆΠΈΠ²Π΅Ρ 1β24 ΡΠ°ΡΠ°). - π Π Π΅Π³ΠΈΠΎΠ½Π°Π»ΡΠ½ΡΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ: ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ API (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Valvoline) ΡΠ°Π±ΠΎΡΠ°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ Ρ IP ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ ΡΡΡΠ°Π½.
- π¦ ΠΠ΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½Π°Ρ ΡΡΡΡΠΊΡΡΡΠ° ΡΠ΅Π»Π° Π·Π°ΠΏΡΠΎΡΠ°: ΠΡΡΡΡΡΡΠ²ΡΠ΅Ρ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΠΏΠΎΠ»Π΅ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ,
product_category: "engine_oil"). - ΠΡΠΎΠ²Π΅ΡΡΡΠ΅ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ Π½Π° ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ:
ΠΠ° ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ Π³ΠΎΠ΄ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠΈ Π°Π²ΡΠΎΡ ΠΈΠΌΠΈΠΈ ΡΠΆΠ΅ΡΡΠΎΡΠΈΠ»ΠΈ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ ΠΊ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Castrol Ρ 2023 Π³ΠΎΠ΄Π° ΡΡΠ΅Π±ΡΠ΅Ρ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ
X-Api-Version. - Π‘Π²ΡΠΆΠΈΡΠ΅ΡΡ Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΎΠΉ:
ΠΡΠΈΠ»ΠΎΠΆΠΈΡΠ΅ ΠΊ Π·Π°ΠΏΡΠΎΡΡ:
- ΠΠ°Ρ
client_id(ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΌΠ°Π·Π°ΡΡ ΡΠ°ΡΡΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ²). - ΠΡΠΈΠΌΠ΅Ρ Π·Π°ΠΏΡΠΎΡΠ° (Π±Π΅Π· ΡΠΎΠΊΠ΅Π½Π°!).
- ΠΡΠ΅ΠΌΡ ΠΈ Π΄Π°ΡΡ ΠΎΡΠΈΠ±ΠΊΠΈ.
π ΠΡΠΈΠΌΠ΅Ρ ΠΏΠΈΡΡΠΌΠ°:
ΠΠ΄ΡΠ°Π²ΡΡΠ²ΡΠΉΡΠ΅!
ΠΡΠΈ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ Ρ Π²Π°ΡΠΈΠΌ API ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ ΠΎΡΠΈΠ±ΠΊΡ Β«ΠΡΡΡΡΡΡΠ²ΡΠ΅Ρ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ client_idΒ».
ΠΠ°Ρ client_id:
a1b2c3d4---****-5e6f7g8h9i0j.ΠΠ°ΠΏΡΠΎΡ ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌ Π½Π°
https://api.yoursupplier.com/v1/productsΡ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠΌX-Client-ID.ΠΡΠΎΡΠΈΠΌ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ Π°ΠΊΡΡΠ°Π»ΡΠ½ΠΎΡΡΡ ΠΊΠ»ΡΡΠ° ΠΈΠ»ΠΈ ΡΡΠΎΡΠ½ΠΈΡΡ ΡΠΎΡΠΌΠ°Ρ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ.
- ΠΠ°Ρ
- ΠΡΠΎΠ²Π΅ΡΡΡΠ΅ Π½Π° ΡΡΠΎΡΠΎΠ½Π½ΠΈΡ
ΡΠ΅ΡΠ²ΠΈΡΠ°Ρ
:
ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ReqBin ΠΈΠ»ΠΈ HTTP Toolkit, ΡΡΠΎΠ±Ρ ΠΈΡΠΊΠ»ΡΡΠΈΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Ρ Π²Π°ΡΠΈΠΌ ΠΊΠΎΠ΄ΠΎΠΌ.
- π ΠΠΎΠ·Π²ΠΎΠ½ΠΈΡΠ΅ Π½Π° Π³ΠΎΡΡΡΡΡ Π»ΠΈΠ½ΠΈΡ (Π½ΠΎΠΌΠ΅ΡΠ° ΠΎΠ±ΡΡΠ½ΠΎ Π΅ΡΡΡ Π² Π΄ΠΎΠ³ΠΎΠ²ΠΎΡΠ΅).
- π€ ΠΠ±ΡΠ°ΡΠΈΡΠ΅ΡΡ ΠΊ Π΄ΡΡΠ³ΠΈΠΌ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΎΡΠ°ΠΌ Π½Π° ΡΠΎΡΡΠΌΠ°Ρ
(Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π½Π° Stack Overflow Ρ ΡΠ΅Π³ΠΎΠΌ
auto-oil-api). - π ΠΠ°ΠΏΠΈΡΠΈΡΠ΅ ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎΠ΅ ΠΏΠΈΡΡΠΌΠΎ Π½Π° ΠΈΠΌΡ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠ° ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠ°.
π Π§Π΅ΠΊΠ»ΠΈΡΡ ΠΏΠ΅ΡΠ΅Π΄ ΠΎΡΠΏΡΠ°Π²ΠΊΠΎΠΉ Π·Π°ΠΏΡΠΎΡΠ°:
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ client_id ΡΠΊΠ°Π·Π°Π½ Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ|client_id ΡΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½ Π±Π΅Π· ΠΏΡΠΎΠ±Π΅Π»ΠΎΠ²|ΠΡΠΎΠ²Π΅ΡΠ΅Π½ ΡΡΠΎΠΊ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΊΠ»ΡΡΠ°|IP-Π°Π΄ΡΠ΅Ρ ΡΠ΅ΡΠ²Π΅ΡΠ° Π² Π±Π΅Π»ΠΎΠΌ ΡΠΏΠΈΡΠΊΠ΅|ΠΠ°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ Π·Π°ΠΏΡΠΎΡΠ° ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡ ΠΏΡΠΈΠΌΠ΅ΡΡ Π² SDK-->
β οΈ ΠΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠΡΠ»ΠΈ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ OAuth 2.0, ΡΠ½Π°ΡΠ°Π»Π° ΠΏΠΎΠ»ΡΡΠΈΡΠ΅ ΡΠΎΠΊΠ΅Π½ Π΄ΠΎΡΡΡΠΏΠ° Ρ ΠΏΠΎΠΌΠΎΡΡΡ client_id ΠΈ client_secret, ΠΈ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΡΠΎΠΌ ΠΎΡΠΏΡΠ°Π²Π»ΡΠΉΡΠ΅ Π·Π°ΠΏΡΠΎΡ ΠΊ API. ΠΡΠΈΠΌΠ΅Ρ:
POST /oauth/token
{
"grant_type": "client_credentials",
"client_id": "Π²Π°Ρ_ΠΊΠΎΠ΄",
"client_secret": "Π²Π°Ρ_ΡΠ΅ΠΊΡΠ΅Ρ"
}
90% ΠΎΡΠΈΠ±ΠΎΠΊ Ρ client_id ΡΠ΅ΡΠ°ΡΡΡΡ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΎΠΉ ΡΡΡΡ Π²Π΅ΡΠ΅ΠΉ: ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΡΡΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°, Π°ΠΊΡΡΠ°Π»ΡΠ½ΠΎΡΡΠΈ ΠΊΠ»ΡΡΠ° ΠΈ ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎΡΡΠΈ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ² Π·Π°ΠΏΡΠΎΡΠ°.
Π§Π°ΡΡΡΠ΅ ΠΎΡΠΈΠ±ΠΊΠΈ ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ API Π°Π²ΡΠΎΡ ΠΈΠΌΠΈΠΈ
ΠΠ°ΠΆΠ΅ ΠΏΠΎΡΠ»Π΅ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ client_id Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΡΠΎΠ»ΠΊΠ½ΡΡΡΡΡ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°ΠΌΠΈ. ΠΠΎΡ ΡΠΈΠΏΠΈΡΠ½ΡΠ΅ Β«ΠΏΠΎΠ΄Π²ΠΎΠ΄Π½ΡΠ΅ ΠΊΠ°ΠΌΠ½ΠΈΒ»:
π‘ Π‘ΠΎΠ²Π΅Ρ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ²: ΠΡΠ΅Π³Π΄Π° Π»ΠΎΠ³ΠΈΡΡΠΉΡΠ΅ ΠΏΠΎΠ»Π½ΡΠΉ Π·Π°ΠΏΡΠΎΡ ΠΈ ΠΎΡΠ²Π΅Ρ ΠΎΡ API. ΠΡΠΎ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡΡΠΎ Π½Π°ΠΉΡΠΈ ΠΏΡΠΈΡΠΈΠ½Ρ ΠΎΡΠΈΠ±ΠΊΠΈ. ΠΡΠΈΠΌΠ΅Ρ Π»ΠΎΠ³Π°:
[
"2026-05-20 14:30:45",
"Request": {
"url": "https://api.castrol.com/v2/products",
"headers": {"X-Client-ID": "abc123", "Authorization": "Bearer xyz789"},
"body": {"category": "transmission_fluid"}
},
"Response": {
"status": 400,
"error": "Missing required parameter: client_id"
}
]
β οΈ ΠΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Lukoil) Π±Π»ΠΎΠΊΠΈΡΡΡΡ Π°ΠΊΠΊΠ°ΡΠ½ΡΡ ΠΏΠΎΡΠ»Π΅ 10 Π½Π΅ΡΠ΄Π°ΡΠ½ΡΡ Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΏΠΎΠ΄ΡΡΠ΄. ΠΡΠ»ΠΈ Π²Ρ ΡΠ΅ΡΡΠΈΡΡΠ΅ΡΠ΅ ΠΊΠΎΠ΄, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΏΠ΅ΡΠΎΡΠ½ΠΈΡΡ (sandbox)!
Π§ΡΠΎ Π΄Π΅Π»Π°ΡΡ, Π΅ΡΠ»ΠΈ ΠΎΡΠΈΠ±ΠΊΠ° ΡΠΎΡ ΡΠ°Π½ΡΠ΅ΡΡΡ
ΠΡΠ»ΠΈ Π²Ρ ΠΏΠ΅ΡΠ΅ΠΏΡΠΎΠ±ΠΎΠ²Π°Π»ΠΈ Π²ΡΡ, Π½ΠΎ API ΠΏΠΎ-ΠΏΡΠ΅ΠΆΠ½Π΅ΠΌΡ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ Β«ΠΡΡΡΡΡΡΠ²ΡΠ΅Ρ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ client_idΒ», Π΄Π΅ΠΉΡΡΠ²ΡΠΉΡΠ΅ ΠΏΠΎ ΡΡΠΎΠΌΡ ΠΏΠ»Π°Π½Ρ:
π§ ΠΡΠ»ΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π½Π΅ ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ:
Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΠ΅ΡΡΠΎΠ²ΡΠΉ Π°ΠΊΠΊΠ°ΡΠ½Ρ Ρ ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠ° ΠΈ ΠΏΡΠΎΠ²Π΅ΡΡΡΠ΅ API Π½Π° Π½ΡΠΌ. ΠΠ½ΠΎΠ³Π΄Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ Ρ ΠΎΡΠ½ΠΎΠ²Π½ΡΠΌ client_id ΠΈΠ·-Π·Π° ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠΉ ΡΠ°ΡΠΈΡΠ°.
FAQ: ΠΡΠ²Π΅ΡΡ Π½Π° ΡΠ°ΡΡΡΠ΅ Π²ΠΎΠΏΡΠΎΡΡ
ΠΠΎΠΆΠ½ΠΎ Π»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΠ΄ΠΈΠ½ client_id Π΄Π»Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΠ΅ΡΠ²ΠΈΡΠΎΠ²?
ΠΠ°Π²ΠΈΡΠΈΡ ΠΎΡ ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠ°. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Liqui Moly ΡΠ°Π·ΡΠ΅ΡΠ°Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΠ΄ΠΈΠ½ client_id Π΄Π»Ρ Π²Π΅Π±-ΡΠ°ΠΉΡΠ° ΠΈ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π΅ΡΠ»ΠΈ ΠΎΠ½ΠΈ ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ. Π Castrol ΡΡΠ΅Π±ΡΠ΅Ρ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠ΅ ΠΊΠ»ΡΡΠΈ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π΄ΠΎΠΌΠ΅Π½Π° ΠΈΠ»ΠΈ IP-Π°Π΄ΡΠ΅ΡΠ°. Π£ΡΠΎΡΠ½ΠΈΡΠ΅ ΡΡΠΎ Π² ΡΠΎΠ³Π»Π°ΡΠ΅Π½ΠΈΠΈ ΠΎΠ± ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ.
ΠΠ°ΠΊ ΡΠ°ΡΡΠΎ Π½ΡΠΆΠ½ΠΎ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡΡ client_id?
ΠΠ±ΡΡΠ½ΠΎ client_id Π²ΡΠ΄Π°ΡΡΡΡ Π±Π΅ΡΡΡΠΎΡΠ½ΠΎ, Π½ΠΎ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, TotalEnergies) ΠΏΠ΅ΡΠ΅Π²ΡΠΏΡΡΠΊΠ°ΡΡ ΠΊΠ»ΡΡΠΈ ΡΠ°Π· Π² 1β2 Π³ΠΎΠ΄Π°. Π’Π°ΠΊΠΆΠ΅ ΠΊΠ»ΡΡ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΎΡΠΎΠ·Π²Π°Π½ ΠΏΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ ΡΠ΅ΠΊΠ²ΠΈΠ·ΠΈΡΠΎΠ² Π²Π°ΡΠ΅ΠΉ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ΠΈΠ»ΠΈ ΠΏΠΎΠ΄ΠΎΠ·ΡΠ΅Π½ΠΈΠΈ Π½Π° ΡΡΠ΅ΡΠΊΡ.
ΠΠΎΡΠ΅ΠΌΡ ΠΎΡΠΈΠ±ΠΊΠ° ΠΏΠΎΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π½Π° Π½Π΅ΠΊΠΎΡΠΎΡΡΡ Π·Π°ΠΏΡΠΎΡΠ°Ρ ?
ΠΠ΅ΡΠΎΡΡΠ½ΠΎ, Π²Ρ Π·Π°Π±ΡΠ²Π°Π΅ΡΠ΅ ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°ΡΡ client_id Π² ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΡ
ΡΠ½Π΄ΠΏΠΎΠΈΠ½ΡΠ°Ρ
. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΡΠΏΠΈΡΠΊΠ° ΠΌΠ°ΡΠ΅Π» ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ Π½Π΅ ΡΡΠ΅Π±ΠΎΠ²Π°ΡΡΡΡ, Π½ΠΎ Π΄Π»Ρ Π·Π°ΠΊΠ°Π·Π° β ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»Π΅Π½. ΠΡΠΎΠ²Π΅ΡΡΡΠ΅ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ Π½Π° ΠΏΡΠ΅Π΄ΠΌΠ΅Ρ ΡΠ°Π·Π½ΡΡ
ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ ΠΊ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ Π΄Π»Ρ ΡΠ°Π·Π½ΡΡ
ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² API.
ΠΠΎΠΆΠ½ΠΎ Π»ΠΈ ΠΎΠ±ΠΎΠΉΡΠΈ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΠ΅ client_id?
ΠΠ΅Ρ. ΠΡΠ΅ Π»Π΅Π³ΠΈΡΠΈΠΌΠ½ΡΠ΅ API Π°Π²ΡΠΎΡ
ΠΈΠΌΠΈΠΈ ΡΡΠ΅Π±ΡΡΡ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ. ΠΠ±Ρ
ΠΎΠ΄ ΠΏΡΠΈΠ²Π΅Π΄ΡΡ ΠΊ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠ΅ Π²Π°ΡΠ΅Π³ΠΎ IP ΠΈΠ»ΠΈ ΡΡΠ΄Π΅Π±Π½ΠΎΠΌΡ ΠΈΡΠΊΡ Π·Π° Π½Π°ΡΡΡΠ΅Π½ΠΈΠ΅ ΡΡΠ»ΠΎΠ²ΠΈΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ. ΠΡΠ»ΠΈ Π²Π°ΠΌ Π½ΡΠΆΠ΅Π½ Π΄ΠΎΡΡΡΠΏ Π±Π΅Π· client_id, ΠΈΡΠΈΡΠ΅ ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠΎΠ² Ρ ΠΎΡΠΊΡΡΡΡΠΌΠΈ Π΄Π°Π½Π½ΡΠΌΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΈ SAE ΠΈΠ»ΠΈ ACEA).
ΠΠ΄Π΅ Ρ ΡΠ°Π½ΠΈΡΡ client_id, ΡΡΠΎΠ±Ρ ΠΎΠ½ Π½Π΅ ΠΏΠΎΠΏΠ°Π» Π² ΠΏΡΠ±Π»ΠΈΡΠ½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ?
ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ (.env ΡΠ°ΠΉΠ»Ρ) ΠΈΠ»ΠΈ ΡΠ΅ΠΊΡΠ΅ΡΡ CI/CD (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, GitHub Secrets ΠΈΠ»ΠΈ GitLab CI Variables). ΠΡΠΈΠΌΠ΅Ρ Π΄Π»Ρ Python:
import os
client_id = os.getenv("CASTROL_CLIENT_ID") # Π₯ΡΠ°Π½ΠΈΡΡΡ Π² .env
ΠΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΠΊΠΎΠΌΠΌΠΈΡΡΡΠ΅ ΡΠ°ΠΉΠ»Ρ Ρ ΠΊΠ»ΡΡΠ°ΠΌΠΈ Π² Git!