Getting started

Publish one image, then connect your app.

Start in the dashboard to see the whole path from upload to delivery URL without code. Then create an API key and let your app do the same.

Try your first image in the dashboard

No code, API key, or DNS setup is needed. Your workspace owns your projects; each project is a separate image library and delivery address for a website or app.

  1. Sign in and create a project. Choose a short address such as my-store; its delivery host is my-store.i2scd.net.
  2. On the Files page, choose an image and a file name such as homepage-hero, then upload it.
  3. Wait for processing to finish. Open the published image's details and copy its delivery URL into your site or app.

New projects deliver publicly: anyone with a delivery URL can view the image. Switch a project to protected delivery when every URL must be signed (see signing).

Step 1

Create an API key

In the dashboard, open your project's API keys and create one. The full key (i2s_live_…) is shown once; store it in a server-side environment variable. A key without scopes has full access to its project; an upload router needs files:write and files:read.

Step 2

Upload from your app

With JavaScript, follow the quickstart: an upload router on your server and <UploadButton> in the browser. From any other language, create an upload session with POST /v1/projects/{slug}/uploads and send the bytes where it says (see the upload flow).

Step 3

Wait for ready

The upload is sanitized and published in the background. The session's status ends at ready (or failed with an error_code). The upload router waits for you; a webhook tells your server even when the browser has gone away.

Step 4

Build delivery URLs

A published file is served at https://{project}.i2scd.net/originals/f/{file_slug}. Put a transform chain in place of originals, for example resize/800x/format/webp. The delivery guide lists every operation.

Building with an AI assistant?

Give your assistant the documentation index or the full documentation as Markdown. Use placeholders for credentials, never real API keys or signed upload URLs.

Read https://docs.img2.site/llms.txt and the relevant linked guides. Help me add image uploads to my app with img2site. Ask which framework I use, prefer the @img2site SDKs for JavaScript, keep the API key on the server, and use environment-variable placeholders for secrets. Do not assume a feature is available unless the docs say so.

Project setup

Delivery access, presets, allowed chains, watermarks, callbacks and suspension.

Read project setup

Authentication

API keys, scopes, upload tokens and which credential each call needs.

Choose a credential

Troubleshooting

If a call fails, the troubleshooting page maps symptoms to fixes.

Open troubleshooting