> ## 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.

# SDKs

> Official client libraries for Node and Python.

The official clients set the API key header, retry failed requests and return
typed objects. Calls are grouped by resource, so `psdMockups.list` in Node
and `psd_mockups.list` in Python return the templates on an account.

## Official SDKs

<CardGroup cols={2}>
  <Card title="Node.js" icon="github" href="https://github.com/sudomock/sudomock-node">
    github.com/sudomock/sudomock-node
  </Card>

  <Card title="Python" icon="github" href="https://github.com/sudomock/sudomock-python">
    github.com/sudomock/sudomock-python
  </Card>
</CardGroup>

## Rendering examples

<CardGroup cols={3}>
  <Card title="Node.js" icon="code" href="/docs/render-with-nodejs">
    Render from a Node service.
  </Card>

  <Card title="Next.js" icon="code" href="/docs/render-with-nextjs">
    Render from a route handler.
  </Card>

  <Card title="Express" icon="code" href="/docs/render-with-express">
    Render from one Express route.
  </Card>

  <Card title="Cloudflare Workers" icon="code" href="/docs/render-with-cloudflare-workers">
    Render from a Worker with a stored key.
  </Card>

  <Card title="Python" icon="code" href="/docs/render-with-python">
    Render from a Python script.
  </Card>

  <Card title="Django" icon="code" href="/docs/render-with-django">
    Render from a Django view.
  </Card>

  <Card title="FastAPI" icon="code" href="/docs/render-with-fastapi">
    Render from an async FastAPI route.
  </Card>

  <Card title="Flask" icon="code" href="/docs/render-with-flask">
    Render from a Flask route.
  </Card>

  <Card title="PHP" icon="code" href="/docs/render-with-php">
    Render with the curl extension.
  </Card>

  <Card title="Laravel" icon="code" href="/docs/render-with-laravel">
    Render with the Laravel Http client.
  </Card>

  <Card title="Go" icon="code" href="/docs/render-with-go">
    Render with net/http and encoding/json.
  </Card>

  <Card title="Rails" icon="code" href="/docs/render-with-rails">
    Render from a Rails controller.
  </Card>
</CardGroup>

## API reference

<CardGroup cols={2}>
  <Card title="List PSD mockups" icon="terminal" href="/docs/api-reference/psd-mockups/retrieve-a-list-of-psd-mockups">
    Page through the mockups on your account.
  </Card>

  <Card title="Render a PSD mockup" icon="terminal" href="/docs/api-reference/psd-mockups/render-a-psd-mockup">
    Put artwork in a smart object and export the image.
  </Card>
</CardGroup>

## OpenAPI

<CardGroup cols={2}>
  <Card title="OpenAPI spec" icon="file-json" href="https://assets.sudomock.com/openapi.json">
    assets.sudomock.com/openapi.json
  </Card>
</CardGroup>
