EpicGame免费游戏获取

提供对EpicGame平台当前免费游戏(喜加一)及未来免费发布游戏列表的实时数据访问,支持开发者集成与自动化处理。
100次/天
500次/天
2000次/天
其余会籍无限次
  • 接口文档
  • 代码示例
  • 响应码参照
  • 接口服务
  • 联系方式
接口地址
https://api.istero.com/resource/v1/epic/free/game
请求方式 HTTP POST GET
返回格式 application/json
请求参数
请求头部 必填 说明 示例
Authorization 可选 用户中心获取到的TOKEN,格式:Bearer <token> Bearer kHDWCttQBVRojsfuLpzgbnVGumJmBkha
X-Signature 可选(无需动态签名防护可忽略) 指定算法生成的Sign签名值 a5c573b59ee353298fe99bd855ddcad2a84d337b733860ff9a3c8c04dbdf1360
X-Timestamp 可选(无需动态签名防护可忽略) 当前时间戳(需用户获取传入,有效期五分钟) 1751810929
参数 类型 必填 默认 描述 示例
token string 可选 如传入Authorization,此参数可以忽略 89defae676abd3e3a42b41df17c40096
sign string 可选 如传入X-Signature,此参数可以忽略 8dda802845306b84d30d860d4514665f6959994be7c1f05d37a549e3a0b02fad
timestamp string 可选 如传入X-Timestamp,此参数可以忽略 1751810929
lang string cn 语言
cn:中文
en:英文
en
动态签名算法示例(可选)
参数 描述 示例
token 用户中心获取到的TOKEN kHDWCttQBVRojsfuLpzgbnVGumJmBkha
AppSecret 开发者密钥,用户中心获取 NxWTTtGjkBykWiuoscKrPBulPVoMZrQj
timestamp 当前时间戳(需用户获取传入) 1751811509
原始数据拼接token + AppSecret + timestamp
拼接示例wItPGiDtzolPsVtkNerRswwTbblEIJwbOOxTPLSVwsJDAjkbzmliC1751810380
使用sha256加密哈希算法sha256(wItPGiDtzolPsVtkNerRswwTbblEIJwbOOxTPLSVwsJDAjkbzmliC1751810380)
最终获取到Signa5c573b59ee353298fe99bd855ddcad2a84d337b733860ff9a3c8c04dbdf1360
GET请求示例
https://api.istero.com/resource/v1/epic/free/game?token=TOKEN&sign=SIGN&timestamp=TIMESTAMP&lang=en
响应数据
参数 描述
code 响应码
data 响应数据
title 游戏标题
description 游戏描述
publishDate 发布时间
images 图片列表
type 图片类型
url 图片URL
url 游戏地址
price 销售价格
status 状态 0:即将免费 1:正在免费
startDate 开始时间
endDate 结束时间
message 返回信息
elapsedTime 响应耗时(ms)
返回示例
{
  "code": 200,
  "data": [
    {
      "title": "《LISA: Definitive Edition》",
      "description": "入手《LISA: Definitive Edition》,探索 Olathe,揭开背后隐藏的扭曲秘密。Definitive Edition 包括叙事驱动角色扮演原作《LISA: The Painful》及续作《LISA: The Joyful》。",
      "publishDate": "2024-05-22 00:00:00",
      "images": [
        {
          "type": "OfferImageTall",
          "url": "https://cdn1.epicgames.com/offer/ca3a9d16d131478c97fd56c138a6511a/EGS_LISATheDefinitiveEdition_DingalingProductions_Bundles_S2_1200x1600-4a9b4fc6e06e8aff136c1a3cf18292ae"
        },
        {
          "type": "OfferImageWide",
          "url": "https://cdn1.epicgames.com/offer/ca3a9d16d131478c97fd56c138a6511a/EGS_LISATheDefinitiveEdition_DingalingProductions_Bundles_S1_2560x1440-55b66eb2046507e58eac435c21331bd5"
        },
        {
          "type": "Thumbnail",
          "url": "https://cdn1.epicgames.com/offer/ca3a9d16d131478c97fd56c138a6511a/EGS_LISATheDefinitiveEdition_DingalingProductions_Bundles_S2_1200x1600-4a9b4fc6e06e8aff136c1a3cf18292ae"
        }
      ],
      "url": "https://store.epicgames.com/zh-CN/p/lisa-the-definitive-edition",
      "price": "¥108.00",
      "status": 1,
      "startDate": "2025-03-27 00:00:00",
      "endDate": "2025-04-09 23:00:00"
    },
    {
      "title": "Neko Ghost, Jump!",
      "description": "Neko Ghost, Jump! is a puzzle-platformer where you not only switch between 2D & 3D camera perspectives but also between your physical & ghost forms to solve puzzles, combat enemies, and clear levels faster.",
      "publishDate": "2025-03-27 23:00:00",
      "images": [
        {
          "type": "DieselStoreFrontWide",
          "url": "https://cdn1.epicgames.com/offer/d5241c76f178492ea1540fce45616757/Gift_1920x1080_wrap-b_1920x1080-d6e0c4f1fa0962bbb9b30317081c5b6d"
        },
        {
          "type": "VaultClosed",
          "url": "https://cdn1.epicgames.com/offer/d5241c76f178492ea1540fce45616757/Gift_1920x1080_wrap-a1_1920x1080-7644d526b2a7dcdc7ca5787446ce0c0d"
        }
      ],
      "url": "https://store.epicgames.com/zh-CN/p/neko-ghost-jump",
      "price": "0",
      "status": 1,
      "startDate": "2025-03-27 23:00:00",
      "endDate": "2025-04-03 23:00:00"
    },
    {
      "title": "Cat Quest",
      "description": "The multi award-winning Action RPG. Cat Quest's loot-fuelled cat-venture is as beautifully crafted, as its combat and magic are ultra-satisfying. Universally adored by critics - it'll have you purring for joy!",
      "publishDate": "2025-03-27 23:00:00",
      "images": [
        {
          "type": "DieselStoreFrontWide",
          "url": "https://cdn1.epicgames.com/offer/d5241c76f178492ea1540fce45616757/CQ_Gift_1920x1080_wrap-b_1920x1080-d6743a93b51240dab421e4f48d0e95d5"
        },
        {
          "type": "VaultClosed",
          "url": "https://cdn1.epicgames.com/offer/d5241c76f178492ea1540fce45616757/CQ_Gift_1920x1080_wrap-a1_1920x1080-f145f9945a78d880facf5d2f374aaf77"
        }
      ],
      "url": "https://store.epicgames.com/zh-CN/p/cat-quest-8373e0",
      "price": "0",
      "status": 1,
      "startDate": "2025-03-27 23:00:00",
      "endDate": "2025-04-03 23:00:00"
    },
    {
      "title": "Mystery Game 3",
      "description": "Mystery Game 3",
      "publishDate": "2025-04-03 23:00:00",
      "images": [
        {
          "type": "VaultClosed",
          "url": "https://cdn1.epicgames.com/offer/d5241c76f178492ea1540fce45616757/CII_Gift_1920x1080_wrap-a1_1920x1080-d1f5a48938e58d769a65a6ab7190f8d9"
        },
        {
          "type": "DieselStoreFrontWide",
          "url": "https://cdn1.epicgames.com/offer/d5241c76f178492ea1540fce45616757/CII_Gift_1920x1080_wrap-a1_1920x1080-d1f5a48938e58d769a65a6ab7190f8d9"
        }
      ],
      "url": "",
      "price": "0",
      "status": 0,
      "startDate": "2025-04-03 23:00:00",
      "endDate": "2025-04-10 23:00:00"
    }
  ],
  "message": "",
  "elapsedTime": "2037.34ms",
  "providerName": "ISAS起零API:https://api.istero.com"
}
展开完整代码
  • Python
  • PHP
  • GO
  • Java
  • JavaScript
  • C
  • C#
  • C++
  • Lua
  • TypeSrcipt
  • Swift
  • Julia
  • Kotlin
  • Ruby
  • R
