로그인 API v2.0

개요

이 섹션에는 로그인 기능 사용 방법이 설명되어 있습니다. 요청을 전송하기 전에 게시자 계정에서 로그인을 설정하십시오.

사용자 데이터가 컴퓨터에 저장되어 있는 경우, 프록시 요청을 사용하십시오.

Endpoint 경로: https://login.xsolla.com/api.

JWT 유효성 검사

비밀 키로 서명된 JWT는 성공적으로 인증한 각 사용자에 대해 생성됩니다. JWT가 만료되지 않고 프로젝트의 사용자에게 속해있는지 확인하려면 해당 값을 확인해야 합니다.

JWT의 유효성을 검사하려면,

  1. 라이브러리를 선택하고 라이브러리를 서버의 응용 프로그램에 연결합니다.
  2. 게시자 계정 > 로그인 설정 > 일반 설정 > 비밀 키에서 비밀 키를 복사합니다.
  3. 비밀 키 값을 유효성 검사 기능에 전달합니다.

Notice: 비밀 키를 다른 사람과 공유하지 마십시오. 키가 손상된 경우 키를 업데이트하십시오.

인증

사용자 등록

새 사용자를 데이터베이스에 추가합니다. 지정된 이메일로 계정 확인 메시지가 전송됩니다.

HTTP 요청

POST https://login.xsolla.com/api/user?projectId={projectId}&login_url={login_url}

파라미터유형설명
projectId
string게시자 계정의 로그인 ID입니다. 필수.
login_url
string추가 매개변수가 포함된 링크를 생성하고 사용자를 계정 확인 후 절차로 리디렉션하는 URL입니다. 로그인 설정 시 게시자 계정에서 지정한 콜백 URL과 동일해야 합니다. 여러 개의 콜백 URL이 존재할 경우 필요합니다.
username
string사용자 이름. 필수.
password
string암호. 필수.
email
string이메일. 필수.
Copy
Full screen
http
  • http
  • curl
  • php
  • C#
  • python
  • ruby
  • java
  • js
요청
POST https://login.xsolla.com/api/user?login_url=https://example.com&projectId={projectId}

Headers:
  Content-Type: application/json

Body:
  {
  "username": "John",
  "password": "password123",
  "email": "john-email@email.com"  
}
curl --request POST \
  --url 'https://login.xsolla.com/api/user?projectId={projectId}&login_url=https%3A%2F%2Fexample.com' \
  --header 'content-type: application/json' \
  --data '{"username":"John","password":"password123","email":"john-email@email.com"}'
<?php

$client = new http\Client;
$request = new http\Client\Request;

$body = new http\Message\Body;
$body->append('{"username":"John","password":"password123","email":"john-email@email.com"}');

$request->setRequestUrl('https://login.xsolla.com/api/user');
$request->setRequestMethod('POST');
$request->setBody($body);

$request->setQuery(new http\QueryString(array(
  'projectId' => '{projectId}',
  'login_url' => 'https://example.com'
)));

$request->setHeaders(array(
  'content-type' => 'application/json'
));

$client->enqueue($request)->send();
$response = $client->getResponse();

echo $response->getBody();
var client = new RestClient("https://login.xsolla.com/api/user?projectId={projectId}&login_url=https%3A%2F%2Fexample.com");
var request = new RestRequest(Method.POST);
request.AddHeader("content-type", "application/json");
request.AddParameter("application/json", "{\"username\":\"John\",\"password\":\"password123\",\"email\":\"john-email@email.com\"}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
import http.client

conn = http.client.HTTPSConnection("login.xsolla.com")

payload = "{\"username\":\"John\",\"password\":\"password123\",\"email\":\"john-email@email.com\"}"

headers = { 'content-type': "application/json" }

conn.request("POST", "/api/user?projectId={projectId}&login_url=https%3A%2F%2Fexample.com", payload, headers)

res = conn.getresponse()
data = res.read()

print(data.decode("utf-8"))
require 'uri'
require 'net/http'

url = URI("https://login.xsolla.com/api/user?projectId={projectId}&login_url=https%3A%2F%2Fexample.com")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Post.new(url)
request["content-type"] = 'application/json'
request.body = "{\"username\":\"John\",\"password\":\"password123\",\"email\":\"john-email@email.com\"}"

response = http.request(request)
puts response.read_body
OkHttpClient client = new OkHttpClient();

MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\"username\":\"John\",\"password\":\"password123\",\"email\":\"john-email@email.com\"}");
Request request = new Request.Builder()
  .url("https://login.xsolla.com/api/user?projectId={projectId}&login_url=https%3A%2F%2Fexample.com")
  .post(body)
  .addHeader("content-type", "application/json")
  .build();

Response response = client.newCall(request).execute();
var data = JSON.stringify({
  "username": "John",
  "password": "password123",
  "email": "john-email@email.com"
});

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://login.xsolla.com/api/user?projectId={projectId}&login_url=https%3A%2F%2Fexample.com");
xhr.setRequestHeader("content-type", "application/json");

xhr.send(data);
응답

사용자 이름 및 암호를 통한 인증

지정한 사용자 이름 및 암호를 통해 사용자를 인증합니다.

답변: 사용자를 성공적으로 인증 완료한 절차로 리디렉션하는 tokenremember_me 매개변수가 포함된 URL입니다.

HTTP 요청

POST https://login.xsolla.com/api/login?projectId={projectId}&login_url={login_url}

파라미터유형설명
projectId
string게시자 계정의 로그인 ID입니다. 필수.
login_url
string추가 매개변수가 포함된 링크를 생성하고 사용자를 성공적으로 인증 완료한 절차로 리디렉션하는 URL입니다. 로그인 설정 시 게시자 계정에서 지정한 콜백 URL과 동일해야 합니다. 여러 개의 콜백 URL이 존재할 경우 필요합니다.
username
string사용자 이름. 필수.
password
string암호. 필수.
remember_me
boolean사용자가 인증 데이터를 저장하는 데 동의하는지 여부를 나타냅니다. 기본값은 'false'입니다.
Copy
Full screen
http
  • http
  • curl
  • php
  • C#
  • python
  • ruby
  • java
  • js
요청
POST https://login.xsolla.com/api/login?login_url=https://example.com&projectId={projectId}

Headers:
  Content-Type: application/json

Body:
  {
  "username": "Jane",
  "password": "123456",
  "remember_me": true
}
curl --request POST \
  --url 'https://login.xsolla.com/api/login?projectId={projectId}&login_url=https%3A%2F%2Fexample.com' \
  --header 'content-type: application/json' \
  --data '{"username":"Jane","password":"123456","remember_me":true}'
<?php

$client = new http\Client;
$request = new http\Client\Request;

$body = new http\Message\Body;
$body->append('{"username":"Jane","password":"123456","remember_me":true}');

$request->setRequestUrl('https://login.xsolla.com/api/login');
$request->setRequestMethod('POST');
$request->setBody($body);

$request->setQuery(new http\QueryString(array(
  'projectId' => '{projectId}',
  'login_url' => 'https://example.com'
)));

$request->setHeaders(array(
  'content-type' => 'application/json'
));

$client->enqueue($request)->send();
$response = $client->getResponse();

echo $response->getBody();
var client = new RestClient("https://login.xsolla.com/api/login?projectId={projectId}&login_url=https%3A%2F%2Fexample.com");
var request = new RestRequest(Method.POST);
request.AddHeader("content-type", "application/json");
request.AddParameter("application/json", "{\"username\":\"Jane\",\"password\":\"123456\",\"remember_me\":true}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
import http.client

conn = http.client.HTTPSConnection("login.xsolla.com")

payload = "{\"username\":\"Jane\",\"password\":\"123456\",\"remember_me\":true}"

headers = { 'content-type': "application/json" }

conn.request("POST", "/api/login?projectId={projectId}&login_url=https%3A%2F%2Fexample.com", payload, headers)

res = conn.getresponse()
data = res.read()

print(data.decode("utf-8"))
require 'uri'
require 'net/http'

url = URI("https://login.xsolla.com/api/login?projectId={projectId}&login_url=https%3A%2F%2Fexample.com")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Post.new(url)
request["content-type"] = 'application/json'
request.body = "{\"username\":\"Jane\",\"password\":\"123456\",\"remember_me\":true}"

response = http.request(request)
puts response.read_body
OkHttpClient client = new OkHttpClient();

MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\"username\":\"Jane\",\"password\":\"123456\",\"remember_me\":true}");
Request request = new Request.Builder()
  .url("https://login.xsolla.com/api/login?projectId={projectId}&login_url=https%3A%2F%2Fexample.com")
  .post(body)
  .addHeader("content-type", "application/json")
  .build();

Response response = client.newCall(request).execute();
var data = JSON.stringify({
  "username": "Jane",
  "password": "123456",
  "remember_me": true
});

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://login.xsolla.com/api/login?projectId={projectId}&login_url=https%3A%2F%2Fexample.com");
xhr.setRequestHeader("content-type", "application/json");

