ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΡ ΡΠΈΠ½Π°Π½ΡΠΎΠ²ΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ² ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ ΡΡΠ°Π½Π΄Π°ΡΡΠΎΠΌ Π΄Π»Ρ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ Π±ΠΈΠ·Π½Π΅ΡΠ°, ΠΈ ΠΠ»ΡΡΠ°-ΠΠ°Π½ΠΊ API Python ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· ΡΠ°ΠΌΡΡ ΠΌΠΎΡΠ½ΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ² Π΄Π»Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΡΡΠΎΠΉ Π·Π°Π΄Π°ΡΠΈ. Π Π°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΠΌΠΎΠ³ΡΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ ΡΡΠ΅ΡΠ°, Π΄Π°ΡΠ±ΠΎΡΠ΄Ρ Π΄Π»Ρ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π° ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉ ΠΈΠ»ΠΈ ΡΠ»ΠΎΠΆΠ½ΡΠ΅ Π°Π»Π³ΠΎΡΠΈΡΠΌΡ ΠΊΠ°Π·Π½Π°ΡΠ΅ΠΉΡΡΠ²Π°, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎΠ΅ Open API. Π―Π·ΡΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Python ΠΈΠ΄Π΅Π°Π»ΡΠ½ΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ Π΄Π»Ρ ΡΠ°ΠΊΠΈΡ ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π² Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ Π±ΠΎΠ³Π°ΡΠΎΠΉ ΡΠΊΠΎΡΠΈΡΡΠ΅ΠΌΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ ΠΈ ΠΏΡΠΎΡΡΠΎΡΠ΅ ΡΠ°Π±ΠΎΡΡ Ρ JSON-Π΄Π°Π½Π½ΡΠΌΠΈ.
ΠΠ½Π΅Π΄ΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ² ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΈΡΠΊΠ»ΡΡΠΈΡΡ ΡΡΡΠ½ΠΎΠΉ Π²Π²ΠΎΠ΄ Π΄Π°Π½Π½ΡΡ ΠΈ ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ΅Π»ΠΎΠ²Π΅ΡΠ΅ΡΠΊΠΈΠΉ ΡΠ°ΠΊΡΠΎΡ ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ Π±ΡΡ Π³Π°Π»ΡΠ΅ΡΠΈΠ΅ΠΉ. Open API ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π΄ΠΎΡΡΡΠΏ ΠΊ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎ ΡΡΠ΅ΡΠ°Ρ , ΠΎΡΡΠ°ΡΠΊΠ°Ρ , ΠΏΠ»Π°ΡΠ΅ΠΆΠ°Ρ ΠΈ Π²ΡΠΏΠΈΡΠΊΠ°Ρ Π² ΡΠ΅Π°Π»ΡΠ½ΠΎΠΌ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ. Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΠΌΡ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΡΠ°Π·Π±Π΅ΡΠ΅ΠΌ ΠΏΡΠΎΡΠ΅ΡΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ, Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ ΠΈ Π½Π°ΠΏΠΈΡΠ΅ΠΌ ΠΏΠ΅ΡΠ²ΡΠΉ ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΠΉ ΡΠΊΡΠΈΠΏΡ Π΄Π»Ρ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ Ρ Π±Π°Π½ΠΊΠΎΠ²ΡΠΊΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ.
ΠΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠ° ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ
ΠΡΠ΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌ ΠΏΡΠΈΡΡΡΠΏΠ°ΡΡ ΠΊ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΠΊΠΎΠ΄Π°, Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΈΡΡ ΡΠ°Π±ΠΎΡΠ΅Π΅ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°. ΠΠ»Ρ ΡΠ°Π±ΠΎΡΡ Ρ API ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΠΉ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡ Python Π²Π΅ΡΡΠΈΠΈ 3.7 ΠΈΠ»ΠΈ Π²ΡΡΠ΅, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π±ΠΎΠ»Π΅Π΅ ΡΡΠ°ΡΡΠ΅ Π²Π΅ΡΡΠΈΠΈ ΠΌΠΎΠ³ΡΡ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ Π°ΡΠΈΠ½Ρ
ΡΠΎΠ½Π½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠ΅ Π² Π½ΠΎΠ²ΡΡ
Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°Ρ
. Π’Π°ΠΊΠΆΠ΅ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠ΅ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΠ΅ venv Π΄Π»Ρ ΠΈΠ·ΠΎΠ»ΡΡΠΈΠΈ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ ΠΏΡΠΎΠ΅ΠΊΡΠ°.
ΠΡΠΈΡΠΈΠ°Π»ΡΠ½ΡΠΉ SDK (Software Development Kit) ΠΎΡ Π±Π°Π½ΠΊΠ° Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠΏΡΠΎΡΠ°Π΅Ρ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ Ρ endpoints, ΡΠΊΡΡΠ²Π°Ρ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΡ ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ² ΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΎΡΠΈΠ±ΠΎΠΊ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΈ. Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡΡ ΡΠ΅ΡΠ΅Π· ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΉ ΠΏΠ°ΠΊΠ΅ΡΠ½ΡΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ pip. Π ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
pip install alfabank-openapi
ΠΠΎΠΌΠΈΠΌΠΎ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ, Π΄Π»Ρ ΠΏΠΎΠ»Π½ΠΎΡΠ΅Π½Π½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ ΡΠ°ΡΡΠΎ ΡΡΠ΅Π±ΡΡΡΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΡ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΌΠΈ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ ΠΈ ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ
. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° python-dotenv ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎ Ρ
ΡΠ°Π½ΠΈΡΡ ΡΠ΅ΠΊΡΠ΅ΡΠ½ΡΠ΅ ΠΊΠ»ΡΡΠΈ, Π½Π΅ ΠΏΡΠΎΠΏΠΈΡΡΠ²Π°Ρ ΠΈΡ
ΠΏΡΡΠΌΠΎ Π² ΠΊΠΎΠ΄Π΅. ΠΡΠΎ ΠΊΡΠΈΡΠΈΡΠ΅ΡΠΊΠΈ Π²Π°ΠΆΠ½ΡΠΉ Π°ΡΠΏΠ΅ΠΊΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π΅Π»ΡΠ·Ρ ΠΈΠ³Π½ΠΎΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ ΡΠΈΠ½Π°Π½ΡΠΎΠ²ΡΠΌΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°ΠΌΠΈ.
ΠΠΎΡΠ»Π΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Π²ΡΠ΅Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² ΡΡΠΎΠΈΡ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ ΠΈΡ ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎΡΡΡ, Π·Π°ΠΏΡΡΡΠΈΠ² ΠΏΡΠΎΡΡΠΎΠΉ ΡΠ΅ΡΡΠΎΠ²ΡΠΉ ΠΈΠΌΠΏΠΎΡΡ Π² ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ. ΠΡΠ»ΠΈ ΠΎΡΠΈΠ±ΠΎΠΊ Π½Π΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ»ΠΎ, ΡΡΠ΅Π΄Π° Π³ΠΎΡΠΎΠ²Π° ΠΊ Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅ΠΉ Π½Π°ΡΡΡΠΎΠΉΠΊΠ΅ ΠΈ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π΄ΠΎΡΡΡΠΏΠΎΠ² ΠΎΡ Π±Π°Π½ΠΊΠ°.
Π Π΅Π³ΠΈΡΡΡΠ°ΡΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΡΠΎΠΊΠ΅Π½ΠΎΠ²
ΠΠ»Ρ Π½Π°ΡΠ°Π»Π° ΡΠ°Π±ΠΎΡΡ Ρ API Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ²ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π² Π»ΠΈΡΠ½ΠΎΠΌ ΠΊΠ°Π±ΠΈΠ½Π΅ΡΠ΅ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° Π±Π°Π½ΠΊΠ°. ΠΡΠΎΡ ΠΏΡΠΎΡΠ΅ΡΡ ΡΡΠ΅Π±ΡΠ΅Ρ Π½Π°Π»ΠΈΡΠΈΡ Π΄Π΅ΠΉΡΡΠ²ΡΡΡΠ΅Π³ΠΎ Π΄ΠΎΠ³ΠΎΠ²ΠΎΡΠ° Π½Π° ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ-Π±Π°Π½ΠΊ Π΄Π»Ρ ΡΡΠΈΠ΄ΠΈΡΠ΅ΡΠΊΠΈΡ Π»ΠΈΡ. Π ΡΠ°Π·Π΄Π΅Π»Π΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° Π²Π°ΠΌ Π±ΡΠ΄Π΅Ρ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΠΉ ΠΏΡΠΎΠ΅ΠΊΡ, Π³Π΄Π΅ Π½ΡΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΈ Redirect URI. Redirect URI β ΡΡΠΎ Π°Π΄ΡΠ΅Ρ, Π½Π° ΠΊΠΎΡΠΎΡΡΠΉ Π±Π°Π½ΠΊ ΠΏΠ΅ΡΠ΅Π½Π°ΠΏΡΠ°Π²ΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΠΎΡΠ»Π΅ ΡΡΠΏΠ΅ΡΠ½ΠΎΠΉ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΈ, ΠΈ ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠΎΡΠ½ΠΎ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡΡ Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠ°ΠΌΠΈ Π² ΠΊΠΎΠ΄Π΅.
ΠΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΈ Π²Ρ ΠΏΠΎΠ»ΡΡΠΈΡΠ΅ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠ΅ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΡ: client_id ΠΈ client_secret. ΠΡΠΈ Π΄Π°Π½Π½ΡΠ΅ ΡΠ²Π»ΡΡΡΡΡ Π°Π½Π°Π»ΠΎΠ³ΠΎΠΌ Π»ΠΎΠ³ΠΈΠ½Π° ΠΈ ΠΏΠ°ΡΠΎΠ»Ρ Π΄Π»Ρ Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ. ΠΡΠΎΡΠ΅ΡΡ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΈ Π² ΠΠ»ΡΡΠ°-ΠΠ°Π½ΠΊΠ΅ ΠΏΠΎΡΡΡΠΎΠ΅Π½ Π½Π° ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π΅ OAuth 2.0, ΡΡΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ Π²ΡΡΠΎΠΊΠΈΠΉ ΡΡΠΎΠ²Π΅Π½Ρ Π·Π°ΡΠΈΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°Π΅ΠΌΡΡ
Π΄Π°Π½Π½ΡΡ
. Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠΏΠΎΡΠΎΠ±ΠΎΠ² ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΡΠΎΠΊΠ΅Π½Π° Π΄ΠΎΡΡΡΠΏΠ°, Π½ΠΎ Π΄Π»Ρ ΡΠ΅ΡΠ²Π΅ΡΠ½ΡΡ
ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ
ΠΎΠ΄ΠΈΡ ΠΌΠ΅ΡΠΎΠ΄ "Client Credentials".
- π Client ID β ΠΏΡΠ±Π»ΠΈΡΠ½ΡΠΉ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅ΡΡΡ Π² Π·Π°ΠΏΡΠΎΡΠ°Ρ ΠΎΡΠΊΡΡΡΠΎ.
- π Client Secret β ΡΠ΅ΠΊΡΠ΅ΡΠ½ΡΠΉ ΠΊΠ»ΡΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π΄ΠΎΠ»ΠΆΠ΅Π½ Ρ ΡΠ°Π½ΠΈΡΡΡΡ Π² ΡΡΡΠΎΠ³ΠΎΠΉ ΡΠ°ΠΉΠ½Π΅ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π½Π° Π±ΡΠΊΠ΅Π½Π΄Π΅.
- π Access Token β Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΉ ΠΊΠ»ΡΡ Π΄ΠΎΡΡΡΠΏΠ°, ΠΊΠΎΡΠΎΡΡΠΉ Π½ΡΠΆΠ½ΠΎ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡΡ ΠΏΠΎΡΠ»Π΅ ΠΈΡΡΠ΅ΡΠ΅Π½ΠΈΡ ΡΡΠΎΠΊΠ° Π΅Π³ΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ (ΠΎΠ±ΡΡΠ½ΠΎ 1 ΡΠ°Ρ).
- π Refresh Token β ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π½ΠΎΠ²ΠΎΠ³ΠΎ access token Π±Π΅Π· ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎΠ³ΠΎ Π²Π²ΠΎΠ΄Π° ΠΏΠ°ΡΠΎΠ»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ.
ΠΠ°ΠΆΠ½ΠΎ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ Π½Π°ΡΡΡΠΎΠΈΡΡ ΠΏΡΠ°Π²Π° Π΄ΠΎΡΡΡΠΏΠ° Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π²Π°Π΅ΠΌΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ API. Π Π±Π°Π½ΠΊΠΎΠ²ΡΠΊΠΎΠΌ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΡΠΎΠΊΠ΅Π½Π° ΡΠΎΠ»ΡΠΊΠΎ ΡΡΠ΅Π½ΠΈΠ΅ΠΌ Π΄Π°Π½Π½ΡΡ ΠΈΠ»ΠΈ, Π½Π°ΠΎΠ±ΠΎΡΠΎΡ, ΡΠ°Π·ΡΠ΅ΡΠΈΡΡ ΠΏΡΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΏΠ»Π°ΡΠ΅ΠΆΠ΅ΠΉ. ΠΠ»Ρ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ ΡΠΎΠ·Π΄Π°ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Ρ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠΌΠΈ ΠΏΡΠ°Π²Π°ΠΌΠΈ, ΡΡΠΎΠ±Ρ Π² ΡΠ»ΡΡΠ°Π΅ ΠΊΠΎΠΌΠΏΡΠΎΠΌΠ΅ΡΠ°ΡΠΈΠΈ ΠΊΠ»ΡΡΠ΅ΠΉ ΡΡΠ΅ΡΠ± Π±ΡΠ» ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½.
βοΈ ΠΡΠΎΠ²Π΅ΡΠΊΠ° ΠΏΠ΅ΡΠ΅Π΄ Π·Π°ΠΏΡΡΠΊΠΎΠΌ ΠΊΠΎΠ΄Π°
ΠΠ²ΡΠΎΡΠΈΠ·Π°ΡΠΈΡ ΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΡΠ΅ΡΡΠΈΡΠΌΠΈ
Π‘Π°ΠΌΡΠΉ Π½Π°Π΄Π΅ΠΆΠ½ΡΠΉ ΡΠΏΠΎΡΠΎΠ± Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΈ Π² Python β ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΠΊΠ»Π°ΡΡΠΎΠ² ΠΈΠ· SDK. Π ΡΡΠ½ΠΎΠ΅ ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ HTTP-Π·Π°ΠΏΡΠΎΡΠΎΠ² Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π½ΠΎ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅Ρ ΡΠΈΡΠΊ Π΄ΠΎΠΏΡΡΡΠΈΡΡ ΠΎΡΠΈΠ±ΠΊΡ Π² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ°Ρ ΠΈΠ»ΠΈ ΠΏΠΎΡΡΠ΄ΠΊΠ΅ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ². ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Π±Π΅ΡΠ΅Ρ Π½Π° ΡΠ΅Π±Ρ ΠΏΡΠΎΡΠ΅ΡΡ ΠΎΠ±ΠΌΠ΅Π½Π° Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Π½Π° ΠΏΠΎΡΡΠΎΡΠ½Π½ΡΠΉ ΡΠΎΠΊΠ΅Π½ Π΄ΠΎΡΡΡΠΏΠ°.
Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΏΡΠΈΠΌΠ΅Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΊΠ»Π°ΡΡΠ°-ΠΎΠ±Π΅ΡΡΠΊΠΈ Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠ΅ΡΡΠΈΠ΅ΠΉ. ΠΡΠΎΡ ΠΊΠ»Π°ΡΡ Π±ΡΠ΄Π΅Ρ ΠΎΡΠ²Π΅ΡΠ°ΡΡ Π·Π° ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΡΠΎΠΊΠ΅Π½Π° ΠΈ Π΅Π³ΠΎ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΠΏΡΠΈ ΠΈΡΡΠ΅ΡΠ΅Π½ΠΈΠΈ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΆΠΈΠ·Π½ΠΈ. ΠΠΎΠ΄ Π½ΠΈΠΆΠ΅ Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΡΠ΅Ρ Π±Π°Π·ΠΎΠ²ΡΡ ΡΡΡΡΠΊΡΡΡΡ ΡΠ°ΠΊΠΎΠ³ΠΎ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ:
from alfabank_openapi import ApiClient, Configuration
import os
config = Configuration()
config.host = "https://intapi.alfabank.ru"
config.access_token = os.getenv("ALFA_ACCESS_TOKEN")
client = ApiClient(configuration=config)
ΠΠ°Π»Π΅Π΅ ΠΊΠ»ΠΈΠ΅Π½Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ Π²ΡΠ·ΠΎΠ²Π° ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² API
ΠΡΠΎΠ±ΠΎΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΡΠ΄Π΅Π»ΠΈΡΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ΅ ΠΎΡΠΈΠ±ΠΎΠΊ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΈ. ΠΡΠ»ΠΈ ΡΠΎΠΊΠ΅Π½ ΠΈΡΡΠ΅ΠΊ ΠΈΠ»ΠΈ ΡΡΠ°Π» Π½Π΅Π²Π°Π»ΠΈΠ΄Π½ΡΠΌ, ΡΠ΅ΡΠ²Π΅Ρ Π²Π΅ΡΠ½Π΅Ρ ΠΊΠΎΠ΄ ΠΎΡΠ²Π΅ΡΠ° 401 Unauthorized. Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π²Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠΌΠ΅ΡΡ ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ°ΡΡ ΡΠΈΡΡΠ°ΡΠΈΡ: Π»ΠΈΠ±ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ refresh token Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π½ΠΎΠ²ΠΎΠΉ ΠΏΠ°ΡΡ ΠΊΠ»ΡΡΠ΅ΠΉ, Π»ΠΈΠ±ΠΎ ΡΠ²Π΅Π΄ΠΎΠΌΠΈΡΡ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠ° ΠΎ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎΠΉ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΈ. ΠΠΎΠ³ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ°ΠΊΠΈΡ
ΡΠΎΠ±ΡΡΠΈΠΉ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ Π΄Π»Ρ ΠΎΡΠ»Π°Π΄ΠΊΠΈ ΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ.
β οΈ ΠΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΠΆΠ΅ΡΡΠΊΠΎ ΠΊΠΎΠ΄ΠΈΡΡΠΉΡΠ΅ ΡΠ΅ΠΊΡΠ΅ΡΠ½ΡΠ΅ ΠΊΠ»ΡΡΠΈ (Client Secret) ΠΏΡΡΠΌΠΎ Π² ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠΎΠ΄Π΅ ΡΠ°ΠΉΠ»Π°. ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ ΠΈΠ»ΠΈ ΡΠ°ΠΉΠ»Ρ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ, ΠΈΡΠΊΠ»ΡΡΠ΅Π½Π½ΡΠ΅ ΠΈΠ· ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ.
Π‘Π΅ΡΡΠΈΡ Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ ΠΊΠΎΡΠΎΡΠΊΠΎΠΉ. ΠΠΎΡΠ»Π΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Ρ Π±Π°Π½ΠΊΠΎΠΌ, ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ ΡΠ°Π·ΡΡΠ²Π°ΡΡ, Ρ ΠΎΡΡ Π² ΡΠ»ΡΡΠ°Π΅ REST API ΡΡΠΎ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΏΠΎΡΠ»Π΅ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ°. ΠΠ΄Π½Π°ΠΊΠΎ, Π΅ΡΠ»ΠΈ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ Π΄ΠΎΠ»Π³ΠΎΠΆΠΈΠ²ΡΡΠΈΠ΅ ΡΠΎΠΊΠ΅ΡΡ ΠΈΠ»ΠΈ Π²Π΅Π±-ΡΠΎΠΊΠ΅ΡΡ Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠΉ, ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΆΠΈΠ·Π½ΠΈ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ Π»ΠΎΠΆΠΈΡΡΡ Π½Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°.
Π Π°Π±ΠΎΡΠ° Ρ Π΄Π°Π½Π½ΡΠΌΠΈ ΡΡΠ΅ΡΠΎΠ² ΠΈ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉ
ΠΡΠ½ΠΎΠ²Π½Π°Ρ ΡΠ΅Π½Π½ΠΎΡΡΡ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΠ±ΠΎΡΠ° Π΄Π°Π½Π½ΡΡ ΠΎ ΡΠΈΠ½Π°Π½ΡΠΎΠ²ΠΎΠΌ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ Π±ΠΈΠ·Π½Π΅ΡΠ°. API ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΠΎΠ»ΡΡΠ°ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ Π²ΡΠ΅Ρ ΠΎΡΠΊΡΡΡΡΡ ΡΡΠ΅ΡΠ°Ρ , ΠΈΡ ΠΎΡΡΠ°ΡΠΊΠ°Ρ ΠΈ Π»ΠΈΠΌΠΈΡΠ°Ρ . ΠΠ»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΡΠΏΠΈΡΠΊΠ° ΡΡΠ΅ΡΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΉ endpoint, ΠΊΠΎΡΠΎΡΡΠΉ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΌΠ°ΡΡΠΈΠ² ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² Π² ΡΠΎΡΠΌΠ°ΡΠ΅ JSON.
ΠΠ°ΠΆΠ΄ΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ ΡΡΠ΅ΡΠ° ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ: Π²Π°Π»ΡΡΡ, ΡΠ΅ΠΊΡΡΠΈΠΉ Π±Π°Π»Π°Π½Ρ, Π΄ΠΎΡΡΡΠΏΠ½ΡΠΉ ΠΎΡΡΠ°ΡΠΎΠΊ ΠΈ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΡ. Π’Π΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ (id) ΡΡΠ΅ΡΠ° Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌ Π΄Π»Ρ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠΈΡ Π·Π°ΠΏΡΠΎΡΠΎΠ², Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΈΡΡΠΎΡΠΈΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΏΠΎ ΡΡΠΎΠΌΡ ΡΡΠ΅ΡΡ. ΠΠ΅Π· ΡΡΠΎΠ³ΠΎ ID Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΡΠΎΡΠΈΡΡ Π΄Π΅ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ.
ΠΠ»Ρ Π²ΡΠ³ΡΡΠ·ΠΊΠΈ ΠΈΡΡΠΎΡΠΈΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ (Π²ΡΠΏΠΈΡΠΊΠΈ) ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΈΠ»ΡΡΡΡ ΠΏΠΎ Π΄Π°ΡΠ°ΠΌ. ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π·Π°Π³ΡΡΠΆΠ°ΡΡ Π΄Π°Π½Π½ΡΠ΅ ΠΏΠΎΡΡΠΈΠΎΠ½Π½ΠΎ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠΎΠ»ΡΠΊΠΎ Π·Π° ΠΏΡΠΎΡΠ΅Π΄ΡΠΈΠ΅ ΡΡΡΠΊΠΈ, ΡΡΠΎ ΡΡΠΊΠΎΡΡΠ΅Ρ ΡΠ°Π±ΠΎΡΡ ΡΠΊΡΠΈΠΏΡΠ°. ΠΠΈΠΆΠ΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π° ΡΠ°Π±Π»ΠΈΡΠ° ΠΎΡΠ½ΠΎΠ²Π½ΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ², Π΄ΠΎΡΡΡΠΏΠ½ΡΡ ΠΏΡΠΈ Π·Π°ΠΏΡΠΎΡΠ΅ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉ:
| ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ | Π’ΠΈΠΏ Π΄Π°Π½Π½ΡΡ | ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ | ΠΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΠΉ |
|---|---|---|---|
| accountId | string | Π£Π½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΉ ID ΡΡΠ΅ΡΠ° | ΠΠ° |
| fromDate | datetime | ΠΠ°ΡΠ°Π»ΠΎ ΠΏΠ΅ΡΠΈΠΎΠ΄Π° Π²ΡΠ³ΡΡΠ·ΠΊΠΈ | ΠΠ΅Ρ |
| toDate | datetime | ΠΠΎΠ½Π΅Ρ ΠΏΠ΅ΡΠΈΠΎΠ΄Π° Π²ΡΠ³ΡΡΠ·ΠΊΠΈ | ΠΠ΅Ρ |
| page | integer | ΠΠΎΠΌΠ΅Ρ ΡΡΡΠ°Π½ΠΈΡΡ ΠΏΡΠΈ ΠΏΠ°Π³ΠΈΠ½Π°ΡΠΈΠΈ | ΠΠ΅Ρ |
ΠΡΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ΅ Π±ΠΎΠ»ΡΡΠΈΡ ΠΎΠ±ΡΠ΅ΠΌΠΎΠ² Π΄Π°Π½Π½ΡΡ Π²Π°ΠΆΠ½ΠΎ ΡΡΠΈΡΡΠ²Π°ΡΡ Π»ΠΈΠΌΠΈΡΡ Π½Π° ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π·Π°ΠΏΡΠΎΡΠΎΠ² Π² ΠΌΠΈΠ½ΡΡΡ. ΠΡΠ»ΠΈ Π²Π°Ρ ΡΠΊΡΠΈΠΏΡ ΠΏΠΎΠΏΡΡΠ°Π΅ΡΡΡ Π²ΡΠ³ΡΡΠ·ΠΈΡΡ Π²ΡΠΏΠΈΡΠΊΡ Π·Π° Π³ΠΎΠ΄ ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ, ΡΠ΅ΡΠ²Π΅Ρ ΠΌΠΎΠΆΠ΅Ρ ΠΎΡΠΊΠ»ΠΎΠ½ΠΈΡΡ Π·Π°ΠΏΡΠΎΡ ΠΈΠ»ΠΈ Π²Π΅ΡΠ½ΡΡΡ ΡΡΠ΅ΡΠ΅Π½Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅. Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ ΡΠ°Π·Π±ΠΈΠ²Π°ΡΡ Π±ΠΎΠ»ΡΡΠΈΠ΅ ΠΏΠ΅ΡΠΈΠΎΠ΄Ρ Π½Π° ΠΌΠ΅Π½ΡΠ½ΡΠ΅ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»Ρ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠΎ ΠΌΠ΅ΡΡΡΠ°ΠΌ, ΠΈ Π΄Π΅Π»Π°ΡΡ Π·Π°Π΄Π΅ΡΠΆΠΊΡ ΠΌΠ΅ΠΆΠ΄Ρ Π·Π°ΠΏΡΠΎΡΠ°ΠΌΠΈ.
Π€ΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΠΏΡΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΏΠ»Π°ΡΠ΅ΠΆΠ΅ΠΉ
ΠΠ΄Π½ΠΎΠΉ ΠΈΠ· ΡΠ°ΠΌΡΡ ΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ API ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΡΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΏΠ»Π°ΡΠ΅ΠΆΠ΅ΠΉ. Python-ΡΠΊΡΠΈΠΏΡ ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠ»Π°ΡΠ΅ΠΆΠ½ΡΠ΅ ΠΏΠΎΡΡΡΠ΅Π½ΠΈΡ, ΠΏΡΠΎΠ²Π΅ΡΡΡΡ ΠΊΠΎΠ½ΡΡΠ°Π³Π΅Π½ΡΠΎΠ² ΠΏΠΎ Π±Π°Π·Π΅ ΠΈ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΡ Π½Π° ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅. ΠΠ΅ΡΠ΅Π΄ ΠΎΡΠΏΡΠ°Π²ΠΊΠΎΠΉ ΠΏΠ»Π°ΡΠ΅ΠΆΠ° ΡΠΈΡΡΠ΅ΠΌΠ° ΡΠ°ΡΡΠΎ ΠΏΡΠΎΠ²ΠΎΠ΄ΠΈΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΏΡΠΎΠ²Π΅ΡΠΊΡ ΠΏΠΎΠ»Π΅ΠΉ, ΠΏΠΎΡΡΠΎΠΌΡ Π²Π°ΠΆΠ½ΠΎ ΡΡΡΠΎΠ³ΠΎ ΡΠΎΠ±Π»ΡΠ΄Π°ΡΡ ΡΠΎΡΠΌΠ°Ρ ΠΏΠΎΠ»Π΅ΠΉ, ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ ΡΠ΅ΠΊΠ²ΠΈΠ·ΠΈΡΠΎΠ² ΠΏΠΎΠ»ΡΡΠ°ΡΠ΅Π»Ρ.
ΠΡΠΎΡΠ΅ΡΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΠ»Π°ΡΠ΅ΠΆΠ° ΠΎΠ±ΡΡΠ½ΠΎ ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· Π΄Π²ΡΡ ΡΡΠ°ΠΏΠΎΠ²: Π²Π°Π»ΠΈΠ΄Π°ΡΠΈΡ ΠΈ ΠΏΡΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅. ΠΠ° ΡΡΠ°ΠΏΠ΅ Π²Π°Π»ΠΈΠ΄Π°ΡΠΈΠΈ Π±Π°Π½ΠΊ ΠΏΡΠΎΠ²Π΅ΡΡΠ΅Ρ ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎΡΡΡ Π²Π²Π΅Π΄Π΅Π½Π½ΡΡ Π΄Π°Π½Π½ΡΡ (ΡΡΠΌΠΌΠ°, ΠΠΠ, ΡΡΠ΅Ρ), Π½ΠΎ Π΄Π΅Π½ΡΠ³ΠΈ Π½Π΅ ΡΠΏΠΈΡΡΠ²Π°ΡΡΡΡ. Π’ΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΡΠ»Π΅ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π΅Π½ΠΈΡ (ΠΈΠ»ΠΈ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ° Π½Π° ΠΏΡΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅) ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ ΡΠΈΠ½Π°Π»ΡΠ½ΠΎΠΉ. ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ ΠΎΡΠΈΠ±ΠΎΠΊ ΠΏΡΠΈ ΠΌΠ°ΡΡΠΎΠ²ΡΡ Π²ΡΠΏΠ»Π°ΡΠ°Ρ .
- π° Π‘ΡΠΌΠΌΠ° ΠΏΠ»Π°ΡΠ΅ΠΆΠ° Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ ΡΠΊΠ°Π·Π°Π½Π° Π² ΠΊΠΎΠΏΠ΅ΠΉΠΊΠ°Ρ (ΡΠ΅Π»ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ), Π° Π½Π΅ Π² ΡΡΠ±Π»ΡΡ Ρ ΠΏΠ»Π°Π²Π°ΡΡΠ΅ΠΉ ΡΠΎΡΠΊΠΎΠΉ, ΡΡΠΎΠ±Ρ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ ΠΎΡΠΈΠ±ΠΎΠΊ ΠΎΠΊΡΡΠ³Π»Π΅Π½ΠΈΡ.
- π ΠΠ°Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠ»Π°ΡΠ΅ΠΆΠ° β ΠΏΠΎΠ»Π΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΡΡΠ΅Π±ΡΠ΅Ρ ΠΎΡΠΎΠ±ΠΎΠ³ΠΎ Π²Π½ΠΈΠΌΠ°Π½ΠΈΡ ΠΊ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΠΊΠ΅ ΠΈ Π΄Π»ΠΈΠ½Π΅, ΡΠ°ΡΡΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ Π·Π΄Π΅ΡΡ Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡΡ ΠΎΡΠΈΠ±ΠΊΠΈ Π²Π°Π»ΠΈΠ΄Π°ΡΠΈΠΈ.
- π¦ ΠΠΠ Π±Π°Π½ΠΊΠ° ΠΏΠΎΠ»ΡΡΠ°ΡΠ΅Π»Ρ ΠΌΠΎΠΆΠ½ΠΎ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΏΠΎΠ΄ΡΡΠ³ΠΈΠ²Π°ΡΡ ΠΏΠΎ Π½ΠΎΠΌΠ΅ΡΡ ΡΡΠ΅ΡΠ°, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΠΏΡΠ°Π²ΠΎΡΠ½ΠΈΠΊΠΈ Π¦Π Π Π€, Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠ΅ Π² Π»ΠΎΠ³ΠΈΠΊΡ Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
ΠΠ»Ρ ΠΊΠΎΡΠΏΠΎΡΠ°ΡΠΈΠ²Π½ΡΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ² Π²Π°ΠΆΠ½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠ°ΠΊΠ΅ΡΠ½ΠΎΠΉ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΠ»Π°ΡΠ΅ΠΆΠ΅ΠΉ. API ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ Π³ΡΡΠΏΠΏΡ ΠΏΠ»Π°ΡΠ΅ΠΆΠ½ΡΡ ΠΏΠΎΡΡΡΠ΅Π½ΠΈΠΉ, ΡΡΠΎ ΡΠ΄ΠΎΠ±Π½ΠΎ Π΄Π»Ρ Π²ΡΠΏΠ»Π°ΡΡ Π·Π°ΡΠΏΠ»Π°Ρ ΠΈΠ»ΠΈ ΡΠ°ΡΡΠ΅ΡΠΎΠ² Ρ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎΠΌ ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠΎΠ². Π‘ΡΠ°ΡΡΡ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΠ»Π°ΡΠ΅ΠΆΠ° Π² ΠΏΠ°ΠΊΠ΅ΡΠ΅ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅ΡΡΡ ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡΠ°Π»ΡΠ½ΠΎ ΡΠ΅ΡΠ΅Π· Π΅Π³ΠΎ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΉ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ.
Π§ΡΠΎ Π΄Π΅Π»Π°ΡΡ Π΅ΡΠ»ΠΈ ΠΏΠ»Π°ΡΠ΅ΠΆ Π·Π°Π²ΠΈΡ Π² ΡΡΠ°ΡΡΡΠ΅ "ΠΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ"?
ΠΡΠ»ΠΈ ΠΏΠ»Π°ΡΠ΅ΠΆ Π΄ΠΎΠ»Π³ΠΎ Π½Π΅ ΠΌΠ΅Π½ΡΠ΅Ρ ΡΡΠ°ΡΡΡ, ΠΏΡΠΎΠ²Π΅ΡΡΡΠ΅ Π»ΠΎΠ³ΠΈ ΠΎΡΠ²Π΅ΡΠΎΠ² API. ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½Π°Ρ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΡ ΡΠΎ ΡΡΠΎΡΠΎΠ½Ρ ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊΠ° Π±Π°Π½ΠΊΠ° ΠΈΠ»ΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ»Π° ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠ°Ρ Π·Π°Π΄Π΅ΡΠΆΠΊΠ° Π² ΠΏΡΠΎΡΠ΅ΡΡΠΈΠ½Π³Π΅. ΠΠ΅ ΠΎΡΠΏΡΠ°Π²Π»ΡΠΉΡΠ΅ ΠΏΠ»Π°ΡΠ΅ΠΆ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎ, ΠΏΠΎΠΊΠ° Π½Π΅ ΡΠ±Π΅Π΄ΠΈΡΠ΅ΡΡ, ΡΡΠΎ ΠΏΠ΅ΡΠ²ΡΠΉ Π½Π΅ ΠΏΡΠΎΠ²Π΅Π΄Π΅Π½.
ΠΠ±ΡΠ°Π±ΠΎΡΠΊΠ° ΠΎΡΠΈΠ±ΠΎΠΊ ΠΈ Π»ΠΎΠ³ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅
ΠΠ°Π΄Π΅ΠΆΠ½ΠΎΡΡΡ ΡΠΈΠ½Π°Π½ΡΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ Π½Π°ΠΏΡΡΠΌΡΡ Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΎΠ½Π° ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅Ρ ΡΠ±ΠΎΠΈ. Π‘Π΅ΡΡ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠ΅ΡΠ²Π°ΡΡΡΡ, ΡΠ΅ΡΠ²Π΅Ρ Π±Π°Π½ΠΊΠ° ΠΌΠΎΠΆΠ΅Ρ ΡΠΉΡΠΈ Π½Π° ΠΏΡΠΎΡΠΈΠ»Π°ΠΊΡΠΈΠΊΡ, Π° Π΄Π°Π½Π½ΡΠ΅ ΠΌΠΎΠ³ΡΡ ΠΎΠΊΠ°Π·Π°ΡΡΡΡ Π½Π΅ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΡΠΌΠΈ. ΠΠ°Ρ ΠΊΠΎΠ΄ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ Π³ΠΎΡΠΎΠ² ΠΊ Π»ΡΠ±ΡΠΌ ΡΡΠ΅Π½Π°ΡΠΈΡΠΌ. ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Python ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΠΏΠ΅ΡΠ΅Ρ Π²Π°ΡΡΠ²Π°ΡΡ ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ, Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡΡΠΈΠ΅ ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ API.
Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ Π²Π½Π΅Π΄ΡΠΈΡΡ ΡΠΈΡΡΠ΅ΠΌΡ ΠΏΠΎΠ²ΡΠΎΡΠ½ΡΡ ΠΏΠΎΠΏΡΡΠΎΠΊ (retry logic). ΠΡΠ»ΠΈ Π·Π°ΠΏΡΠΎΡ Π½Π΅ ΡΠ΄Π°Π»ΡΡ ΠΈΠ·-Π·Π° Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΎΡΠΈΠ±ΠΊΠΈ ΡΠ΅ΡΠΈ (ΠΊΠΎΠ΄ 503 ΠΈΠ»ΠΈ ΡΠ°ΠΉΠΌΠ°ΡΡ), ΡΠΊΡΠΈΠΏΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΠΎΠ΄ΠΎΠΆΠ΄Π°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ΅ΠΊΡΠ½Π΄ ΠΈ ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ ΡΠ½ΠΎΠ²Π°. ΠΠ΄Π½Π°ΠΊΠΎ ΠΏΡΠΈ ΠΎΡΠΈΠ±ΠΊΠ°Ρ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΈ (401) ΠΈΠ»ΠΈ Π΄ΠΎΡΡΡΠΏΠ° (403) ΠΏΠΎΠ²ΡΠΎΡΡΡΡ Π·Π°ΠΏΡΠΎΡ Π±Π΅ΡΡΠΌΡΡΠ»Π΅Π½Π½ΠΎ β Π½ΡΠΆΠ½ΠΎ ΠΎΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΈ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ Π°Π»Π΅ΡΡ.
β οΈ ΠΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠΡΠΈ Π»ΠΎΠ³ΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΠΎΡΠ²Π΅ΡΠΎΠ² API ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ ΠΌΠ°ΡΠΊΠΈΡΡΠΉΡΠ΅ ΡΡΠ²ΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅. Π Π»ΠΎΠ³Π°Ρ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΎΡΡΠ°Π²Π°ΡΡΡΡ ΠΏΠΎΠ»Π½ΡΠ΅ Π½ΠΎΠΌΠ΅ΡΠ° ΡΡΠ΅ΡΠΎΠ², ΡΡΠΌΠΌΡ ΠΊΡΡΠΏΠ½ΡΡ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉ ΠΈΠ»ΠΈ ΠΏΠ΅ΡΡΠΎΠ½Π°Π»ΡΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ².
ΠΠ»Ρ ΡΠ΄ΠΎΠ±ΡΡΠ²Π° ΠΎΡΠ»Π°Π΄ΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΡΠΎΠ²Π΅Π½Ρ Π»ΠΎΠ³ΠΈΡΠΎΠ²Π°Π½ΠΈΡ DEBUG Π² development-ΡΡΠ΅Π΄Π΅, Π½ΠΎ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΠΉΡΠ΅ΡΡ Π½Π° WARNING ΠΈΠ»ΠΈ ERROR Π½Π° production-ΡΠ΅ΡΠ²Π΅ΡΠ°Ρ
. ΠΡΠΎ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ ΡΠΎΡ
ΡΠ°Π½ΠΈΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΈ Π½Π΅ ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½ΠΈΡΡ Π΄ΠΈΡΠΊΠΎΠ²ΠΎΠ΅ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ Π»ΠΎΠ³Π°ΠΌΠΈ ΡΡΠΏΠ΅ΡΠ½ΡΡ
ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ.
ΠΠ΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ ΠΈ Π»ΡΡΡΠΈΠ΅ ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ
ΠΠ΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ ΡΠΈΠ½Π°Π½ΡΠΎΠ²ΡΠΌΠΈ API ΡΡΠΎΠΈΡ Π½Π° ΠΏΠ΅ΡΠ²ΠΎΠΌ ΠΌΠ΅ΡΡΠ΅. ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ HTTPS ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ Π΄Π»Ρ Π²ΡΠ΅Ρ Π·Π°ΠΏΡΠΎΡΠΎΠ². ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΠ²Π°ΡΡ IP-Π°Π΄ΡΠ΅ΡΠ°, Ρ ΠΊΠΎΡΠΎΡΡΡ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½Ρ Π·Π°ΠΏΡΠΎΡΡ ΠΊ API, Π² Π½Π°ΡΡΡΠΎΠΉΠΊΠ°Ρ Π»ΠΈΡΠ½ΠΎΠ³ΠΎ ΠΊΠ°Π±ΠΈΠ½Π΅ΡΠ° Π±Π°Π½ΠΊΠ°. ΠΡΠΎ ΡΠΎΠ·Π΄Π°ΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ Π±Π°ΡΡΠ΅Ρ Π΄Π»Ρ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΠΎΠ², Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ ΠΎΠ½ΠΈ Π·Π°Π²Π»Π°Π΄Π΅ΡΡ Π²Π°ΡΠΈΠΌΠΈ ΠΊΠ»ΡΡΠ°ΠΌΠΈ.
Π Π΅Π³ΡΠ»ΡΡΠ½ΠΎ ΠΎΠ±Π½ΠΎΠ²Π»ΡΠΉΡΠ΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ°. Π Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°Ρ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ API ΠΈΠ½ΠΎΠ³Π΄Π° Π½Π°Ρ ΠΎΠ΄ΡΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ, ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ Π²ΡΠΏΡΡΠΊΠ°ΡΡ ΠΏΠ°ΡΡΠΈ. ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΡΠ°ΡΠ΅Π²ΡΠ΅ΠΉ Π²Π΅ΡΡΠΈΠΈ SDK ΠΌΠΎΠΆΠ΅Ρ ΠΎΡΠΊΡΡΡΡ Π΄Π²Π΅ΡΠΈ Π΄Π»Ρ Π°ΡΠ°ΠΊ. Π’Π°ΠΊΠΆΠ΅ ΡΠ»Π΅Π΄ΠΈΡΠ΅ Π·Π° ΡΡΠΎΠΊΠΎΠΌ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΎΠ², Π΅ΡΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π²ΡΡ ΡΠ°ΠΊΡΠΎΡΠ½Π°Ρ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ ΡΠ΅ΡΠ΅Π· ΡΠ°ΠΉΠ»Ρ ΠΊΠ»ΡΡΠ΅ΠΉ.
Π‘ΠΎΠ±Π»ΡΠ΄Π΅Π½ΠΈΠ΅ ΡΡΠΈΡ ΠΏΡΠΎΡΡΡΡ ΠΏΡΠ°Π²ΠΈΠ» ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ ΡΠΎΠ·Π΄Π°ΡΡ ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΠΎΠ΅ ΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΡΡΠ°Π½Π΅Ρ Π½Π°Π΄Π΅ΠΆΠ½ΡΠΌ ΠΏΠΎΠΌΠΎΡΠ½ΠΈΠΊΠΎΠΌ Π² ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠΈ ΡΠΈΠ½Π°Π½ΡΠ°ΠΌΠΈ Π²Π°ΡΠ΅ΠΉ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ. ΠΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ Ρ ΠΠ»ΡΡΠ°-ΠΠ°Π½ΠΊΠΎΠΌ ΡΠ΅ΡΠ΅Π· Python ΠΎΡΠΊΡΡΠ²Π°Π΅Ρ ΡΠΈΡΠΎΠΊΠΈΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π΄Π»Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΠΈ, Π΄Π΅Π»Π°Ρ Π±ΠΈΠ·Π½Π΅Ρ-ΠΏΡΠΎΡΠ΅ΡΡΡ ΠΏΡΠΎΠ·ΡΠ°ΡΠ½ΡΠΌΠΈ ΠΈ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΡΠΌΠΈ.
Π§Π°ΡΡΠΎ Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡΠ΅ Π²ΠΎΠΏΡΠΎΡΡ (FAQ)
ΠΡΠΆΠ½ΠΎ Π»ΠΈ ΠΏΠ»Π°ΡΠΈΡΡ Π·Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Open API ΠΠ»ΡΡΠ°-ΠΠ°Π½ΠΊΠ°?
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ°ΠΌΠΎΠ³ΠΎ API Π΄Π»Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ² Π±Π°Π½ΠΊΠ°, ΠΊΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΠΎ. ΠΠ΄Π½Π°ΠΊΠΎ ΡΠ°ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ ΠΌΠΎΠΆΠ΅Ρ Π·Π°Π²ΠΈΡΠ΅ΡΡ ΠΎΡ Π²Π°ΡΠ΅Π³ΠΎ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠ³ΠΎ Π΄ΠΎΠ³ΠΎΠ²ΠΎΡΠ° Π½Π° Π±Π°Π½ΠΊΠΎΠ²ΡΠΊΠΎΠ΅ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΠ΅. Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ ΡΡΠΎΡΠ½ΠΈΡΡ ΡΡΠΎΡ Π²ΠΎΠΏΡΠΎΡ Ρ Π²Π°ΡΠ΅Π³ΠΎ ΠΏΠ΅ΡΡΠΎΠ½Π°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΠ°.
ΠΠΎΠΆΠ½ΠΎ Π»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ API Π΄Π»Ρ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈΡ Π»ΠΈΡ?
ΠΠ° Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ ΠΏΠΎΠ»Π½ΠΎΡΠ΅Π½Π½ΠΎΠ΅ Open API Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΡ ΠΏΡΠΎΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΏΠ»Π°ΡΠ΅ΠΆΠ΅ΠΉ ΠΈ Π΄Π΅ΡΠ°Π»ΡΠ½ΠΎΠΉ Π²ΡΠ³ΡΡΠ·ΠΊΠΎΠΉ ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½ΠΎ Π² ΠΏΠ΅ΡΠ²ΡΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ Π½Π° ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ² ΡΠ΅Π³ΠΌΠ΅Π½ΡΠ° Β«ΠΠΈΠ·Π½Π΅ΡΒ» ΠΈ Β«ΠΠΎΡΠΏΠΎΡΠ°ΡΠΈΠΈΒ». ΠΠ»Ρ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈΡ Π»ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π» ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½.
ΠΠ°ΠΊ ΡΠ°ΡΡΠΎ Π½ΡΠΆΠ½ΠΎ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡΡ ΡΠΎΠΊΠ΅Π½Ρ Π΄ΠΎΡΡΡΠΏΠ°?
Access token ΠΎΠ±ΡΡΠ½ΠΎ Π΄Π΅ΠΉΡΡΠ²ΡΠ΅Ρ ΠΎΠΊΠΎΠ»ΠΎ 1 ΡΠ°ΡΠ°. Refresh token ΠΈΠΌΠ΅Π΅Ρ Π±ΠΎΠ»Π΅Π΅ Π΄Π»ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΡΡΠΎΠΊ ΠΆΠΈΠ·Π½ΠΈ. ΠΠ°ΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π΄ΠΎΠ»ΠΆΠ½Π° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°ΡΡ Π²ΡΠ΅ΠΌΡ ΠΆΠΈΠ·Π½ΠΈ ΡΠΎΠΊΠ΅Π½Π° ΠΈ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°ΡΡ Π½ΠΎΠ²ΡΠΉ ΡΠ΅ΡΠ΅Π· ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ refresh, ΡΡΠΎΠ±Ρ Π½Π΅ ΠΏΡΠ΅ΡΡΠ²Π°ΡΡ ΡΠ°Π±ΠΎΡΡ ΡΠΊΡΠΈΠΏΡΠ°.
ΠΡΡΡ Π»ΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅ Π½Π° ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π·Π°ΠΏΡΠΎΡΠΎΠ² Π² ΡΠ΅ΠΊΡΠ½Π΄Ρ?
ΠΠ°, ΡΡΡΠ΅ΡΡΠ²ΡΡΡ Π»ΠΈΠΌΠΈΡΡ (Rate Limits) Π΄Π»Ρ Π·Π°ΡΠΈΡΡ ΡΠ΅ΡΠ²Π΅ΡΠΎΠ² Π±Π°Π½ΠΊΠ° ΠΎΡ ΠΏΠ΅ΡΠ΅Π³ΡΡΠ·ΠΊΠΈ. Π’ΠΎΡΠ½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π·Π°Π²ΠΈΡΡΡ ΠΎΡ ΡΠΈΠΏΠ° Π·Π°ΠΏΡΠΎΡΠ° ΠΈ Π²Π°ΡΠ΅Π³ΠΎ ΡΠ°ΡΠΈΡΠ°. ΠΡΠΈ ΠΏΡΠ΅Π²ΡΡΠ΅Π½ΠΈΠΈ Π»ΠΈΠΌΠΈΡΠ° ΡΠ΅ΡΠ²Π΅Ρ Π²Π΅ΡΠ½Π΅Ρ ΠΎΡΠΈΠ±ΠΊΡ 429 Too Many Requests, ΠΈ ΡΠΊΡΠΈΠΏΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠ΄Π΅Π»Π°ΡΡ ΠΏΠ°ΡΠ·Ρ.