POST示例
import requests

api = "https://api.istero.com/resource/v1/epic/free/game"
data = {"token": "TOKEN"}
response = requests.post(api, data=data)
print(response.text)
GET示例
import requests

api = "https://api.istero.com/resource/v1/epic/free/game?token=TOKEN"
response = requests.get(api)
print(response.text)
POST示例
<?php

$ch = curl_init();

$api = "https://api.istero.com/resource/v1/epic/free/game";
$data = array("token"=>"TOKEN");

curl_setopt($ch, CURLOPT_URL, $api);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); // 对认证证书来源的检查
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2); // 从证书中检查SSL加密算法是否存在
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); // 使用自动跳转

if (!empty($headers)) {
    curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
}

$output = curl_exec($ch);
$error = curl_error($ch);
curl_close($ch);

return json_decode($output, true);

?>
GET示例
<?php

$api = "https://api.istero.com/resource/v1/epic/free/game?token=TOKEN";
$data = file_get_contents($api);
echo $data;

?>
POST示例
package main

import (
	"bytes"
	"fmt"
	"io/ioutil"
	"net/http"
)

func main() {
	url := "https://api.istero.com/resource/v1/epic/free/game"
	data := []byte('token=TOKEN')

	resp, err := http.Post(url, "application/x-www-form-urlencoded", bytes.NewBuffer(data))
	if err != nil {
		panic(err)
	}
	defer resp.Body.Close()

	body, err := ioutil.ReadAll(resp.Body)
	if err != nil {
		panic(err)
	}

	fmt.Println(string(body))
}
GET示例
package main