xhr.send(data);
응답
{
  "login_url": "https://example.com?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJleHAiOjE1NDg3NTcyODEsImlzcyI6Imh0dHBzOlwvXC9sb2dpbi54c29sbGEuY29tIiwiaWF0IjoxNTQ4NjcwODgxLCJ1c2VybmFtZSI6IkphbmUiLCJ4c29sbGFfbG9naW5fYWNjZXNzX2tleSI6InV0Nmt0alNNbDFja2ZKZVpLVkJJYlNuQTE5a1hWdDJwX1VGT1J2T2RlUjQiLCJzdWIiOiI2NjAwYTZhZS0yMmU2LTExZTktOTE0Yy00MjAxMGFhODAwMTciLCJlbWFpbCI6ImJvZ29mZUBvbmVjaXR5bWFpbC5jb20iLCJ0eXBlIjoieHNvbGxhX2xvZ2luIiwieHNvbGxhX2xvZ2luX3Byb2plY3RfaWQiOiI1MDkzYzliMy0xZDVlLTExZTktOTI0NC00MjAxMGFhODAwMDQiLCJwdWJsaXNoZXJfaWQiOjc5MDE3fQ.AZg1bPEZCNNd0oxskmwwoF6tKX3KXldX7uy_8a-jRZk&remember_me=true"
}
{
  "login_url": "https://example.com?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJleHAiOjE1NDg3NTcyODEsImlzcyI6Imh0dHBzOlwvXC9sb2dpbi54c29sbGEuY29tIiwiaWF0IjoxNTQ4NjcwODgxLCJ1c2VybmFtZSI6IkphbmUiLCJ4c29sbGFfbG9naW5fYWNjZXNzX2tleSI6InV0Nmt0alNNbDFja2ZKZVpLVkJJYlNuQTE5a1hWdDJwX1VGT1J2T2RlUjQiLCJzdWIiOiI2NjAwYTZhZS0yMmU2LTExZTktOTE0Yy00MjAxMGFhODAwMTciLCJlbWFpbCI6ImJvZ29mZUBvbmVjaXR5bWFpbC5jb20iLCJ0eXBlIjoieHNvbGxhX2xvZ2luIiwieHNvbGxhX2xvZ2luX3Byb2plY3RfaWQiOiI1MDkzYzliMy0xZDVlLTExZTktOTI0NC00MjAxMGFhODAwMDQiLCJwdWJsaXNoZXJfaWQiOjc5MDE3fQ.AZg1bPEZCNNd0oxskmwwoF6tKX3KXldX7uy_8a-jRZk&remember_me=true"
}
"login_url": "https://example.com?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJleHAiOjE1NDg0MTE2NTcsImlzcyI6Imh0dHBzOlwvXC9sb2dpbi54c29sbGEuY29tIiwiaWF0IjoxNTQ4MzI1MjU3LCJ1c2VybmFtZSI6ImdpbW9idSIsInhzb2xsYV9sb2dpbl9hY2Nlc3Nfa2V5IjoiLXIzQ1lZWHBkcGRrV3o0MUNuM1A2a1V4N1IwaDZneUlOSExqTE1zd2FScyIsInN1YiI6IjhhZmMzMTFlLTFkNjItMTFlOS05OWFkLTQyMDEwYWE4MDAyMSIsImVtYWlsIjoiZ2ltb2J1QG9uZWNpdHltYWlsLmNvbSIsInR5cGUiOiJ4c29sbGFfbG9naW4iLCJ4c29sbGFfbG9naW5fcHJvamVjdF9pZCI6IjUwOTNjOWIzLTFkNWUtMTFlOS05MjQ0LTQyMDEwYWE4MDAwNCIsInB1Ymxpc2hlcl9pZCI6NzkwMTd9.PgB_vMhzUuXYkf1FY0vaI8a3HzrH5R3G-I6t3PpH_bM&remember_me=true"
{
  "login_url": "https://example.com?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJleHAiOjE1NDg3NTcyODEsImlzcyI6Imh0dHBzOlwvXC9sb2dpbi54c29sbGEuY29tIiwiaWF0IjoxNTQ4NjcwODgxLCJ1c2VybmFtZSI6IkphbmUiLCJ4c29sbGFfbG9naW5fYWNjZXNzX2tleSI6InV0Nmt0alNNbDFja2ZKZVpLVkJJYlNuQTE5a1hWdDJwX1VGT1J2T2RlUjQiLCJzdWIiOiI2NjAwYTZhZS0yMmU2LTExZTktOTE0Yy00MjAxMGFhODAwMTciLCJlbWFpbCI6ImJvZ29mZUBvbmVjaXR5bWFpbC5jb20iLCJ0eXBlIjoieHNvbGxhX2xvZ2luIiwieHNvbGxhX2xvZ2luX3Byb2plY3RfaWQiOiI1MDkzYzliMy0xZDVlLTExZTktOTI0NC00MjAxMGFhODAwMDQiLCJwdWJsaXNoZXJfaWQiOjc5MDE3fQ.AZg1bPEZCNNd0oxskmwwoF6tKX3KXldX7uy_8a-jRZk&remember_me=true"
}
{
  "login_url": "https://example.com?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJleHAiOjE1NDg3NTcyODEsImlzcyI6Imh0dHBzOlwvXC9sb2dpbi54c29sbGEuY29tIiwiaWF0IjoxNTQ4NjcwODgxLCJ1c2VybmFtZSI6IkphbmUiLCJ4c29sbGFfbG9naW5fYWNjZXNzX2tleSI6InV0Nmt0alNNbDFja2ZKZVpLVkJJYlNuQTE5a1hWdDJwX1VGT1J2T2RlUjQiLCJzdWIiOiI2NjAwYTZhZS0yMmU2LTExZTktOTE0Yy00MjAxMGFhODAwMTciLCJlbWFpbCI6ImJvZ29mZUBvbmVjaXR5bWFpbC5jb20iLCJ0eXBlIjoieHNvbGxhX2xvZ2luIiwieHNvbGxhX2xvZ2luX3Byb2plY3RfaWQiOiI1MDkzYzliMy0xZDVlLTExZTktOTI0NC00MjAxMGFhODAwMDQiLCJwdWJsaXNoZXJfaWQiOjc5MDE3fQ.AZg1bPEZCNNd0oxskmwwoF6tKX3KXldX7uy_8a-jRZk&remember_me=true"
}
{
  "login_url": "https://example.com?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJleHAiOjE1NDg3NTcyODEsImlzcyI6Imh0dHBzOlwvXC9sb2dpbi54c29sbGEuY29tIiwiaWF0IjoxNTQ4NjcwODgxLCJ1c2VybmFtZSI6IkphbmUiLCJ4c29sbGFfbG9naW5fYWNjZXNzX2tleSI6InV0Nmt0alNNbDFja2ZKZVpLVkJJYlNuQTE5a1hWdDJwX1VGT1J2T2RlUjQiLCJzdWIiOiI2NjAwYTZhZS0yMmU2LTExZTktOTE0Yy00MjAxMGFhODAwMTciLCJlbWFpbCI6ImJvZ29mZUBvbmVjaXR5bWFpbC5jb20iLCJ0eXBlIjoieHNvbGxhX2xvZ2luIiwieHNvbGxhX2xvZ2luX3Byb2plY3RfaWQiOiI1MDkzYzliMy0xZDVlLTExZTktOTI0NC00MjAxMGFhODAwMDQiLCJwdWJsaXNoZXJfaWQiOjc5MDE3fQ.AZg1bPEZCNNd0oxskmwwoF6tKX3KXldX7uy_8a-jRZk&remember_me=true"
}
{
  "login_url": "https://example.com?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJleHAiOjE1NDg3NTcyODEsImlzcyI6Imh0dHBzOlwvXC9sb2dpbi54c29sbGEuY29tIiwiaWF0IjoxNTQ4NjcwODgxLCJ1c2VybmFtZSI6IkphbmUiLCJ4c29sbGFfbG9naW5fYWNjZXNzX2tleSI6InV0Nmt0alNNbDFja2ZKZVpLVkJJYlNuQTE5a1hWdDJwX1VGT1J2T2RlUjQiLCJzdWIiOiI2NjAwYTZhZS0yMmU2LTExZTktOTE0Yy00MjAxMGFhODAwMTciLCJlbWFpbCI6ImJvZ29mZUBvbmVjaXR5bWFpbC5jb20iLCJ0eXBlIjoieHNvbGxhX2xvZ2luIiwieHNvbGxhX2xvZ2luX3Byb2plY3RfaWQiOiI1MDkzYzliMy0xZDVlLTExZTktOTI0NC00MjAxMGFhODAwMDQiLCJwdWJsaXNoZXJfaWQiOjc5MDE3fQ.AZg1bPEZCNNd0oxskmwwoF6tKX3KXldX7uy_8a-jRZk&remember_me=true"
}
{
  "login_url": "https://example.com?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJleHAiOjE1NDg3NTcyODEsImlzcyI6Imh0dHBzOlwvXC9sb2dpbi54c29sbGEuY29tIiwiaWF0IjoxNTQ4NjcwODgxLCJ1c2VybmFtZSI6IkphbmUiLCJ4c29sbGFfbG9naW5fYWNjZXNzX2tleSI6InV0Nmt0alNNbDFja2ZKZVpLVkJJYlNuQTE5a1hWdDJwX1VGT1J2T2RlUjQiLCJzdWIiOiI2NjAwYTZhZS0yMmU2LTExZTktOTE0Yy00MjAxMGFhODAwMTciLCJlbWFpbCI6ImJvZ29mZUBvbmVjaXR5bWFpbC5jb20iLCJ0eXBlIjoieHNvbGxhX2xvZ2luIiwieHNvbGxhX2xvZ2luX3Byb2plY3RfaWQiOiI1MDkzYzliMy0xZDVlLTExZTktOTI0NC00MjAxMGFhODAwMDQiLCJwdWJsaXNoZXJfaWQiOjc5MDE3fQ.AZg1bPEZCNNd0oxskmwwoF6tKX3KXldX7uy_8a-jRZk&remember_me=true"
}

