- actions_required
- file:view
- file:create
- file:update
- entity:view
- entity:update
- description
- Creates large, medium, and thumbnail versions of JPEG images. Supports batch processing for multiple images.
- endpoint
- https://image-processor.arke.institute
- endpoint_verified_at
- 2026-01-21T04:14:51.435Z
- input_schema
- properties
- entity_id
- description
- Single JPEG file entity to process (for backward compatibility)
- type
- string
- entity_ids
- description
- Array of JPEG file entity IDs to process (preferred for batch processing)
- type
- array
- options
- description
- Processing options
- properties
- batch_size
- default
- 10
- description
- Number of images per Lambda call (default: 10)
- type
- number
- lambda_concurrency
- default
- 5
- description
- Maximum parallel Lambda calls (default: 5)
- type
- number
- quality
- description
- JPEG quality settings for each version
- properties
- large
- default
- 90
- description
- Quality for large version (2400px max)
- type
- number
- medium
- default
- 85
- description
- Quality for medium version (1288px max)
- type
- number
- thumbnail
- default
- 80
- description
- Quality for thumbnail version (256px max)
- type
- number
- type
- object
- type
- object
- type
- object
- output_description
- For each input JPEG file entity, creates up to three new file entities — large (2400px max dimension, quality 90), medium (1288px max dimension, quality 85, optimized for OCR), and thumbnail (256px max dimension, quality 80). Each derivative is a separate JPEG file entity uploaded to the same collection as the source. Resizing preserves aspect ratio using a fit-inside strategy, and versions are skipped if the source image's longest side is already at or below the target dimension (no upscaling is performed). Derivative filenames follow the pattern '{original_name}_{suffix}.jpg' where suffix is 'large', 'medium', or 'thumb'. To find a source image's derivatives, follow its 'has_derivative' relationships. To find a derivative's original, follow its 'derived_from' relationship.
- output_relationships
- Each derivative file has a 'derived_from' relationship pointing to the source JPEG entity
- The source JPEG entity gains a 'has_derivative' relationship pointing to each derivative file
- These relationships are bidirectional — created in a single POST to /relationships with source_predicate 'derived_from' and target_predicate 'has_derivative'
- To find all resized versions of an image: query the source entity's 'has_derivative' relationships
- output_tree_example
- source JPEG 'manuscript_page_042.jpg' (4800x3600)
├── file 'manuscript_page_042_large.jpg' (2400x1800, ~quality 90)
├── file 'manuscript_page_042_medium.jpg' (1288x966, ~quality 85)
└── file 'manuscript_page_042_thumb.jpg' (256x192, ~quality 80)
If the source were smaller, e.g. 'photo.jpg' (1000x800):
├── file 'photo_thumb.jpg' (256x205, ~quality 80)
└── (large and medium skipped — source already smaller than 2400px and 1288px)
- status
- active