import (
	"fmt"
	"io/ioutil"
	"net/http"
)

func main() {
	api := "https://api.istero.com/resource/v1/epic/free/game?token=TOKEN"
	resp, err := http.Get(api)
	if err != nil {
		panic(err)
	}
	defer resp.Body.Close()

	body, err := ioutil.ReadAll(resp.Body)
	if err != nil {
		panic(err)
	}

	fmt.Println(string(body))
}
POST示例
import java.io.OutputStream;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;

public class Main {
    public static void main(String[] args) {
        try {
            URL url = new URL("https://api.istero.com/resource/v1/epic/free/game");
            HttpURLConnection connection = (HttpURLConnection) url.openConnection();
            connection.setRequestMethod("POST");
            connection.setDoOutput(true);
            String postData = "token=TOKEN";
            OutputStream os = connection.getOutputStream();
            os.write(postData.getBytes());
            os.flush();
            os.close();

            BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream()));
            String line;
            while ((line = reader.readLine()) != null) {
                System.out.println(line);
            }
            reader.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
GET示例
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;

public class Main {
    public static void main(String[] args) {
        try {
            URL url = new URL("https://api.istero.com/resource/v1/epic/free/game?token=TOKEN");
            HttpURLConnection connection = (HttpURLConnection) url.openConnection();
            BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream()));
            String line;
            while ((line = reader.readLine()) != null) {
                System.out.println(line);
            }
            reader.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
POST示例
const https = require('https');

const data = JSON.stringify({
  'token': 'TOKEN'
});

const options = {
  hostname: 'https://api.istero.com/resource/v1/epic/free/game',
  port: 443,
  path: '/',
  method: 'POST',
  headers: {
    'Content-Type': 'application/x-www-form-urlencoded',
    'Content-Length': data.length
  }
};

const req = https.request(options, (res) => {
  let data = '';
  res.on('data', (chunk) => {
    data += chunk;
  });
  res.on('end', () => {
    console.log(data);
  });
});

req.write(data);
req.end();
GET示例
const https = require('https');

https.get('https://api.istero.com/resource/v1/epic/free/game?token=TOKEN', (resp) => {
    let data = '';
    resp.on('data', (chunk) => {
        data += chunk;
    });
    resp.on('end', () => {
        console.log(data);
    });
}).on("error", (err) => {
    console.log("Error: " + err.message);
});
POST示例
#include <stdio.h>;
#include <curl/curl.h>;

static size_t write_callback(void *contents, size_t size, size_t nmemb, void *userp) {
    size_t realsize = size * nmemb;
    printf("%s", (char *)contents);
    return realsize;
}

int main(void) {
    CURL *curl;
    CURLcode res;
    struct curl_slist *headers = NULL;

    curl = curl_easy_init();
    if(curl) {
        curl_easy_setopt(curl, CURLOPT_URL, "https://api.istero.com/resource/v1/epic/free/game");
        curl_easy_setopt(curl, CURLOPT_POST, 1L);
        curl_easy_setopt(curl, CURLOPT_POSTFIELDS, "token=TOKEN");
        curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_callback);
        res = curl_easy_perform(curl);
        curl_easy_cleanup(curl);
    }
    return 0;
}
GET示例
#include <stdio.h>;
#include <curl/curl.h>;

static size_t write_callback(void *contents, size_t size, size_t nmemb, void *userp) {
    size_t realsize = size * nmemb;
    printf("%s", (char *)contents);
    return realsize;
}

int main(void) {
    CURL *curl;
    CURLcode res;

    curl = curl_easy_init();
    if(curl) {
        curl_easy_setopt(curl, CURLOPT_URL, "https://api.istero.com/resource/v1/epic/free/game?token=TOKEN");
        curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_callback);
        res = curl_easy_perform(curl);
        curl_easy_cleanup(curl);
    }
    return 0;
}
POST示例
using System;
using System.Net;
using System.Collections.Specialized;

