Ace Data Cloud 平台剩余配额查询

1 阅读4分钟

在使用 Ace Data Cloud 平台的 API 时,许多接口都是基于配额收费的。为了避免因配额用尽而导致业务中断或损失,Ace Data Cloud 平台提供了一个查询剩余配额的接口。通过该接口,您的平台可以在检测到配额不足时及时充值,从而确保业务的持续性。

本文将介绍如何集成查询剩余配额的接口。

查看应用 ID

首先,需要了解 Ace Data Cloud 平台的每个 API 服务都对应一个“应用”实例。每个“应用”实例都有自己的 ID、密钥、剩余配额等信息,您可以在 应用列表 中查看。

例如,如果您想检查“Midjourney API”的剩余配额,可以复制该 ID 并记录为 application_id

创建平台令牌

Ace Data Cloud 平台提供了“平台令牌”机制,方便开发者通过 API 查询账户信息,如订单列表、应用列表、分配信息、调用记录等。此机制也包括查询剩余配额的功能。平台令牌的作用类似于用户登录后获取的用户令牌,但平台令牌的有效期是永久性的,而用户令牌会在一段时间后过期(过期后需重新登录)。

因此,通过平台令牌,您可以轻松获取 Ace Data Cloud 平台的账户信息。

首先,您需要在 平台令牌页面 创建一个平台令牌,如下图所示:

复制“平台令牌”,并记录为 token

配额查询

有了上述的 application_idtoken,您可以构造一个 URL 来查询剩余配额。配额查询的 API 格式如下:

以下是 CURL 请求示例代码:

curl -X GET \
  -H "accept: application/json" \
  -H "authorization: Bearer {token}" \
  "https://platform.acedata.cloud/api/v1/applications/{application_id}"

例如,如果 tokenplatform-v1-5b8fbef60bc547098034db3e9f36a623731c490abe854f72972a0a3473b4c56b,而 application_id107f8d0f-e465-4a7e-a49e-d633d26f7aa2,则命令如下:

curl -X GET \
  -H "accept: application/json" \
  -H "authorization: Bearer platform-v1-5b8fbef60bc547098034db3e9f36a623731c490abe854f72972a0a3473b4c56b" \
  "https://platform.acedata.cloud/api/v1/applications/107f8d0f-e465-4a7e-a49e-d633d26f7aa2"

请将 {application_id} 替换为实际的应用 ID,将 {token} 替换为有效的平台令牌。

该 CURL 命令将向指定的 URL 发送 GET 请求,并在请求头中包括所需的 acceptauthorization 信息。

以下是示例结果:

{
  "id": "107f8d0f-e465-4a7e-a49e-d633d26f7aa2",
  "service_id": "d87e5e99-b797-4ade-9e73-b896896b0461",
  "remaining_amount": 493.2210000000001,
  "used_amount": 21.778999999999996,
  "service": {
    ...
  },
  "user_id": "b87f67c1-b04f-4332-99a1-7a5e651331c6",
  "created_at": "2024-05-30T14:41:20.052849Z",
  "updated_at": "2024-08-16T07:51:15.603207Z",
  "tags": null,
  "expired_at": null,
  "type": "Usage",
  "metadata": null
}

在 JSON 结果中,remaining_amount 表示剩余配额。

对于其他编程语言,只需将 CURL 命令转换为相应语言格式。如果您在转换过程中遇到困难,可以使用 CURL 转换工具 进行转换。

Python 示例

import requests

url = "https://platform.acedata.cloud/api/v1/applications/{application_id}"
headers = {
    "accept": "application/json",
    "authorization": "Bearer {token}"
}

response = requests.get(url, headers=headers)
print(response.json())

Node.js 示例

import axios from "axios";

const url =
  "https://platform.acedata.cloud/api/v1/applications/{application_id}";
const headers = {
  accept: "application/json",
  authorization: "Bearer {token}",
};

axios
  .get(url, { headers })
  .then((response) => {
    console.log(response.data);
  })
  .catch((error) => {
    console.error(error);
  });

Java 示例

import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.Response;

import java.io.IOException;

public class Main {
    public static void main(String[] args) {
        OkHttpClient client = new OkHttpClient();

        String url = "https://platform.acedata.cloud/api/v1/applications/{application_id}";
        String token = "{token}";

        Request request = new Request.Builder()
                .url(url)
                .addHeader("accept", "application/json")
                .addHeader("authorization", "Bearer " + token)
                .build();

        try {
            Response response = client.newCall(request).execute();
            String responseData = response.body().string();
            System.out.println(responseData);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

PHP 示例

<?php

$url = 'https://platform.acedata.cloud/api/v1/applications/{application_id}';
$token = '{token}';

$headers = array(
    'accept: application/json',
    'authorization: Bearer ' . $token
);

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$response = curl_exec($ch);

curl_close($ch);

echo $response;
?>

总结

通过以上步骤,您可以便捷地集成 Ace Data Cloud 平台的剩余配额查询接口,确保您的应用在使用 API 时不会因配额不足而影响业务运营。希望本文能对您有所帮助!

技术标签:#AceDataCloud #API #配额查询 #开发者工具 #编程示例