Wix Data API позволяетработать с коллекциями баз данных с помощью кода и предоставляет больше возможностей, чем доступно только в редакторе. Вы можете использовать этот API для работы с зарегистрированными пользователями вашего сайта. Этот API позволяет получить информацию о текущем пользователе, предложить пользователю войти в систему и выйти из системы текущего пользователя. Wix-users API можно использовать во внешнем коде вашего сайта.

Вот список процессов, которым мы будем следовать в этой статье, чтобы получить данные из API Wix:

  • Создайте приложение в центре разработчиков Wix
  • Настройте разрешение и получите токен, авторизацию, код, токен доступа и токен обновления.
  • Получите необходимые данные

Создайте приложение в Центре разработчиков Wix

Шаг 1: чтобы начать работу с API, нам нужно сначала перейти на веб-сайт https://dev.wix.com/ и создать новое приложение через центр разработчиков для нашей учетной записи Wix. . После этого мы установили URL-адрес перенаправления и URL-адрес приложения на вкладке OAuth.

Шаг 2. Следующим шагом является добавление нового разрешения на вкладке разрешений, где мы выбираем тип разрешения, который нам нужен, из разных категорий (магазины Wix, тарифные планы, маркетинг, события Wix, контакты и депутаты и др.). Любое из этих разрешений, которые мы устанавливаем, фактически указывает тип интересующих нас данных.

Шаг 3. После этого мы протестируем наше приложение. Он предложит нам установить приложение и перенаправит нас на указанный нами URL-адрес приложения. Отсюда мы сгенерируем код токена в соответствии с возвращенными параметрами URL. Затем мы перейдем к аутентификации, используя полученный код токена вместе с другими доступными учетными данными.

Для аутентификации

При получении кода авторизации и токена доступа мы можем использовать фреймворк Flask в виде веб-приложения для создания необходимых нам деталей.

Мы будем использовать конечную точку URL-адреса аутентификации с кодом токена, appId и URL-адресом перенаправления в качестве строки подключения. Когда приложение фляги будет запущено, оно сгенерирует наш код авторизации.

from flask import Flask,redirect,url_for 
  
import config 
import requests 
app = Flask(__name__) 
app.config.from_pyfile("config.py", silent=True) 
import json 
  
  
  
  
@app.route('/callback') 
def oauth_callback(): 
    redirect_url = 'https://cndro.com/' 
    auth_url = ('https://www.wix.com/installer/install?' + 
    'token=' +app.config["TOKEN_CODE"]+ 
    '&appId=' +app.config["APP_ID"]+ 
    '&redirectUrl=' + redirect_url) 
    return redirect(auth_url)

Создать токен доступа и токен обновления
Чтобы сгенерировать токен доступа и токен обновления, мы будем использовать возвращенный временный код авторизации вместе с конечной точкой URL и другими учетными данными для запроса токена доступа и токен обновления.

@app.route('/access') 
def wixAccessToken(): 
    the_url = ' https://www.wix.com/oauth/access' 
    response = requests.post(the_url, 
                            headers = { 
                                'Content-Type': 'application/json' 
                            }, 
                            data = { 
                                'grant_type' : 'authorization_code', 
                                "client_id": app.config["APP_ID"], 
                                "client_secret": app.config["APP_SECRET"], 
                               "code": app.config["AUTH_CODE"] 
                            }) 
     
    response_data = json.loads(response.text) 
    return response_data

Мы должны отметить, что срок действия этого токена доступа истекает через 5 минут, поэтому мы должны сгенерировать новый токен доступа из полученного токена обновления. Мы будем использовать ту же конечную точку URL, что и ранее, а также укажем тип нашего гранта как «refresh_token».

@app.route('/refresh') 
def NewAccessToken(): 
    the_url = ' https://www.wix.com/oauth/access' 
    response = requests.post(the_url, 
                            headers = { 
                                'Content-Type': 'application/json' 
                            }, 
                            data = { 
                                'grant_type' : 'refresh_token', 
                                "client_id": app.config["APP_ID"], 
                                "client_secret": app.config["APP_SECRET"], 
                               "refresh_token": app.config["REFRESH_TOKEN"] 
                            }) 
     
    response_data = json.loads(response.text) 
    return response_data  
  
  
if __name__ == '__main__': 
    app.run(host='localhost',port=5000)

Мы можем получить данные из любой из добавленных нами категорий разрешений, используя конечную точку URL-адреса и наш токен доступа.

Вы также можете использовать другие HTTP-методы, кроме GET, такие как POST, GET, PATCH, DELETE, с любыми конечными точками, с которыми вам интересно работать.

Пример кода для получения данных из конечной точки контактов и участников

def getListContact(): 
    the_url = 'https://www.wixapis.com/contacts/v4/contacts?                                                          paging.limit=1000&paging.offset=1000' 
      response = requests.get(the_url, 
                            headers = { 
                                'Authorization': wixAccessToken() 
                            }) 
     response_data = json.loads(response.text) 
     return response_data 
    
print(getListContact())

Выполните шаги, описанные выше, и ваши данные будут извлечены из Wix API. Если вам понравился этот пост, поделитесь им с друзьями и коллегами. Свяжитесь с нами в Twitter, Instagram и YouTube. Спасибо и увидимся в следующий раз