> For the complete documentation index, see [llms.txt](https://docs.flaunch.gg/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.flaunch.gg/support/token-images.md).

# Token Images

When building on Flaunch, use the Flaunch image flow first.

The recommended paths are:

* API path: Upload a `base64Image` to the Flaunch image endpoint, then use the returned `ipfsHash` as `imageIpfs`
* SDK path: Pass `metadata.base64Image` into `flaunchIPFS(...)` and let the SDK handle the IPFS flow

This keeps the launch flow aligned with the Flaunch tools and avoids extra manual metadata work.

## API Path

The Web2 API expects images in two steps:

1. Send `base64Image` to `POST /api/v1/upload-image`
2. Use the returned `ipfsHash` as `imageIpfs` when calling `launch-memecoin`

The image upload endpoint validates the image and stores it on IPFS before launch.

{% content-ref url="<https://github.com/flayerlabs/flaunch-gitbook/tree/main/developer-resources/flaunch-memecoin-api.md>" %}
<https://github.com/flayerlabs/flaunch-gitbook/tree/main/developer-resources/flaunch-memecoin-api.md>
{% endcontent-ref %}

## SDK Path

The SDK path is simpler when you are already building in a TypeScript app or script.

Pass the image as `metadata.base64Image` inside `flaunchIPFS(...)`.

The SDK then uploads:

1. The image to IPFS
2. The token metadata JSON to IPFS
3. The launch transaction with the generated metadata URI

This is the recommended path when the app needs direct wallet-controlled launch behavior.

## What To Pass

Use one of these formats:

* A full data URL like `data:image/png;base64,...`
* A base64 string produced from a user-uploaded file

Recommended image formats:

* `jpg`
* `png`
* `webp`
* `gif`

## If You Already Have IPFS

If you already have an IPFS-hosted image, you can still use it.

For the API path, pass the image hash as `imageIpfs`.

For lower-level onchain flows, you can work from a prepared metadata URI, but the preferred developer path is still to use the Flaunch API or SDK upload flow first.

## Recommended Build Order

1. Start with the Flaunch upload flow
2. Confirm the returned IPFS hash or metadata URI
3. Launch the token

## Related Guides

{% content-ref url="/pages/iJzmKifT7hmngVRQt0Xn" %}
[SDK Guide: Flaunching a Coin](/guides/flaunching-a-coin.md)
{% endcontent-ref %}

{% content-ref url="/pages/4aYVzbqaNoJvLLMowjft" %}
[AI Skills Quick Start](/a.i.-skills/vibe-guide.md)
{% endcontent-ref %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.flaunch.gg/support/token-images.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
