> For the complete documentation index, see [llms.txt](https://docs.autocontentapi.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.autocontentapi.com/code-samples/quizzes/nodejs/set-difficulty-and-language.md).

# Set Difficulty and Language

This snippet follows the [difficulty and language recipe](/quick-start/quizzes/set-difficulty-and-language.md) with `outputType: "quiz"`.

```javascript
// Requires Node.js 18+ for the built-in fetch API.
const token = process.env.AUTOCONTENT_TOKEN ?? "YOUR_API_TOKEN";
const endpoint = "https://api.autocontentapi.com/content/Create";

const payload = {
  outputType: "quiz",
  topic: "Cybersecurity basics for remote teams",
  text: "Create 6 questions with a mix of recall and applied scenarios.",
  quizDifficulty: "hard",
  language: "español"
};

async function run() {
  const response = await fetch(endpoint, {
    method: "POST",
    headers: {
      Authorization: `Bearer ${token}`,
      "Content-Type": "application/json"
    },
    body: JSON.stringify(payload)
  });

  if (!response.ok) {
    const errorText = await response.text();
    throw new Error(`Request failed: ${response.status} ${response.statusText}\n${errorText}`);
  }

  const result = await response.json();
  console.log("Quiz request accepted:", result);
}

run().catch(error => {
  console.error(error);
  process.exit(1);
});
```

Set `YOUR_API_TOKEN` (or `AUTOCONTENT_TOKEN`) before running.
