Skip to main content
POST
/
serve
/
api
/
v1
/
upload_img
Upload Image from File
curl --request POST \
  --url https://api.memories.ai/serve/api/v1/upload_img \
  --header 'Authorization: <api-key>' \
  --header 'Content-Type: multipart/form-data' \
  --form 'files=<string>' \
  --form unique_id=default \
  --form 'datetime_taken=2025-09-07 22:52:00' \
  --form 'camera_model=Canon EOS 5D' \
  --form latitude=39.9042 \
  --form longitude=116.4074 \
  --form 'tags[0]=test1' \
  --form 'tags[1]=test2' \
  --form files.items='@example-file'
{
  "code": "0000",
  "msg": "success",
  "data": {},
  "success": true,
  "failed": false
}

Prerequisites

  • You have created a memories.ai API key.
  • Formats: JPEG, PNG, or WebP.
  • File size: Within platform limits.

Host URL

https://api.memories.ai

Endpoint

POST /serve/api/v1/upload_img
/serve/api/v1/upload_img

Request Example

import requests
import os

KEY = "<YOUR_API_KEY>"
headers = {"Authorization": "<YOUR_API_KEY>"}
files = [ 
    ("files", ("test1.jpg", open(r"test1.png", "rb"), "image/jpg")),
] 
# At most 30 images in a batch
data = { 
    "unique_id": "default", 
    "datetime_taken": "2025-09-07 22:52:00", 
    "camera_model": "Canon EOS 5D", 
    "latitude": "39.9042", 
    "longitude": "116.4074", 
    "tags": ["test1", "test2", "test3", "test4", "test5"]
}
response = requests.post( 
    "https://api.memories.ai/serve/api/v1/upload_img", 
    headers=headers, 
    files=files, 
    data=data
)
print("Status Code:", response.status_code)
print("Response:", response.text)

Request Parameters

files
file
required
Image files (binary). Max 30 per batch.
unique_id
string
Unique ID for scope.
tags
array
List of tags.
latitude
string
Geo-coordinate latitude.
longitude
string
Geo-coordinate longitude.

Response Example

{ 
    "code": "0000", 
    "msg": "success", 
    "data": [ 
        { "id": "568102998803353601" }, 
        { "id": "568102998803353602" } 
    ]
}

Authorizations

Authorization
string
header
required

Body

multipart/form-data
files
file[]
required
unique_id
string
default:default
datetime_taken
string
Example:

"2025-09-07 22:52:00"

camera_model
string
Example:

"Canon EOS 5D"

latitude
string
Example:

"39.9042"

longitude
string
Example:

"116.4074"

tags
string[]
Example:
["test1", "test2"]

Response

200 - application/json

Successful response

code
Example:

"0000"

msg
string
Example:

"success"

data
success
boolean
Example:

true

failed
boolean
Example:

false