> ## Documentation Index
> Fetch the complete documentation index at: https://sudomock.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

> ## Agent Instructions
> The base URL is https://api.sudomock.com.
> Authenticate every request with the x-api-key header. Keys begin with sm_.
> A render returns the finished image at data.print_files[0].export_path. A request sent with is_async true returns a job_id to poll at GET /api/v1/jobs/{job_id}.
> Prefer the official SDKs over hand-written HTTP calls: npm install sudomock for Node, pip install sudomock for Python.

# What you can do in the dashboard

> The seven areas of the SudoMock dashboard.

Everything the API does has a face in the dashboard, and a few things live
only there: uploading a font, verifying a domain, reading the delivery log of
a webhook, styling the embedded editor. The pages in this section walk the
left rail one item at a time.

## The dashboard

The dashboard is the browser side of your SudoMock account. You reach it by
signing in at [sudomock.com](https://sudomock.com/login), and there is nothing
to install and no second workspace to create first. The left rail carries the
areas you work in, and the screen that spends credits shows the balance beside
what the job in front of you will cost.

The rail runs in the order the work usually runs. The first three items make
things: a mockup, the library it lands in, the fonts its text layers ask for.
The next three put those things in front of somebody else: a webhook that
reports a finished render, a domain the images are served from, the editor
your buyers open. The last one hands out the keys that let code do the same
work from outside. Settings, under Organization, decides who is in the shop
and what each person may touch.

A new account starts on trial credits. Creating, saving and rendering all work
straight away, so you can upload a Photoshop file and look at a finished image
before you decide anything about billing.

<img src="https://mintcdn.com/sudo-mock/hsHwNhBWQfvmxJvG/images/dashboard/introduction.png?fit=max&auto=format&n=hsHwNhBWQfvmxJvG&q=85&s=c751be4ecd9647064a040418ae700136" alt="The dashboard with the left rail open, naming the seven areas and the credit balance." width="2880" height="1800" data-path="images/dashboard/introduction.png" />

<Info>
  Webhooks, custom domains and Studio open once the account is on a paid plan.
  Trial renders carry a watermark, and a render above the trial width ceiling
  answers with [`OUTPUT_RESOLUTION_LIMIT`](/docs/errors) rather than a quietly
  smaller image.
</Info>

## Dashboard features

With the dashboard you can:

* [Create a mockup in the browser](/docs/dashboard/create) from a Photoshop file, a
  product photo or a generated image, and save it as a template you render
  again later.
* [Find, rename and delete what you saved](/docs/dashboard/mockups) in the library,
  searching by name or by UUID, and upload several files in one go.
* [Upload the typefaces your text layers need](/docs/dashboard/fonts) and reuse one
  catalogue across every template in the account.
* [Register webhook endpoints](/docs/dashboard/webhooks) and read every delivery
  attempt, then replay the ones that failed.
* [Serve rendered images from a domain you own](/docs/dashboard/custom-domains),
  choose a default and bind that domain to a single key.
* [Brand and constrain the editor your buyers see](/docs/dashboard/studio), then
  test the result before you embed it in a storefront.
* [Issue keys, watch what each one does and revoke what leaked](/docs/dashboard/api-keys)
  on the API keys page.
* [Invite your shop and pick each person's role](/docs/dashboard/members), so
  everyone works against the same balance and the same keys.
* Read your plan, your credit balance and your invoices on the
  [Billing](https://sudomock.com/dashboard/billing) page.

## Quickstart

If you would rather start from a request than from a screen, the
[Quickstart](/docs/quickstart) uploads a PSD and renders it in two calls. The key it
asks for comes from the [API keys](/docs/dashboard/api-keys) page and travels in the
`x-api-key` header, which [Authentication](/docs/authentication) covers in full.

If you already have a template, skip ahead: copy its UUID from the
[library](/docs/dashboard/mockups) and send it straight to the
[render endpoint](/docs/api-reference/psd-mockups/render-a-psd-mockup).

## Choose your infrastructure

One account answers from every surface, so pick the one that sits closest to
the work in front of you:

* [SDKs](/docs/sdks): render from Node or Python with a typed client that sets the
  header and parses the response for you.
* [Integrations](/docs/guides/introduction): drive a render from n8n, Make, Shopify,
  WooCommerce, Zapier, Airtable, Google Sheets or Adalo.
* [API](/docs/api-reference/introduction): call the endpoints directly over HTTP
  from any language.
* [Agents](/docs/connect-an-agent): point an MCP client at the remote server and
  render from inside a session.
* [Rendering examples](/docs/render-with-nodejs): copy a working handler for the
  framework you already run.

Mixing them is normal. Plenty of accounts prepare a template in the browser,
render it from a workflow builder while the shop is small, and move the same
call into their own backend once the volume is worth it.

## Manage your account from either side

The dashboard and the API read one account, one credit balance and one set of
templates. A mockup uploaded in the browser is renderable over HTTP a second
later with the same UUID, and a mockup uploaded over HTTP appears in the
library. Nothing needs to be synchronised or re-registered, and everyone you
invite sees the same library and spends from the same balance.

Most of what the rail does has an endpoint behind it, so a job you start by
hand can be handed to code later without changing accounts. You can
[list the mockups you saved](/docs/api-reference/psd-mockups/retrieve-a-list-of-psd-mockups),
[render one](/docs/api-reference/psd-mockups/render-a-psd-mockup),
[upload a font](/docs/api-reference/fonts/create-a-new-font),
[register a webhook endpoint](/docs/api-reference/webhook-endpoints/create-a-new-webhook-endpoint),
[read its deliveries](/docs/api-reference/webhook-deliveries/retrieve-a-list-of-deliveries),
[open a Studio session](/docs/api-reference/studio/create-a-new-studio-session) and
[read the account behind the credit counter](/docs/api-reference/account/retrieve-the-current-account).

Three jobs are done in the browser and stay there: verifying a custom domain,
inviting somebody and setting their role, and everything on the Billing page.
Each one changes what the whole account is allowed to do, so it belongs on a
screen a person signed in to.

## Related guides

<CardGroup cols={2}>
  <Card title="Authentication" icon="key" href="/docs/authentication" />

  <Card title="Prepare a PSD" icon="layers" href="/docs/psd-mockups/preparing-a-psd" />

  <Card title="Photo mockups" icon="camera" href="/docs/photo-mockups/overview" />

  <Card title="Text layers" icon="type" href="/docs/text/text-layers" />

  <Card title="Webhooks" icon="webhook" href="/docs/webhooks/overview" />

  <Card title="Connect an agent" icon="bot" href="/docs/connect-an-agent" />

  <Card title="SDKs" icon="code" href="/docs/sdks" />

  <Card title="API reference" icon="terminal" href="/docs/api-reference/introduction" />
</CardGroup>
