Skip to main content
PUT

Overview

In MVP scope, but separate from scoring. DCinside sends each post’s text once and its images once, when the post becomes a candidate. Images travel on this call, not on the cycle call, so a slow or missing image never delays or blocks a score.
The Upload an Image API stores one image of a post. DCinside uploads each image once, in the background, in the numbering of the v1.3 delivery: <gall_id>/<post_no>/<NN>.jpg.The current model reads only the image count and total height, which come from candidate_scores, so images do not change today’s scores. Images are kept for later model versions and for the operators’ review.
NN is the image’s position in the original body: one-based, zero-padded to at least two digits, and gaps are allowed. In v1.3, 509 of 559,329 images (0.09%) came back empty or with a 403, so a position may be missing. Say so in candidates[].images_in_post and image_positions when you send the post, and we can tell a late upload from a missing one.

Cadence

Once per image

Sending the same image again is safe.

In the background

Separate from the cycle call, so it cannot slow it down.

Request Attributes

string
required
Gallery id.
integer
required
Post number.
string
required
Position of the image in the original body, one-based, zero-padded to at least two digits. Examples: 01, 02, 10, 100.
string
required
image/jpeg.
string
Hex SHA-256 of the body. When present we verify it, and a mismatch is rejected with 400.
bytes
required
The JPEG, 1024 px on the long edge. Smaller originals are not upscaled.

Response

The response has no body. The status says what happened:

Authorizations

Authorization
string
header
required

The API key issued for the environment, sent as the whole header value. Two keys are valid during a rotation.

Headers

X-Content-SHA256
string

Hex SHA-256 of the body. When present we verify it, and a mismatch is rejected with 400.

Pattern: ^[0-9a-f]{64}$

Path Parameters

gall_id
string
required

Gallery id.

Minimum string length: 1
Example:

"example_gallery"

post_no
integer
required

Post number.

Required range: x >= 1
Example:

31900001

NN
string
required

The image's position in the original body: one-based, zero-padded to at least two digits, gaps allowed. The v1.3 layout <gall_id>/<post_no>/<NN>.jpg.

Pattern: ^\d{2,}$
Example:

"01"

Body

image/jpeg

The JPEG, 1024 px on the long edge. Smaller originals are not upscaled.

Response

Already stored with the same bytes.