Treasure Data Schedule API

The Schedule API from Treasure Data — 6 operation(s) for schedule.

Operations 6

GET /api/schedules List schedules #
GET /api/schedules/{id} Get a schedule #
POST /api/schedules/{id}/backfill Backfill sessions for past schedule times #
POST /api/schedules/{id}/disable Disable scheduling of new sessions #
POST /api/schedules/{id}/enable Re-enable disabled scheduling #
POST /api/schedules/{id}/skip Skip future sessions by count or time #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/treasure-data-schedule-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

treasure-data-schedule-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  description: Treasure Workflow
  title: Treasure Workflow Schedule API
  version: '1.0'
servers:
- description: aws
  url: https://api-workflow.treasuredata.com
- description: aws-tokyo
  url: https://api-workflow.treasuredata.co.jp
- description: eu01
  url: https://api-workflow.eu01.treasuredata.com
- description: ap02
  url: https://api-workflow.ap02.treasuredata.com
- description: ap03
  url: https://api-workflow.ap03.treasuredata.com
security:
- ApiKeyAuth: []
tags:
- name: Schedule
paths:
  /api/schedules:
    get:
      operationId: getSchedules
      parameters:
      - description: List schedules whose ID is greater than this ID for pagination. Schedules are returned in ascending order by ID.
        in: query
        name: last_id
        schema:
          type: integer
          format: int32
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestScheduleCollection'
          description: default response
      summary: List schedules
      tags:
      - Schedule
  /api/schedules/{id}:
    get:
      operationId: getSchedule
      parameters:
      - description: schedule id
        in: path
        name: id
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestSchedule'
          description: default response
      summary: Get a schedule
      tags:
      - Schedule
  /api/schedules/{id}/backfill:
    post:
      operationId: backfillSchedule
      parameters:
      - description: session id
        in: path
        name: id
        required: true
        schema:
          type: integer
          format: int32
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RestScheduleBackfillRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestScheduleAttemptCollection'
          description: default response
      summary: Backfill sessions for past schedule times
      tags:
      - Schedule
  /api/schedules/{id}/disable:
    post:
      operationId: disableSchedule
      parameters:
      - description: session id
        in: path
        name: id
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestScheduleSummary'
          description: default response
      summary: Disable scheduling of new sessions
      tags:
      - Schedule
  /api/schedules/{id}/enable:
    post:
      operationId: enableSchedule
      parameters:
      - description: session id
        in: path
        name: id
        required: true
        schema:
          type: integer
          format: int32
      requestBody:
        content:
          '*/*':
            schema:
              $ref: '#/components/schemas/RestScheduleEnableRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestScheduleSummary'
          description: default response
      summary: Re-enable disabled scheduling
      tags:
      - Schedule
  /api/schedules/{id}/skip:
    post:
      operationId: skipSchedule
      parameters:
      - description: session id
        in: path
        name: id
        required: true
        schema:
          type: integer
          format: int32
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RestScheduleSkipRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestScheduleSummary'
          description: default response
      summary: Skip future sessions by count or time
      tags:
      - Schedule
