Skip to main content
POST
/
upload
Upload file(s)
curl --request POST \
  --url https://api.snipp.gg/upload \
  --header 'Content-Type: multipart/form-data' \
  --header 'api-key: <api-key>' \
  --form file='@example-file'
{
  "message": "Upload successful!",
  "url": "<string>",
  "file": {
    "size": 123,
    "size_formatted": "<string>",
    "mime_type": "<string>",
    "dimensions": {
      "width": 123,
      "height": 123
    }
  },
  "processing_time": 123,
  "post": {
    "code": "<string>",
    "url": "<string>",
    "postPrivacy": "public"
  }
}

Authorizations

api-key
string
header
required

Your API key from Snipp.gg

Headers

post-privacy
enum<string>
default:private

Privacy for the generated post: private (default), unlisted (accessible via link), or public (visible on Discover)

Available options:
public,
unlisted,
private
posttitle
string

Post title (max 30 characters)

Maximum string length: 30
postdescription
string

Post description (max 200 characters)

Maximum string length: 200
post-type
enum<string>
default:album

Only relevant when uploading 2+ files. album (default) groups all files into a single album post. individual creates a separate post per file.

Available options:
album,
individual

Body

multipart/form-data
file
file

1-9 image or video files. Use multiple file fields for multi-file uploads.

Response

Upload successful. Response shape depends on whether 1 or multiple files were uploaded.

Single file response

message
string
Example:

"Upload successful!"

url
string

Direct URL to the uploaded file

file
object
processing_time
integer
post
object