curl --request POST \
--url http://investigations.{region}.alienvault.cloud/investigations/v3/investigations/{investigationId}/attachments \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: multipart/form-data' \
--form filename='@example-file' \
--form private=trueimport requests
url = "http://investigations.{region}.alienvault.cloud/investigations/v3/investigations/{investigationId}/attachments"
files = { "filename": ("example-file", open("example-file", "rb")) }
payload = { "private": "true" }
headers = {"Authorization": "Bearer <token>"}
response = requests.post(url, data=payload, files=files, headers=headers)
print(response.text)const form = new FormData();
form.append('filename', '<string>');
form.append('private', 'true');
const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}};
options.body = form;
fetch('http://investigations.{region}.alienvault.cloud/investigations/v3/investigations/{investigationId}/attachments', 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 => "http://investigations.{region}.alienvault.cloud/investigations/v3/investigations/{investigationId}/attachments",
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=\"filename\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"private\"\r\n\r\ntrue\r\n-----011000010111000001101001--",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: multipart/form-data"
],
]);
$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 := "http://investigations.{region}.alienvault.cloud/investigations/v3/investigations/{investigationId}/attachments"
payload := strings.NewReader("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"filename\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"private\"\r\n\r\ntrue\r\n-----011000010111000001101001--")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("http://investigations.{region}.alienvault.cloud/investigations/v3/investigations/{investigationId}/attachments")
.header("Authorization", "Bearer <token>")
.body("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"filename\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"private\"\r\n\r\ntrue\r\n-----011000010111000001101001--")
.asString();require 'uri'
require 'net/http'
url = URI("http://investigations.{region}.alienvault.cloud/investigations/v3/investigations/{investigationId}/attachments")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request.body = "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"filename\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"private\"\r\n\r\ntrue\r\n-----011000010111000001101001--"
response = http.request(request)
puts response.read_body{
"_links": {
"self": {
"href": "<string>"
}
},
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"private": true,
"name": "<string>",
"size": 123,
"uri": "<string>",
"created": {
"by": "jsmith@example.com",
"on": "2023-11-07T05:31:56Z"
},
"lastModified": {
"by": "jsmith@example.com",
"on": "2023-11-07T05:31:56Z"
}
}{
"errorId": "<string>",
"message": "<string>",
"variables": [
"<string>"
],
"errorUrl": "<string>"
}Create an Attachment
Creates an attachment for an investigation.
curl --request POST \
--url http://investigations.{region}.alienvault.cloud/investigations/v3/investigations/{investigationId}/attachments \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: multipart/form-data' \
--form filename='@example-file' \
--form private=trueimport requests
url = "http://investigations.{region}.alienvault.cloud/investigations/v3/investigations/{investigationId}/attachments"
files = { "filename": ("example-file", open("example-file", "rb")) }
payload = { "private": "true" }
headers = {"Authorization": "Bearer <token>"}
response = requests.post(url, data=payload, files=files, headers=headers)
print(response.text)const form = new FormData();
form.append('filename', '<string>');
form.append('private', 'true');
const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}};
options.body = form;
fetch('http://investigations.{region}.alienvault.cloud/investigations/v3/investigations/{investigationId}/attachments', 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 => "http://investigations.{region}.alienvault.cloud/investigations/v3/investigations/{investigationId}/attachments",
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=\"filename\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"private\"\r\n\r\ntrue\r\n-----011000010111000001101001--",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: multipart/form-data"
],
]);
$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 := "http://investigations.{region}.alienvault.cloud/investigations/v3/investigations/{investigationId}/attachments"
payload := strings.NewReader("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"filename\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"private\"\r\n\r\ntrue\r\n-----011000010111000001101001--")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("http://investigations.{region}.alienvault.cloud/investigations/v3/investigations/{investigationId}/attachments")
.header("Authorization", "Bearer <token>")
.body("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"filename\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"private\"\r\n\r\ntrue\r\n-----011000010111000001101001--")
.asString();require 'uri'
require 'net/http'
url = URI("http://investigations.{region}.alienvault.cloud/investigations/v3/investigations/{investigationId}/attachments")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request.body = "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"filename\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"private\"\r\n\r\ntrue\r\n-----011000010111000001101001--"
response = http.request(request)
puts response.read_body{
"_links": {
"self": {
"href": "<string>"
}
},
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"private": true,
"name": "<string>",
"size": 123,
"uri": "<string>",
"created": {
"by": "jsmith@example.com",
"on": "2023-11-07T05:31:56Z"
},
"lastModified": {
"by": "jsmith@example.com",
"on": "2023-11-07T05:31:56Z"
}
}{
"errorId": "<string>",
"message": "<string>",
"variables": [
"<string>"
],
"errorUrl": "<string>"
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Path Parameters
The unique identifier of an investigation.
Body
The POST body is a muilt-part format which includes both the properties as well as the file.
File in the attachment.
Specifies the visibility of the item. This semantic is only valid when there exists a relationship between a USM Central deployment and a USM Anywhere deployment. When set to true, only the users within the same deployment, USM Central or USM Anywhere, can see the item; the users from the other deployment cannot.
Response
CREATED
Returns an attachment.
Show child attributes
Show child attributes
Unique identifier of the resource.
Specifies the visibility of the item. This semantic is only valid when there exists a relationship between a USM Central deployment and a USM Anywhere deployment. When set to true, only the users within the same deployment, USM Central or USM Anywhere, can see the item; the users from the other deployment cannot.
Name of the file.
Size of the file in bytes.
Location of the file.
Specifies when the resource was created and by whom.
Show child attributes
Show child attributes
Specifies when the latest modification was made and by whom.
Show child attributes
Show child attributes