class Program {
    static void Main() {
        WebClient client = new WebClient();
        NameValueCollection postData = new NameValueCollection()
        {
            {"token","TOKEN"}
        };
        byte[] responseArray = client.UploadValues("https://api.istero.com/resource/v1/epic/free/game", postData);
        string response = System.Text.Encoding.UTF8.GetString(responseArray);
        Console.WriteLine(response);
    }
}
GET示例
using System;
using System.Net;

class Program {
    static void Main() {
        WebClient client = new WebClient();
        string sourceCode = client.DownloadString("https://api.istero.com/resource/v1/epic/free/game?token=TOKEN");
        Console.WriteLine(sourceCode);
    }
}
POST示例
#include <stdio.h>
#include <curl/curl.h>

static size_t write_callback(void *contents, size_t size, size_t nmemb, void *userp) {
    size_t realsize = size * nmemb;
    printf("%s", (char *)contents);
    return realsize;
}

int main(void) {
    CURL *curl;
    CURLcode res;
    struct curl_slist *headers = NULL;

    curl = curl_easy_init();
    if(curl) {
        curl_easy_setopt(curl, CURLOPT_URL, "https://api.istero.com/resource/v1/epic/free/game");
        curl_easy_setopt(curl, CURLOPT_POST, 1L);
        curl_easy_setopt(curl, CURLOPT_POSTFIELDS, "token=TOKEN");
        curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_callback);
        res = curl_easy_perform(curl);
        curl_easy_cleanup(curl);
    }
    return 0;
}
GET示例
#include <iostream>
#include <curl/curl.h>

static size_t write_callback(void *contents, size_t size, size_t nmemb, void *userp) {
    size_t realsize = size * nmemb;
    std::cout << (char*)contents;
    return realsize;
}

int main() {
    CURL *curl;
    CURLcode res;

    curl = curl_easy_init();
    if(curl) {
        curl_easy_setopt(curl, CURLOPT_URL, "https://api.istero.com/resource/v1/epic/free/game?token=TOKEN");
        curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_callback);
        res = curl_easy_perform(curl);
        curl_easy_cleanup(curl);
    }
    return 0;
}
POST示例
local http = require("socket.http")
local ltn12 = require("ltn12")

local url = "https://api.istero.com/resource/v1/epic/free/game"
local response_table = {}
local r, c, h, s = http.request{
    url = url,
    method = "POST",
    headers = {
        ["Content-Type"] = "application/x-www-form-urlencoded",
    },
    source = ltn12.source.string("token=TOKEN"),
    sink = ltn12.sink.table(response_table)
}

if c == 200 then
    print(table.concat(response_table))
else
    print("Error:", c)
end
GET示例
local http = require("socket.http")
local url = "https://api.istero.com/resource/v1/epic/free/game?token=TOKEN"
local source_code, status = http.request(url)
if status == 200 then
    print(source_code)
else
    print("Error:", status)
end
POST示例
// 安装axios
// npm install axios

import axios from 'axios';

axios.post('https://api.istero.com/resource/v1/epic/free/game', {
    token: 'TOKEN'
})
.then(response => {
    console.log(response.data);
})
.catch(error => {
    console.error('Error sending data:', error);
});
GET示例
// 安装axios
// npm install axios

import axios from 'axios';

axios.get('https://api.istero.com/resource/v1/epic/free/game?token=TOKEN')
.then(response => {
    console.log(response.data);
})
.catch(error => {
    console.error('Error fetching data:', error);
});
POST示例
import Foundation

let url = URL(string: "https://api.istero.com/resource/v1/epic/free/game")!
var request = URLRequest(url: url)
request.httpMethod = "POST"
request.httpBody = "token=TOKEN".data(using: .utf8)

let task = URLSession.shared.dataTask(with: request) {(data, response, error) in
    if let data = data {
        print(String(data: data, encoding: .utf8)!)
    }
}
task.resume()
GET示例
import Foundation

let url = URL(string: "https://api.istero.com/resource/v1/epic/free/game?token=TOKEN")!
let task = URLSession.shared.dataTask(with: url) {(data, response, error) in
    if let data = data {
        print(String(data: data, encoding: .utf8)!)
    }
}
task.resume()
POST示例
# 确保安装了HTTP.jl库
# using Pkg
# Pkg.add("HTTP")
using HTTP

api = "https://api.istero.com/resource/v1/epic/free/game"
data = "token=TOKEN"
headers = Dict("Content-Type" => "application/x-www-form-urlencoded")
response = HTTP.post(api, headers=headers, body=data)

println(String(response.body))
GET示例
# 确保安装了HTTP.jl库
# using Pkg
# Pkg.add("HTTP")
using HTTP

