{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/fedex/json-schema/fedex-regulatory-profile-request-schema.json",
  "title": "RegulatoryProfileRequest",
  "description": "Supports maximum 25 regulation submissions.",
  "x-generated": "2026-11-05",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/fedex-regulatory-api-openapi.yml#/components/schemas/RegulatoryProfileRequest",
  "maxItems": 25,
  "type": "array",
  "items": {
    "$ref": "#/$defs/RegulatoryProfileRequest_inner"
  },
  "$defs": {
    "Address": {
      "type": "object",
      "properties": {
        "streetLines": {
          "type": "array",
          "description": "Street address lines",
          "items": {
            "maxLength": 23,
            "type": "string"
          }
        },
        "city": {
          "maxLength": 20,
          "type": "string",
          "description": "City name"
        },
        "stateOrProvinceCode": {
          "maxLength": 9,
          "type": "string",
          "description": "State or province code"
        },
        "postalCode": {
          "maxLength": 9,
          "type": "string",
          "description": "Postal/ZIP code"
        },
        "countryCode": {
          "maxLength": 2,
          "type": "string",
          "description": "2-character country code"
        }
      },
      "description": "Address information"
    },
    "CitationDetail": {
      "type": "object",
      "properties": {
        "testingDetails": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/TestingDetail"
          }
        }
      },
      "description": "Citation/testing information grouping"
    },
    "Contact": {
      "type": "object",
      "properties": {
        "personName": {
          "maxLength": 32,
          "type": "string",
          "description": "Contact person name"
        },
        "emailAddress": {
          "maxLength": 70,
          "type": "string",
          "description": "Email address",
          "format": "email"
        },
        "phoneExtension": {
          "maxLength": 5,
          "type": "integer",
          "description": "Phone extension"
        },
        "phoneNumber": {
          "maxLength": 15,
          "type": "string",
          "description": "Phone number with country code"
        },
        "companyName": {
          "maxLength": 32,
          "type": "string",
          "description": "Company name"
        }
      },
      "description": "Describes the contact information."
    },
    "DisclaimMessageSet": {
      "type": "object",
      "properties": {
        "disclaimCode": {
          "maxLength": 1,
          "type": "string",
          "description": "A = not regulated by CPSC; B = enforcement discretion",
          "enum": [
            "A",
            "B"
          ]
        },
        "intendedUseCode": {
          "maxLength": 16,
          "type": "string",
          "description": "Intended use code, required on every disclaimer"
        },
        "intendedUseDescription": {
          "maxLength": 22,
          "type": "string",
          "description": "Description for intended use code, required only when intendedUseCode = 980.000"
        }
      },
      "description": "Describes the disclaimer information."
    },
    "EntityDetails": {
      "type": "object",
      "properties": {
        "contact": {
          "$ref": "#/$defs/Contact"
        },
        "address": {
          "$ref": "#/$defs/Address"
        }
      },
      "description": "Describes the entity contact and address information"
    },
    "FullMessageSet": {
      "type": "object",
      "properties": {
        "productDetails": {
          "$ref": "#/$defs/ProductDetails"
        },
        "manufacturerDetails": {
          "$ref": "#/$defs/ManufacturerDetails"
        },
        "lotDetails": {
          "$ref": "#/$defs/LotDetails"
        },
        "certifierEntity": {
          "$ref": "#/$defs/EntityDetails"
        },
        "pointOfContact": {
          "$ref": "#/$defs/EntityDetails"
        },
        "citationDetails": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/CitationDetail"
          }
        }
      },
      "description": "Full Certificate of Conformity data"
    },
    "LotDetails": {
      "type": "object",
      "properties": {
        "lotNumber": {
          "maxLength": 20,
          "type": "string",
          "description": "Lot number"
        },
        "lotNumberQualifier": {
          "maxLength": 1,
          "type": "integer",
          "description": "1 = Manufacturer, 2 = Seller",
          "enum": [
            1,
            2
          ]
        },
        "productionStartDate": {
          "type": "string",
          "description": "Production start date in YYYY-MM-DD format",
          "format": "date"
        },
        "productionEndDate": {
          "type": "string",
          "description": "Production end date in YYYY-MM-DD format",
          "format": "date"
        }
      },
      "description": "Describes the information of Lot."
    },
    "ManufacturerDetails": {
      "type": "object",
      "properties": {
        "smallBatchManufacturerRegistryId": {
          "maxLength": 15,
          "type": "string",
          "description": "Populated only when the manufacturer is registered with CPSC as a Small Batch Manufacturer. Drives the SBM tag on the manufacturer’s."
        },
        "manufactureDate": {
          "type": "string",
          "description": "Manufacture date in YYYY-MM format"
        },
        "contact": {
          "$ref": "#/$defs/Contact"
        },
        "address": {
          "$ref": "#/$defs/Address"
        }
      },
      "description": "Manufacturer information"
    },
    "ProductDetails": {
      "type": "object",
      "properties": {
        "childrensProduct": {
          "type": "boolean",
          "description": "True drives downstream selection of FCP (CPC); false drives FGC (GCC)."
        },
        "skuProductCode": {
          "maxLength": 30,
          "type": "string",
          "description": "Describes the information of customer's SKU."
        },
        "gtinUpcCode": {
          "maxLength": 14,
          "type": "integer",
          "description": "Standard product identifier value."
        },
        "gtinUpcQualifierCode": {
          "maxLength": 3,
          "type": "string",
          "description": "Describes the qualifier code.</br>NOTE:SRV = GTIN (14 digits); AI = UPC (12 digits).",
          "enum": [
            "SRV",
            "AI"
          ]
        },
        "serialNumber": {
          "maxLength": 30,
          "type": "string",
          "description": "Identifier for the serial number."
        },
        "registeredNumber": {
          "maxLength": 30,
          "type": "string",
          "description": "Regulator-issued registered number"
        },
        "productName": {
          "maxLength": 15,
          "type": "string",
          "description": "Describes the name of the Product."
        },
        "brandName": {
          "maxLength": 15,
          "type": "string",
          "description": "Describes the name of the brand."
        },
        "alternateId": {
          "maxLength": 30,
          "type": "string",
          "description": "Describe the alterative identifier."
        },
        "previousTestDate": {
          "type": "string",
          "description": "Describes the date of the most recent lab testing (also surfaced inside citationDetails).",
          "format": "date"
        },
        "modelNumber": {
          "maxLength": 30,
          "type": "string",
          "description": "Describes the model identifier"
        },
        "modelColor": {
          "maxLength": 70,
          "type": "string",
          "description": "Describes the xolor text of model"
        },
        "modelDescription": {
          "maxLength": 70,
          "type": "string",
          "description": "Free-text description"
        },
        "modelStyle": {
          "maxLength": 70,
          "type": "string",
          "description": "Describes the style text."
        },
        "declarationCode": {
          "maxLength": 3,
          "type": "string",
          "description": "CPY = certificate Yes; CPN = No.",
          "enum": [
            "CPY",
            "CPN"
          ]
        }
      },
      "description": "Product information for compliance"
    },
    "ReferenceMessageSet": {
      "type": "object",
      "properties": {
        "productVersion": {
          "maxLength": 29,
          "type": "string",
          "description": "Product Registry Version ID."
        },
        "certifierId": {
          "maxLength": 33,
          "type": "string",
          "description": "Certifier ID issued by CPSC Product Registry."
        },
        "registryProductId": {
          "maxLength": 19,
          "type": "string",
          "description": "Certifier Id for the product registry.</br>Maximum length is 19.<br> Example: CPSC-2026-001234"
        }
      },
      "description": "Reference information for registered products."
    },
    "RegulatoryDetail": {
      "type": "object",
      "properties": {
        "disclaimMessageSet": {
          "$ref": "#/$defs/DisclaimMessageSet"
        },
        "referenceMessageSet": {
          "$ref": "#/$defs/ReferenceMessageSet"
        },
        "fullMessageSet": {
          "$ref": "#/$defs/FullMessageSet"
        },
        "standardManufacturerProductId": {
          "maxLength": 70,
          "type": "string",
          "description": "Manufacturer Standard Product Identifier per commodity - Assigned by a global industry standard body with a barcode when the manufacturer’s product meets global standards from a governing body. The barcode is the same for every retailer selling the exact product.</br>Maximum length is 70.<br> Example: GTIN 00000006\n"
        },
        "nonStandardManufacturerProductId": {
          "maxLength": 70,
          "type": "string",
          "description": "Manufacturer Non-Standard Product Identifier per commodity - A manufacturer or product supplier’s unique product code, provided to sellers who must supply it for customs declaration.</br>Maximum length is 70.<br> Example: SH123456-L\n"
        },
        "merchantProductId": {
          "maxLength": 70,
          "type": "string",
          "description": "Merchant Product Identifier (shipper SKU/item ID) per commodity - The merchant’s unique code to identify goods, usually the SKU, item code or product code.</br>Maximum length is 70.<br> Example: 12345\n"
        }
      },
      "description": "Container for regulation-specific filing information submitted.<br> Either disclaimMessageSet or referenceMessageSet or fullMessageSet required to be passed.<br>"
    },
    "RegulatoryProfileRequest_inner": {
      "required": [
        "countryOfImport",
        "details",
        "productId",
        "productIdType",
        "regulationCode"
      ],
      "type": "object",
      "properties": {
        "regulationCode": {
          "type": "string",
          "description": "Regulatory authority governing the product compliance requirement.<br> Accepted values<br> 1) CPSC - U.S. Consumer Product Safety Commission<br> 2) EU_DE_MINIMIS - European Union Commission — de minimis removal <br>",
          "enum": [
            "CPSC",
            "EU_DE_MINIMIS"
          ]
        },
        "productId": {
          "maxLength": 70,
          "type": "string",
          "description": "Unique product identifier used in customs and compliance filings."
        },
        "productIdType": {
          "type": "string",
          "description": "Type of identifier used for the product.",
          "enum": [
            "SKU",
            "PART_NUMBER",
            "REGISTERED_NUMBER",
            "GTIN",
            "UPC",
            "EAN",
            "MPN",
            "OTHER"
          ]
        },
        "countryOfImport": {
          "type": "string",
          "description": "2-character country code for country of import."
        },
        "details": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/RegulatoryDetail"
          }
        }
      }
    },
    "TestingDetail": {
      "type": "object",
      "properties": {
        "citationCode": {
          "type": "array",
          "description": "List of citation codes (e.g., 16CFR1303, ASTMF963)",
          "items": {
            "maxLength": 9,
            "type": "string"
          }
        },
        "labType": {
          "maxLength": 3,
          "type": "string",
          "description": "Lab type: ITL = CPSC-Accepted Lab, LAB = Third-party Lab, NOL = No Lab",
          "enum": [
            "ITL",
            "LAB",
            "NOL"
          ]
        },
        "labTestDate": {
          "type": "string",
          "description": "Lab test date in YYYY-MM-DD format",
          "format": "date"
        },
        "labId": {
          "maxLength": 15,
          "type": "string",
          "description": "4-digit CPSC-Accepted Lab ID; required for ITL/LAB"
        },
        "testReportId": {
          "maxLength": 30,
          "type": "string",
          "description": "Test report identifier"
        },
        "testReportUrl": {
          "maxLength": 70,
          "type": "string",
          "description": "URL to access the test report",
          "format": "uri"
        },
        "testReportAccessKey": {
          "maxLength": 30,
          "type": "string",
          "description": "Access key for the test report"
        },
        "componentPartDescription": {
          "type": "string",
          "description": "componentPartDescription"
        },
        "contact": {
          "$ref": "#/$defs/Contact"
        },
        "address": {
          "$ref": "#/$defs/Address"
        }
      },
      "description": "Individual testing/lab information"
    }
  }
}