프록시 인증

프록시 사용자 등록

새 사용자를 데이터베이스에 추가합니다. 요청을 게시자 계정에서 로그인 설정 시 지정한 새 사용자 URL로 프록시 설정합니다. 지정된 이메일로 계정 확인 메시지가 전송됩니다.

HTTP 요청

POST https://login.xsolla.com/api/proxy/registration?projectId={projectId}&login_url={login_url}

파라미터유형설명
projectId
string게시자 계정의 로그인 ID입니다. 필수.
login_url
string추가 매개변수가 포함된 링크를 생성하고 사용자를 이메일 확인 후 절차로 리디렉션하는 URL입니다. 로그인 설정 시 게시자 계정에서 지정한 콜백 URL과 동일해야 합니다. 여러 개의 콜백 URL이 존재할 경우 필요합니다.
username
string사용자 이름. 필수.
password
string암호. 필수.
email
string이메일. 필수.
Copy
Full screen
http
  • http
  • curl
  • php
  • C#
  • python
  • ruby
  • java
  • js
요청
POST https://login.xsolla.com/api/proxy/registration?login_url=https://example.com&projectId={projectId}

Headers:
  Content-Type: application/json

Body:
  {
  "password": "password123",
  "username": "Mike",
  "email": "mike-email@email.com"
}
curl --request POST \
  --url 'https://login.xsolla.com/api/proxy/registration?projectId={projectId}&login_url=https%3A%2F%2Fexample.com' \
  --header 'content-type: application/json' \
  --data '{"username":"Mike","password":"password123","email":"mike-email@email.com"}'
<?php

$client = new http\Client;
$request = new http\Client\Request;

$body = new http\Message\Body;
$body->append('{"username":"Mike","password":"password123","email":"mike-email@email.com"}');

$request->setRequestUrl('https://login.xsolla.com/api/proxy/registration');
$request->setRequestMethod('POST');
$request->setBody($body);

$request->setQuery(new http\QueryString(array(
  'projectId' => '{projectId}',
  'login_url' => 'https://example.com'
)));

$request->setHeaders(array(
  'content-type' => 'application/json'
));

$client->enqueue($request)->send();
$response = $client->getResponse();

echo $response->getBody();
var client = new RestClient("https://login.xsolla.com/api/proxy/registration?projectId={projectId}&login_url=https%3A%2F%2Fexample.com");
var request = new RestRequest(Method.POST);
request.AddHeader("content-type", "application/json");
request.AddParameter("application/json", "{\"username\":\"Mike\",\"password\":\"password123\",\"email\":\"mike-email@email.com\"}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
import http.client

conn = http.client.HTTPSConnection("login.xsolla.com")

payload = "{\"username\":\"Mike\",\"password\":\"password123\",\"email\":\"mike-email@email.com\"}"

headers = { 'content-type': "application/json" }

conn.request("POST", "/api/proxy/registration?projectId={projectId}&login_url=https%3A%2F%2Fexample.com", payload, headers)

res = conn.getresponse()
data = res.read()

print(data.decode("utf-8"))
require 'uri'
require 'net/http'

url = URI("https://login.xsolla.com/api/proxy/registration?projectId={projectId}&login_url=https%3A%2F%2Fexample.com")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Post.new(url)
request["content-type"] = 'application/json'
request.body = "{\"username\":\"Mike\",\"password\":\"password123\",\"email\":\"mike-email@email.com\"}"

response = http.request(request)
puts response.read_body
OkHttpClient client = new OkHttpClient();

MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\"username\":\"Mike\",\"password\":\"password123\",\"email\":\"mike-email@email.com\"}");
Request request = new Request.Builder()
  .url("https://login.xsolla.com/api/proxy/registration?projectId={projectId}&login_url=https%3A%2F%2Fexample.com")
  .post(body)
  .addHeader("content-type", "application/json")
  .build();

Response response = client.newCall(request).execute();
var data = JSON.stringify({
  "username": "Mike",
  "password": "password123",
  "email": "mike-email@email.com"
});

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://login.xsolla.com/api/proxy/registration?projectId={projectId}&login_url=https%3A%2F%2Fexample.com");
xhr.setRequestHeader("content-type", "application/json");

xhr.send(data);
응답

사용자 이름 및 암호를 통한 프록시 인증

지정한 사용자 이름 및 암호를 통해 사용자를 인증합니다. 요청을 게시자 계정에서 로그인 설정 시 지정한 사용자 확인 URL로 프록시 설정합니다.

답변: 사용자를 성공적으로 인증 완료한 절차로 리디렉션하는 tokenremember_me 매개변수가 포함된 URL입니다.

HTTP 요청

POST https://login.xsolla.com/api/proxy/login?projectId={projectId}&login_url={login_url}

파라미터유형설명
projectId
string게시자 계정의 로그인 ID입니다. 필수.
login_url
string추가 매개변수가 포함된 링크를 생성하고 사용자를 성공적으로 인증 완료한 절차로 리디렉션하는 URL입니다. 로그인 설정 시 게시자 계정에서 지정한 콜백 URL과 동일해야 합니다. 여러 개의 콜백 URL이 존재할 경우 필요합니다.
username
string사용자 이름. 필수.
password
string암호. 필수.
remember_me
boolean사용자가 인증 데이터를 저장하는 데 동의하는지 여부를 나타냅니다. 기본값은 'false'입니다.
Copy
Full screen
http
  • http
  • curl
  • php
  • C#
  • python
  • ruby
  • java
  • js
요청
POST https://login.xsolla.com/api/proxy/login?login_url=https://example.com&projectId={projectId}

Headers:
  Content-Type: application/json

Body:
  {
  "username": "John",
  "password": "123456",
  "remember_me": true
}
curl --request POST \
  --url 'https://login.xsolla.com/api/proxy/login?projectId={projectId}&login_url=https%3A%2F%2Fexample.com' \
  --header 'content-type: application/json' \
  --data '{"username":"John","password":"123456","remember_me":true}'
<?php

$client = new http\Client;
$request = new http\Client\Request;

$body = new http\Message\Body;
$body->append('{"username":"John","password":"123456","remember_me":true}');

$request->setRequestUrl('https://login.xsolla.com/api/proxy/login');
$request->setRequestMethod('POST');
$request->setBody($body);

$request->setQuery(new http\QueryString(array(
  'projectId' => '{projectId}',
  'login_url' => 'https://example.com'
)));

$request->setHeaders(array(
  'content-type' => 'application/json'
));

$client->enqueue($request)->send();
$response = $client->getResponse();

echo $response->getBody();
var client = new RestClient("https://login.xsolla.com/api/proxy/login?projectId={projectId}&login_url=https%3A%2F%2Fexample.com");
var request = new RestRequest(Method.POST);
request.AddHeader("content-type", "application/json");
request.AddParameter("application/json", "{\"username\":\"John\",\"password\":\"123456\",\"remember_me\":true}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
import http.client

conn = http.client.HTTPSConnection("login.xsolla.com")

payload = "{\"username\":\"John\",\"password\":\"123456\",\"remember_me\":true}"

headers = { 'content-type': "application/json" }

conn.request("POST", "/api/proxy/login?projectId={projectId}&login_url=https%3A%2F%2Fexample.com", payload, headers)

res = conn.getresponse()
data = res.read()

print(data.decode("utf-8"))
require 'uri'
require 'net/http'

url = URI("https://login.xsolla.com/api/proxy/login?projectId={projectId}&login_url=https%3A%2F%2Fexample.com")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Post.new(url)
request["content-type"] = 'application/json'
request.body = "{\"username\":\"John\",\"password\":\"123456\",\"remember_me\":true}"

response = http.request(request)
puts response.read_body
OkHttpClient client = new OkHttpClient();

MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\"username\":\"John\",\"password\":\"123456\",\"remember_me\":true}");
Request request = new Request.Builder()
  .url("https://login.xsolla.com/api/proxy/login?projectId={projectId}&login_url=https%3A%2F%2Fexample.com")
  .post(body)
  .addHeader("content-type", "application/json")
  .build();

Response response = client.newCall(request).execute();
var data = JSON.stringify({
  "username": "John",
  "password": "123456",
  "remember_me": true
});

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://login.xsolla.com/api/proxy/login?projectId={projectId}&login_url=https%3A%2F%2Fexample.com");
xhr.setRequestHeader("content-type", "application/json");

