You can use this endpoint to upload files that can be used by the lookup( ) and match( ) functions.
You can upload files in CSV or JSON format. Upload files as multipart form data.
The file should be in a part named file
.
Files can be uploaded to a repository or files can be uploaded as shared files that are available in all repositories. Shared files are visible in all repositories and can be used by all users. Only root users can upload, delete and edit shared files. shared files are referenced from functions like lookup( ) and match( ), by filename preprended with /shared/
. For example /shared/myfile.csv
Replace myfile.csv
with the path to your file (where $YOUR_HUMIO_URL
is the
URL for your Humio Cloud Account.
curl https://`$YOUR_HUMIO_URL`/api/v1/repositories/$REPOSITORY_NAME/files \
-H "Authorization: Bearer $API_TOKEN" \
-F "file=@myfile.csv"
curl https://`$YOUR_HUMIO_URL`/api/v1/uploadedfiles/shared \
-H "Authorization: Bearer $API_TOKEN" \
-F "file=@myfile.csv"
The file can be deleted using:
curl -X DELETE https://`$YOUR_HUMIO_URL`/api/v1/uploadedfiles/shared/myfile.csv \
-H "Authorization: Bearer $API_TOKEN"
Whitespace gets included in the keys and values. To include the separator ","
in a value, quote using the "
character.
userid,name
1,chr
2,krab
"4","p,m"
7,mgr
In this variant, the key field does not have a name.
{
"1": { "name": "chr" },
"2": { "name": "krab" },
"4": { "name": "pmm" },
"7": { "name": "mgr" }
}
In this variant, you select which field is the “key” using the “on” parameter in “lookup”.
[
{ "userid": "1", "name": "chr" },
{ "userid": "2", "name": "krab" },
{ "userid": "4", "name": "pmm" },
{ "userid": "7", "name": "mgr" }
]