io.enterpriseai.resources.MultimodalClient
Source: sdks/java/enterprise-ai-java/src/main/java/io/enterpriseai/resources/MultimodalClient.java. Back to the Java SDK reference index.
This page is generated by tools/docs/gen_sdk_reference.py from the SDK sources and the OpenAPI text folders. Do not edit it by hand: change the source and regenerate.
Class MultimodalClient
Vision, image, video, speech and multimodal DLP jobs.
Constructor MultimodalClient
MultimodalClient(Transport transport)
Creates the client on the shared transport; EnterpriseAIClient builds it and exposes it through the accessor of the same name.
| Name | Type | Default | Required | Description |
|---|---|---|---|---|
transport | Transport | yes | Transport shared by the sub-clients of one client. |
MultimodalClient.completeJob
JsonNode completeJob(String id, Object body)
Report the result of a queued job. Called by GPU workers (agent or service identities) to report a queued job result: status running, succeeded, failed or cancelled (else 400 invalid_request), with output, error and measured units; the quota reservation is committed or released. A finished job answers 409 conflict. Needs agent or tenant_admin. 404 not_found.
Route: /v1/multimodal/jobs/{job_id}/complete (POST).
| Name | Type | Default | Required | Description |
|---|---|---|---|---|
id | String | yes | Identifier (UUID) of the job. | |
body | Object | yes | Status, output, error and measured units of the job. |
Returns: JsonNode. Decoded JSON answer of the operation "Report the result of a queued job".
Raises: the typed errors of the transport (Errors).
MultimodalClient.diarize
JsonNode diarize(Object body)
Diarize an audio. Starts a diarization job (who spoke when) on an audio media or inline audio (201, the job). Only min_speakers and max_speakers apply here (word_timestamps answers 422 parameter_unsupported); min_speakers must not exceed max_speakers (422 parameter_invalid); an option the configured provider cannot honour answers 422 parameter_unsupported. Needs tenant_admin, developer or agent.
Route: /v1/multimodal/diarize (POST).
| Name | Type | Default | Required | Description |
|---|---|---|---|---|
body | Object | yes | Audio input and speaker bounds. |
Returns: JsonNode. Decoded JSON answer of the operation "Diarize an audio".
Raises: the typed errors of the transport (Errors).
MultimodalClient.diarize
JsonNode diarize(Object body, RequestOptions options)
Diarize an audio. Starts a diarization job (who spoke when) on an audio media or inline audio (201, the job). Only min_speakers and max_speakers apply here (word_timestamps answers 422 parameter_unsupported); min_speakers must not exceed max_speakers (422 parameter_invalid); an option the configured provider cannot honour answers 422 parameter_unsupported. Needs tenant_admin, developer or agent.
Route: /v1/multimodal/diarize (POST).
| Name | Type | Default | Required | Description |
|---|---|---|---|---|
body | Object | yes | Audio input and speaker bounds. | |
options | RequestOptions | yes | Per call options (idempotency key, traceparent, headers, abort signal). |
Returns: JsonNode. Decoded JSON answer of the operation "Diarize an audio".
Raises: the typed errors of the transport (Errors).
MultimodalClient.dlp
JsonNode dlp(Object body)
Run the DLP on a text or a media. Inspects text, the extracted text of a stored media, or inline content (scanned first), with the tenant DLP rules. Returns source, extracted_text_chars, the processed text, findings, action and classification. Nothing is stored. Any tenant principal may call it. Audited as multimodal.dlp.
Route: /v1/multimodal/dlp (POST).
| Name | Type | Default | Required | Description |
|---|---|---|---|---|
body | Object | yes | Text, stored media or inline content, and the DLP mode. |
Returns: JsonNode. Decoded JSON answer of the operation "Run the DLP on a text or a media".
Raises: the typed errors of the transport (Errors).
MultimodalClient.dlp
JsonNode dlp(Object body, RequestOptions options)
Run the DLP on a text or a media. Inspects text, the extracted text of a stored media, or inline content (scanned first), with the tenant DLP rules. Returns source, extracted_text_chars, the processed text, findings, action and classification. Nothing is stored. Any tenant principal may call it. Audited as multimodal.dlp.
Route: /v1/multimodal/dlp (POST).
| Name | Type | Default | Required | Description |
|---|---|---|---|---|
body | Object | yes | Text, stored media or inline content, and the DLP mode. | |
options | RequestOptions | yes | Per call options (idempotency key, traceparent, headers, abort signal). |
Returns: JsonNode. Decoded JSON answer of the operation "Run the DLP on a text or a media".
Raises: the typed errors of the transport (Errors).
MultimodalClient.editImage
JsonNode editImage(Object body)
Edit an image. Starts an image edition job from an image media or inline image and a prompt (201, the job). The input must be an image (422 unsupported_media). Needs tenant_admin, developer or agent.
Route: /v1/multimodal/images/edit (POST).
| Name | Type | Default | Required | Description |
|---|---|---|---|---|
body | Object | yes | Input image, prompt, number of images, size and model. |
Returns: JsonNode. Decoded JSON answer of the operation "Edit an image".
Raises: the typed errors of the transport (Errors).
MultimodalClient.editImage
JsonNode editImage(Object body, RequestOptions options)
Edit an image. Starts an image edition job from an image media or inline image and a prompt (201, the job). The input must be an image (422 unsupported_media). Needs tenant_admin, developer or agent.
Route: /v1/multimodal/images/edit (POST).
| Name | Type | Default | Required | Description |
|---|---|---|---|---|
body | Object | yes | Input image, prompt, number of images, size and model. | |
options | RequestOptions | yes | Per call options (idempotency key, traceparent, headers, abort signal). |
Returns: JsonNode. Decoded JSON answer of the operation "Edit an image".
Raises: the typed errors of the transport (Errors).
MultimodalClient.generateImage
JsonNode generateImage(Object body)
Generate images. Starts an image generation job (201, the job). The prompt is inspected by the DLP in block mode first: personal data answers 422 dlp_blocked. Usage is counted per image. Needs tenant_admin, developer or agent.
Route: /v1/multimodal/images/generate (POST).
| Name | Type | Default | Required | Description |
|---|---|---|---|---|
body | Object | yes | Prompt, number of images, size and model. |
Returns: JsonNode. Decoded JSON answer of the operation "Generate images".
Raises: the typed errors of the transport (Errors).
MultimodalClient.generateImage
JsonNode generateImage(Object body, RequestOptions options)
Generate images. Starts an image generation job (201, the job). The prompt is inspected by the DLP in block mode first: personal data answers 422 dlp_blocked. Usage is counted per image. Needs tenant_admin, developer or agent.
Route: /v1/multimodal/images/generate (POST).
| Name | Type | Default | Required | Description |
|---|---|---|---|---|
body | Object | yes | Prompt, number of images, size and model. | |
options | RequestOptions | yes | Per call options (idempotency key, traceparent, headers, abort signal). |
Returns: JsonNode. Decoded JSON answer of the operation "Generate images".
Raises: the typed errors of the transport (Errors).
MultimodalClient.generateVideo
JsonNode generateVideo(Object body)
Generate a video. Starts a video generation job and answers 202 with the job; follow it with GET /v1/multimodal/jobs/{job_id}. Usage is counted in video seconds. Needs tenant_admin, developer or agent.
Route: /v1/multimodal/video/generate (POST).
| Name | Type | Default | Required | Description |
|---|---|---|---|---|
body | Object | yes | Prompt, duration, size and model. |
Returns: JsonNode. Decoded JSON answer of the operation "Generate a video".
Raises: the typed errors of the transport (Errors).
MultimodalClient.generateVideo
JsonNode generateVideo(Object body, RequestOptions options)
Generate a video. Starts a video generation job and answers 202 with the job; follow it with GET /v1/multimodal/jobs/{job_id}. Usage is counted in video seconds. Needs tenant_admin, developer or agent.
Route: /v1/multimodal/video/generate (POST).
| Name | Type | Default | Required | Description |
|---|---|---|---|---|
body | Object | yes | Prompt, duration, size and model. | |
options | RequestOptions | yes | Per call options (idempotency key, traceparent, headers, abort signal). |
Returns: JsonNode. Decoded JSON answer of the operation "Generate a video".
Raises: the typed errors of the transport (Errors).
MultimodalClient.job
JsonNode job(String id)
Get a multimodal job. Returns the job: operation, status, input parameters, output, error, adapter, units and cost. 404 not_found.
Route: /v1/multimodal/jobs/{job_id} (GET).
| Name | Type | Default | Required | Description |
|---|---|---|---|---|
id | String | yes | Identifier (UUID) of the job. |
Returns: JsonNode. Decoded JSON answer of the operation "Get a multimodal job".
Raises: the typed errors of the transport (Errors).
MultimodalClient.jobs
Page<JsonNode> jobs()
List the multimodal jobs. Jobs of the tenant, newest first, paginated with cursor, optionally filtered by status and operation.
Route: /v1/multimodal/jobs (GET).
This element takes no parameter.
Returns: Page<JsonNode>. A Page: One page of a cursor paginated collection ({"items": [...], "next_cursor": "..."|null}).
Raises: the typed errors of the transport (Errors).
MultimodalClient.jobs
Page<JsonNode> jobs(Map<String, ?> query)
List the multimodal jobs. Jobs of the tenant, newest first, paginated with cursor, optionally filtered by status and operation.
Route: /v1/multimodal/jobs (GET).
| Name | Type | Default | Required | Description |
|---|---|---|---|---|
query | Map<String, ?> | yes | Query string parameters of the route. |
Returns: Page<JsonNode>. A Page: One page of a cursor paginated collection ({"items": [...], "next_cursor": "..."|null}).
Raises: the typed errors of the transport (Errors).
MultimodalClient.processVideo
JsonNode processVideo(Object body)
Process a video. Extracts frames and/or the audio track of a video media or inline video (201, the job; queued when ffmpeg is not available). operations accepts frames and audio only (400 invalid_request). Needs tenant_admin, developer or agent.
Route: /v1/multimodal/video/process (POST).
| Name | Type | Default | Required | Description |
|---|---|---|---|---|
body | Object | yes | Input video, operations, frame rate and audio sample rate. |
Returns: JsonNode. Decoded JSON answer of the operation "Process a video".
Raises: the typed errors of the transport (Errors).
MultimodalClient.processVideo
JsonNode processVideo(Object body, RequestOptions options)
Process a video. Extracts frames and/or the audio track of a video media or inline video (201, the job; queued when ffmpeg is not available). operations accepts frames and audio only (400 invalid_request). Needs tenant_admin, developer or agent.
Route: /v1/multimodal/video/process (POST).
| Name | Type | Default | Required | Description |
|---|---|---|---|---|
body | Object | yes | Input video, operations, frame rate and audio sample rate. | |
options | RequestOptions | yes | Per call options (idempotency key, traceparent, headers, abort signal). |
Returns: JsonNode. Decoded JSON answer of the operation "Process a video".
Raises: the typed errors of the transport (Errors).
MultimodalClient.stt
JsonNode stt(Object body)
Transcribe speech to text. Starts a speech to text job on an audio media or inline audio (201, the job). The transcript goes through the DLP with dlp_mode. Only word_timestamps applies here (speaker bounds answer 422 parameter_unsupported). Usage is counted in audio seconds (duration_seconds, or read from a WAV header). Needs tenant_admin, developer or agent.
Route: /v1/multimodal/stt (POST).
| Name | Type | Default | Required | Description |
|---|---|---|---|---|
body | Object | yes | Audio input, language, model, DLP mode and options. |
Returns: JsonNode. Decoded JSON answer of the operation "Transcribe speech to text".
Raises: the typed errors of the transport (Errors).
MultimodalClient.stt
JsonNode stt(Object body, RequestOptions options)
Transcribe speech to text. Starts a speech to text job on an audio media or inline audio (201, the job). The transcript goes through the DLP with dlp_mode. Only word_timestamps applies here (speaker bounds answer 422 parameter_unsupported). Usage is counted in audio seconds (duration_seconds, or read from a WAV header). Needs tenant_admin, developer or agent.
Route: /v1/multimodal/stt (POST).
| Name | Type | Default | Required | Description |
|---|---|---|---|---|
body | Object | yes | Audio input, language, model, DLP mode and options. | |
options | RequestOptions | yes | Per call options (idempotency key, traceparent, headers, abort signal). |
Returns: JsonNode. Decoded JSON answer of the operation "Transcribe speech to text".
Raises: the typed errors of the transport (Errors).
MultimodalClient.tts
JsonNode tts(Object body)
Synthesize speech from text. Starts a text to speech job (201, the job). The text is inspected by the DLP with dlp_mode (default block: personal data answers 422 dlp_blocked; mask speaks the masked text). Usage is counted in characters. Needs tenant_admin, developer or agent.
Route: /v1/multimodal/tts (POST).
| Name | Type | Default | Required | Description |
|---|---|---|---|---|
body | Object | yes | Text, voice, model and DLP mode. |
Returns: JsonNode. Decoded JSON answer of the operation "Synthesize speech from text".
Raises: the typed errors of the transport (Errors).
MultimodalClient.tts
JsonNode tts(Object body, RequestOptions options)
Synthesize speech from text. Starts a text to speech job (201, the job). The text is inspected by the DLP with dlp_mode (default block: personal data answers 422 dlp_blocked; mask speaks the masked text). Usage is counted in characters. Needs tenant_admin, developer or agent.
Route: /v1/multimodal/tts (POST).
| Name | Type | Default | Required | Description |
|---|---|---|---|---|
body | Object | yes | Text, voice, model and DLP mode. | |
options | RequestOptions | yes | Per call options (idempotency key, traceparent, headers, abort signal). |
Returns: JsonNode. Decoded JSON answer of the operation "Synthesize speech from text".
Raises: the typed errors of the transport (Errors).
MultimodalClient.vision
JsonNode vision(Object body)
Understand an image. Starts a vision understanding job on an image media or inline image with a prompt (201, the job). The answer goes through the DLP with dlp_mode. detail answers 422 parameter_unsupported when the configured provider cannot honour it; a non image input answers 422 unsupported_media. Needs tenant_admin, developer or agent.
Route: /v1/multimodal/vision (POST).
| Name | Type | Default | Required | Description |
|---|---|---|---|---|
body | Object | yes | Input image, prompt, model, DLP mode and detail level. |
Returns: JsonNode. Decoded JSON answer of the operation "Understand an image".
Raises: the typed errors of the transport (Errors).
MultimodalClient.vision
JsonNode vision(Object body, RequestOptions options)
Understand an image. Starts a vision understanding job on an image media or inline image with a prompt (201, the job). The answer goes through the DLP with dlp_mode. detail answers 422 parameter_unsupported when the configured provider cannot honour it; a non image input answers 422 unsupported_media. Needs tenant_admin, developer or agent.
Route: /v1/multimodal/vision (POST).
| Name | Type | Default | Required | Description |
|---|---|---|---|---|
body | Object | yes | Input image, prompt, model, DLP mode and detail level. | |
options | RequestOptions | yes | Per call options (idempotency key, traceparent, headers, abort signal). |
Returns: JsonNode. Decoded JSON answer of the operation "Understand an image".
Raises: the typed errors of the transport (Errors).