GoodMemGoodMem
ReferenceSDKsJava

OCR

Methods on this page are called as client.ocr.<method>(...) on a Goodmem instance.

Classai.pairsys.goodmem.client.api.OcrAPI (extends internal OcrAPIBase).

import ai.pairsys.goodmem.client.Goodmem;

try (Goodmem client = Goodmem.builder()
        .baseUrl("http://localhost:8080")
        .apiKey("gm_...")
        .build()) {
    // client.ocr.<method>(...)
}

Async variants

Every method listed below also exists on ai.pairsys.goodmem.client.api.AsyncOcrAPI (accessed via asyncClient.ocr on an AsyncGoodmem) with the same parameter list, wrapped in CompletableFuture<T>. Paginated list methods return CompletableFuture<AsyncPage<T>>. See the async client guide for composition patterns.

import ai.pairsys.goodmem.client.AsyncGoodmem;

try (AsyncGoodmem asyncClient = AsyncGoodmem.builder()
        .baseUrl("http://localhost:8080")
        .apiKey("gm_...")
        .build()) {
    asyncClient.ocr.<method>(...)  // returns CompletableFuture<T>
}

Method Detail

document(OcrDocumentRequest)

OcrDocumentResponse document(OcrDocumentRequest request)

Run OCR on a document or image. Pass base64-encoded document bytes as content. The server auto-detects format; set format explicitly only if needed.

HTTPPOST /v1/ocr:document

Parameters

  • request (OcrDocumentRequest) — full request payload. The linked Javadoc lists every field and its Builder setter.

ReturnsOcrDocumentResponse

Example

OcrDocumentResponse ocrDocumentResponse = client.ocr.document(OcrDocumentRequest.builder()
            // …set required fields…
            .build());

REST equivalent

curl -X POST 'http://localhost:8080/v1/ocr:document' \
  -H "x-api-key: gm_..." \
  -H "Content-Type: application/json" \
  -d '{
    "content": "${image_b64}",
    "format": "PNG",
    "includeMarkdown": true
  }'

Errors

Every method on this page may throw the standard HTTP-error class hierarchy rooted at GoodmemException:

BadRequestException (400), AuthenticationException (401), PermissionDeniedException (403), NotFoundException (404), ConflictException (409), UnprocessableEntityException (422), RateLimitException (429), InternalServerException (5xx), or the generic ApiException for any other 4xx/5xx. All are unchecked (RuntimeException). See Errors.

All error classes live in ai.pairsys.goodmem.client.errors and are unchecked (RuntimeException). Async siblings complete the returned CompletableFuture exceptionally with the same types, wrapped in CompletionException at await time. See Errors on the index for the full table.