Skip to main content
The API and Relay were redesigned so every endpoint follows the same rules: resources in the path, verbs as HTTP methods, one error shape, one pagination scheme, and one shape for each object wherever it appears. This page maps every old path, field and header to its replacement. If you only upload with ShareX, XerahS or iShare, read What did not change first: your config most likely keeps working as is.
The official SDKs follow this redesign in version 3.0. See SDKs; each SDK page ends with a section on migrating from 2.x.

What did not change

These are frozen so installed uploader configs keep working:
  • POST /upload, with the file in the multipart file field.
  • The api-key, post-privacy and include-metadata headers. post-type and priority also work as before.
  • A missing post-privacy header still uploads as private.
  • A successful upload still returns 200.
  • The top-level url in the upload response is still the direct file URL.
  • post.url is still the share page (https://snipp.gg/p/{code}, or https://{domain}/{code} with a link domain), and post.code is still the share code.
So .sxcu and .iscu configs that read {json:url}, {json:post.url} or {json:post.code} need no changes. If you added a custom error field that reads {json:error}, change it to {json:error.message}, because error is now an object.

Global changes

API paths

Relay paths

All of the API changes above apply to Relay too. Relay also replaced these:

Upload responses

The same applies to POST /posts/{code}/files, which now returns {post, failed?}.

Posts

The post object is now the same everywhere: uploads, GET /posts, GET /posts/{code}, GET /users/{id}/posts, GET /gifs and GET /discover. New on every post: like_count, comment_count, liked and team_id. On team posts like_count and liked are null. moderated and restricted are only present for the post’s owner.

Users

Every profile now has follower_count, following_count, following and blocking, on the API as well as Relay. Wherever a user appears inside another object (post authors, comment authors, notification actors, follower lists, blocks, access lists) it is the same reference: {id, username, nickname, avatar, verified, plan}.

Relay responses

Other responses