/** * @example * { * contentMd5: "rL0Y20zC+Fzt72VPzMSk2A==", * deviceId: "281474977961335", * fileFormatType: "imageJpeg", * fileName: "front_camera_install.jpg", * hardwareType: "vehicleGateway", * photoType: "installPhoto", * sizeBytes: 482193 * } */ export interface FleetInstallerPhotoUploadsPostFleetInstallerPhotoUploadRequestBody { /** Base64-encoded MD5 of the file bytes. Signed into the presigned URL as Content-MD5; object storage verifies upload integrity on PUT. Must be exactly 24 characters (base64-encoded 16-byte MD5 digest). */ contentMd5: string; /** Samsara device ID. The device must belong to the caller's organization. */ deviceId: string; /** File format. Samsara maps this to the corresponding MIME type for the presigned URL. Valid values: `imageJpeg`, `imagePng` */ fileFormatType: FleetInstallerPhotoUploadsPostFleetInstallerPhotoUploadRequestBody.FileFormatType; /** Original file name. Max 255 characters; printable characters only; no null bytes or path separators (/ or \). */ fileName: string; /** Hardware category of the device being installed. Valid values: `vehicleGateway`, `assetGateway`, `camera`, `cameraConnector`, `environmentalMonitor`, `assetTag`, `trackingLabel` */ hardwareType: FleetInstallerPhotoUploadsPostFleetInstallerPhotoUploadRequestBody.HardwareType; /** Purpose of the photo. Valid values: `installPhoto`, `assetPhoto` */ photoType: FleetInstallerPhotoUploadsPostFleetInstallerPhotoUploadRequestBody.PhotoType; /** File size in bytes. Validated against the maximum allowed size (10 MB) and signed into the presigned URL as Content-Length. */ sizeBytes: number; } export declare namespace FleetInstallerPhotoUploadsPostFleetInstallerPhotoUploadRequestBody { /** File format. Samsara maps this to the corresponding MIME type for the presigned URL. Valid values: `imageJpeg`, `imagePng` */ const FileFormatType: { readonly ImageJpeg: "imageJpeg"; readonly ImagePng: "imagePng"; }; type FileFormatType = (typeof FileFormatType)[keyof typeof FileFormatType]; /** Hardware category of the device being installed. Valid values: `vehicleGateway`, `assetGateway`, `camera`, `cameraConnector`, `environmentalMonitor`, `assetTag`, `trackingLabel` */ const HardwareType: { readonly VehicleGateway: "vehicleGateway"; readonly AssetGateway: "assetGateway"; readonly Camera: "camera"; readonly CameraConnector: "cameraConnector"; readonly EnvironmentalMonitor: "environmentalMonitor"; readonly AssetTag: "assetTag"; readonly TrackingLabel: "trackingLabel"; }; type HardwareType = (typeof HardwareType)[keyof typeof HardwareType]; /** Purpose of the photo. Valid values: `installPhoto`, `assetPhoto` */ const PhotoType: { readonly InstallPhoto: "installPhoto"; readonly AssetPhoto: "assetPhoto"; }; type PhotoType = (typeof PhotoType)[keyof typeof PhotoType]; }