---
title: "POST /exact-search-by-file"
method: POST
path: "/exact-search-by-file"
tags: ["Reverse search"]
---

# POST /exact-search-by-file

`POST /exact-search-by-file`

## Response `200`

OK

- SearchResultsModel
  - `id` string, required
  - `results` SearchResultModel[], required
    - `id` string, required
    - `distance` number, float, required — A number between 0 and 1 that says something about how good of a match the image is. The distances are only useful relative to the other images in the result. You should not use this for thresholds or anything like that. It's subject to change and only meant to be displayed in a UI, like Fluffle's website does.
    - `match` 'exact' | 'probable' | 'unlikely', required — Whether the image is an exact, probable or unlikely match. Exact match means there is a very high probability of the result being an exact match. Probable match means it cannot be reliably determined whether the result is an exact match: it's either a duplicate or an alternative version of the image. Unlikely tells you that the chance of the result being a match is very low. It can however still be worth checking unlikely matches if the submitted image was cropped, for example.
    - `platform` string, required — The platform (e621, Fur Affinity, etc) on which this image is hosted.
    - `url` string, required — Link to the post, submission, etc. where this image can be viewed.
    - `isSfw` boolean, required — Whether or not the image is considered safe for work. Platforms like Twitter don't disclose this. Images from those platforms are always marked as not safe for work.
    - `thumbnail` SearchResultThumbnailModel, nullable, required — Tiny version of the scraped image hosted by Fluffle.
      - `width` integer, required — Width of the thumbnail.
      - `centerX` integer, required — Percentage the image has to shift horizontally for its content to be centered in a square. Works like the object-position CSS property.
      - `height` integer, required — Height of the thumbnail.
      - `centerY` integer, required — Percentage the image has to shift vertically for its content to be centered in a square. Works like the object-position CSS property.
      - `url` string, required — URL at which the thumbnail can be found.
    - `authors` SearchResultAuthorModel[], required — To whom credits can be given for uploading this image.
      - `id` string, required
      - `name` string, required — The interpretation of this field is somewhat dependent on the platform from which the image was scraped. For e621, it's based on the artist tags and it's therefore safe to assume this field includes the names of the artist(s) that created the artwork. For all other platforms, it's the name of user that uploaded said image, which might be the artist, a commissioner, etc.

## Other responses

- `400` — Bad Request
- `415` — Unsupported Media Type
- `422` — Unprocessable Entity
- `429` — Too Many Requests

---

[API](https://skmtc.net/fluffle/apis/fluffle-search-api.md) · [All operations](https://skmtc.net/fluffle/apis/fluffle-search-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/fluffle/fluffle-search-api/versions/a48bbb04da9b/schema)
