Skip to main content

Managing Assets

Most of dinkem.gg is driven from your own code, but two pieces of your branding are things you upload once and then reference by ID: a watermark and an outro. You manage both on the Assets page of your dashboard, and each one hands you an ID you pass when you use it.

AssetWhat it isWhere you use itReferenced by
WatermarkA logo image composited onto the clip at render time — baked into the MP4Submitting a render jobwatermark_image_id in the request body
OutroA short video played after the clip in the embed player, on one continuous timelineEmbedding a clipoutro_id query param on the embed URL

The distinction matters: a watermark is rendered into the video file, so it travels everywhere the MP4 goes — downloads, social unfurls, third-party players. An outro lives in our player, so it only appears when the clip is shown through the embed iframe, and video_url (the raw MP4) is always the clip on its own.

Assets are managed in the dashboard, not the API

There is no partner API endpoint for uploading or listing assets. You upload them through the dashboard, copy the ID, and reference that ID from your integration. Uploading is a one-time setup step, not something you do per job.


Uploading a watermark

Go to Assets → Watermarks and upload an image.

  • Format: any raster image we can decode; a transparent PNG is strongly recommended so the clip shows through around your logo.
  • Max size: 5 MB.
  • Dimensions: we normalize the upload to an RGBA PNG and cap its longest side at 512 px (we never enlarge a smaller image). The image is treated as 1:1 at 1080p and scaled automatically for other render resolutions.

Once uploaded, the watermark appears as a card showing a preview composited over a sample frame — exactly where and how it will land in a real clip — along with its watermark_image_id. Copy that ID.

How it lands in the clip

  • Positioned in the top-left corner, with a small margin (~2% of the frame).
  • Composited at 50% opacity, so it reads as a mark rather than covering the action.
  • Baked into the render's single encode pass — there's no separate re-encode and no quality hit.

Using it

Pass the copied ID as watermark_image_id when you submit a job:

{
"demo_url": "https://cdn.example.com/matches/abc123.dem",
"steam64_id": "76561198000000000",
"round": 5,
"watermark_image_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
}

Full field reference: Submitting Render Jobs.

The ID must be a watermark your account owns. An unknown ID, another account's ID, or the ID of an outro (wrong asset type) all return a 400 at submission — the job is never queued.


Uploading an outro

Go to Assets → Outros and upload a video.

  • Format: MP4 only (H.264 video + AAC audio). We check both the file type and the file's own signature, so a mislabeled file is rejected.
  • Max size: 20 MB. The embed player buffers the whole outro up front for a seamless hand-off, so keep it a short sting.
  • Resolution: the file is stored exactly as uploaded — no transcoding. Author it to match your clips (1920×1080) so the transition is seamless.

Once uploaded, the outro appears as a card with an inline preview and its outro_id. Copy that ID.

Using it

Append the copied ID as an outro_id query param on a clip's embed URL:

<iframe src="https://dinkem.gg/clips/3fa85f64-5717-4562-b3fc-2c963f66afa6/embed?outro_id=YOUR_OUTRO_ID"
frameborder="0" allowfullscreen></iframe>

The player rolls the outro straight after the clip as one continuous timeline — the seek bar spans both and the scrubber crosses the boundary. Details and the full embed reference: Embedding Clips.

An outro_id we can't resolve is never an error — the player simply falls back to the clip on its own. That's also the default when you leave outro_id off entirely.


Deleting an asset

Each asset card has a Delete button. Deletion is immediate, and the two asset types behave differently because of when they're applied:

  • Deleting a watermark doesn't touch clips that already rendered with it — the mark is baked into those MP4s. But any new job that references the deleted watermark_image_id will fail validation with a 400. Point your integration at a different watermark first.
  • Deleting an outro means every embed still passing that outro_id quietly falls back to playing the clip alone. Existing clips are unaffected; there's nothing to re-render.

Where to go next