---
title: "List automations"
method: GET
path: "/agents/automations"
tags: ["Agents"]
---

# List automations

`GET /agents/automations`

## Request

- Base URL: `https://api.openai.com/v1`
- URL: `https://api.openai.com/v1/agents/automations`
- Auth: HTTP bearer

Lists project-owned automations, optionally filtered by target session.

## Query parameters

- `limit` integer
- `order` 'asc' | 'desc': The order in which paginated resources are returned.
- `after` string
- `session_id` string

## Response `200`

The automations.

- object: A page of Agents API resources, with IDs for retrieving additional pages.
  - `object` 'list', required: The object type, which is always `list`.
  - `data` AutomationResource[], required: The resources returned in this page, in the requested sort order.
    - union: A saved automation and its schedule.
      - object: Fields shared by periodic and one-time automations.
        - `type` 'periodic', required: The type of the object. Always `periodic`.
        - `id` string, required: The automation ID.
        - `object` 'agent.automation', required: Always `agent.automation`.
        - `created_at` integer, required: The creation time as a Unix timestamp in seconds.
        - `name` string, required: The automation's display name.
        - `target` union, required: Saved target configuration, excluding confidential request-only values.
          - object
            - `type` 'new_session', required: The type of the object. Always `new_session`.
            - `agent_id` string, nullable, required: The saved agent reference, or null when an inline agent is configured.
            - `agent` AutomationAgentConfigResource, required: Inline agent configuration without a generated session-local identity.
              - …
            - `environment` union, required: Environment selection saved before an invocation creates its session.
              - …
            - `input` InputMessageResource2[], required: Initial input delivered to each new session.
              - …
            - `vault_ids` string[], required: Vaults made available to each new session.
            - `metadata` object, required: Metadata attached to each new session.
          - object
            - `type` 'existing_session', required: The type of the object. Always `existing_session`.
            - `session_id` string, required: The session receiving each invocation.
            - `instructions` string, required: Saved instructions delivered as an automation notification.
        - `metadata` object, required: Custom string key-value pairs attached to the automation.
        - `created_by` union, required: How the automation was created, independently of how an invocation started.
          - object
            - `type` 'developer', required: The type of the object. Always `developer`.
          - object
            - `type` 'agent', required: The type of the object. Always `agent`.
            - `session_id` string, required: The creator session, which is also the automation's target.
            - `tool_call_id` string, required: The tool call that created the automation.
        - `expression` string, required: The cron expression determining scheduled occurrences.
        - `timezone` string, required: The timezone used to interpret the expression.
        - `status` 'active' | 'paused', required
      - object: Fields shared by periodic and one-time automations.
        - `type` 'once', required: The type of the object. Always `once`.
        - `id` string, required: The automation ID.
        - `object` 'agent.automation', required: Always `agent.automation`.
        - `created_at` integer, required: The creation time as a Unix timestamp in seconds.
        - `name` string, required: The automation's display name.
        - `target` union, required: Saved target configuration, excluding confidential request-only values.
          - object
            - `type` 'new_session', required: The type of the object. Always `new_session`.
            - `agent_id` string, nullable, required: The saved agent reference, or null when an inline agent is configured.
            - `agent` AutomationAgentConfigResource, required: Inline agent configuration without a generated session-local identity.
              - …
            - `environment` union, required: Environment selection saved before an invocation creates its session.
              - …
            - `input` InputMessageResource2[], required: Initial input delivered to each new session.
              - …
            - `vault_ids` string[], required: Vaults made available to each new session.
            - `metadata` object, required: Metadata attached to each new session.
          - object
            - `type` 'existing_session', required: The type of the object. Always `existing_session`.
            - `session_id` string, required: The session receiving each invocation.
            - `instructions` string, required: Saved instructions delivered as an automation notification.
        - `metadata` object, required: Custom string key-value pairs attached to the automation.
        - `created_by` union, required: How the automation was created, independently of how an invocation started.
          - object
            - `type` 'developer', required: The type of the object. Always `developer`.
          - object
            - `type` 'agent', required: The type of the object. Always `agent`.
            - `session_id` string, required: The creator session, which is also the automation's target.
            - `tool_call_id` string, required: The tool call that created the automation.
        - `run_at` integer, required: The Unix timestamp, in seconds, of the scheduled occurrence.
        - `status` 'active' | 'paused' | 'completed', required
  - `first_id` string, nullable, required: The ID of the first resource in `data`, or `null` if the page is empty.
  - `last_id` string, nullable, required: The ID of the last resource in `data`, or `null` if the page is empty. Pass this as `after` with the same order and filters.
  - `has_more` boolean, required: Whether there are more resources to retrieve after this page.

## Other responses

- `400`: The request was invalid.
- `401`: Authentication or project context was missing.
- `403`: The API key lacks the required permission.
- `404`: The requested session or event was not found.
- `409`: The request conflicted with the current session state.
- `500`: An internal error occurred.
- `501`: Automation listing is not implemented.
- `503`: The service is temporarily unavailable.

## Changes

- **2026-10-23** `adcff4143658`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/openai/apis/openapi/changes/agents/automations/get.md)

---

[API](https://skmtc.dev/openai/apis/openapi.md) - [All operations](https://skmtc.dev/openai/apis/openapi/llms.txt) - [OpenAPI document](https://skmtc.dev/openai/apis/openapi/revisions/b7f3ab500153?raw)
