Документация

Версия API 1.1

Документация объясняет, как зарегистрировать, настроить и разработать приложение для наших API

Создать приложение

Чтобы приложение получило доступ к API, зарегистрируйте его через Панель инструментов приложения. Регистрация создаёт идентификатор приложения, который позволяет нам знать, кто вы, помогает нам отличить ваше приложение от других приложений.

  1. Вам нужно будет создать новое приложение Создание нового приложения
  2. Как только вы создали приложение вы получите app_id и app_secret
Войти в с

«Вход через» — быстрый способ создать аккаунт и войти в ваше приложение. Система поддерживает аутентификацию и запрос доступа к данным. Можно использовать только вход или вход вместе с доступом к данным.

  1. Чтобы начать вход OAuth, используйте ссылку приложения такого вида:
    <a href="https://sngine-app.fluttercrafters.com/api/oauth?app_id=YOUR_APP_ID">Log in With Sngine Flutter Crafters</a>

    Пользователь будет перенаправлен на страницу входа в систему, как это

  2. Как только пользователь примет ваше приложение, он будет перенаправлен на URL-адрес App Redirect с auth_key нравится это:
    https://mydomain.com/my_redirect_url.php?auth_key=AUTH_KEY
    Это auth_key действует один раз; после использования нужен новый код — снова перенаправьте пользователя на ссылку входа.
Токен доступа

После согласия пользователя в окне входа вы получите auth_key теперь можно получать данные из API; для этого авторизуйте приложение и получите access_token и вы можете следовать нашим шагам, чтобы узнать, как получить его.

  1. Чтобы получить access token, сделайте HTTP GET на этот endpoint:
            <?php
    
            $app_id = "YOUR_APP_ID"; // your app id
            $app_secret = "YOUR_APP_SECRET"; // your app secret
            $auth_key = $_GET['auth_key']; // the returned auth key from previous step
    
            // Prepare the POST data
            $postData = [
              'app_id' => $app_id,
              'app_secret' => $app_secret,
              'auth_key' => $auth_key
            ];
    
            // Initialize cURL
            $ch = curl_init('https://sngine-app.fluttercrafters.com/api/authorize');
    
            // Set cURL options for POST
            curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
            curl_setopt($ch, CURLOPT_POST, true);
            curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($postData));
    
            // Execute request
            $response = curl_exec($ch);
    
            // Check for cURL errors
            if (curl_errno($ch)) {
              die('cURL error: ' . curl_error($ch));
            }
    
            curl_close($ch);
    
            // Decode the JSON response
            $json = json_decode($response, true);
    
            // Use the access token if available
            if (!empty($json['access_token'])) {
              $access_token = $json['access_token']; // your access token
            }
            ?>
            
    Это access_token действует 1 час; когда истечёт, получите новый, снова перенаправив пользователя на ссылку входа.
API-интерфейсы

Как только вы получите access_token Теперь можно получать данные через HTTP GET с такими параметрами

Конечная точка Описание
api/get_user_info

получить информацию о пользователе

Вы можете получить информацию о пользователе, как это

        if(!empty($json['access_token'])) {
            $access_token = $json['access_token']; // your access token
            $get = file_get_contents("https://sngine-app.fluttercrafters.com/api/get_user_info?access_token=$access_token");
        }
        

Результат будет:

        {
          "user_info": {
          "user_id": "",
          "user_name": "",
          "user_email": "",
          "user_firstname": "",
          "user_lastname": "",
          "user_gender": "",
          "user_birthdate": "",
          "user_picture": "",
          "user_cover": "",
          "user_registered": "",
          "user_verified": "",
          "user_relationship": "",
          "user_biography": "",
          "user_website": ""
          }
        }