{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/fedex/json-schema/fedex-gtic-response-vo-schema.json",
  "title": "GticResponseVO",
  "description": "This is a wrapper class for outputVO.",
  "x-generated": "2026-11-05",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/fedex-global-trade-api-openapi.yml#/components/schemas/GticResponseVO",
  "type": "object",
  "properties": {
    "transactionId": {
      "type": "string",
      "description": "The transaction ID is a special set of numbers that defines each transaction.<br>Example: 624deea6-b709-470c-8c39-4b5511281492"
    },
    "customerTransactionId": {
      "type": "string",
      "description": "This element allows you to assign a unique identifier to your transaction. This element is also returned in the reply and helps you match the request to the reply. <br>Example: AnyCo_order123456789"
    },
    "output": {
      "$ref": "#/$defs/BaseProcessOutputVO_1"
    }
  },
  "$defs": {
    "BaseProcessOutputVO_1": {
      "required": [
        "countryDetails",
        "userMessages"
      ],
      "type": "object",
      "properties": {
        "userMessages": {
          "type": "array",
          "description": "Represents User Message",
          "items": {
            "$ref": "#/$defs/RegulatoryMessage"
          }
        },
        "countryDetails": {
          "description": "Represents Country Details",
          "allOf": [
            {
              "$ref": "#/$defs/RegulatoryCountryDetails"
            }
          ]
        },
        "cxsalerts": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/CXSAlert_1"
          }
        }
      },
      "description": "ShipmentRegulatoryDetailsOutputVO Model"
    },
    "CXSAlert_1": {
      "type": "object",
      "properties": {
        "code": {
          "type": "string",
          "description": "Specifies the API alert code."
        },
        "alertType": {
          "type": "string",
          "description": "Specifies the API alert type.",
          "enum": [
            "NOTE",
            "WARNING"
          ]
        },
        "parameterList": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/Parameter"
          }
        },
        "message": {
          "type": "string",
          "description": "Specifies the API alert message."
        }
      }
    },
    "Localization": {
      "type": "object",
      "properties": {
        "localization": {
          "type": "string",
          "description": "Two letter language code. <br> Example: EN<br><a onclick='loadDocReference(\"locales\")'>click here to see Locales</a>"
        },
        "localeCode": {
          "type": "string",
          "description": "Two letter region code. <br> Example: us<br><a onclick='loadDocReference(\"locales\")'>click here to see Locales</a>"
        }
      },
      "description": "Specify locale details for composing email with the document."
    },
    "LocalizedAttributeDetail": {
      "type": "object",
      "properties": {
        "localization": {
          "$ref": "#/$defs/Localization"
        },
        "name": {
          "type": "string",
          "description": "Specifies the name of the product being shipped."
        },
        "description": {
          "type": "string",
          "description": "Specifies elabaorate material description and other technical details of the product beingshipped."
        }
      },
      "description": "Specifies the localized attribute details."
    },
    "Message": {
      "type": "object",
      "properties": {
        "code": {
          "type": "string",
          "description": "Specifies the advisory document related code."
        },
        "text": {
          "type": "string",
          "description": "Specifies names of the regulatory advisories."
        },
        "parameters": {
          "type": "array",
          "description": "Specifies information related to the advisories and their relevant parameters.",
          "items": {
            "$ref": "#/$defs/MessageParameter"
          }
        },
        "localizedText": {
          "type": "string",
          "description": "This provides the specifics of the regulations."
        }
      }
    },
    "MessageParameter": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "description": "Specifies the advisory ids."
        },
        "value": {
          "type": "string",
          "description": "Specifies the advisory regulation."
        }
      }
    },
    "MessageParameters": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "description": "Indicates the message identifier."
        },
        "value": {
          "type": "string",
          "description": "Indicates the message."
        }
      },
      "description": "Object containing the parameters for a Message object"
    },
    "Parameter": {
      "type": "object",
      "properties": {
        "value": {
          "type": "string",
          "description": "Identifies the error option to be applied."
        },
        "key": {
          "type": "string",
          "description": "Indicates the value associated with the key."
        }
      },
      "description": "List of parameters which indicates the properties of the alert message."
    },
    "RegulatoryCountryAdvisory": {
      "type": "object",
      "properties": {
        "types": {
          "type": "string",
          "description": "Specifies the advisory type."
        },
        "messages": {
          "type": "array",
          "description": "Specifies code and other parameters.",
          "items": {
            "$ref": "#/$defs/Message"
          }
        }
      },
      "description": "Specifies the types and parameters of Country's advisory regulations."
    },
    "RegulatoryCountryDetails": {
      "required": [
        "category",
        "countryCode",
        "shipmentDetails"
      ],
      "type": "object",
      "properties": {
        "shipmentDetails": {
          "description": "These are Shipment Details.",
          "allOf": [
            {
              "$ref": "#/$defs/RegulatoryShipmentDetail"
            }
          ]
        },
        "countryCode": {
          "type": "string",
          "description": "Indicates Country Code."
        },
        "category": {
          "type": "string",
          "description": "Indicates the Regulatory details category."
        }
      }
    },
    "RegulatoryDocument": {
      "type": "object",
      "properties": {
        "userMessage": {
          "$ref": "#/$defs/RegulatoryMessage"
        },
        "supportType": {
          "type": "string",
          "description": "This represents document support type.",
          "enum": [
            "FEDEX_GENERATED",
            "FILLABLE",
            "PRINT_ONLY",
            "SAMPLE"
          ]
        },
        "allowability": {
          "type": "string",
          "description": "This is a Requirement type."
        },
        "fileName": {
          "type": "string",
          "description": "This represents file name."
        },
        "documentType": {
          "type": "string",
          "description": "Specifies the document type."
        },
        "agencyUrl": {
          "type": "string",
          "description": "Represents the agency url."
        },
        "documentUrl": {
          "type": "string",
          "description": "Represents document url."
        },
        "id": {
          "type": "string",
          "description": "This specifies Regualatory document id."
        },
        "agencyName": {
          "type": "string",
          "description": "Specifies the agency name."
        },
        "localizedAttributes": {
          "$ref": "#/$defs/LocalizedAttributeDetail"
        }
      },
      "description": "Specifies the Regulatory Documents."
    },
    "RegulatoryMessage": {
      "type": "object",
      "properties": {
        "code": {
          "type": "string",
          "description": "Indicates the message code."
        },
        "messageParameters": {
          "type": "array",
          "description": "Value indicating the translated text.",
          "items": {
            "$ref": "#/$defs/MessageParameters"
          }
        },
        "index": {
          "type": "integer",
          "description": "Non negative integer value indicating the index of the commodity description.",
          "format": "int32"
        },
        "text": {
          "type": "string",
          "description": "Indicates the content of the user-instructional message in English."
        },
        "localizedText": {
          "type": "string",
          "description": "This is the return message from the service provider in local language."
        }
      },
      "description": "Object representing the information needed during the interaction with clients"
    },
    "RegulatoryShipmentDetail": {
      "type": "object",
      "properties": {
        "regulatoryStatements": {
          "$ref": "#/$defs/RegulatoryStatement"
        },
        "requiredCommodityUnitsOfMeasure": {
          "type": "array",
          "description": "This is the statistical unit of measure required by the government.",
          "items": {
            "type": "string",
            "description": "Describes the regulatory data elements required to move the package."
          }
        },
        "level": {
          "type": "string",
          "description": "This a Delay Level Type. The attribute of the shipment that caused delay."
        },
        "commodityIndex": {
          "type": "integer",
          "description": "This is a non negative integer. This is a 1-based index identifying the comodity in the request that resulted in this Commodity or Document type prohibition.",
          "format": "int32"
        },
        "regulatoryDocuments": {
          "$ref": "#/$defs/RegulatoryDocument"
        },
        "regulatoryCountryAdvisories": {
          "$ref": "#/$defs/RegulatoryCountryAdvisory"
        }
      }
    },
    "RegulatoryStatement": {
      "type": "object",
      "properties": {
        "userMessage": {
          "$ref": "#/$defs/RegulatoryMessage"
        },
        "supportType": {
          "type": "string",
          "description": "This represents document support type.",
          "enum": [
            "FEDEX_GENERATED",
            "FILLABLE",
            "PRINT_ONLY",
            "SAMPLE"
          ]
        },
        "allowability": {
          "type": "string",
          "description": "Specifies a requirement type."
        },
        "fileName": {
          "type": "string",
          "description": "This represents file name."
        },
        "agencyUrl": {
          "type": "string",
          "description": "Represents agency url."
        },
        "documentUrl": {
          "type": "string",
          "description": "Represents document url."
        },
        "id": {
          "type": "string",
          "description": "This specifies Regualatory document id."
        },
        "completionType": {
          "type": "string",
          "description": "This specifies completion type.",
          "enum": [
            "COMPLETE",
            "REQUIRES_COMPLETION"
          ]
        },
        "agencyName": {
          "type": "string",
          "description": "It Specifies agency name."
        },
        "localizedAttributes": {
          "$ref": "#/$defs/LocalizedAttributeDetail"
        },
        "documentIds": {
          "type": "array",
          "description": "Specifies the document identifier.",
          "items": {
            "type": "string"
          }
        },
        "statementUrl": {
          "type": "string",
          "description": "This represents statement url."
        }
      },
      "description": "Specifies the list of regulatory statements."
    }
  }
}