Autoryzacja
Aby ułatwić korzystanie z API, zalecamy utworzenie kilku stałych parametrów, które będą często używane.
Python
OSAI_URL = 'https://app-eu.onestepai.com/api' # or 'https://app-us.onestepai.com/api'
API_TOKEN = 'OUR ACCESS TOKEN GENERATED IN OSAI'
HEADERS = {'Authorization': None}
Aby korzystać z interfejsu API ONESTEP AI, wymagana jest autoryzacja użytkownika. Odbywa się to za pomocą tokena dostępu wygenerowanego na stronie OSAI w zakładce Ustawienia
.
Utwórz unikalną nazwę tokena i wybierz datę jego wygaśnięcia.
Wygenerowany token jest wyświetlany tylko raz, więc upewnij się, że go skopiowałeś/aś, ponieważ nie będziesz mógł/mogła go zobaczyć ponownie po zamknięciu okna.
W przypadku utraty starego tokena lub wycieku danych, zawsze można usunąć istniejące tokeny i utworzyć wiele innych.
Python
def sign_in():
response = requests.post(
url=f'{OSAI_URL}/Users/SignIn', json=API_TOKEN)
return response
Używając tokena, zaloguj się do API przez /Users/SignIn
, otrzymany ciąg jest tokenem autoryzacji JWT, który powinien znajdować się w każdym żądaniu.
Python
token = sign_in()
global HEADERS
HEADERS = {'Authorization': f'Bearer {token.text}'}
Dla łatwiejszego użycia zalecamy przypisanie tokenu JWT do zmiennej globalnej.
Pobieranie informacji o użytkowniku
Aby sprawdzić poprawność kodu i połączenia API, zalecamy pobranie informacji o użytkowniku i sprawdzenie, czy otrzymywane dane są prawidłowe.
Python
def get_user_info():
response = requests.get(url=f'{OSAI_URL}/Users', headers=HEADERS)
return response.json()
Python
print('-------User info-------')
user_info = get_user_info()
print_formatted_json(user_info)
Przykład
Python
import requests
import json
OSAI_URL = 'https://app-eu.onestepai.com/api'
API_TOKEN = 'OUR ACCESS TOKEN GENERATED IN OSAI'
HEADERS = {'Authorization': None}
def main():
token = sign_in()
global HEADERS
HEADERS = {'Authorization': f'Bearer {token.text}'}
print('-------User info-------')
user_info = get_user_info()
print_formatted_json(user_info)
def sign_in():
response = requests.post(
url=f'{OSAI_URL}/Users/SignIn', json=API_TOKEN)
return response
def get_user_info():
response = requests.get(
url=f'{OSAI_URL}/Users', headers=HEADERS)
return response.json()
def print_formatted_json(text):
print(json.dumps(text, indent=4))
if __name__ == '__main__':
main()
Example output
-------User info-------
{
"id":
"Guid-Guid-Guid-Guid",
"userName": "OneStep AI",
"name": "OneStep",
"surname": "AI",
"email": "onestepai@email.com",
"picture": "Link-To-Picture",
"bucket": "s3",
"colorMode": 1,
"enableTutorial": false
}