xhr.send(data);
응답
{
  "login_url": "https://example.com?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJleHAiOjE1NDg0MjM5NDAsImlzcyI6Imh0dHBzOlwvXC9sb2dpbi54c29sbGEuY29tIiwiaWF0IjoxNTQ4MzM3NTQwLCJ1c2VybmFtZSI6InJvc2F5ZW4iLCJ4c29sbGFfbG9naW5fYWNjZXNzX2tleSI6InBEdkdNa1VoWGFkX3lqYVZ3UElWNzZSdHpsMVUydXhCUnB5RUgtQmlmcTAiLCJzdWIiOiI4ZWUyYmU1ZS0xZDY5LTExZTktYWI1OS00MjAxMGFhODAwMjEiLCJ0eXBlIjoicHJveHkiLCJwcm92aWRlciI6Inhzb2xsYSIsInhzb2xsYV9sb2dpbl9wcm9qZWN0X2lkIjoiNTNkMjNhYzMtMWQ2Ni0xMWU5LTkyNDQtNDIwMTBhYTgwMDA0IiwiZW1haWwiOiJyb3NheWVuIiwicHVibGlzaGVyX2lkIjo3OTAxN30.NZxu3qDsLEuNV46TzIWw1eZS4Dznc7GPqGrVFeG1oCM&remember_me=true"
}
{
  "login_url": "https://example.com?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJleHAiOjE1NDg0MjM5NDAsImlzcyI6Imh0dHBzOlwvXC9sb2dpbi54c29sbGEuY29tIiwiaWF0IjoxNTQ4MzM3NTQwLCJ1c2VybmFtZSI6InJvc2F5ZW4iLCJ4c29sbGFfbG9naW5fYWNjZXNzX2tleSI6InBEdkdNa1VoWGFkX3lqYVZ3UElWNzZSdHpsMVUydXhCUnB5RUgtQmlmcTAiLCJzdWIiOiI4ZWUyYmU1ZS0xZDY5LTExZTktYWI1OS00MjAxMGFhODAwMjEiLCJ0eXBlIjoicHJveHkiLCJwcm92aWRlciI6Inhzb2xsYSIsInhzb2xsYV9sb2dpbl9wcm9qZWN0X2lkIjoiNTNkMjNhYzMtMWQ2Ni0xMWU5LTkyNDQtNDIwMTBhYTgwMDA0IiwiZW1haWwiOiJyb3NheWVuIiwicHVibGlzaGVyX2lkIjo3OTAxN30.NZxu3qDsLEuNV46TzIWw1eZS4Dznc7GPqGrVFeG1oCM&remember_me=true"
}
{
  "login_url": "https://example.com?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJleHAiOjE1NDg0MjM5NDAsImlzcyI6Imh0dHBzOlwvXC9sb2dpbi54c29sbGEuY29tIiwiaWF0IjoxNTQ4MzM3NTQwLCJ1c2VybmFtZSI6InJvc2F5ZW4iLCJ4c29sbGFfbG9naW5fYWNjZXNzX2tleSI6InBEdkdNa1VoWGFkX3lqYVZ3UElWNzZSdHpsMVUydXhCUnB5RUgtQmlmcTAiLCJzdWIiOiI4ZWUyYmU1ZS0xZDY5LTExZTktYWI1OS00MjAxMGFhODAwMjEiLCJ0eXBlIjoicHJveHkiLCJwcm92aWRlciI6Inhzb2xsYSIsInhzb2xsYV9sb2dpbl9wcm9qZWN0X2lkIjoiNTNkMjNhYzMtMWQ2Ni0xMWU5LTkyNDQtNDIwMTBhYTgwMDA0IiwiZW1haWwiOiJyb3NheWVuIiwicHVibGlzaGVyX2lkIjo3OTAxN30.NZxu3qDsLEuNV46TzIWw1eZS4Dznc7GPqGrVFeG1oCM&remember_me=true"
}
{
  "login_url": "https://example.com?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJleHAiOjE1NDg0MjM5NDAsImlzcyI6Imh0dHBzOlwvXC9sb2dpbi54c29sbGEuY29tIiwiaWF0IjoxNTQ4MzM3NTQwLCJ1c2VybmFtZSI6InJvc2F5ZW4iLCJ4c29sbGFfbG9naW5fYWNjZXNzX2tleSI6InBEdkdNa1VoWGFkX3lqYVZ3UElWNzZSdHpsMVUydXhCUnB5RUgtQmlmcTAiLCJzdWIiOiI4ZWUyYmU1ZS0xZDY5LTExZTktYWI1OS00MjAxMGFhODAwMjEiLCJ0eXBlIjoicHJveHkiLCJwcm92aWRlciI6Inhzb2xsYSIsInhzb2xsYV9sb2dpbl9wcm9qZWN0X2lkIjoiNTNkMjNhYzMtMWQ2Ni0xMWU5LTkyNDQtNDIwMTBhYTgwMDA0IiwiZW1haWwiOiJyb3NheWVuIiwicHVibGlzaGVyX2lkIjo3OTAxN30.NZxu3qDsLEuNV46TzIWw1eZS4Dznc7GPqGrVFeG1oCM&remember_me=true"
}
{
  "login_url": "https://example.com?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJleHAiOjE1NDg0MjM5NDAsImlzcyI6Imh0dHBzOlwvXC9sb2dpbi54c29sbGEuY29tIiwiaWF0IjoxNTQ4MzM3NTQwLCJ1c2VybmFtZSI6InJvc2F5ZW4iLCJ4c29sbGFfbG9naW5fYWNjZXNzX2tleSI6InBEdkdNa1VoWGFkX3lqYVZ3UElWNzZSdHpsMVUydXhCUnB5RUgtQmlmcTAiLCJzdWIiOiI4ZWUyYmU1ZS0xZDY5LTExZTktYWI1OS00MjAxMGFhODAwMjEiLCJ0eXBlIjoicHJveHkiLCJwcm92aWRlciI6Inhzb2xsYSIsInhzb2xsYV9sb2dpbl9wcm9qZWN0X2lkIjoiNTNkMjNhYzMtMWQ2Ni0xMWU5LTkyNDQtNDIwMTBhYTgwMDA0IiwiZW1haWwiOiJyb3NheWVuIiwicHVibGlzaGVyX2lkIjo3OTAxN30.NZxu3qDsLEuNV46TzIWw1eZS4Dznc7GPqGrVFeG1oCM&remember_me=true"
}
{
  "login_url": "https://example.com?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJleHAiOjE1NDg0MjM5NDAsImlzcyI6Imh0dHBzOlwvXC9sb2dpbi54c29sbGEuY29tIiwiaWF0IjoxNTQ4MzM3NTQwLCJ1c2VybmFtZSI6InJvc2F5ZW4iLCJ4c29sbGFfbG9naW5fYWNjZXNzX2tleSI6InBEdkdNa1VoWGFkX3lqYVZ3UElWNzZSdHpsMVUydXhCUnB5RUgtQmlmcTAiLCJzdWIiOiI4ZWUyYmU1ZS0xZDY5LTExZTktYWI1OS00MjAxMGFhODAwMjEiLCJ0eXBlIjoicHJveHkiLCJwcm92aWRlciI6Inhzb2xsYSIsInhzb2xsYV9sb2dpbl9wcm9qZWN0X2lkIjoiNTNkMjNhYzMtMWQ2Ni0xMWU5LTkyNDQtNDIwMTBhYTgwMDA0IiwiZW1haWwiOiJyb3NheWVuIiwicHVibGlzaGVyX2lkIjo3OTAxN30.NZxu3qDsLEuNV46TzIWw1eZS4Dznc7GPqGrVFeG1oCM&remember_me=true"
}
{
  "login_url": "https://example.com?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJleHAiOjE1NDg0MjM5NDAsImlzcyI6Imh0dHBzOlwvXC9sb2dpbi54c29sbGEuY29tIiwiaWF0IjoxNTQ4MzM3NTQwLCJ1c2VybmFtZSI6InJvc2F5ZW4iLCJ4c29sbGFfbG9naW5fYWNjZXNzX2tleSI6InBEdkdNa1VoWGFkX3lqYVZ3UElWNzZSdHpsMVUydXhCUnB5RUgtQmlmcTAiLCJzdWIiOiI4ZWUyYmU1ZS0xZDY5LTExZTktYWI1OS00MjAxMGFhODAwMjEiLCJ0eXBlIjoicHJveHkiLCJwcm92aWRlciI6Inhzb2xsYSIsInhzb2xsYV9sb2dpbl9wcm9qZWN0X2lkIjoiNTNkMjNhYzMtMWQ2Ni0xMWU5LTkyNDQtNDIwMTBhYTgwMDA0IiwiZW1haWwiOiJyb3NheWVuIiwicHVibGlzaGVyX2lkIjo3OTAxN30.NZxu3qDsLEuNV46TzIWw1eZS4Dznc7GPqGrVFeG1oCM&remember_me=true"
}
{
  "login_url": "https://example.com?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJleHAiOjE1NDg0MjM5NDAsImlzcyI6Imh0dHBzOlwvXC9sb2dpbi54c29sbGEuY29tIiwiaWF0IjoxNTQ4MzM3NTQwLCJ1c2VybmFtZSI6InJvc2F5ZW4iLCJ4c29sbGFfbG9naW5fYWNjZXNzX2tleSI6InBEdkdNa1VoWGFkX3lqYVZ3UElWNzZSdHpsMVUydXhCUnB5RUgtQmlmcTAiLCJzdWIiOiI4ZWUyYmU1ZS0xZDY5LTExZTktYWI1OS00MjAxMGFhODAwMjEiLCJ0eXBlIjoicHJveHkiLCJwcm92aWRlciI6Inhzb2xsYSIsInhzb2xsYV9sb2dpbl9wcm9qZWN0X2lkIjoiNTNkMjNhYzMtMWQ2Ni0xMWU5LTkyNDQtNDIwMTBhYTgwMDA0IiwiZW1haWwiOiJyb3NheWVuIiwicHVibGlzaGVyX2lkIjo3OTAxN30.NZxu3qDsLEuNV46TzIWw1eZS4Dznc7GPqGrVFeG1oCM&remember_me=true"
}