components:
  schemas:
    RestScheduleEnableRequest:
      type: object
      description: Request body for enabling a schedule
      properties:
        nextTime:
          type: string
          description: time to skip
          example: '2022-12-31T23:59:00+00:00'
        skipSchedule:
          type: boolean
          default: true
          description: skip schedules
    RestScheduleSkipRequest:
      type: object
      description: Request body for skipping a schedule
      properties:
        count:
          type: integer
          format: int32
          description: skip given number of sessions. nextTime or (fromTime and count) are required.
        dryRun:
          type: boolean
          description: dry run
        fromTime:
          type: string
          format: date-time
          description: skip before the time. nextTime or (fromTime and count) are required.
          example: '2023-08-18T06:52:33Z'
        nextRunTime:
          type: string
          format: date-time
          description: next run time
          example: '2023-08-18T06:52:33Z'
        nextTime:
          type: string
          description: next time. nextTime or (fromTime and count) are required.
          example: '2022-12-31T23:59:00+00:00'
      required:
      - dryRun
    NameOptionalId:
      type: object
      description: Name and optional ID
      properties:
        id:
          type: string
          description: ID
          example: '123456'
        name:
          type: string
          description: name
          example: abcdefg
      required:
      - name
    RestSchedule:
      type: object
      description: Response of a schedule
      properties:
        disabledAt:
          type: string
          format: date-time
          description: disabled time
          example: '2023-08-18T06:52:33Z'
        id:
          type: string
          description: schedule ID
          example: '123456'
        nextRunTime:
          type: string
          format: date-time
          description: next run time
          example: '2023-08-18T06:52:33Z'
        nextScheduleTime:
          type: string
          description: next schedule time
          example: '2022-12-31T23:59:00+00:00'
        project:
          $ref: '#/components/schemas/IdAndName'
        workflow:
          $ref: '#/components/schemas/IdAndName'
      required:
      - id
      - nextRunTime
      - nextScheduleTime
      - project
      - workflow
    IdAndName:
      type: object
      description: Name and ID
      properties:
        id:
          type: string
          description: ID
          example: '123456'
        name:
          type: string
          description: name
          example: abcdefg
      required:
      - id
      - name
    RestScheduleSummary:
      type: object
      description: Response of a schedule with summary
      properties:
        createdAt:
          type: string
          format: date-time
          description: created time
          example: '2023-08-18T06:52:33Z'
        disabledAt:
          type: string
          format: date-time
          description: disabled time
          example: '2023-08-18T06:52:33Z'
        id:
          type: string
          description: schedule ID
          example: '123456'
        nextRunTime:
          type: string
          format: date-time
          description: next run time
          example: '2023-08-18T06:52:33Z'
        nextScheduleTime:
          type: string
          description: next schedule time
          example: '2022-12-31T23:59:00+00:00'
        project:
          $ref: '#/components/schemas/IdAndName'
        updatedAt:
          type: string
          format: date-time
          description: updated time
          example: '2023-08-18T06:52:33Z'
        workflow:
          $ref: '#/components/schemas/IdAndName'
      required:
      - createdAt
      - id
      - nextRunTime
      - nextScheduleTime
      - project
      - updatedAt
      - workflow
    RestScheduleBackfillRequest:
      type: object
      description: Request body for backfill
      properties:
        advanceSchedule:
          type: boolean
          description: If true, advance nextScheduleTime/nextRunTime. When fromTime is not set, uses the current schedule's nextRunTime as starting point. Requires skipExisting to be true.
        attemptName:
          type: string
          description: attempt name. Optional when skipExisting is true. Cannot be specified when advanceSchedule is true.
        count:
          type: integer
          format: int32
          description: starts given number of sessions. run all sessions if not set.
        dryRun:
          type: boolean
          description: dry run
        fromTime:
          type: string
          format: date-time
          description: backfill from
          example: '2023-08-18T06:52:33Z'
        skipExisting:
          type: boolean
          description: If true, silently skip sessions that already have attempts instead of returning 409 conflict error. Note that when count is set, skipped sessions are still counted towards the count.
      required:
      - dryRun
    RestSessionAttempt:
      type: object
      description: Response of an attempt
      properties:
        cancelRequested:
          type: boolean
          description: true if kill requested
        createdAt:
          type: string
          format: date-time
          description: created time
          example: '2023-08-18T06:52:33Z'
        done:
          type: boolean
          description: true if the attempt finished
        finishedAt:
          type: string
          format: date-time
          description: finished time
          example: '2023-08-18T06:52:33Z'
        id:
          type: string
          description: attempt ID
          example: '123456'
        index:
          type: integer
          format: int32
          description: index for multiple attempts
          example: 1
        params:
          type: object
          description: passed parameters as JSON
        poolId:
          type: string
          description: ID of the pool to which this attempt is assigned.
          example: '42'
        project:
          $ref: '#/components/schemas/IdAndName'
        retryAttemptName:
          type: string
          description: attempt name for retry
          example: retry-12345
        sessionId:
          type: string
          description: session ID
          example: '123456'
        sessionTime:
          type: string
          description: session time
          example: '2022-12-31T23:59:00+00:00'
        sessionUuid:
          type: string
          format: uuid
          description: unique UUID of this session
          example: 2b91a014-076e-4c6d-8b51-f4f91089cab2
        status:
          type: string
          description: The current status of the attempt.
          enum:
          - blocked
          - queued
          - running
          - canceling
          - success
          - error
          - killed
          example: running
        success:
          type: boolean
          description: true if the attempt finished successfully
        workflow:
          $ref: '#/components/schemas/NameOptionalId'
      required:
      - cancelRequested
      - createdAt
      - done
      - id
      - index
      - params
      - project
      - retryAttemptName
      - sessionId
      - sessionTime
      - sessionUuid
      - status
      - success
      - workflow
    RestScheduleAttemptCollection:
      type: object
      description: Response of a schedule with its attempts
      properties:
        attempts:
          type: array
          description: List of attempts
          items:
            $ref: '#/components/schemas/RestSessionAttempt'
        id:
          type: string
          description: schedule ID
          example: '123456'
        project:
          $ref: '#/components/schemas/IdAndName'
        workflow:
          $ref: '#/components/schemas/IdAndName'
      required:
      - attempts
      - id
      - project
      - workflow
    RestScheduleCollection:
      type: object
      properties:
        schedules:
          type: array
          items:
            $ref: '#/components/schemas/RestSchedule'
  securitySchemes:
    ApiKeyAuth:
      scheme: TD1
      type: http