===== Image Endpoints ===== The following endpoints are available in PMA.core to view Whole Slide Images and their associated labels, thumbnails and macro images. The following list contains the endpoint URL, a brief description and the available parameters for each one. ==== Tile ==== **/tile** Renders a square tile of a slide ^Parameter ^Description^ |**sessionID**|The session id to authenticate with| |**pathOrUid**|The path or unique identifier of the image to render or a valid collection config JSON| |**timeframe**|The index of the time frame to render| |**layer**|The index of the layer to render| |**channels**|Comma separated channel indexes to render| |**channelClipping**|Min and max limits to clip and scale pixel values. Two values required per channel| |**channelColor**|Comma separated hex AARRGGBB color per fluorescent channel| |**gamma**|Gamma values for each channel. One value required per channel| |**x**|The x index of the tile| |**y**|The y index of the tile| |**z**|The z index of the tile| |cache|//Optional// parameter that tells the renderer whether or not to use the cache to fetch the tile| |format|//Optional// resulting image format. Valid values are JPG, JPEG, PNG, TIFF and DICOM| |quality|//Optional// quality parameter used only for the jpeg format| |postGamma|//Optional// gamma value to apply as post processing| |brightness|//Optional// brightness value to apply as post processing| |contrast|//Optional// contrast value to apply as post processing| **Returns** A file stream that contains the rendered region **Example** ///tile?sessionId=%%sessionId%%&pathOrUid=%%path%%&timeframe=0&layer=0&channels=0&channelClipping=0,0&gamma=1&x=0&y=0&z=0// ==== Region ==== **/region** Renders a region of a slide ^Parameter ^Description^ |**sessionID**|The session ID to authenticate with| |**pathOrUid**|The path or unique identifier of the image to render| |**timeframe**|The index of the time frame to render| |**layer**|The index of the layer to render| |**channels**|Comma separated channel indexes to render| |**x**|The x coordinate of the image to render| |**y**|The y coordinate of the image to render| |**width**|The width of the region to render| |**height**|The height of the region to render| |**scale**|The factor to scale the rendered region by| |**channelClipping**|Min and max limits to clip and scale pixel values. Two values required per channel.| |**channelColor**|Comma separated hex AARRGGBB color per fluorescent channel| |**gamma**|Gamma values for each channel. One value required per channel | |drawScaleBar|//Optional// Draw an accurate scale bar| |downloadInsteadOfDisplay|//Optional// Whether or not to download the image or display it in the browser| |drawFilename|//Optional// 0 do not draw, 1 draw filename on top, 2 draw on bottom| |format|//Optional// parameter representing the resulting image format. JPG, JPEG, PNG, TIFF and DICOM| |quality|//Optional// quality parameter used only for the jpeg format| |annotationsLayerType|//Optional// A comma separated list of extra annotations layer to render| |rotation|//Optional// Rotation angle in degrees| |flipHorizontal|//Optional// Whether to flip region horizontally| |flipVertical|//Optional// Whether to flip the region vertically| |dpi|//Optional// dpi to resolution for the exported image| |postGamma|//Optional// gamma value to apply as post processing| |brightness|//Optional// brightness value to apply as post processing| |contrast|//Optional// contrast value to apply as post processing| **Returns** A file stream that contains the rendered region **Example** ///region?sessionId=%%sessionId%%&pathOrUid=%%path%%&timeframe=0&layer=0&channels=0&channelClipping=0,0&channelColor=ffffffff&gamma=1&x=0&y=0&width=1000&height=1000&scale=0.1// In the example request above, the system will render a 1000x1000 pixel portion of the full resolution image and scale it to 100x100 pixels before it returns it to the client. ==== Thumbnail ==== **/thumbnail** Renders the associated thumbnail of slide ^Parameter ^Description^ |**sessionID**|The session ID to authenticate with| |**pathOrUid**|The path or unique identifier of the image to render| |orientation|//Optional// The orientation of the thumbnail (0 = auto; 1 = vertical; 2 = horizontal)| |w|//Optional// Expected output width of the thumbnail| |h|//Optional// Expected output height of the thumbnail| **Returns** An image **Example** ///thumbnail?sessionId=%%sessionId%%&pathOrUid=%%path%%// ==== Macro ==== **/macro** Renders the associated macro of a slide ^Parameter ^Description^ |**sessionID**|The session ID to authenticate with| |**pathOrUid**|The path or unique identifier of the image to render| |orientation|//Optional// The orientation of the macro (0 = auto; 1 = vertical; 2 = horizontal)| |w|//Optional// Expected output width of the macro| |h|//Optional// Expected output height of the macro| **Returns** An image **Example** ///macro?sessionId=%%sessionId%%&pathOrUid=%%path%%// ==== Barcode ==== **/barcode** Renders the associated [[barcode|barcode]] of a slide ^Parameter ^Description^ |**sessionID**|The session ID to authenticate with| |**pathOrUid**|The path or unique identifier of the image to render| |orientation|//Optional// The orientation of the barcode (0 = auto; 1 = vertical; 2 = horizontal)| |w|//Optional// Expected output width of the barcode| |h|//Optional// Expected output height of the barcode| **Returns** An image **Example** ///barcode?sessionId=%%sessionId%%&pathOrUid=%%path%%//