프록시 사용자 암호 재설정

사용자 암호를 재설정합니다. 요청을 게시자 계정에서 로그인 설정 시 지정한 암호 재설정 URL로 프록시 설정합니다.

HTTP 요청

POST https://login.xsolla.com/api/proxy/password/reset?projectId={projectId}&login_url={login_url}

파라미터유형설명
projectId
string게시자 계정의 로그인 ID입니다. 필수.
login_url
string추가 매개변수가 포함된 링크를 생성하고 사용자를 암호 재설정 확인 후 절차로 리디렉션하는 URL입니다. 로그인 설정 시 게시자 계정에서 지정한 콜백 URL과 동일해야 합니다. 여러 개의 콜백 URL이 존재할 경우 필요합니다.
email
string이메일. 필수.
Copy
Full screen
http
  • http
  • curl
  • php
  • C#
  • python
  • ruby
  • java
  • js
요청
POST https://login.xsolla.com/api/proxy/password/reset?login_url=https://example.com&projectId={projectId}

Headers:
  Content-Type: application/json

Body:
  {
  "email": "brooke-email@email.com"
}
curl --request POST \
  --url 'https://login.xsolla.com/api/proxy/password/reset?projectId={projectId}&login_url=https%3A%2F%2Fexample.com' \
  --header 'content-type: application/json' \
  --data '{"email":"brooke-email@email.com"}'
<?php

$client = new http\Client;
$request = new http\Client\Request;

$body = new http\Message\Body;
$body->append('{"email":"brooke-email@email.com"}');

$request->setRequestUrl('https://login.xsolla.com/api/proxy/password/reset');
$request->setRequestMethod('POST');
$request->setBody($body);

$request->setQuery(new http\QueryString(array(
  'projectId' => '{projectId}',
  'login_url' => 'https://example.com'
)));

$request->setHeaders(array(
  'content-type' => 'application/json'
));

$client->enqueue($request)->send();
$response = $client->getResponse();

echo $response->getBody();
var client = new RestClient("https://login.xsolla.com/api/proxy/password/reset?projectId={projectId}&login_url=https%3A%2F%2Fexample.com");
var request = new RestRequest(Method.POST);
request.AddHeader("content-type", "application/json");
request.AddParameter("application/json", "{\"email\":\"brooke-email@email.com\"}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
import http.client

conn = http.client.HTTPSConnection("login.xsolla.com")

payload = "{\"email\":\"brooke-email@email.com\"}"

headers = { 'content-type': "application/json" }

conn.request("POST", "/api/proxy/password/reset?projectId={projectId}&login_url=https%3A%2F%2Fexample.com", payload, headers)

res = conn.getresponse()
data = res.read()

print(data.decode("utf-8"))
require 'uri'
require 'net/http'

url = URI("https://login.xsolla.com/api/proxy/password/reset?projectId={projectId}&login_url=https%3A%2F%2Fexample.com")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Post.new(url)
request["content-type"] = 'application/json'
request.body = "{\"email\":\"brooke-email@email.com\"}"

response = http.request(request)
puts response.read_body
OkHttpClient client = new OkHttpClient();

MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\"email\":\"brooke-email@email.com\"}");
Request request = new Request.Builder()
  .url("https://login.xsolla.com/api/proxy/password/reset?projectId={projectId}&login_url=https%3A%2F%2Fexample.com")
  .post(body)
  .addHeader("content-type", "application/json")
  .build();

Response response = client.newCall(request).execute();
var data = JSON.stringify({
  "email": "brooke-email@email.com"
});

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://login.xsolla.com/api/proxy/password/reset?projectId={projectId}&login_url=https%3A%2F%2Fexample.com");
xhr.setRequestHeader("content-type", "application/json");

xhr.send(data);
응답

소셜 인증

게시자 계정의 로그인에 연결된 모든 소셜 네트워크를 통해 인증 링크를 가져옵니다.

답변: 로그인 UI에서 소셜 네트워크 버튼에 사용할 URL입니다.

HTTP 요청

GET https://login.xsolla.com/api/social/login_urls?projectId={projectId}&fields={fields}&login_url={login_url}

파라미터유형설명
string게시자 계정의 로그인 ID입니다. 필수.
array of strings성공적인 사용자 등록/인증에 필요한 매개변수 목록입니다. 예: 'email, promo_email_agreement'. 해당 양식에 이러한 매개변수를 지정하라는 메시지가 표시됩니다.
string소셜 네트워크 인증 링크를 생성하는 URL입니다. 로그인 설정 시 게시자 계정에서 지정한 콜백 URL과 동일해야 합니다. 콜백 URL이 여러 개 존재할 경우 필요합니다.
Copy
Full screen
http
  • http
  • curl
  • php
  • C#
  • python
  • ruby
  • java
  • js
요청
GET https://login.xsolla.com/api/social/login_urls?fields=email&login_url=https://example.com&projectId={projectId}
curl --request GET \
  --url 'https://login.xsolla.com/api/social/login_urls?projectId={projectId}&fields=email&login_url=https%3A%2F%2Fexample.com'
<?php

$client = new http\Client;
$request = new http\Client\Request;

$request->setRequestUrl('https://login.xsolla.com/api/social/login_urls');
$request->setRequestMethod('GET');
$request->setQuery(new http\QueryString(array(
  'projectId' => '{projectId}',
  'fields' => 'email',
  'login_url' => 'https://example.com'
)));

$client->enqueue($request)->send();
$response = $client->getResponse();

echo $response->getBody();
var client = new RestClient("https://login.xsolla.com/api/social/login_urls?projectId={projectId}&fields=email&login_url=https%3A%2F%2Fexample.com");
var request = new RestRequest(Method.GET);
IRestResponse response = client.Execute(request);
import http.client

conn = http.client.HTTPSConnection("login.xsolla.com")

conn.request("GET", "/api/social/login_urls?projectId={projectId}&fields=email&login_url=https%3A%2F%2Fexample.com")

res = conn.getresponse()
data = res.read()

print(data.decode("utf-8"))
require 'uri'
require 'net/http'

url = URI("https://login.xsolla.com/api/social/login_urls?projectId={projectId}&fields=email&login_url=https%3A%2F%2Fexample.com")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
OkHttpClient client = new OkHttpClient();

Request request = new Request.Builder()
  .url("https://login.xsolla.com/api/social/login_urls?projectId={projectId}&fields=email&login_url=https%3A%2F%2Fexample.com")
  .get()
  .build();

Response response = client.newCall(request).execute();
var data = null;

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://login.xsolla.com/api/social/login_urls?projectId={projectId}&fields=email&login_url=https%3A%2F%2Fexample.com");

