omniyond-com Scheduler API

Schedule and manage HTTP jobs.

Operations 5

POST /v1/schedule Schedule an HTTP job #
GET /v1/jobs/{id} Get a job #
DELETE /v1/jobs/{id} Cancel a job #
POST /v1/jobs/{id}/restart Restart a failed or paused job #
GET /v1/jobs/{id}/results Get a job's run results #

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/omniyond-com:omniyond-com-scheduler-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 form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

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

OpenAPI Specification

omniyond-com-scheduler-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Omniyond Com Scheduler API
  version: 1.0.0
  contact:
    name: Omniyond
    url: https://omniyond.com
  description: 'Operations tagged scheduler across 2 of this provider''s published API definitions: omniyond-com-openapi.yml, omniyond.yaml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://omniyond.com
  description: Production
security:
- ApiKeyAuth: []
- x402: []
tags:
- name: Scheduler
  description: Schedule and manage HTTP jobs.
paths:
  /v1/schedule:
    post:
      tags:
      - Scheduler
      operationId: scheduleJob
      summary: Schedule an HTTP job
      description: 'Schedule an HTTP request to run once (omit `schedule`) or on a recurring

        interval (`5m`, `1h`, `1d`; minimum 5 minutes, 90-day horizon). Each run

        costs $0.01, prepaid from your credit balance. With x402, the price is

        $0.01 × `maxRuns` — pass `?maxRuns=N` in the query for recurring jobs.'
      parameters:
      - name: maxRuns
        in: query
        required: false
        description: x402 only — number of recurring runs to prepay. Sets the x402 price ($0.01 × maxRuns).
        schema:
          type: integer
          minimum: 1
          maximum: 1000
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ScheduleInput'
      responses:
        '201':
          description: Job scheduled.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ScheduledJob'
        '400':
          $ref: '#/components/responses/ValidationError'
        '402':
          $ref: '#/components/responses/PaymentRequired'
        '429':
          $ref: '#/components/responses/RateLimited'
    servers:
    - url: https://omniyond.com
      description: Production
  /v1/jobs/{id}:
    get:
      tags:
      - Scheduler
      operationId: getJob
      summary: Get a job
      security:
      - ApiKeyAuth: []
      parameters:
      - $ref: '#/components/parameters/JobId'
      responses:
        '200':
          description: Job detail with recent runs.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JobDetail'
        '404':
          $ref: '#/components/responses/NotFound'
    delete:
      tags:
      - Scheduler
      operationId: cancelJob
      summary: Cancel a job
      description: Cancels the job and refunds its unused prepaid balance back to your credits.
      security:
      - ApiKeyAuth: []
      parameters:
      - $ref: '#/components/parameters/JobId'
      responses:
        '200':
          description: Job cancelled.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CancelResult'
        '404':
          $ref: '#/components/responses/NotFound'
    servers:
    - url: https://omniyond.com
      description: Production
  /v1/jobs/{id}/restart:
    post:
      tags:
      - Scheduler
      operationId: restartJob
      summary: Restart a failed or paused job
      description: 'Puts a failed or paused job back on its schedule, using the prepaid balance

        it still holds. It runs within a minute, then continues on its interval.

        There''s no new charge. Returns 400 if the job is not failed or paused, or has no

        prepaid balance left (schedule a new job instead).'
      security:
      - ApiKeyAuth: []
      parameters:
      - $ref: '#/components/parameters/JobId'
      responses:
        '200':
          description: Job restarted.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestartResult'
        '400':
          $ref: '#/components/responses/ValidationError'
        '404':
          $ref: '#/components/responses/NotFound'
    servers:
    - url: https://omniyond.com
      description: Production
  /v1/jobs/{id}/results:
    get:
      tags:
      - Scheduler
      operationId: getJobResults
      summary: Get a job's run results
      security:
      - ApiKeyAuth: []
      parameters:
      - $ref: '#/components/parameters/JobId'
      - name: body
        in: query
        required: false
        description: Set to `1` or `true` to include each run's stored response body.
        schema:
          type: string
          enum:
          - '1'
          - 'true'
      responses:
        '200':
          description: Run results.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JobResults'
        '404':
          $ref: '#/components/responses/NotFound'
    servers:
    - url: https://omniyond.com
      description: Production
