Usage Cost
10 coins/call
Quick Start
Use a unified response envelope and call directly from your backend.
https://openapi.toolkk.com/v1/fund-detailcURL Example
curl --request POST \
--url 'https://openapi.toolkk.com/v1/fund-detail' \
--header 'Content-Type: application/json' \
--header 'X-API-Key: YOUR_API_KEY' \
--data '{\n "fundCode": "基金代码"\n}'Python Example
import os
import requests
url = "https://openapi.toolkk.com/v1/fund-detail"
payload = {
"fundCode": "基金代码"
}
headers = {
"Content-Type": "application/json",
"X-API-Key": os.getenv("TOOLKK_API_KEY", "YOUR_API_KEY"),
}
response = requests.request("POST", url, headers=headers, json=payload, timeout=30)
response.raise_for_status()
print(response.json())Go Example
package main
import (
"bytes"
"fmt"
"io"
"net/http"
)
func main() {
endpoint := "https://openapi.toolkk.com/v1/fund-detail"
payload := []byte("{\n \"fundCode\": \"基金代码\"\n}")
req, err := http.NewRequest("POST", endpoint, bytes.NewBuffer(payload))
if err != nil {
panic(err)
}
req.Header.Set("Content-Type", "application/json")
req.Header.Set("X-API-Key", "YOUR_API_KEY")
resp, err := http.DefaultClient.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
body, err := io.ReadAll(resp.Body)
if err != nil {
panic(err)
}
fmt.Println(string(body))
}Java Example
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class ToolkkExample {
public static void main(String[] args) throws Exception {
String payload = "{\n \"fundCode\": \"基金代码\"\n}";
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://openapi.toolkk.com/v1/fund-detail"))
.method("POST", HttpRequest.BodyPublishers.ofString(payload))
.header("Content-Type", "application/json")
.header("X-API-Key", "YOUR_API_KEY")
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
}
}PHP Example
<?php
$endpoint = 'https://openapi.toolkk.com/v1/fund-detail';
$payload = "{\n \"fundCode\": \"基金代码\"\n}";
$ch = curl_init($endpoint);
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_HTTPHEADER => [
'Content-Type: application/json',
'X-API-Key: YOUR_API_KEY',
],
CURLOPT_POSTFIELDS => $payload,
]);
$response = curl_exec($ch);
if ($response === false) {
throw new RuntimeException(curl_error($ch));
}
curl_close($ch);
echo $response;Response Example
[
{
"birthday": "",
"gmtModified": 1722464822000,
"gender": "1",
"educationLevel": "硕士",
"background": " 张璐,男,中国籍,10年证券从业经历,上海交通大学硕士研究生XXXXXXX",
"name": "张璐",
"managerId": "101014393",
"gmtCreate": 1564740005000,
"incumbent": false
}
]Examples illustrate the response structure. Actual results depend on the API response.
- Authentication
- Send X-API-Key in request headers
- Rate limit
- 60 req/min
- Timeout
- 5000 ms
Send your API Key in the X-API-Key header from your backend.
Check both HTTP status and business fields before treating a call as successful.
Use retries and backoff together with rate limits in high-frequency scenarios.
Request Fields
Send requests from your server with the key in the X-API-Key header.
Request Fields
Fields are read from the API schema. Missing descriptions and examples are marked as unspecified.
| Path | Type | Required | Description | Sample |
|---|---|---|---|---|
| fundCode | string | Yes | 基金代码 | Unspecified |
Request Example
{
"fundCode": "基金代码"
}- Authentication
- Send X-API-Key in request headers
- Rate limit
- 60 req/min
- Timeout
- 5000 ms
Response Fields
Examples illustrate the response structure. Actual results depend on the API response.
Response Fields
Fields are read from the API schema. Missing descriptions and examples are marked as unspecified.
| Path | Type | Required | Description | Sample |
|---|---|---|---|---|
| [] | object | Unspecified | Unspecified | Unspecified |
| [].birthday | string | No | 出生日期 | Unspecified |
| [].gmtModified | number | No | 更新日期 | 1722464822000 |
| [].gender | string | No | 性别:1男,2女 | 1 |
| [].educationLevel | string | No | 最高学历 | 硕士 |
| [].background | string | No | 背景介绍 | 张璐,男,中国籍,10年证券从业经历,上海交通大学硕士研究生XXXXXXX |
| [].name | string | No | 姓名 | 张璐 |
| [].managerId | string | No | 经理编号 | 101014393 |
| [].gmtCreate | number | No | 任职日期 | 1564740005000 |
| [].incumbent | boolean | No | 离职状态:在职false,离职true | false |
Response Example
[
{
"birthday": "",
"gmtModified": 1722464822000,
"gender": "1",
"educationLevel": "硕士",
"background": " 张璐,男,中国籍,10年证券从业经历,上海交通大学硕士研究生XXXXXXX",
"name": "张璐",
"managerId": "101014393",
"gmtCreate": 1564740005000,
"incumbent": false
}
]API overview
Capabilities, use cases, limitations, and frequently asked questions.
API Overview
This API provides basic fund manager data query services based on fund codes. By entering the unique code of the target fund, the system will return detailed profiles of the fund's current or past managers, including structured data such as name, gender, highest education level, professional background, start date of tenure, and current employment status.
Use Cases
- Financial Terminal Display: Display details of the fund product's management team in wealth management apps or websites.
- Investment Research Data Analysis: Quantitatively analyze fund managers' years of experience, educational background distribution, and performance correlation.
- Compliance and Risk Control Review: Quickly verify the identity background of fund managers and the validity of their current tenure.
Request and Response Details
- Request Method: POST
- Core Parameters:
fundCode(string, required), the 6-digit code of the target fund. - Response Result: JSON array, containing manager objects. Key fields include (name), (education level), (background description), (tenure timestamp), (is currently employed), etc.