# Get invoice billing group details snapshot by id Endpoint: GET /invoicesBillingGroupDetailsSnapshot/{invoiceId} Version: 1.0.0 Security: M2X_auth_application ## Path parameters: - `invoiceId` (string, required) The invoice Id ## Response 200 fields (application/json): - `billingGroupDetails` (array) - `billingGroupDetails.id` (string) - `billingGroupDetails.humanReadableId` (string) - `billingGroupDetails.branches` (array) - `billingGroupDetails.branches.name` (string,null) - `billingGroupDetails.branches.externalId` (string,null) - `billingGroupDetails.customerId` (string,null) - `billingGroupDetails.customerName` (string,null) - `billingGroupDetails.customerIntegrationId` (string,null) Customer integration id for this job - `billingGroupDetails.customerExternalId` (string,null) External customer id for this job - `billingGroupDetails.crnNumberByCustomerId` (object,null) Key value store of customer id and crn - `billingGroupDetails.inactive` (boolean) - `billingGroupDetails.status` (string) - `billingGroupDetails.date` (string) - `billingGroupDetails.properties` (object,null) A key value store containing custom properties - `billingGroupDetails.jobs` (array) - `billingGroupDetails.jobs.shortNote` (string) - `billingGroupDetails.jobs.updated` (string) - `billingGroupDetails.jobs.created` (string) - `billingGroupDetails.jobs.deleted` (boolean) - `billingGroupDetails.jobs.attachments` (array) - `billingGroupDetails.jobs.bookedBy` (object) - `billingGroupDetails.jobs.bookedBy.uid` (string) - `billingGroupDetails.jobs.bookedBy.email` (string) - `billingGroupDetails.jobs.updatedBy` (object) - `billingGroupDetails.jobs.reconciledBy` (object) - `billingGroupDetails.jobs.deletedBy` (object) - `billingGroupDetails.jobs.deliveryReference` (string) A reference added by the dispatcher - `billingGroupDetails.jobs.truckReference` (string) A reference added by the driver, e.g. docket number - `billingGroupDetails.jobs.senderReference` (string,null) A reference added by the dispatcher - `billingGroupDetails.jobs.receiverReference` (string,null) A reference added by the dispatcher - `billingGroupDetails.jobs.truckSenderReference` (string,null) A reference added by the driver at pickup, e.g. weighbridge docket number - `billingGroupDetails.jobs.truckReceiverReference` (string,null) A reference added by the driver at delivery, e.g. weighbridge docket number - `billingGroupDetails.jobs.truckPickupBoLReference` (string,null) A Bill of Lading reference added by the driver at pickup, e.g. Bill of Lading number - `billingGroupDetails.jobs.truckDeliveryBoLReference` (string,null) A Bill of Lading reference added by the driver at delivery, e.g. Bill of Lading number - `billingGroupDetails.jobs.pickupDistanceReadingKm` (number,null) - `billingGroupDetails.jobs.deliveryDistanceReadingKm` (number,null) - `billingGroupDetails.jobs.distanceReadingDeltaKm` (number,null) The odometer distance difference between pickup and delivery - `billingGroupDetails.jobs.pickupEngineHoursReading` (number,null) - `billingGroupDetails.jobs.deliveryEngineHoursReading` (number,null) - `billingGroupDetails.jobs.engineReadingDeltaHours` (number,null) The engine hours difference between pickup and delivery - `billingGroupDetails.jobs.orderId` (string) - `billingGroupDetails.jobs.orderFriendlyName` (string) - `billingGroupDetails.jobs.bookingId` (string) If the job is linked to a corporate booking, the bookingId - `billingGroupDetails.jobs.customerId` (string) The M2X customer id for this job - `billingGroupDetails.jobs.customerName` (string) Customer name for this job - `billingGroupDetails.jobs.billingGroupId` (string) Billing Group for this job - `billingGroupDetails.jobs.humanReadableId` (string) Human Readable Id for this Billing group - `billingGroupDetails.jobs.billingGroupStatus` (string) Billing Group status for this job - `billingGroupDetails.jobs.pickupLocation` (object) - `billingGroupDetails.jobs.pickupLocation.addressText` (string, required) - `billingGroupDetails.jobs.pickupLocation.latitude` (number, required) - `billingGroupDetails.jobs.pickupLocation.longitude` (number, required) - `billingGroupDetails.jobs.pickupLocation.locationName` (string, required) - `billingGroupDetails.jobs.pickupLocation.locationId` (string,null) The M2X internal location id. When a location is manually created in M2X, this is a randomly generated unique identifier. If creating locations via API, the caller can set the Location ID. - `billingGroupDetails.jobs.pickupLocation.externalId` (string,null) An optional external identifier assigned to the location. This ID can be provided when creating the location and is typically used for cross-system referencing or integration with external data sources. - `billingGroupDetails.jobs.pickupLocation.timezone` (string) IANA (aka TZ database) timezone name Example: "Pacific/Auckland" - `billingGroupDetails.jobs.pickupLocation.properties` (object,null) - `billingGroupDetails.jobs.pickupRegions` (object) - `billingGroupDetails.jobs.pickupRegions.dispatchRegionIds` (array) - `billingGroupDetails.jobs.taskPickupTimestamp` (string) RFC3339 date time of the pickup - `billingGroupDetails.jobs.taskStartPickupTimestamp` (string) RFC3339 date time of arrival at the pickup site - `billingGroupDetails.jobs.taskEndPickupTimestamp` (string) RFC3339 date time of departure from the pickup site - `billingGroupDetails.jobs.deliveryLocation` (object) - `billingGroupDetails.jobs.deliveryRegions` (object) - `billingGroupDetails.jobs.taskDeliveryTimestamp` (string) RFC3339 date time of the delivery - `billingGroupDetails.jobs.taskStartDeliveryTimestamp` (string) RFC3339 date time of arrival at the delivery site - `billingGroupDetails.jobs.taskEndDeliveryTimestamp` (string) RFC3339 date time of departure from the delivery site - `billingGroupDetails.jobs.dispatchHub` (object) If the job was created from dispatch hub, the associated details - `billingGroupDetails.jobs.dispatchHub.activityId` (string) - `billingGroupDetails.jobs.dispatchHub.workId` (string) - `billingGroupDetails.jobs.dispatchHub.type` (string) - `billingGroupDetails.jobs.dispatchHub.subtypes` (array) - `billingGroupDetails.jobs.dynamicFulfilment` (object) If the job was created from dynamic fulfilment, the associated details - `billingGroupDetails.jobs.dynamicFulfilment.shiftId` (string) - `billingGroupDetails.jobs.dynamicFulfilment.serviceDay` (string) - `billingGroupDetails.jobs.dynamicFulfilment.pickupTaskId` (string) - `billingGroupDetails.jobs.dynamicFulfilment.pickupConstraintId` (string) - `billingGroupDetails.jobs.dynamicFulfilment.deliveryTaskId` (string) - `billingGroupDetails.jobs.dynamicFulfilment.deliveryConstraintId` (string) - `billingGroupDetails.jobs.dynamicFulfilment.dispatchGroupId` (string) - `billingGroupDetails.jobs.vehicleId` (string) - `billingGroupDetails.jobs.vehicleExternalId` (string) - `billingGroupDetails.jobs.vehicleProperties` (object) - `billingGroupDetails.jobs.assets` (object) - `billingGroupDetails.jobs.assets.driver` (object) - `billingGroupDetails.jobs.assets.driver.assetId` (string) uid for this asset - `billingGroupDetails.jobs.assets.tractorUnit` (object) - `billingGroupDetails.jobs.assets.trailers` (array) - `billingGroupDetails.jobs.assets.miscAssets` (array) - `billingGroupDetails.jobs.assets.isoContainers` (array) - `billingGroupDetails.jobs.subcontractorId` (string) - `billingGroupDetails.jobs.subcontractorExternalId` (string) - `billingGroupDetails.jobs.subcontractorProperties` (object) - `billingGroupDetails.jobs.transportRequirementsId` (string) M2X internal tracking id for the product type - `billingGroupDetails.jobs.division` (string,null) The division of the job (e.g. bulk, general, livestock...) - `billingGroupDetails.jobs.productCode` (string,null) M2X internal tracking id for the product code used - `billingGroupDetails.jobs.productCodeName` (string,null) M2X name for the product code used - `billingGroupDetails.jobs.productCodeExternalId` (string,null) External Id for product tracking - `billingGroupDetails.jobs.productProperties` (object) - `billingGroupDetails.jobs.productComponents` (array) The sub components of the product if present - `billingGroupDetails.jobs.productComponents.proportion` (number) The percentage proportion of this component - `billingGroupDetails.jobs.productComponents.quantity` (number) - `billingGroupDetails.jobs.productComponents.description` (string) - `billingGroupDetails.jobs.productComponents.product` (object) A component for a product - `billingGroupDetails.jobs.productComponents.product.productCodeName` (string,null) Friendly name of the product code - `billingGroupDetails.jobs.quantity` (number) The product quantity - `billingGroupDetails.jobs.distanceKm` (number) The reference distance for the job - `billingGroupDetails.jobs.precisionPrice` (number,null) The precision price for the job - `billingGroupDetails.jobs.precisionTkm` (number,null) The precision tonne km for the job - `billingGroupDetails.jobs.precisionKm` (number,null) The precision price for the job - `billingGroupDetails.jobs.precisionHr` (number,null) The precision Hr for the job - `billingGroupDetails.jobs.invoicable` (boolean) Whether the job is invoiceable or not - `billingGroupDetails.jobs.priceTransport` (number,null) The allocated transport price - `billingGroupDetails.jobs.priceFaf` (number,null) The allocated FAF - `billingGroupDetails.jobs.podLink` (string,null) The link to the track and trace POC link - `billingGroupDetails.jobs.pocLink` (string,null) The link to the track and trace POD link - `billingGroupDetails.jobs.pod` (object) Task completion details, e.g. proof of delivery - `billingGroupDetails.jobs.pod.pickup` (object) - `billingGroupDetails.jobs.pod.pickup.signedBy` (string,null) Name of person signing (accepting responsibility) Example: "John Doe" - `billingGroupDetails.jobs.pod.pickup.completedBy` (object,null) User that carried out this operation, e.g. Driver - `billingGroupDetails.jobs.pod.pickup.completedBy.id` (string) The external user identifier for driver/device if set, otherwise the M2X internal userId - `billingGroupDetails.jobs.pod.pickup.completedBy.name` (string,null) Human readable name of user, e.g. Driver's name - `billingGroupDetails.jobs.pod.pickup.downloadUrl` (string,null) URL where proof of delivery PDF can be downloaded from Example: "https://m2x.app/apis/v0/resources/generalConsignments/TGX854-6OU9Ns9xm9E4JxP1YJYs-1670743772224/pod/pdf" - `billingGroupDetails.jobs.pod.delivery` (object) - `billingGroupDetails.jobs.booked` (object) - `billingGroupDetails.jobs.booked.pickupTimestamp` (integer) Epoch timestamp (seconds since 1970) of the booked pickup - `billingGroupDetails.jobs.booked.deliveryTimestamp` (integer) Epoch timestamp (seconds since 1970) of the booked delivery - `billingGroupDetails.jobs.booked.productId` (string) M2X internal tracking id for the booked product type - `billingGroupDetails.jobs.booked.productCode` (string,null) M2X internal tracking id for the booked product code used - `billingGroupDetails.jobs.booked.quantity` (number) The booked product quantity - `billingGroupDetails.jobs.booked.distanceKm` (number) The reference distance for the booked job - `billingGroupDetails.jobs.docketMeasurementProperties` (object,null) A key value store containing docket measurement properties - `billingGroupDetails.jobs.cancellationNotes` (string,null) Notes for the job cancellation - `billingGroupDetails.jobs.cancellationReason` (string,null) Reason for the job cancellation - `billingGroupDetails.jobs.pickupTimestamp` (integer) Epoch timestamp (seconds since 1970) of the pickup - `billingGroupDetails.jobs.deliveryTimestamp` (integer) Epoch timestamp (seconds since 1970) of the delivery - `billingGroupDetails.transportRevenues` (array) - `billingGroupDetails.transportRevenues.revenueId` (string) - `billingGroupDetails.transportRevenues.revenueGroupId` (string,null) - `billingGroupDetails.transportRevenues.priceTotal` (number) - `billingGroupDetails.transportRevenues.timestamp` (string,null) Date of the revenue (transport/storage etc) - `billingGroupDetails.transportRevenues.updated` (string,null) Date the revenue was updated - `billingGroupDetails.transportRevenues.referenceCodes` (array,null) - `billingGroupDetails.transportRevenues.vehicleReferenceCodes` (array,null) - `billingGroupDetails.transportRevenues.vehiclePickupBoLReferences` (array) - `billingGroupDetails.transportRevenues.vehicleDeliveryBoLReferences` (array) - `billingGroupDetails.transportRevenues.massKg` (number,null) - `billingGroupDetails.transportRevenues.unitName` (string) - `billingGroupDetails.transportRevenues.spatialRequirements` (number,null) Could represent many dimensions, cube for bulk, area for livestock etc - `billingGroupDetails.transportRevenues.productDescription` (string) - `billingGroupDetails.transportRevenues.product` (object) A product - `billingGroupDetails.transportRevenues.product.productInvoiceName` (string,null) Invoice name of the product code - `billingGroupDetails.transportRevenues.priceFaf` (number) - `billingGroupDetails.transportRevenues.priceTransport` (number) - `billingGroupDetails.transportRevenues.priceTransportDetail` (any) - `billingGroupDetails.transportRevenues.priceFafDetail` (any) - `billingGroupDetails.transportRevenues.transportChargeId` (string,null) - `billingGroupDetails.transportRevenues.transportChargeName` (string,null) - `billingGroupDetails.storageRevenues` (array) - `billingGroupDetails.storageRevenues.storageLocation` (object) - `billingGroupDetails.productRevenues` (array) - `billingGroupDetails.productRevenues.sourceLocation` (object) - `billingGroupDetails.manualRevenues` (array) - `billingGroupDetails.manualRevenues.miscChargeId` (string,null) - `billingGroupDetails.manualRevenues.miscChargeName` (string,null) - `billingGroupDetails.manualRevenues.priceTotalDetail` (any) - `invoicedBy` (object) - `invoiceDate` (string) ## Response 404 fields (application/json): - `message` (string) Example: "not found"