components:
  responses:
    ValidationError:
      description: Invalid request (bad schedule, SSRF-blocked URL, missing callbackUrl, etc.). A body that fails the schema gets this before any charge or 402 challenge, with `statusMessage` "Validation Error" and the issues in `message`.
      content:
        application/json:
          schema:
            type: object
            properties:
              statusMessage:
                type: string
              message:
                type: string
    PaymentRequired:
      description: 'Payment required. For x402, the payment requirements are in the

        `payment-required` response header and the body links the docs. For an

        API key with insufficient credits, the body is an InsufficientCredits

        object. Either way the body links this spec and /llms.txt.

        '
      headers:
        payment-required:
          description: Base64-encoded x402 PaymentRequirements (x402 path only).
          schema:
            type: string
      content:
        application/json:
          schema:
            oneOf:
            - $ref: '#/components/schemas/DiscoveryLinks'
            - $ref: '#/components/schemas/InsufficientCredits'
    NotFound:
      description: Job not found, or not owned by this API key.
      content:
        application/json:
          schema:
            type: object
            properties:
              statusMessage:
                type: string
                example: Job not found
    RateLimited:
      description: Too many requests. Retry after the `Retry-After` header.
      headers:
        Retry-After:
          schema:
            type: integer
      content:
        application/json:
          schema:
            type: object
            properties:
              statusMessage:
                type: string
              data:
                type: object
                properties:
                  retryAfterSeconds:
                    type: integer
  schemas:
    CancelResult:
      type: object
      properties:
        id:
          type: string
        status:
          type: string
          example: cancelled
        refundedMicrousd:
          type: integer
    JobResults:
      type: object
      properties:
        jobId:
          type: string
        runs:
          type: array
          items:
            $ref: '#/components/schemas/JobRun'
    RestartResult:
      type: object
      properties:
        id:
          type: string
        status:
          type: string
          example: scheduled
        nextRunAt:
          type: string
          format: date-time
        balanceMicrousd:
          type: integer
        runsRemaining:
          type: integer
    JobDetail:
      type: object
      properties:
        id:
          type: string
        status:
          type: string
          enum:
          - scheduled
          - queued
          - running
          - paused
          - completed
          - cancelled
          - failed
        kind:
          type: string
          enum:
          - http
          - x402
        targetUrl:
          type: string
        method:
          type: string
        schedule:
          type: string
          nullable: true
        nextRunAt:
          type: string
          format: date-time
          nullable: true
        deliveryMode:
          type: string
          enum:
          - store
          - callback
          - both
        callbackUrl:
          type: string
          nullable: true
        balanceMicrousd:
          type: integer
        feeMicrousd:
          type: integer
        maxDownstreamMicrousd:
          type: integer
          description: Per-run downstream payment cap in microUSD (0 for http jobs).
        createdAt:
          type: string
          format: date-time
        updatedAt:
          type: string
          format: date-time
        recentRuns:
          type: array
          items:
            $ref: '#/components/schemas/JobRun'
    PaymentReceipt:
      type: object
      description: Present on x402-paid responses.
      properties:
        payer:
          type: string
        transaction:
          type: string
        network:
          type: string
    ScheduleInput:
      type: object
      required:
      - url
      properties:
        url:
          type: string
          format: uri
          description: URL to call. http/https only, public hosts only (SSRF-protected).
        method:
          type: string
          enum:
          - GET
          - POST
          - PUT
          - PATCH
          - DELETE
          - HEAD
          default: POST
        headers:
          type: object
          additionalProperties:
            type: string
          description: Optional request headers.
        body:
          type: string
          maxLength: 100000
          description: Optional request body.
        schedule:
          type: string
          description: 'Recurrence interval: 5m, 1h, 1d. Omit for a one-shot job. Minimum 5m, 90-day horizon.'
          examples:
          - 1h
        maxRuns:
          type: integer
          minimum: 1
          maximum: 1000
          description: For recurring jobs — how many runs to prepay (each costs $0.01).
        runAt:
          type: string
          format: date-time
          description: ISO timestamp for the first run. Defaults to now.
        delivery:
          type: string
          enum:
          - store
          - callback
          - both
          default: store
          description: Where results go — stored for retrieval, POSTed to callbackUrl, or both.
        callbackUrl:
          type: string
          format: uri
          description: URL to POST each run result to. Required when delivery is callback or both.
        pay:
          type: boolean
          default: false
          description: When true, the scheduler pays the target endpoint via x402 (USDC on Base) on each run from Omniyond's operator wallet, up to maxPriceUsd. Lets an agent schedule a job that itself buys a paid API. Requires an API key with prepaid credits (rejected on x402 jobs).
        maxPriceUsd:
          type: number
          minimum: 0
          maximum: 1
          description: Max USD to pay the downstream API per run when pay=true. Defaults to $0.10, hard-capped at $1.00. Reserved per run from your credits; unspent reservation is refunded on cancel.
    DiscoveryLinks:
      type: object
      properties:
        docs:
          type: string
          format: uri
          example: https://omniyond.com/llms.txt
        openapi:
          type: string
          format: uri
          example: https://omniyond.com/openapi.yaml
    InsufficientCredits:
      allOf:
      - $ref: '#/components/schemas/DiscoveryLinks'
      - type: object
        properties:
          error:
            type: string
            example: insufficient_credits
          message:
            type: string
          requiredMicrousd:
            type: integer
          balanceMicrousd:
            type: integer
          buyCreditsUrl:
            type: string
            format: uri
    JobRun:
      type: object
      properties:
        id:
          type: string
        attempt:
          type: integer
        status:
          type: string
          enum:
          - running
          - success
          - error
        responseCode:
          type: integer
          nullable: true
        paidMicrousd:
          type: integer
          nullable: true
          description: Amount paid to the downstream API on this run, in microUSD (x402 jobs only).
        txHash:
          type: string
          nullable: true
          description: Settlement transaction hash for the downstream payment (x402 jobs only).
        startedAt:
          type: string
          format: date-time
        finishedAt:
          type: string
          format: date-time
          nullable: true
        error:
          type: string
          nullable: true
        resultR2Key:
          type: string
          nullable: true
          description: Storage key of the run's response body (results endpoint only).
        body:
          type: string
          description: The run's stored response body (only when ?body=1).
    ScheduledJob:
      type: object
      properties:
        id:
          type: string
        status:
          type: string
          example: scheduled
        kind:
          type: string
          enum:
          - http
          - x402
        nextRunAt:
          type: string
          format: date-time
          nullable: true
        schedule:
          type: string
          nullable: true
        maxRuns:
          type: integer
        balanceMicrousd:
          type: integer
          description: Prepaid balance for this job, in microUSD.
        feePerRunMicrousd:
          type: integer
          example: 10000
        maxDownstreamMicrousd:
          type: integer
          description: Per-run downstream payment cap in microUSD (0 for http jobs).
        payment:
          $ref: '#/components/schemas/PaymentReceipt'
  parameters:
    JobId:
      name: id
      in: path
      required: true
      description: Job id returned by POST /v1/schedule.
      schema:
        type: string
  securitySchemes:
    ApiKeyAuth:
      type: http
      scheme: bearer
      bearerFormat: omni_*
      description: Prepaid-credit API key. Create one in the Omniyond dashboard.
    x402:
      type: apiKey
      in: header
      name: X-PAYMENT
      description: 'x402 pay-per-call. Omit the API key to receive a `402` with payment

        requirements in the `payment-required` response header, then pay and

        resend with the `X-PAYMENT` header. USDC on Base.

        '
x-refined-from:
- omniyond-com-openapi.yml
- omniyond.yaml