api = "https://api.istero.com/resource/v1/epic/free/game?token=TOKEN"
response = HTTP.get(api)

println(String(response.body))
POST示例
// 需要在项目的 build.gradle 文件中添加依赖
// implementation("com.squareup.okhttp3:okhttp:4.x.x")
import okhttp3.OkHttpClient
import okhttp3.Request
import okhttp3.RequestBody
import okhttp3.MediaType.Companion.toMediaType
import okhttp3.RequestBody.Companion.toRequestBody

val client = OkHttpClient()

val mediaType = "application/x-www-form-urlencoded".toMediaType()
val body = "token=TOKEN".toRequestBody(mediaType)

val request = Request.Builder()
    .url("https://api.istero.com/resource/v1/epic/free/game")
    .post(body)
    .build()

client.newCall(request).execute().use { response ->
    println(response.body?.string())
}
GET示例
// 需要在项目的 build.gradle 文件中添加依赖
// implementation("com.squareup.okhttp3:okhttp:4.x.x")
import okhttp3.OkHttpClient
import okhttp3.Request

val client = OkHttpClient()

val request = Request.Builder()
    .url("https://api.istero.com/resource/v1/epic/free/game?token=TOKEN")
    .build()

client.newCall(request).execute().use { response ->
    println(response.body?.string())
}
POST示例
require 'net/http'
require 'uri'

uri = URI.parse("https://api.istero.com/resource/v1/epic/free/game")
http = Net::HTTP.new(uri.host, uri.port)
request = Net::HTTP::Post.new(uri.path)
request.set_form_data({"token" => "TOKEN"})

response = http.request(request)

puts response.body
GET示例
require 'net/http'
require 'uri'

uri = URI.parse("https://api.istero.com/resource/v1/epic/free/game?token=TOKEN")
response = Net::HTTP.get_response(uri)

puts response.body
POST示例
# 首先需要下载httr库
# install.packages("httr")
library(httr)

url <- "https://api.istero.com/resource/v1/epic/free/game"
response <- POST(url, body = list(token = "TOKEN"))

print(content(response, "text"))
GET示例
# 首先需要下载httr库
# install.packages("httr")
library(httr)

url <- "https://api.istero.com/resource/v1/epic/free/game?token=TOKEN"
response <- GET(url)

print(content(response, "text"))
代码 描述
200 数据返回成功
202 余额不足,仅付费接口会出现此状态码
302 接口维护/停止服务
400 请求失败,“message”显示错误信息
403 TOKEN鉴权失败
404 接口不存在
429 超出会籍QPS限制
500 接口服务器错误
502 账号被封锁/冻结
接口状态 正常
最后更新时间 2025-06-20 17:19:09
接口反馈
请选择反馈的类型
接口无法正常调用
接口数据涉及侵权
客服微信 istero_com
客服QQ 97529013
客服邮箱 service@istero.com
企业官网 https://www.istero.com
获取网页全部图片URL地址
服务正常 免费
提供网页图片URL批量提取服务,快速抓取页面中的所有图片链接,支持高清原图获取,满足资源收集与数据分析需求。
查看文档
CCTV实时最新科技新闻获取
服务正常 免费
实时同步CCTV权威科技资讯,前沿动态一网打尽,支持AI、5G、航天等热点领域,助力企业及开发者快速集成最新科技趋势,赋能数字化转型。
查看文档
QQ查询绑定手机是否泄露
服务正常 免费
通过QQ查询手机绑定状态,检测账号信息是否泄露,保障用户数据安全与隐私防护。
查看文档
淘宝商品搜索建议词获取
服务正常 免费
根据用户输入的关键词,智能返回与之相关的淘宝商品搜索建议词,帮助用户快速找到更精准的搜索方向。
查看文档
随机抽签服务
服务正常 免费
提供高效灵活的随机抽签服务,支持自定义参数和抽取数量,精确计算概率,满足多样化需求,快速集成到您的应用中。
查看文档
WIFI二维码QrCode生成
服务正常 免费
WIFI二维码生成,扫描后可快速连接对应 WIFI,支持加密与非加密网络,便捷分享网络信息,提升使用效率。
查看文档
可注册域名后缀获取
服务正常 免费
提供全面的可注册域名后缀查询服务,帮助用户快速找到适合业务的域名扩展名,支持实时检索最新域名后缀信息,数据实时更新。
查看文档
Cron执行时间表达式查询
服务正常 免费
提供Cron表达式校验与解析服务,支持检查表达式的合法性,并列举出接下来的10次执行时间,帮助开发者高效调试定时任务。
查看文档