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

# Overview

The Intuned REST API enables you to programmatically trigger automations, manage scheduled Jobs, and handle AuthSessions.

You can call the APIs directly as REST endpoints or use our client libraries for [JavaScript](#javascript) and [Python](#python).

## Endpoints

<AccordionGroup>
  <Accordion title="Runs" icon="play">
    Execute your automation APIs on demand.

    * [Start a Run](/client-apis/api-reference/projectsruns/run-api--start) — Trigger an automation and get a Run ID
    * [Get Run result](/client-apis/api-reference/projectsruns/run-api--result) — Retrieve the result of a completed Run
  </Accordion>

  <Accordion title="Jobs" icon="clock">
    Schedule and manage batch executions of your automations.

    * [List Jobs](/client-apis/api-reference/projectsjobs/get-jobs) — Get all Jobs in a Project
    * [Create Job](/client-apis/api-reference/projectsjobs/create-job) — Create a new scheduled Job
    * [Get Job](/client-apis/api-reference/projectsjobs/get-job) — Get Job details
    * [Update Job](/client-apis/api-reference/projectsjobs/update-job) — Modify Job configuration
    * [Delete Job](/client-apis/api-reference/projectsjobs/delete-job) — Remove a Job
    * [Pause Job](/client-apis/api-reference/projectsjobs/pause-job) — Pause a running Job
    * [Resume Job](/client-apis/api-reference/projectsjobs/resume-job) — Resume a paused Job
    * [Trigger Job](/client-apis/api-reference/projectsjobs/trigger-job) — Manually trigger a Job execution
    * [List JobRuns](/client-apis/api-reference/projectsjobsruns/get-job-runs) — Get all JobRuns for a Job
    * [Get JobRun](/client-apis/api-reference/projectsjobsruns/get-job-run) — Get details of a specific JobRun
    * [Terminate JobRun](/client-apis/api-reference/projectsjobsruns/terminate-job-run) — Stop a running Job execution
  </Accordion>

  <Accordion title="AuthSessions" icon="key">
    Create and manage authentication sessions for automations that require login.

    * [List AuthSessions](/client-apis/api-reference/projectsauthsessions/get-authsessions) — Get all AuthSessions in a Project
    * [Get AuthSession](/client-apis/api-reference/projectsauthsessions/get-authsession) — Get AuthSession details
    * [Delete AuthSession](/client-apis/api-reference/projectsauthsessions/delete-authsession) — Remove an AuthSession
    * [Validate AuthSession (start)](/client-apis/api-reference/projectsauthsessionsvalidate/validate-authsession--start) — Start validation of an AuthSession
    * [Validate AuthSession (result)](/client-apis/api-reference/projectsauthsessionsvalidate/validate-authsession--result) — Get validation result
    * [Create AuthSession (start)](/client-apis/api-reference/projectsauthsessionscreate/create-authsession--start) — Start creating an AuthSession
    * [Create AuthSession (result)](/client-apis/api-reference/projectsauthsessionscreate/create-authsession--result) — Get creation result
    * [Update AuthSession (start)](/client-apis/api-reference/projectsauthsessionsupdate/update-authsession--start) — Start updating an AuthSession
    * [Update AuthSession (result)](/client-apis/api-reference/projectsauthsessionsupdate/update-authsession--result) — Get update result
  </Accordion>

  <Accordion title="Sinks" icon="database">
    Configure where Job results are delivered.

    * [Overview](/client-apis/api-reference/sinks/overview) — Learn how sinks work
    * [Webhook](/client-apis/api-reference/sinks/webhook) — Send results to a webhook URL
    * [S3](/client-apis/api-reference/sinks/s3) — Store results in Amazon S3
    * [Body](/client-apis/api-reference/sinks/body) — Include results in the API response
  </Accordion>
</AccordionGroup>

<CardGroup cols={2}>
  <Card title="OpenAPI Specification" icon="https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/openapi/openapi-plain.svg" href="https://intuned-docs-public-images.s3.us-west-2.amazonaws.com/openapi.yaml" />

  <Card title="Import into Postman" icon="https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/postman/postman-original.svg" href="https://elements.getpostman.com/view/import?apiSchemaUrl=https://intuned-docs-public-images.s3.us-west-2.amazonaws.com/openapi.yaml" />
</CardGroup>

## Prerequisites

All API requests require your workspace ID and an API key.

<CardGroup cols={2}>
  <Card title="Get your workspace ID" icon="building" href="/docs/03-how-to/manage/manage-workspace#how-to-get-your-workspace-id">
    Find your workspace ID in settings
  </Card>

  <Card title="Manage API keys" icon="key" href="/docs/03-how-to/manage/manage-api-keys">
    Create and manage API keys
  </Card>
</CardGroup>

## Client libraries

### JavaScript

Install the `@intuned/client` package:

<Tabs>
  <Tab title="npm">
    ```bash theme={null}
    npm install @intuned/client
    ```
  </Tab>

  <Tab title="yarn">
    ```bash theme={null}
    yarn add @intuned/client
    ```
  </Tab>

  <Tab title="pnpm">
    ```bash theme={null}
    pnpm add @intuned/client
    ```
  </Tab>
</Tabs>

```typescript theme={null}
import { IntunedClient } from "@intuned/client";

const client = new IntunedClient({
  apiKey: "<YOUR_API_KEY>",
  workspaceId: "<YOUR_WORKSPACE_ID>",
});

// Start an async run
const result = await client.projects.runs.start("my-project", {
  api: "scrape-products",
  parameters: { page: 1 },
});

console.log(result.runId);
```

### Python

Install the `intuned-client` package:

```bash theme={null}
pip install intuned-client
```

```python theme={null}
from intuned_client import IntunedClient
from intuned_client import models

with IntunedClient(
    workspace_id="<YOUR_WORKSPACE_ID>",
    api_key="<YOUR_API_KEY>",
) as client:
    # Start an async run
    result = client.projects.runs.start(
        project_name="my-project",
        body=models.RunStartRequestBody(
            api="scrape-products",
            parameters={"page": 1},
        ),
    )
    print(result.run_id)
```

## Rate limits

Intuned APIs are rate-limited to 60 requests per minute per URI path.

<Tip>
  If you need a higher rate limit, [contact us](/docs/06-resources/help-and-support).
</Tip>