xhr.send(data);
응답
{
  "amazon": "https://example.com/api/social/amazon/login_redirect?projectId={projectId}&fields=email",
  "baidu": "https://example.com/api/social/baidu/login_redirect?projectId={projectId}&fields=email",
  "battlenet": "https://example.com/api/social/battlenet/login_redirect?projectId={projectId}&fields=email",
  "china_telecom": "https://example.com/api/social/china_telecom/login_redirect?projectId={projectId}&fields=email",
  "discord": "https://example.com/api/social/discord/login_redirect?projectId={projectId}&fields=email",
  "facebook": "https://example.com/api/social/facebook/login_redirect?projectId={projectId}&fields=email",
  "github": "https://example.com/api/social/github/login_redirect?projectId={projectId}&fields=email",
  "google": "https://example.com/api/social/google/login_redirect?projectId={projectId}&fields=email",
  "google+": "https://example.com/api/social/google+/login_redirect?projectId={projectId}&fields=email",
  "instagram": "https://example.com/api/social/instagram/login_redirect?projectId={projectId}&fields=email",
  "kakao": "https://example.com/api/social/kakao/login_redirect?projectId={projectId}&fields=email",
  "linkedin": "https://example.com/api/social/linkedin/login_redirect?projectId={projectId}&fields=email",
  "mailru": "https://example.com/api/social/mailru/login_redirect?projectId={projectId}&fields=email",
  "microsoft": "https://example.com/api/social/microsoft/login_redirect?projectId={projectId}&fields=email",
  "msn": "https://example.com/api/social/msn/login_redirect?projectId={projectId}&fields=email",
  "naver": "https://example.com/api/social/naver/login_redirect?projectId={projectId}&fields=email",
  "ok": "https://example.com/api/social/ok/login_redirect?projectId={projectId}&fields=email",
  "paypal": "https://example.com/api/social/paypal/login_redirect?projectId={projectId}&fields=email",
  "pinterest": "https://example.com/api/social/pinterest/login_redirect?projectId={projectId}&fields=email",
  "qq": "https://example.com/api/social/qq/login_redirect?projectId={projectId}&fields=email",
  "reddit": "https://example.com/api/social/reddit/login_redirect?projectId={projectId}&fields=email",
  "steam": "https://example.com/api/social/steam/login_redirect?projectId={projectId}&fields=email",
  "twitch": "https://example.com/api/social/twitch/login_redirect?projectId={projectId}&fields=email",
  "twitter": "https://example.com/api/social/twitter/login_redirect?projectId={projectId}&fields=email",
  "vimeo": "https://example.com/api/social/vimeo/login_redirect?projectId={projectId}&fields=email",
  "vk": "https://example.com/api/social/vk/login_redirect?projectId={projectId}&fields=email",
  "wechat": "https://example.com/api/social/wechat/login_redirect?projectId={projectId}&fields=email",
  "weibo": "https://example.com/api/social/weibo/login_redirect?projectId={projectId}&fields=email",
  "yahoo": "https://example.com/api/social/yahoo/login_redirect?projectId={projectId}&fields=email",
  "yandex": "https://example.com/api/social/yandex/login_redirect?projectId={projectId}&fields=email",
  "youtube": "https://example.com/api/social/youtube/login_redirect?projectId={projectId}&fields=email"
}
{
  "amazon": "https://example.com/api/social/amazon/login_redirect?projectId={projectId}&fields=email",
  "baidu": "https://example.com/api/social/baidu/login_redirect?projectId={projectId}&fields=email",
  "battlenet": "https://example.com/api/social/battlenet/login_redirect?projectId={projectId}&fields=email",
  "china_telecom": "https://example.com/api/social/china_telecom/login_redirect?projectId={projectId}&fields=email",
  "discord": "https://example.com/api/social/discord/login_redirect?projectId={projectId}&fields=email",
  "facebook": "https://example.com/api/social/facebook/login_redirect?projectId={projectId}&fields=email",
  "github": "https://example.com/api/social/github/login_redirect?projectId={projectId}&fields=email",
  "google": "https://example.com/api/social/google/login_redirect?projectId={projectId}&fields=email",
  "google+": "https://example.com/api/social/google+/login_redirect?projectId={projectId}&fields=email",
  "instagram": "https://example.com/api/social/instagram/login_redirect?projectId={projectId}&fields=email",
  "kakao": "https://example.com/api/social/kakao/login_redirect?projectId={projectId}&fields=email",
  "linkedin": "https://example.com/api/social/linkedin/login_redirect?projectId={projectId}&fields=email",
  "mailru": "https://example.com/api/social/mailru/login_redirect?projectId={projectId}&fields=email",
  "microsoft": "https://example.com/api/social/microsoft/login_redirect?projectId={projectId}&fields=email",
  "msn": "https://example.com/api/social/msn/login_redirect?projectId={projectId}&fields=email",
  "naver": "https://example.com/api/social/naver/login_redirect?projectId={projectId}&fields=email",
  "ok": "https://example.com/api/social/ok/login_redirect?projectId={projectId}&fields=email",
  "paypal": "https://example.com/api/social/paypal/login_redirect?projectId={projectId}&fields=email",
  "pinterest": "https://example.com/api/social/pinterest/login_redirect?projectId={projectId}&fields=email",
  "qq": "https://example.com/api/social/qq/login_redirect?projectId={projectId}&fields=email",
  "reddit": "https://example.com/api/social/reddit/login_redirect?projectId={projectId}&fields=email",
  "steam": "https://example.com/api/social/steam/login_redirect?projectId={projectId}&fields=email",
  "twitch": "https://example.com/api/social/twitch/login_redirect?projectId={projectId}&fields=email",
  "twitter": "https://example.com/api/social/twitter/login_redirect?projectId={projectId}&fields=email",
  "vimeo": "https://example.com/api/social/vimeo/login_redirect?projectId={projectId}&fields=email",
  "vk": "https://example.com/api/social/vk/login_redirect?projectId={projectId}&fields=email",
  "wechat": "https://example.com/api/social/wechat/login_redirect?projectId={projectId}&fields=email",
  "weibo": "https://example.com/api/social/weibo/login_redirect?projectId={projectId}&fields=email",
  "yahoo": "https://example.com/api/social/yahoo/login_redirect?projectId={projectId}&fields=email",
  "yandex": "https://example.com/api/social/yandex/login_redirect?projectId={projectId}&fields=email",
  "youtube": "https://example.com/api/social/youtube/login_redirect?projectId={projectId}&fields=email"
}
{
  "amazon": "https://example.com/api/social/amazon/login_redirect?projectId={projectId}&fields=email",
  "baidu": "https://example.com/api/social/baidu/login_redirect?projectId={projectId}&fields=email",
  "battlenet": "https://example.com/api/social/battlenet/login_redirect?projectId={projectId}&fields=email",
  "china_telecom": "https://example.com/api/social/china_telecom/login_redirect?projectId={projectId}&fields=email",
  "discord": "https://example.com/api/social/discord/login_redirect?projectId={projectId}&fields=email",
  "facebook": "https://example.com/api/social/facebook/login_redirect?projectId={projectId}&fields=email",
  "github": "https://example.com/api/social/github/login_redirect?projectId={projectId}&fields=email",
  "google": "https://example.com/api/social/google/login_redirect?projectId={projectId}&fields=email",
  "google+": "https://example.com/api/social/google+/login_redirect?projectId={projectId}&fields=email",
  "instagram": "https://example.com/api/social/instagram/login_redirect?projectId={projectId}&fields=email",
  "kakao": "https://example.com/api/social/kakao/login_redirect?projectId={projectId}&fields=email",
  "linkedin": "https://example.com/api/social/linkedin/login_redirect?projectId={projectId}&fields=email",
  "mailru": "https://example.com/api/social/mailru/login_redirect?projectId={projectId}&fields=email",
  "microsoft": "https://example.com/api/social/microsoft/login_redirect?projectId={projectId}&fields=email",
  "msn": "https://example.com/api/social/msn/login_redirect?projectId={projectId}&fields=email",
  "naver": "https://example.com/api/social/naver/login_redirect?projectId={projectId}&fields=email",
  "ok": "https://example.com/api/social/ok/login_redirect?projectId={projectId}&fields=email",
  "paypal": "https://example.com/api/social/paypal/login_redirect?projectId={projectId}&fields=email",
  "pinterest": "https://example.com/api/social/pinterest/login_redirect?projectId={projectId}&fields=email",
  "qq": "https://example.com/api/social/qq/login_redirect?projectId={projectId}&fields=email",
  "reddit": "https://example.com/api/social/reddit/login_redirect?projectId={projectId}&fields=email",
  "steam": "https://example.com/api/social/steam/login_redirect?projectId={projectId}&fields=email",
  "twitch": "https://example.com/api/social/twitch/login_redirect?projectId={projectId}&fields=email",
  "twitter": "https://example.com/api/social/twitter/login_redirect?projectId={projectId}&fields=email",
  "vimeo": "https://example.com/api/social/vimeo/login_redirect?projectId={projectId}&fields=email",
  "vk": "https://example.com/api/social/vk/login_redirect?projectId={projectId}&fields=email",
  "wechat": "https://example.com/api/social/wechat/login_redirect?projectId={projectId}&fields=email",
  "weibo": "https://example.com/api/social/weibo/login_redirect?projectId={projectId}&fields=email",
  "yahoo": "https://example.com/api/social/yahoo/login_redirect?projectId={projectId}&fields=email",
  "yandex": "https://example.com/api/social/yandex/login_redirect?projectId={projectId}&fields=email",
  "youtube": "https://example.com/api/social/youtube/login_redirect?projectId={projectId}&fields=email"
}
{
  "amazon": "https://example.com/api/social/amazon/login_redirect?projectId={projectId}&fields=email",
  "baidu": "https://example.com/api/social/baidu/login_redirect?projectId={projectId}&fields=email",
  "battlenet": "https://example.com/api/social/battlenet/login_redirect?projectId={projectId}&fields=email",
  "china_telecom": "https://example.com/api/social/china_telecom/login_redirect?projectId={projectId}&fields=email",
  "discord": "https://example.com/api/social/discord/login_redirect?projectId={projectId}&fields=email",
  "facebook": "https://example.com/api/social/facebook/login_redirect?projectId={projectId}&fields=email",
  "github": "https://example.com/api/social/github/login_redirect?projectId={projectId}&fields=email",
  "google": "https://example.com/api/social/google/login_redirect?projectId={projectId}&fields=email",
  "google+": "https://example.com/api/social/google+/login_redirect?projectId={projectId}&fields=email",
  "instagram": "https://example.com/api/social/instagram/login_redirect?projectId={projectId}&fields=email",
  "kakao": "https://example.com/api/social/kakao/login_redirect?projectId={projectId}&fields=email",
  "linkedin": "https://example.com/api/social/linkedin/login_redirect?projectId={projectId}&fields=email",
  "mailru": "https://example.com/api/social/mailru/login_redirect?projectId={projectId}&fields=email",
  "microsoft": "https://example.com/api/social/microsoft/login_redirect?projectId={projectId}&fields=email",
  "msn": "https://example.com/api/social/msn/login_redirect?projectId={projectId}&fields=email",
  "naver": "https://example.com/api/social/naver/login_redirect?projectId={projectId}&fields=email",
  "ok": "https://example.com/api/social/ok/login_redirect?projectId={projectId}&fields=email",
  "paypal": "https://example.com/api/social/paypal/login_redirect?projectId={projectId}&fields=email",
  "pinterest": "https://example.com/api/social/pinterest/login_redirect?projectId={projectId}&fields=email",
  "qq": "https://example.com/api/social/qq/login_redirect?projectId={projectId}&fields=email",
  "reddit": "https://example.com/api/social/reddit/login_redirect?projectId={projectId}&fields=email",
  "steam": "https://example.com/api/social/steam/login_redirect?projectId={projectId}&fields=email",
  "twitch": "https://example.com/api/social/twitch/login_redirect?projectId={projectId}&fields=email",
  "twitter": "https://example.com/api/social/twitter/login_redirect?projectId={projectId}&fields=email",
  "vimeo": "https://example.com/api/social/vimeo/login_redirect?projectId={projectId}&fields=email",
  "vk": "https://example.com/api/social/vk/login_redirect?projectId={projectId}&fields=email",
  "wechat": "https://example.com/api/social/wechat/login_redirect?projectId={projectId}&fields=email",
  "weibo": "https://example.com/api/social/weibo/login_redirect?projectId={projectId}&fields=email",
  "yahoo": "https://example.com/api/social/yahoo/login_redirect?projectId={projectId}&fields=email",
  "yandex": "https://example.com/api/social/yandex/login_redirect?projectId={projectId}&fields=email",
  "youtube": "https://example.com/api/social/youtube/login_redirect?projectId={projectId}&fields=email"
}
{
  "amazon": "https://example.com/api/social/amazon/login_redirect?projectId={projectId}&fields=email",
  "baidu": "https://example.com/api/social/baidu/login_redirect?projectId={projectId}&fields=email",
  "battlenet": "https://example.com/api/social/battlenet/login_redirect?projectId={projectId}&fields=email",
  "china_telecom": "https://example.com/api/social/china_telecom/login_redirect?projectId={projectId}&fields=email",
  "discord": "https://example.com/api/social/discord/login_redirect?projectId={projectId}&fields=email",
  "facebook": "https://example.com/api/social/facebook/login_redirect?projectId={projectId}&fields=email",
  "github": "https://example.com/api/social/github/login_redirect?projectId={projectId}&fields=email",
  "google": "https://example.com/api/social/google/login_redirect?projectId={projectId}&fields=email",
  "google+": "https://example.com/api/social/google+/login_redirect?projectId={projectId}&fields=email",
  "instagram": "https://example.com/api/social/instagram/login_redirect?projectId={projectId}&fields=email",
  "kakao": "https://example.com/api/social/kakao/login_redirect?projectId={projectId}&fields=email",
  "linkedin": "https://example.com/api/social/linkedin/login_redirect?projectId={projectId}&fields=email",
  "mailru": "https://example.com/api/social/mailru/login_redirect?projectId={projectId}&fields=email",
  "microsoft": "https://example.com/api/social/microsoft/login_redirect?projectId={projectId}&fields=email",
  "msn": "https://example.com/api/social/msn/login_redirect?projectId={projectId}&fields=email",
  "naver": "https://example.com/api/social/naver/login_redirect?projectId={projectId}&fields=email",
  "ok": "https://example.com/api/social/ok/login_redirect?projectId={projectId}&fields=email",
  "paypal": "https://example.com/api/social/paypal/login_redirect?projectId={projectId}&fields=email",
  "pinterest": "https://example.com/api/social/pinterest/login_redirect?projectId={projectId}&fields=email",
  "qq": "https://example.com/api/social/qq/login_redirect?projectId={projectId}&fields=email",
  "reddit": "https://example.com/api/social/reddit/login_redirect?projectId={projectId}&fields=email",
  "steam": "https://example.com/api/social/steam/login_redirect?projectId={projectId}&fields=email",
  "twitch": "https://example.com/api/social/twitch/login_redirect?projectId={projectId}&fields=email",
  "twitter": "https://example.com/api/social/twitter/login_redirect?projectId={projectId}&fields=email",
  "vimeo": "https://example.com/api/social/vimeo/login_redirect?projectId={projectId}&fields=email",
  "vk": "https://example.com/api/social/vk/login_redirect?projectId={projectId}&fields=email",
  "wechat": "https://example.com/api/social/wechat/login_redirect?projectId={projectId}&fields=email",
  "weibo": "https://example.com/api/social/weibo/login_redirect?projectId={projectId}&fields=email",
  "yahoo": "https://example.com/api/social/yahoo/login_redirect?projectId={projectId}&fields=email",
  "yandex": "https://example.com/api/social/yandex/login_redirect?projectId={projectId}&fields=email",
  "youtube": "https://example.com/api/social/youtube/login_redirect?projectId={projectId}&fields=email"
}
{
  "amazon": "https://example.com/api/social/amazon/login_redirect?projectId={projectId}&fields=email",
  "baidu": "https://example.com/api/social/baidu/login_redirect?projectId={projectId}&fields=email",
  "battlenet": "https://example.com/api/social/battlenet/login_redirect?projectId={projectId}&fields=email",
  "china_telecom": "https://example.com/api/social/china_telecom/login_redirect?projectId={projectId}&fields=email",
  "discord": "https://example.com/api/social/discord/login_redirect?projectId={projectId}&fields=email",
  "facebook": "https://example.com/api/social/facebook/login_redirect?projectId={projectId}&fields=email",
  "github": "https://example.com/api/social/github/login_redirect?projectId={projectId}&fields=email",
  "google": "https://example.com/api/social/google/login_redirect?projectId={projectId}&fields=email",
  "google+": "https://example.com/api/social/google+/login_redirect?projectId={projectId}&fields=email",
  "instagram": "https://example.com/api/social/instagram/login_redirect?projectId={projectId}&fields=email",
  "kakao": "https://example.com/api/social/kakao/login_redirect?projectId={projectId}&fields=email",
  "linkedin": "https://example.com/api/social/linkedin/login_redirect?projectId={projectId}&fields=email",
  "mailru": "https://example.com/api/social/mailru/login_redirect?projectId={projectId}&fields=email",
  "microsoft": "https://example.com/api/social/microsoft/login_redirect?projectId={projectId}&fields=email",
  "msn": "https://example.com/api/social/msn/login_redirect?projectId={projectId}&fields=email",
  "naver": "https://example.com/api/social/naver/login_redirect?projectId={projectId}&fields=email",
  "ok": "https://example.com/api/social/ok/login_redirect?projectId={projectId}&fields=email",
  "paypal": "https://example.com/api/social/paypal/login_redirect?projectId={projectId}&fields=email",
  "pinterest": "https://example.com/api/social/pinterest/login_redirect?projectId={projectId}&fields=email",
  "qq": "https://example.com/api/social/qq/login_redirect?projectId={projectId}&fields=email",
  "reddit": "https://example.com/api/social/reddit/login_redirect?projectId={projectId}&fields=email",
  "steam": "https://example.com/api/social/steam/login_redirect?projectId={projectId}&fields=email",
  "twitch": "https://example.com/api/social/twitch/login_redirect?projectId={projectId}&fields=email",
  "twitter": "https://example.com/api/social/twitter/login_redirect?projectId={projectId}&fields=email",
  "vimeo": "https://example.com/api/social/vimeo/login_redirect?projectId={projectId}&fields=email",
  "vk": "https://example.com/api/social/vk/login_redirect?projectId={projectId}&fields=email",
  "wechat": "https://example.com/api/social/wechat/login_redirect?projectId={projectId}&fields=email",
  "weibo": "https://example.com/api/social/weibo/login_redirect?projectId={projectId}&fields=email",
  "yahoo": "https://example.com/api/social/yahoo/login_redirect?projectId={projectId}&fields=email",
  "yandex": "https://example.com/api/social/yandex/login_redirect?projectId={projectId}&fields=email",
  "youtube": "https://example.com/api/social/youtube/login_redirect?projectId={projectId}&fields=email"
}
{
  "amazon": "https://example.com/api/social/amazon/login_redirect?projectId={projectId}&fields=email",
  "baidu": "https://example.com/api/social/baidu/login_redirect?projectId={projectId}&fields=email",
  "battlenet": "https://example.com/api/social/battlenet/login_redirect?projectId={projectId}&fields=email",
  "china_telecom": "https://example.com/api/social/china_telecom/login_redirect?projectId={projectId}&fields=email",
  "discord": "https://example.com/api/social/discord/login_redirect?projectId={projectId}&fields=email",
  "facebook": "https://example.com/api/social/facebook/login_redirect?projectId={projectId}&fields=email",
  "github": "https://example.com/api/social/github/login_redirect?projectId={projectId}&fields=email",
  "google": "https://example.com/api/social/google/login_redirect?projectId={projectId}&fields=email",
  "google+": "https://example.com/api/social/google+/login_redirect?projectId={projectId}&fields=email",
  "instagram": "https://example.com/api/social/instagram/login_redirect?projectId={projectId}&fields=email",
  "kakao": "https://example.com/api/social/kakao/login_redirect?projectId={projectId}&fields=email",
  "linkedin": "https://example.com/api/social/linkedin/login_redirect?projectId={projectId}&fields=email",
  "mailru": "https://example.com/api/social/mailru/login_redirect?projectId={projectId}&fields=email",
  "microsoft": "https://example.com/api/social/microsoft/login_redirect?projectId={projectId}&fields=email",
  "msn": "https://example.com/api/social/msn/login_redirect?projectId={projectId}&fields=email",
  "naver": "https://example.com/api/social/naver/login_redirect?projectId={projectId}&fields=email",
  "ok": "https://example.com/api/social/ok/login_redirect?projectId={projectId}&fields=email",
  "paypal": "https://example.com/api/social/paypal/login_redirect?projectId={projectId}&fields=email",
  "pinterest": "https://example.com/api/social/pinterest/login_redirect?projectId={projectId}&fields=email",
  "qq": "https://example.com/api/social/qq/login_redirect?projectId={projectId}&fields=email",
  "reddit": "https://example.com/api/social/reddit/login_redirect?projectId={projectId}&fields=email",
  "steam": "https://example.com/api/social/steam/login_redirect?projectId={projectId}&fields=email",
  "twitch": "https://example.com/api/social/twitch/login_redirect?projectId={projectId}&fields=email",
  "twitter": "https://example.com/api/social/twitter/login_redirect?projectId={projectId}&fields=email",
  "vimeo": "https://example.com/api/social/vimeo/login_redirect?projectId={projectId}&fields=email",
  "vk": "https://example.com/api/social/vk/login_redirect?projectId={projectId}&fields=email",
  "wechat": "https://example.com/api/social/wechat/login_redirect?projectId={projectId}&fields=email",
  "weibo": "https://example.com/api/social/weibo/login_redirect?projectId={projectId}&fields=email",
  "yahoo": "https://example.com/api/social/yahoo/login_redirect?projectId={projectId}&fields=email",
  "yandex": "https://example.com/api/social/yandex/login_redirect?projectId={projectId}&fields=email",
  "youtube": "https://example.com/api/social/youtube/login_redirect?projectId={projectId}&fields=email"
}
{
  "amazon": "https://example.com/api/social/amazon/login_redirect?projectId={projectId}&fields=email",
  "baidu": "https://example.com/api/social/baidu/login_redirect?projectId={projectId}&fields=email",
  "battlenet": "https://example.com/api/social/battlenet/login_redirect?projectId={projectId}&fields=email",
  "china_telecom": "https://example.com/api/social/china_telecom/login_redirect?projectId={projectId}&fields=email",
  "discord": "https://example.com/api/social/discord/login_redirect?projectId={projectId}&fields=email",
  "facebook": "https://example.com/api/social/facebook/login_redirect?projectId={projectId}&fields=email",
  "github": "https://example.com/api/social/github/login_redirect?projectId={projectId}&fields=email",
  "google": "https://example.com/api/social/google/login_redirect?projectId={projectId}&fields=email",
  "google+": "https://example.com/api/social/google+/login_redirect?projectId={projectId}&fields=email",
  "instagram": "https://example.com/api/social/instagram/login_redirect?projectId={projectId}&fields=email",
  "kakao": "https://example.com/api/social/kakao/login_redirect?projectId={projectId}&fields=email",
  "linkedin": "https://example.com/api/social/linkedin/login_redirect?projectId={projectId}&fields=email",
  "mailru": "https://example.com/api/social/mailru/login_redirect?projectId={projectId}&fields=email",
  "microsoft": "https://example.com/api/social/microsoft/login_redirect?projectId={projectId}&fields=email",
  "msn": "https://example.com/api/social/msn/login_redirect?projectId={projectId}&fields=email",
  "naver": "https://example.com/api/social/naver/login_redirect?projectId={projectId}&fields=email",
  "ok": "https://example.com/api/social/ok/login_redirect?projectId={projectId}&fields=email",
  "paypal": "https://example.com/api/social/paypal/login_redirect?projectId={projectId}&fields=email",
  "pinterest": "https://example.com/api/social/pinterest/login_redirect?projectId={projectId}&fields=email",
  "qq": "https://example.com/api/social/qq/login_redirect?projectId={projectId}&fields=email",
  "reddit": "https://example.com/api/social/reddit/login_redirect?projectId={projectId}&fields=email",
  "steam": "https://example.com/api/social/steam/login_redirect?projectId={projectId}&fields=email",
  "twitch": "https://example.com/api/social/twitch/login_redirect?projectId={projectId}&fields=email",
  "twitter": "https://example.com/api/social/twitter/login_redirect?projectId={projectId}&fields=email",
  "vimeo": "https://example.com/api/social/vimeo/login_redirect?projectId={projectId}&fields=email",
  "vk": "https://example.com/api/social/vk/login_redirect?projectId={projectId}&fields=email",
  "wechat": "https://example.com/api/social/wechat/login_redirect?projectId={projectId}&fields=email",
  "weibo": "https://example.com/api/social/weibo/login_redirect?projectId={projectId}&fields=email",
  "yahoo": "https://example.com/api/social/yahoo/login_redirect?projectId={projectId}&fields=email",
  "yandex": "https://example.com/api/social/yandex/login_redirect?projectId={projectId}&fields=email",
  "youtube": "https://example.com/api/social/youtube/login_redirect?projectId={projectId}&fields=email"
}

