本地文件
Upload local file
上传本地文件。
POST
/
v2
/
team
/
file
/
upload-datasource
Upload local file
curl --request POST \
--url https://app.ai.relyt.cn/app/api/v2/team/file/upload-datasource \
--header 'Content-Type: multipart/form-data' \
--header 'x-pd-api-key: <api-key>' \
--form file='@example-file' \
--form user_id=import requests
url = "https://app.ai.relyt.cn/app/api/v2/team/file/upload-datasource"
files = { "file": ("example-file", open("example-file", "rb")) }
payload = { "user_id": "" }
headers = {"x-pd-api-key": "<api-key>"}
response = requests.post(url, data=payload, files=files, headers=headers)
print(response.text)const form = new FormData();
form.append('file', 'example-file');
form.append('user_id', '');
const options = {method: 'POST', headers: {'x-pd-api-key': '<api-key>'}};
options.body = form;
fetch('https://app.ai.relyt.cn/app/api/v2/team/file/upload-datasource', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://app.ai.relyt.cn/app/api/v2/team/file/upload-datasource",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"user_id\"\r\n\r\n\r\n-----011000010111000001101001--",
CURLOPT_HTTPHEADER => [
"Content-Type: multipart/form-data",
"x-pd-api-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://app.ai.relyt.cn/app/api/v2/team/file/upload-datasource"
payload := strings.NewReader("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"user_id\"\r\n\r\n\r\n-----011000010111000001101001--")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-pd-api-key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://app.ai.relyt.cn/app/api/v2/team/file/upload-datasource")
.header("x-pd-api-key", "<api-key>")
.body("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"user_id\"\r\n\r\n\r\n-----011000010111000001101001--")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.ai.relyt.cn/app/api/v2/team/file/upload-datasource")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-pd-api-key"] = '<api-key>'
request.body = "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"user_id\"\r\n\r\n\r\n-----011000010111000001101001--"
response = http.request(request)
puts response.read_body{
"code": 0,
"data": {
"file_object_key": "/tmp/sdgsagdsgsadgasdg.csv"
}
}支持的文件格式包括:.csv、.tsv、.md、.mdx、.json、.txt、.pdf、.pptx、.ppt、.doc、.docx、.xls 或 .xlsx。
您可以使用此接口上传本地文件,然后使用获得的
返回示例:
file_object_key 来创建数据源。
请求示例:
curl --location 'https://app.ai.relyt.cn/app/api/v2/team/file/upload-datasource' \
--header 'x-pd-api-key: <api-key>' \
--header 'x-pd-external-trace-id;' \
--header 'Cookie: Cookie_1=value; metabase.DEVICE=f3cb3dbb-ef62-4026-845e-1480431c751d' \
--form 'file=@"/Users/username/Downloads/c5168946-8f1a-4c92-a167-5e3be57745be.csv"' \
--form 'user_id="tmm-cm5ao3yoe00zm01l1u1e7p3pj"'
import requests
url = "https://app.ai.relyt.cn/app/api/v2/team/file/upload-datasource"
payload = {'user_id': 'tmm-cm5ao3yoe00zm01l1u1e7p3pj'}
files=[
('file',('c5168946-8f1a-4c92-a167-5e3be57745be.csv',open('/Users/jiaoqi/Downloads/c5168946-8f1a-4c92-a167-5e3be57745be.csv','rb'),'text/csv'))
]
headers = {
'x-pd-api-key': '<api-key>',
'x-pd-external-trace-id': '',
}
response = requests.request("POST", url, headers=headers, data=payload, files=files)
print(response.text)
200
{
"code": 0,
"data": {
"file_object_key": "/tmp/sdgsagdsgsadgasdg.csv"
}
}
Authorizations
Headers
您本地系统中设置的 Trace ID,至多支持 128 个字符。当请求发生错误时,可以将此 ID 提供给 Relyt AI 团队,协助进行故障排查。
Body
multipart/form-data
⌘I