PRADIOTAMIGHTY DEVELOPERS

MIGHTY DEVELOPERS

Java SDK

Install the Java 25 development SDK with its Maven POM to resolve runtime dependencies.

Start here →

Install the SDK

Download a package for your language and follow its installation guide. After your application is approved, use its credentials and the scopes required by each API.

Development SDK · 259 service methods · 124 account and console methods

Archives are downloadable here, not published to Maven Central, npm or PyPI. Installing a package does not grant API access. Use approved sandbox credentials with https://www.pradiota.com/sandbox/v1. These packages preserve the configured API path. Current sandbox API base URL: https://www.pradiota.com/sandbox/v1.

Read the preview manifest →

Java development SDK

Version 0.0.0-v5-development.2 · 229,190 bytes

Download Java SDK

SHA-256
40b15cedce3d09c81d5930aff4fcbb5cb8d182e6854a7f658b29dc75276c5b7c

Runtime requirements

Java 25 or newer; preview built and tested on Temurin 25.0.2+10 LTS.

Maven 3.9 or newer. Install the accompanying POM so Jackson Databind 2.20.2 and its transitive dependencies are resolved.

An approved organization grant and issued client credentials for platform.capabilities:read.

Native API base URL https://www.pradiota.com/sandbox/v1. These packages preserve the configured API path. Use approved sandbox credentials.

Install locally

curl --fail --location --output mighty-developers-staging-0.0.0-v5-development.2.jar https://www.pradiota.com/assets/developer-sdks/preview-20261007-sandbox-path/mighty-developers-staging-0.0.0-v5-development.2.jar
curl --fail --location --output mighty-developers-staging-0.0.0-v5-development.2.pom https://www.pradiota.com/assets/developer-sdks/preview-20261007-sandbox-path/mighty-developers-staging-0.0.0-v5-development.2.pom
mvn install:install-file -Dfile=mighty-developers-staging-0.0.0-v5-development.2.jar -DpomFile=mighty-developers-staging-0.0.0-v5-development.2.pom

# In your application's pom.xml, use Java 25 and this dependency.
# Maven resolves Jackson Databind 2.20.2 from the installed SDK POM.
<properties>
  <maven.compiler.release>25</maven.compiler.release>
</properties>
<dependencies>
  <dependency>
    <groupId>com.pradiota</groupId>
    <artifactId>mighty-developers-staging</artifactId>
    <version>0.0.0-v5-development.2</version>
  </dependency>
</dependencies>

Make your first request

Create client credentials after your application is approved and its sandbox license is active. Set MIGHTY_CLIENT_ID and MIGHTY_CLIENT_SECRET in your server environment. The example exchanges them for a platform.capabilities:read token, then calls GET /v1/capabilities. Java and TypeScript use platformCapabilitiesGet; Python uses platform_capabilities_get. Save the example in the file named in the install instructions, then run it locally. Check the HTTP status, request ID and response body.

First request — approved application required
import com.pradiota.developers.Client;
import com.pradiota.developers.Transport.RequestOptions;
import java.util.Map;

public class Example {
  static String required(String name) {
    String value = System.getenv(name);
    if (value == null || value.isBlank()) throw new IllegalStateException("Set " + name);
    return value;
  }

  public static void main(String[] args) throws Exception {
    var client = new Client("https://www.pradiota.com/sandbox/v1");
    var auth = client.clientCredentials(required("MIGHTY_CLIENT_ID"),
        required("MIGHTY_CLIENT_SECRET"), "platform.capabilities:read");
    if (auth.status() != 200 || !(auth.body() instanceof Map<?, ?> body)
        || !(body.get("access_token") instanceof String token) || token.isBlank()) {
      throw new IllegalStateException("Credential exchange failed: HTTP " + auth.status());
    }
    var response = client.platformCapabilitiesGet(token, RequestOptions.empty());
    System.out.println(response.status());
    System.out.println(response.requestId());
    System.out.println(response.body());
  }
}

In your Maven project, add the SDK dependency above to pom.xml. Save the example as Example.java next to that file. With Java 25 and your credential environment variables set, run these commands in Bash:

mvn dependency:build-classpath -Dmdep.outputFile=classpath.txt
java --class-path "$(cat classpath.txt)" Example.java

Fresh-install checks: 2496 service transport cases and 67 account transport cases passed, with no failures or skips. These check installation and HTTP behavior. These checks use a local API test server and do not verify requests made with your credentials.

Transport verification

All 259 service methods passed HTTP tests in each language with origin, /v1 and /sandbox/v1 addresses. These tests verify client HTTP behavior against a local API test server.

SDK source f037ad356b212fd71a003b1bc490e84f32888500
Packaged contract SHA-256 6bc41c50901daa46fc98bfa658c366033c15028be53aaa81161b1633ff7426a7

MIC SDKs

Use the MIC client to work with inputs, recipes, jobs, file downloads and processing requests. This release includes the 15 methods in the MIC API reference.

Java MIC client

Version 0.1.0-development.2 · 97,729 bytes