소셜 네트워크를 통한 인증

게시자 계정의 로그인에 연결된 소셜 네트워크를 통해 사용자를 인증합니다.

HTTP 요청

GET https://login.xsolla.com/api/social/{providerName}/login_redirect?projectId={projectId}&fields={fields}&login_url={login_url}

파라미터유형설명
providerName
string게시자 계정의 로그인에 연결된 소셜 네트워크의 이름. 가능한 이름: 'amazon', 'baidu', 'battlenet', 'china_telecom', 'discord', 'facebook', 'github', 'google', 'google+', 'instagram', 'kakao', 'linkedin', 'mailru.oauth', 'microsoft', 'msn', 'naver', 'ok', 'paradox', 'paypal', 'pinterest', 'qq', 'reddit', 'steam', 'twitch', 'twitter', 'vimeo', 'vk', 'wechat', 'weibo', 'yahoo', 'yandex', 'youtube'. 필수.
projectId
string게시자 계정의 로그인 ID입니다. 필수.
fields
array of strings성공적인 사용자 등록/인증에 필요한 매개변수 목록입니다. 예: 'email, promo_email_agreement'. 해당 양식에 이러한 매개변수를 지정하라는 메시지가 표시됩니다.
login_url
string소셜 네트워크 인증 링크를 생성하는 URL입니다. 로그인 설정 시 게시자 계정에서 지정한 콜백 URL과 동일해야 합니다. 콜백 URL이 여러 개 존재할 경우 필요합니다.
Copy
Full screen
http
  • http
  • curl
  • php
  • C#
  • python
  • ruby
  • java
  • js
