Upload an image (url)
curl --request POST \
--url https://www.trybloom.ai/api/v1/images/uploads \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"imageUrl": "<string>",
"brandSessionId": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
'import requests
url = "https://www.trybloom.ai/api/v1/images/uploads"
payload = {
"imageUrl": "<string>",
"brandSessionId": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
headers = {
"x-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({imageUrl: '<string>', brandSessionId: '3c90c3cc-0d44-4b50-8888-8dd25736052a'})
};
fetch('https://www.trybloom.ai/api/v1/images/uploads', 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://www.trybloom.ai/api/v1/images/uploads",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'imageUrl' => '<string>',
'brandSessionId' => '3c90c3cc-0d44-4b50-8888-8dd25736052a'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-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://www.trybloom.ai/api/v1/images/uploads"
payload := strings.NewReader("{\n \"imageUrl\": \"<string>\",\n \"brandSessionId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-api-key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://www.trybloom.ai/api/v1/images/uploads")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"imageUrl\": \"<string>\",\n \"brandSessionId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://www.trybloom.ai/api/v1/images/uploads")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-api-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"imageUrl\": \"<string>\",\n \"brandSessionId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n}"
response = http.request(request)
puts response.read_body{
"data": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"imageUrl": "<string>",
"width": 123,
"height": 123,
"mimeType": "<string>"
}
}{
"defined": "<unknown>",
"code": "<unknown>",
"status": "<unknown>",
"message": "Please provide a valid, publicly reachable URL.",
"data": "<unknown>"
}{
"defined": "<unknown>",
"code": "<unknown>",
"status": "<unknown>",
"message": "Invalid or missing API credentials",
"data": "<unknown>"
}{
"defined": "<unknown>",
"code": "<unknown>",
"status": "<unknown>",
"message": "Plan upgrade required",
"data": "<unknown>"
}{
"defined": "<unknown>",
"code": "<unknown>",
"status": "<unknown>",
"message": "Brand session not found",
"data": "<unknown>"
}{
"defined": "<unknown>",
"code": "<unknown>",
"status": "<unknown>",
"message": "Rate limit exceeded",
"data": "<unknown>"
}Images
Upload an image (url)
Upload an image by URL for use as a reference or edit subject. The server downloads, validates, and stores the image. Returns the image ID for use with the generate or edit endpoints via referenceImageIds, or as an edit subject via POST /images//edit.
POST
/
images
/
uploads
Upload an image (url)
curl --request POST \
--url https://www.trybloom.ai/api/v1/images/uploads \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"imageUrl": "<string>",
"brandSessionId": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
'import requests
url = "https://www.trybloom.ai/api/v1/images/uploads"
payload = {
"imageUrl": "<string>",
"brandSessionId": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
headers = {
"x-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({imageUrl: '<string>', brandSessionId: '3c90c3cc-0d44-4b50-8888-8dd25736052a'})
};
fetch('https://www.trybloom.ai/api/v1/images/uploads', 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://www.trybloom.ai/api/v1/images/uploads",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'imageUrl' => '<string>',
'brandSessionId' => '3c90c3cc-0d44-4b50-8888-8dd25736052a'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-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://www.trybloom.ai/api/v1/images/uploads"
payload := strings.NewReader("{\n \"imageUrl\": \"<string>\",\n \"brandSessionId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-api-key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://www.trybloom.ai/api/v1/images/uploads")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"imageUrl\": \"<string>\",\n \"brandSessionId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://www.trybloom.ai/api/v1/images/uploads")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-api-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"imageUrl\": \"<string>\",\n \"brandSessionId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n}"
response = http.request(request)
puts response.read_body{
"data": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"imageUrl": "<string>",
"width": 123,
"height": 123,
"mimeType": "<string>"
}
}{
"defined": "<unknown>",
"code": "<unknown>",
"status": "<unknown>",
"message": "Please provide a valid, publicly reachable URL.",
"data": "<unknown>"
}{
"defined": "<unknown>",
"code": "<unknown>",
"status": "<unknown>",
"message": "Invalid or missing API credentials",
"data": "<unknown>"
}{
"defined": "<unknown>",
"code": "<unknown>",
"status": "<unknown>",
"message": "Plan upgrade required",
"data": "<unknown>"
}{
"defined": "<unknown>",
"code": "<unknown>",
"status": "<unknown>",
"message": "Brand session not found",
"data": "<unknown>"
}{
"defined": "<unknown>",
"code": "<unknown>",
"status": "<unknown>",
"message": "Rate limit exceeded",
"data": "<unknown>"
}Authorizations
apiKeybearer
Bloom API key, for example x-api-key: bloom_sk_....
Body
application/json
Response
OK
Show child attributes
Show child attributes
Was this page helpful?
⌘I