Apache Flink Jars API

The Jars API from Apache Flink — 5 operation(s) for jars.

Operations 5

GET /jars Apache Flink List Jars #
POST /jars/upload Apache Flink Create Jars Upload #
DELETE /jars/{jarid} Apache Flink Delete Jars #
POST /jars/{jarid}/plan Apache Flink Create Jars Plan #
POST /jars/{jarid}/run Apache Flink Create Jars Run #

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/apache-flink-jars-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

apache-flink-jars-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Flink JobManager REST Cluster Jars API
  contact:
    email: user@flink.apache.org
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0.html
  version: v1/2.0-SNAPSHOT
servers:
- url: http://localhost:8081
  description: Base URL declared by the provider in apis.yml (roadmap#122).
tags:
- name: Jars
paths:
  /jars:
    get:
      description: Returns a list of all jars previously uploaded via '/jars/upload'.
      operationId: getJarList
      responses:
        '200':
          description: The request was successful.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JarListInfo'
      summary: Apache Flink List Jars
      tags:
      - Jars
  /jars/upload:
    post:
      description: 'Uploads a jar to the cluster. The jar must be sent as multi-part data. Make sure that the "Content-Type" header is set to "application/x-java-archive", as some http libraries do not add the header by default.

        Using ''curl'' you can upload a jar via ''curl -X POST -H "Expect:" -F "jarfile=@path/to/flink-job.jar" http://hostname:port/jars/upload''.'
      operationId: uploadJar
      requestBody:
        content:
          application/x-java-archive:
            schema:
              type: string
              format: binary
        required: true
      responses:
        '200':
          description: The request was successful.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JarUploadResponseBody'
      summary: Apache Flink Create Jars Upload
      tags:
      - Jars
  /jars/{jarid}:
    delete:
      description: Deletes a jar previously uploaded via '/jars/upload'.
      operationId: deleteJar
      parameters:
      - name: jarid
        in: path
        description: String value that identifies a jar. When uploading the jar a path is returned, where the filename is the ID. This value is equivalent to the `id` field in the list of uploaded jars (/jars).
        required: true
        schema:
          type: string
      responses:
        '200':
          description: The request was successful.
      summary: Apache Flink Delete Jars
      tags:
      - Jars
  /jars/{jarid}/plan:
    post:
      description: Returns the dataflow plan of a job contained in a jar previously uploaded via '/jars/upload'. Program arguments can be passed both via the JSON request (recommended) or query parameters.
      operationId: generatePlanFromJar
      parameters:
      - name: jarid
        in: path
        description: String value that identifies a jar. When uploading the jar a path is returned, where the filename is the ID. This value is equivalent to the `id` field in the list of uploaded jars (/jars).
        required: true
        schema:
          type: string
      - name: programArg
        in: query
        description: Comma-separated list of program arguments.
        required: false
        style: form
        schema:
          type: string
      - name: entry-class
        in: query
        description: String value that specifies the fully qualified name of the entry point class. Overrides the class defined in the jar file manifest.
        required: false
        style: form
        schema:
          type: string
      - name: parallelism
        in: query
        description: Positive integer value that specifies the desired parallelism for the job.
        required: false
        style: form
        schema:
          type: integer
          format: int32
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/JarPlanRequestBody'
      responses:
        '200':
          description: The request was successful.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JobPlanInfo'
      summary: Apache Flink Create Jars Plan
      tags:
      - Jars
  /jars/{jarid}/run:
    post:
      description: Submits a job by running a jar previously uploaded via '/jars/upload'. Program arguments can be passed both via the JSON request (recommended) or query parameters.
      operationId: submitJobFromJar
      parameters:
      - name: jarid
        in: path
        description: String value that identifies a jar. When uploading the jar a path is returned, where the filename is the ID. This value is equivalent to the `id` field in the list of uploaded jars (/jars).
        required: true
        schema:
          type: string
      - name: allowNonRestoredState
        in: query
        description: Boolean value that specifies whether the job submission should be rejected if the savepoint contains state that cannot be mapped back to the job.
        required: false
        style: form
        schema:
          type: boolean
      - name: savepointPath
        in: query
        description: String value that specifies the path of the savepoint to restore the job from.
        required: false
        style: form
        schema:
          type: string
      - name: programArg
        in: query
        description: Comma-separated list of program arguments.
        required: false
        style: form
        schema:
          type: string
      - name: entry-class
        in: query
        description: String value that specifies the fully qualified name of the entry point class. Overrides the class defined in the jar file manifest.
        required: false
        style: form
        schema:
          type: string
      - name: parallelism
        in: query
        description: Positive integer value that specifies the desired parallelism for the job.
        required: false
        style: form
        schema:
          type: integer
          format: int32
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/JarRunRequestBody'
      responses:
        '200':
          description: The request was successful.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JarRunResponseBody'
      summary: Apache Flink Create Jars Run
      tags:
      - Jars
components:
  schemas:
    JarFileInfo:
      type: object
      properties:
        entry:
          type: array
          items:
            $ref: '#/components/schemas/JarEntryInfo'
        id:
          type: string
        name:
          type: string
        uploaded:
          type: integer
          format: int64
    JarListInfo:
      type: object
      properties:
        address:
          type: string
        files:
          type: array
          items:
            $ref: '#/components/schemas/JarFileInfo'
    JarEntryInfo:
      type: object
      properties:
        description:
          type: string
        name:
          type: string
    JarRunResponseBody:
      type: object
      properties:
        jobid:
          $ref: '#/components/schemas/JobID'
    JobPlanInfo:
      type: object
      properties:
        plan:
          $ref: '#/components/schemas/RawJson'
    JarPlanRequestBody:
      type: object
      properties:
        entryClass:
          type: string
        flinkConfiguration:
          type: object
          additionalProperties:
            type: string
        jobId:
          $ref: '#/components/schemas/JobID'
        parallelism:
          type: integer
          format: int32
        programArgsList:
          type: array
          items:
            type: string
    JarUploadResponseBody:
      type: object
      properties:
        filename:
          type: string
        status:
          $ref: '#/components/schemas/UploadStatus'
    UploadStatus:
      type: string
      enum:
      - success
    JobID:
      pattern: '[0-9a-f]{32}'
      type: string
    JarRunRequestBody:
      type: object
      properties:
        allowNonRestoredState:
          type: boolean
        claimMode:
          $ref: '#/components/schemas/RecoveryClaimMode'
        entryClass:
          type: string
        flinkConfiguration:
          type: object
          additionalProperties:
            type: string
        jobId:
          $ref: '#/components/schemas/JobID'
        parallelism:
          type: integer
          format: int32
        programArgsList:
          type: array
          items:
            type: string
        restoreMode:
          $ref: '#/components/schemas/RecoveryClaimMode'
        savepointPath:
          type: string
    RawJson:
      type: object
    RecoveryClaimMode:
      type: string
      enum:
      - CLAIM
      - NO_CLAIM
      - LEGACY