요청
GET https://login.xsolla.com/api/social/amazon/login_redirect?fields=email&login_url=https://example.com&projectId={projectId}
curl --request GET \
  --url 'https://login.xsolla.com/api/social/amazon/login_redirect?projectId={projectId}&fields=email&login_url=https%3A%2F%2Fexample.com'
<?php

$client = new http\Client;
$request = new http\Client\Request;

$request->setRequestUrl('https://login.xsolla.com/api/social/amazon/login_redirect');
$request->setRequestMethod('GET');
$request->setQuery(new http\QueryString(array(
  'projectId' => '{projectId}',
  'fields' => 'email',
  'login_url' => 'https://example.com'
)));

$client->enqueue($request)->send();
$response = $client->getResponse();

echo $response->getBody();
var client = new RestClient("https://login.xsolla.com/api/social/amazon/login_redirect?projectId={projectId}&fields=email&login_url=https%3A%2F%2Fexample.com");
var request = new RestRequest(Method.GET);
IRestResponse response = client.Execute(request);
import http.client

conn = http.client.HTTPSConnection("login.xsolla.com")

conn.request("GET", "/api/social/amazon/login_redirect?projectId={projectId}&fields=email&login_url=https%3A%2F%2Fexample.com")

res = conn.getresponse()
data = res.read()

print(data.decode("utf-8"))
require 'uri'
require 'net/http'

url = URI("https://login.xsolla.com/api/social/amazon/login_redirect?projectId={projectId}&fields=email&login_url=https%3A%2F%2Fexample.com")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
OkHttpClient client = new OkHttpClient();

Request request = new Request.Builder()
  .url("https://login.xsolla.com/api/social/amazon/login_redirect?projectId={projectId}&fields=email&login_url=https%3A%2F%2Fexample.com")
  .get()
  .build();

Response response = client.newCall(request).execute();
var data = null;

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://login.xsolla.com/api/social/amazon/login_redirect?projectId={projectId}&fields=email&login_url=https%3A%2F%2Fexample.com");

xhr.send(data);
응답