What is the correct field to load the carrier from?

Dumb question probably, but what is the correct field to load the carrier from on a shipment? Under the Shipment object, there are all of these.

    "shipment": {
      "id": 207603116,
      "updated_at": "2024-01-11T20:36:38.030Z",
      "created_at": "2024-01-11T20:36:37.941Z",
      "allocation_id": 210207206,
      "carrier_id": 33,
      "shipped_by_id": 95712,
      "parcel_format": null,
      "postal_class": null,
      "weight": 1111.3013065,
      "collection_manifest_id": null,
      "carrier_service_id": null,
      "service_type": "amazon_shipping_v2-a0d64236-e314-453b-9eca-f651241e104d",
      "service_name": "USPS Priority Mail Legal Flat Rate Envelope",
      "short_service_name": "USPS Priority Mail Legal Flat Rate Envelope",
      "service_carrier_name": "usps",
      "sub_carrier_id": "USPS",

but then also this

      "carrier": {
        "id": 33,
        "created_at": "2022-05-10T09:20:24.056Z",
        "updated_at": "2023-03-16T09:38:43.263Z",
        "provider_type": "amazon_shipping_v2",
        "slug": "buy-shipping",
        "name": "Buy Shipping",
        "is_configured?": true,
        "is_integrated?": true,
        "show_when_shipping?": true,
        "inbound_supported": true,
        "shipping_service_options": null

Hey @thopkirk,
The shipment object contains the information about the carrier, including the name of the service and any value added services.
If you purchase a label through Buy Shipping then the carrier object will contain information about the Buy Shipping carrier. If you bought the label through your own carrier account then the carrier object will contain information about the carrier pertaining to your account.

@fullsam Thanks for your reply. So this was the same shipment, label bought through Buy Shipping for USPS. So then I assume the “sub_carrier_id” field in the shipment object would be the way to go? That way regardless of if the label was bought through Buy Shipping or the shipper used their own account, the Shipment object would always have the correct carrier value?