Download MIC SDK

Java 25 and Maven; Jackson dependencies are declared in the supplied POM. Download the archive into your project directory, then follow the installation commands.

Download the SDK POM alongside the JAR. Install both, then add the dependency below to your project’s pom.xml.

mvn install:install-file -Dfile=mic-development-0.1.0-development.2.jar -DpomFile=mic-development-0.1.0-development.2.pom
<properties>
  <maven.compiler.release>25</maven.compiler.release>
</properties>
<dependencies>
  <dependency>
    <groupId>com.pradiota</groupId>
    <artifactId>mic-development</artifactId>
    <version>0.1.0-development.2</version>
  </dependency>
</dependencies>

Check your workspace

After your application is approved for MIC and its sandbox license is active, create client credentials. Set MIGHTY_CLIENT_ID and MIGHTY_CLIENT_SECRET on your server and exchange them for a token with mic.capabilities:read.

curl --request POST "https://www.pradiota.com/sandbox/oauth/token" \
  --user "$MIGHTY_CLIENT_ID:$MIGHTY_CLIENT_SECRET" \
  --header 'Content-Type: application/x-www-form-urlencoded' \
  --data-urlencode 'grant_type=client_credentials' \
  --data-urlencode 'scope=mic.capabilities:read'

Set MIGHTY_ACCESS_TOKEN to the returned access_token. Copy your workspace’s micws_ ID from the MIC console into MIC_WORKSPACE_ID. Save the example as Example.java, then run it on your server.

The SDK method getMicPublicCapabilities calls GET /v1/mic/capabilities in all three languages. The response describes the capabilities available to your application and workspace.

import com.pradiota.mic.MicClient;
import com.pradiota.mic.Models.GetMicPublicCapabilitiesParameters;
import java.net.URI;
import java.time.Duration;

public class Example {
  static String required(String name) {
    String value = System.getenv(name);
    if (value == null || value.isBlank()) throw new IllegalStateException("Set " + name);
    return value;
  }

  public static void main(String[] args) {
    var client = new MicClient(URI.create("https://www.pradiota.com/sandbox/v1"),
        () -> required("MIGHTY_ACCESS_TOKEN"), Duration.ofSeconds(30), false);
    var response = client.getMicPublicCapabilities(
        new GetMicPublicCapabilitiesParameters(required("MIC_WORKSPACE_ID")));
    System.out.println(response.status());
    System.out.println(response.requestId());
    System.out.println(response.body());
  }
}

The run commands below use a POSIX shell and the Maven dependency above.

mvn dependency:build-classpath -Dmdep.outputFile=classpath.txt
javac --release 25 -cp "$(cat classpath.txt)" Example.java
java -cp ".:$(cat classpath.txt)" Example
Checksum & verification
614af3383fe1b6c33d2f5e137a7c83fa0f2bc9699dfe84e86327bbb425708af3

Compare the SHA-256 with your downloaded archive. The release manifest lists every artifact and its validation details.

Read DAY, MONTH or ENTITLEMENT usage with mic.usage:read. MONTH reports measured calendar-month totals; granted, remaining and resetAt are null because no monthly allowance is approved.

Read the package guide or download the Java sources.

Request every scope shown for the operation. File-backed methods also require files:read. Use a stable ASCII idempotency key of 8–160 characters for each mutation and the current If-Match value when cancelling a job.

Methods & required scopes
EndpointSDK methodRequired token scopes
GET /v1/mic/capabilitiesgetMicPublicCapabilitiesmic.capabilities:read
POST /v1/mic/inputscreateMicPublicInputfiles:read mic.inputs:write
GET /v1/mic/inputs/{inputId}getMicPublicInputfiles:read mic.inputs:read
GET /v1/mic/recipeslistMicExecutableRecipesmic.recipes:read
GET /v1/mic/recipe-versions/{versionId}getMicExecutableRecipemic.recipes:read
POST /v1/mic/jobscreateMicJobmic.jobs:run
GET /v1/mic/jobslistMicJobsmic.jobs:read
GET /v1/mic/jobs/{jobId}getMicJobmic.jobs:read
POST /v1/mic/jobs/{jobId}/cancellationscancelMicJobmic.jobs:cancel
POST /v1/mic/jobs/{jobId}/retriesretryMicJobmic.jobs:run
GET /v1/mic/assets/{assetId}/contentgetMicPublicAssetContentfiles:read mic.assets:read
GET /v1/mic/operations/{operationId}getMicPublicOperationmic.operations:read
GET /v1/mic/usagegetMicPublicUsagemic.usage:read
POST /v1/mic/processing-requestsrequestMicSharedFileProcessingfiles:read mic.jobs:run
GET /v1/mic/processing-requests/{requestId}getMicSharedFileProcessingRequestmic.jobs:read

Downloads are buffered with a default 64 MiB limit. Use Range for larger files; Node and Python expose a configurable response limit, while Java uses the fixed default.

A processing request is submitted for review. Approval and execution are separate steps; follow its status in the MIC console.