import {z} from 'zod' export type GetApiMarketplaceV1BundlesBundleIdArgs = {bundleId: number}; export type GetApiMarketplaceV1BundlesBundleIdOptions = {baseUrl?: string | undefined, fetch?: typeof fetch | undefined}; export const bundleSettingsWS = z.object({allowPartialCancel: z.boolean().optional(), allowPartialPurchase: z.boolean().optional(), bundleApplicationId: z.number().optional(), removeDiscountsOnPartialCancel: z.boolean().optional(), removeMarkupsOnPartialCancel: z.boolean().optional()}); export const priceWS = z.object({AUD: z.number().optional(), BRL: z.number().optional(), CAD: z.number().optional(), CHF: z.number().optional(), CNY: z.number().optional(), DKK: z.number().optional(), EUR: z.number().optional(), GBP: z.number().optional(), GTQ: z.number().optional(), INR: z.number().optional(), JPY: z.number().optional(), KRW: z.number().optional(), MXN: z.number().optional(), MYR: z.number().optional(), NOK: z.number().optional(), NZD: z.number().optional(), PHP: z.number().optional(), SAR: z.number().optional(), SEK: z.number().optional(), SGD: z.number().optional(), USD: z.number().optional(), ZAR: z.number().optional()}).nullable(); export const discountDetailsWS = z.object({discountedStartingPrice: z.string().optional(), highestFixedDiscount: priceWS.optional(), highestPercentageDiscount: z.number().nullable().optional(), startingPricePercentageDiscount: z.number().optional()}).nullable(); export const link = z.object({href: z.string().optional(), rel: z.string().optional()}).nullable(); export const associatedAddonWS = z.object({addonId: z.number().optional(), editionId: z.number().optional(), links: z.array(link).optional()}); export const associatedEditionWS = z.object({editionId: z.number().optional(), productId: z.number().optional(), links: z.array(link).optional()}); export const bulletWS = z.object({content: z.string().optional(), tooltip: z.string().optional()}); export const durationWS = z.object({length: z.number().optional(), unit: z.string().nullable().optional()}).nullable(); export const terminationFeeWS = z.object({description: z.string().nullable().optional(), flatFee: priceWS.optional(), percentageFee: z.number().optional(), type: z.string().optional()}).nullable(); export const contractWS = z.object({alignWithParentCycleStartDate: z.boolean().optional(), autoExtensionPricingId: z.number().nullable().optional(), blockContractDowngrades: z.boolean().optional(), blockContractUpgrades: z.boolean().optional(), blockSwitchToShorterContract: z.boolean().optional(), cancellationPeriodLimit: z.number().nullable().optional(), endOfContractGracePeriod: z.number().nullable().optional(), gracePeriod: durationWS.optional(), minimumServiceLength: z.number().nullable().optional(), terminationFee: terminationFeeWS.optional()}); export const planCostWS = z.object({amount: priceWS.optional(), blockContractDecrease: z.boolean().optional(), blockContractIncrease: z.boolean().optional(), blockOriginalContractDecrease: z.boolean().optional(), editionPricingItemId: z.number().optional(), id: z.number().optional(), increment: z.number().optional(), maxUnits: z.number().optional(), meteredUsage: z.boolean().optional(), minUnits: z.number().optional(), pricePerIncrement: z.boolean().optional(), pricingStrategy: z.string().optional(), unit: z.string().nullable().optional(), unitDependency: z.string().optional()}); export const pricingUnit = z.enum(["USER", "GIGABYTE", "GMV", "MEGABYTE", "PROSPECT_SCORE", "HOUR", "MINUTE", "INVOICE", "UNIT", "PROJECT", "PROPERTY", "ITEM", "WORD", "EMAIL", "CONTACT", "CALL", "CREDIT", "ROOM", "HOST", "AGENT", "OPERATOR", "PROVIDER", "MANAGER", "TESTER", "JVM", "SERVER", "WEB_USE_MINUTE", "AUDIO_USE_MINUTE", "PIECE", "EMPLOYEE_PAY_PERIOD", "EMPLOYEE_PER_PAY_PERIOD", "COMPUTER", "NOT_APPLICABLE", "ONE_TIME_SETUP", "DATA_POINTS", "TIER1_API_CALLS", "TIER2_API_CALLS", "ADVISORY_HOURS", "OVERAGE_AUDIO_MINUTE", "EMPLOYEE", "CONNECTION", "PUSH_USER", "THOUSAND_EMAILS_PER_DAY", "PUSH_NOTIFICATION_DEVICES", "API_CALLS", "SMS_TEXT_MESSAGE", "CONTACTS_1000", "CONTRACT_FEE", "TRANSFER_FEE", "REACTIVATION_FEE", "RECIPIENT", "ADDITIONAL_1000_CONTACTS_BLOCK", "SCHEDULE_PLAN", "EMAILS_1000", "EMAILS_2500", "EMAILS_100000", "MOBILE_DEVICE", "PAYSLIP", "PAYSLIP_CORRECTION", "STORE", "WEBSITE", "EPAPER", "PAGE", "POSTAGE_AND_PRINT", "INTERNATIONAL_POSTAGE_AND_PRINT", "TIER1_TOP_LEVEL_DOMAIN", "TIER2_TOP_LEVEL_DOMAIN", "DEDICATED_IP", "ENABLELCM", "MAXCOMPONENTS", "DATA_MANAGEMENT_USER", "SPECIALIST_USER", "PROFESSIONAL_USER", "MATERIALITY_MATRIX", "STAKEHOLDER_MANAGEMENT", "SCORECARD", "STANDARD_MAPPING", "DONATION_MANAGEMENT", "DOCUMENT", "PACKAGE_SMALL", "PACKAGE_LARGE", "MEMBER", "ATTENDEE", "MAILING", "RESPONSE", "EXTERNAL_INVOICE_FEE", "CLIENT_TEST", "IMAGE_TRANSFORMATION", "TOTAL_IMAGE", "LICENSE", "MAILBOX", "FREE_40_INCH_HDTV_PC", "FREE_46_INCH_HDTV_PC", "FREE_46_INCH_HDTV_PC_MOUNTING", "EMPLOYEE_PER_WEEK", "REGISTER", "END_USER", "CORE", "DEVICE", "PORT", "MEASURER", "PUBLISHED_MEASUREMENT", "NODE", "SERVER_RULE", "VPN_LP", "PROXY_LP", "DESKTOP_CONNECT_LP", "CAMERA", "MAIN_SOUND_ZONE", "SUB_SOUND_ZONE", "POST", "REPORT", "BOX", "SESSION", "DISPLAY", "TRUCKROLL", "TRANSACTION_FEE", "SENDING_API_CALL", "LOOKUP_API_CALL", "ANALYTICS_API_CALL", "MIGRATION_INSTANCE", "NFON_SETUP_PER_PHONE_EXTENSION", "NFON_SETUP_PER_PHONE_EXTENSION_PLUS", "NFON_SETUP_PER_EFAX_EXTENSION", "NFON_PHONE_EXTENSION", "NFON_PHONE_EXTENSION_PLUS", "NFON_EFAX_EXTENSION", "NFON_CALL_CENTER_MONITORING", "NFON_NMEETING", "NFON_MOBILE_NFON_DEVICE", "NFON_ISOFTPHONE_MAC", "NFON_NSOFTPHONE_STANDARD_WINDOWS", "NFON_NSOFTPHONE_PREMIUM_WINDOWS", "NFON_NCTI_STANDARD_WINDOWS", "NFON_NCTI_STANDARD_CRM_WINDOWS", "NFON_NCTI_STANDARD_MAC", "NFON_NSOFTPHONE_STANDARD_WINDOWS_OR_MOBILE", "WESUSTAIN_PERFORMANCE", "WESUSTAIN_STAKEHOLDER_REPUTATION", "WESUSTAIN_WEAPP", "FAX", "FAX_LINE", "ROOM_LINE", "DEPARTMENT_LINE", "INTERNATIONAL_LICENSE", "INTERNATIONAL_DEPARTMENT_LINE", "INTERNATIONAL_ROOM_LINE", "INTERNATIONAL_LINE", "CALLING_CREDIT", "LINE", "TOLLFREE_ROOM_LINE", "TOLLFREE_DEPARTMENT_LINE", "TAXES_AND_FEES", "LEAD", "OPPORTUNITY", "CAMPAIGN", "CASE", "CUSTOMER", "TIER1_STANDARD_LINE", "TIER1_ROOM_LINE", "TIER1_TOLLFREE_ROOM_LINE", "TIER1_TOLLFREE_DEPARTMENT_LINE", "TIER1_FAX_LINE", "TIER1_DEPARTMENT_LINE", "TIER2_STANDARD_LINE", "TIER2_ROOM_LINE", "TIER2_DEPARTMENT_LINE", "TIER3_STANDARD_LINE", "TIER3_ROOM_LINE", "TIER3_DEPARTMENT_LINE", "TIER4_STANDARD_LINE", "TIER4_ROOM_LINE", "TIER4_DEPARTMENT_LINE", "CLUSTER", "NODE_4VCPU", "FIVE_HUNDRED_GB_SSD", "TWELVE_TB_NETWORK_IO", "JBOSS_EAP", "JBOSS_FUSE", "JBOSS_A_MQ", "JBOSS_BRMS", "JBOSS_BPM_SUITE", "JBOSS_DATA_GRID", "JBOSS_DATA_VIRT", "USER_LICENSE", "ADDITIONAL_NUMBER_LICENSE", "ROOM_PHONE_LICENSE", "UBERCONFERENCE_PRO_LICENSE", "UBERCONFERENCE_PRO_LICENSE_UNBUNDLED", "INSTANCE", "INDOOR_CAMERA", "OUTDOOR_CAMERA", "VINGATE_LP_LICENCE", "ADMINISTRATOR", "MOBILE_USER", "G_SUITE", "T1", "PHONE", "AUTO_ATTENDANT", "HUNT_GROUP", "VOICEMAIL_BOX", "TOLL_FREE_NUMBER", "INBOUND_LONG_DISTANCE_MINUTE", "OUTBOUND_LONG_DISTANCE_MINUTE", "INBOUND_OUTBOUND_LONG_DISTANCE_MINUTE", "SET_TOP_BOX", "MODEM", "ACCESS_POINT", "CALLING_FEATURE", "IAD_DEVICE", "ANALOG_LINE", "PRI", "SBC_DEVICE", "ROUTER", "INTERNATIONAL_MINUTE", "PHONE_LINE", "DYNAMIC_IP_ADDRESS", "STATIC_IP_ADDRESS", "GATEWAY", "REMOTE_CONTROL", "TIER1_STANDARD_SEAT", "TIER2_STANDARD_SEAT", "TIER3_STANDARD_SEAT", "TIER4_STANDARD_SEAT", "TIER1_TOLL_FREE_SEAT", "MILLION_MESSAGES", "MESSAGE", "WEEKLY", "PHONE_NUMBER", "GUEST", "REVISION_SAFE_DATAROOM", "GROUP_SESSION", "MAILBOX_AD_SYNC", "PHONE_SUPPORT", "EXTRA_10TB", "EXTRA_50TB", "EXTRA_200TB", "MAP_VIEW", "SVM", "CHANNEL", "NUMBER_PRINTER_TABLET", "NUMBER_ONSITE_SERVER", "NUMBER_VISITS", "ONSITE_TECHNICIAN_PC", "ONSITE_TECHNICIAN_SERVER", "SHORTER_REACTION_TIMES", "E_COMMERCE_INTEGRATION", "LOCATION", "TRAINING_SESSION", "GIGABYTES_PER_HOUR", "FINANCIAL_PLANNING", "ONSITE_WORKPLACE", "INTERNAL_TOOLS_ACCESS", "DUTY_SERVICE", "TERABYTE", "HOST_UNIT_HOURS", "WEB_CHECKS", "ACTIVE_USERS", "ACTIVE_EMPLOYEE", "PC_OF_NET_RECURRING_FEE", "ACTIVE_VENDOR", "ADVERTISEMENT", "ADVERTISER_SPENDS", "ANNUAL_FUNDRAISING_INCOME", "ANNUAL_SUBSCRIPTION", "APPLIANCE", "ASSET", "ASSETS_UNDER_MANAGEMENT", "BUSINESS_PARTNERS", "CASH_FLOWS", "COMPONENT", "CONNECTED_SYSTEMS", "CONTRACTS", "COSTS", "DATA_STREAMS", "DATABASE_SIZE", "EXTERNAL_SERVICE_CALLS", "FILE", "FIXED", "FLAT", "FLAT_FEE_BASED_ON_ASSETS", "FLEET_PLANNING_ORDERS", "FORMS", "GIGABYTE_DATABASE_SIZES", "INSTALLATION", "INSTALLED_CAPACITY", "JOB_POSTING", "LEARNER", "LOGON", "MANAGED_SYSTEM", "MASTER_DATA_OBJECT", "MASTER_RECORDS", "MBPS", "MONITORED_USER", "MPLS", "ORDER", "OUTPATIENT_DAYS", "PAGE_VIEW", "PATIENT_CARE_DAY", "PATIENT_TREATED", "PLANT", "POINTS_OF_DELIVERY", "PREMIUM", "PROCESS", "PRODUCTS", "RECORDS", "RENTAL_UNIT", "RESOURCES", "REVENUE", "SALES_ORDER", "SALES_PORTFOLIOS", "SERVICE_ORDERS", "SITE_VISITS", "SPENDS", "SPEND_VOLUMES", "STREAM", "STUDENT", "SUBSCRIBER", "SUPPLIERS", "TICKETS", "TOTAL_ANNUAL_BUDGET", "TUNNEL", "VIRTUAL_USERS", "SAP_SYSTEM", "POSITION_TYPES", "OVERAGE_FEES", "OVERAGE_FEE_TRANSACTION", "OVERAGE_FEES_DOCUMENT", "OVERAGE_FEES_ITEM", "EVENT", "BUSINESS_EVENT", "LEGAL_TENDER", "ANNUAL_REVENUE", "AD_SYNC", "FULL_DATA_RESTORE", "USED_STORAGE_100GB", "COMPANY", "ADDITIONAL_USER", "VISIT", "VIDEO", "ELECTRONIC_PAYMENT", "CHECK_PAYMENT", "EXPRESS_PAY_ELECTRONIC_PAYMENT", "EXPRESS_PAY_CHECK_PAYMENT", "DATA_ENTRY_SERVICE", "MONTHLY_VISIT", "SCRUB_TRANSACTION", "DEVICE_LICENSE", "SERVER_LICENSE", "BASE_LICENSE", "SERVICE_CALL", "SUPPORT_INCIDENT_TICKET", "CUSTOM_REPORT_BUILDING_TRAINING", "QUOTA", "DOMESTIC_TRANSACTION", "BEE", "BEE_FLEET", "BEE_BEACON_AMBIENT_LIGHT", "BEE_BEACON_TEMPERATURE_HUMIDITY", "CONTACTS_100", "TEMPLATE", "TEMPLATE_PACKS_10", "PACK", "SMS_TEXT_MESSAGE_10", "VIRTUAL_SERVER", "PHYSICAL_SERVER", "WORKSTATION", "CHATS", "MATCH_LIST", "CERTIFICATE_12_MONTHS", "CERTIFICATE_24_MONTHS", "PRIVACY", "PAGE_VIEWS_100000", "VOICE_OUT", "EXAM", "PARTICIPANT", "ENCRYPTION_ADDON", "ESS", "ETI", "ATP_ADDON", "PBE_ADDO", "NETI_ADDON", "HUNDRED_SMS_REMINDER", "CALENDAR_SYNC", "PAYMENT_INTERFACE", "MULTILINGUAL_ONLINE_EVENT_BOOKING", "SOCKET", "OFFER", "FREELANCER", "SOAP", "DATEV_LEXWARE_INTERFACE", "TOKEN", "SERVICE_MONTH", "VIDEO_PACKAGE_50_HOURS", "INTERFACE", "TEST_CASE", "MINUTES_15", "MINUTES_30", "CONNECTED_ACCESS_POINT", "DAY", "SATURDAY_SURCHARGE", "NIGHT_SURCHARGE", "SUNDAY_SURCHARGE", "PUBLIC_HOLIDAY_SURCHARGE", "BASIC_PACKAGE", "STANDARD_PACKAGE", "PREMIUM_PACKAGE", "REPORTS_MODULE", "WORKFLOW_MODULE", "NBV_250K", "NBV", "INVENTORY", "ADDITIONAL_COMPANY", "TRANSACTION", "PREMIUM_CREDIT_REPORTS", "ADDITIONAL_CONNECTION", "STOCK_UNIT", "MONTHLY_USAGE_FEE", "USAGE_FEE", "MONTHLY_CHARGES", "STANDARD_USER", "ADDITIONAL_UNIT", "COMMISSION", "KITTING", "WOP", "SFDC", "NAMED_USER_LICENSE", "BARCODING_AND_WAREHOUSING", "MODULE", "MANUFACTURING_MODULE", "MRP", "CONSOLE_MODULE", "CONSOLIDATIONS", "MULTI_CURRENCY", "ADDON_LICENSE", "INBOUND_PAGE", "OUTBOUND_PAGE", "OPPORTUNITY_RETENTION", "SOCIAL_SENTIMENT", "DEMAND_PRICE", "SETUP_FEE", "SHAREPOINT", "INTEGRATION_MAINTENANCE", "VIEWER", "MANAGEMENT_USER", "SQ_FT", "LOCATION_UPTO_10_EMPLOYEES", "LOCATION_UPTO_20_EMPLOYEES", "LOCATION_UPTO_30_EMPLOYEES", "LOCATION_UPTO_60_EMPLOYEES", "LOCATION_UPTO_99_EMPLOYEES", "M365_ONLINE", "WEB_HOSTING_SERVER", "STANDARD_EDITION_GIGABYTE", "STORAGE_GIGABYTE", "EGRESS_GIGABYTE", "FEE_HW_DEFECT_NO_WARRANTY_CASE", "SIM_CARD", "SIM_CARDS_10", "APPLICATION_CONNECTOR", "ADDITIONAL_API_CALLS", "USED_STORAGE_PER_GB", "CERTIFICATION", "MACHINE", "CALCULATION_USER", "MAILBOX_S", "MAILBOX_M", "MAILBOX_L", "STORAGE", "GROUP", "VEHICLE", "ENDPOINT", "MANAGED_SERVICE", "SOC", "ONLINE_PLAN", "ENTERPRISE_PLAN", "FLOATING_LICENSE", "USER_PER_LICENSE", "CONCURRENT_USER_PER_LICENSE", "DASHBOARD", "IT_INTERFACE", "CONNECTABLE_IOT_DEVICE_VIA_USB", "CONNECTABLE_IOT_DEVICE_VIA_TULIP_GATEWAY", "CONNECTABLE_MACHINE_PER_LICENSE", "OBJECT_TO_BE_CHECKED", "MACHINE_WITH_BI_SUPPORT", "CONNECTED_DEVICE", "LISTING", "TLS_ENCRYPTION", "DOMAIN_LEVEL_SEND", "EFAX_ROUTER", "PRORATED_CREDIT", "NEW_HIRE", "NAS", "SALESFORCE_USER", "INTERVIEW", "ASSESSMENT", "NU_WEBEX_CALLING_ENHANCED", "NU_WEBEX_CALLING_PROFESSIONAL", "WEBEX_ASSISTANT_FOR_WEBEX_MEETINGS_NU", "NU_MEETINGS_BRIDGE_COUNTRY_CALL_BACK_AUDIO", "FLEX_TEAMS_MESSAGING", "ADDON_ANALYSES", "ADDITIONAL_LISTING", "MIGRATION_TENANT", "MIGRATION_GROUP", "MIGRATION_DOCUMENT", "MIGRATION_GSUITE", "MIGRATION_FOLDER", "ENHANCED_USER", "SINGLE_NAME_CERTIFICATE", "SETUP", "HA_DEVICE_DAY", "WILDCARD_CERTIFICATE", "SECURITY_PACKAGE", "ADDITIONAL_LANGUAGE", "VANITY_URL", "BRANDING", "DATA_SOURCE", "CREATOR_USER", "ESIGN_USER", "READ_ONLY_USER", "MEASURING_POINT", "ANDON_TV", "TABLET", "USER_10000", "USER_100", "PUBLIC_IP", "WORKLOAD", "PUBLIC_IP_ADDRESS", "COMPUTE_POINT", "RESOURCE_UNIT", "VALUE_POINT", "ACCOUNT", "REQUEST", "TRANSCRIPT", "NOTIFICATION", "CLAIM", "MID", "ENGAGEMENT", "TEAM_LICENSE_DIGITAL_TEAMBOARD", "TEAM_LICENSE_MODULE_CONNECTIVITY", "TEAM_LICENSE_MODULE_PROBLEM_SOLUTION", "TEAM_LICENSE_MODULE_AUDITS", "TEAM_LICENSE_MODULE_PROCESS_CONFIRMATION", "TEAM_LICENSE_MODULE_QUALIFICATION_MATRIX", "TEAM_LICENSE_MODULE_STANDARD_WORK_INSTRUCTION", "TEAM_LICENSE_MODULE_PARETO_ANALYSIS", "KPI", "YEAR_KPI_ARCHIVAL", "CORPORATE_CLOUD_HOSTING", "ON_PREMISES_HOSTING", "SUPPORT_SERVICE_HOUR", "CLASS", "EXPERT", "SPINDLE_HOUR", "ADDON_ADMINISTRATION", "ADDON_CONFIGURATION", "ADDON_PLANNING", "ADDON_PLANNING_OBJECTS", "ADDON_MASTER_DATA", "ADDON_CAPACITY_PLANS_CALENDAR", "ADDON_CONFLICT_RADAR", "ADDON_GAP_LIST", "ADDON_DASHBOARD", "ADDON_PLANNING_READ_ONLY", "ADDON_UTILIZATION_POOLS", "ADDON_FIXED_SCHEDULES", "ADDON_ASSEMBLY_GROUPS", "ADDON_ORDER_ON_HOLD", "ADDON_PARALLEL_RESSOURCES", "ADDON_MULTI_FUNCTIONAL_RESSOURCES", "ADDON_PLANEUS_TV_PER_TERMINAL", "ADDON_MASTER_DATA_WORK_PROCEDURES", "ADDON_MANUAL_IMPORT", "ADDON_AUTOMATIC_IMPORT", "ADDON_REPORTING_BASIC", "ADDON_REPORTING_ADVANCED", "ADDON_REPORT_RESOURCES_AVAILABILITY_PER_DAY", "ADDON_REPORT_OEE", "ADDON_REPORT_ON_TIME_DELIVERY_HISTORY", "ADDON_REPORT_PROCESS_PERFORMANCE_HISTORY", "ADDON_REPORT_UTILIZATION_PER_RESOURCE", "ADDON_REPORT_REPORTING_PLUG_IN", "ADDON_EXTERNAL_PARTNERS_BASIC_LICENSE", "ADDON_WORKBENCH_PACK_OF_5", "ADDON_WORKBENCH_PACK_OF_10", "ADDON_WORKBENCH_PACK_OF_15", "CLIENT", "VIRTUAL_MACHINE", "MODEL_TRANSFORMATION", "CASE_REFRESH", "CASE_VIEW", "CASE_DOCUMENT_DOWNLOAD", "VERIFICATION", "ADDON_CORPORATE_BRANDING", "CLIENT_TAX_FILINGS", "CLIENT_COMPLIANCE_SERVICES", "PROPOSAL", "UK_ID_CHECK", "INTERNATIONAL_ID_CHECK", "ID_CHECK_WITH_PEPS_AND_SANCTIONS_MONITORING", "CREDIT_SCREEN", "UK_COMPANY_REPORT", "NON_UK_COMPANY_REPORT", "HR_SCREEN", "COMPANY_FORMATION", "CLIENT_ACCOUNTS", "SMARTKIT", "WORKFLOW", "EDITOR", "WORKER", "ADDON_POTENTIAL_ANALYSIS", "TRAINING_PACKAGE_SMALL", "TRAINING_PACKAGE_LARGE", "TOOL_PATH_OPTIMIZATION", "CLIENT_VAT_FILINGS", "BUNDLE", "PACKAGE", "VM", "INCIDENT", "SEND", "INTEGRATION", "BILLABLE_HOUR", "TB", "SOURCE", "TRAINING", "SITE", "CONSULTING_UNIT", "CAPACITY", "MIGRATION", "WORKSHOP", "ONBOARDING", "BENEFIT_ELIGIBLE_EMPLOYEE", "SEAT", "MS365_SEAT", "MS_EXCHANGE_MAILBOX", "GWORKSPACE_SEAT", "INTERNET_LINE", "BACKUP_LINE", "USER_PACK_50", "USER_PACK_100", "CIRCUIT", "NAC", "INFRASTRUCTURE", "TEN_THOUSAND_TEST_RUNS", "ONE_THOUSAND_TEST_RUNS", "INGESTED_OR_SCANNED_GB", "MILLION_LOG_EVENTS", "GB_OUTBOUND_PER_DESTINATION", "DESTINATION", "COMMITTER", "INGESTED_GB", "CPU", "ONE_THOUSAND_SESSIONS", "MILLION_RECORDS", "GB_OF_ANALYZED_LOGS", "ACTIVE_FUNCTION", "MILLION_TRACED_INVOCATIONS", "ACTIVE_APPLICATION_INSTANCES", "HUNDRED_TEST_RUNS", "ADDITIONAL_PARALLELIZATION", "TASK", "ONE_HUNDRED_WORKFLOW_EXECUTIONS", "SCANNED_GB", "USE_CASE", "ONE_THOUSAND_ERROR_EVENTS", "PERFORMANCE_GOAL", "SCHOOL", "MICROSOFT_365_TENANT", "MARKETPLACE", "LIEN_PROCESSED", "DISBURSEMENT", "A_LA_CARTE", "SECURE", "SECURE_PLUS", "SECURE_EXTRA", "PHASR", "ENCRYPTION", "EMAIL_SECURITY", "MOBILE_SECURITY", "EXCHANGE", "ATS", "EDR", "EDR_RETENTION_90D", "EDR_RETENTION_180D", "EDR_RETENTION_1Y", "INTEGRITY_MON", "INTEGRITY_MON_RETENTION_90D", "INTEGRITY_MON_RETENTION_180D", "INTEGRITY_MON_RETENTION_1Y", "MDR_FOUNDATIONS", "PATCH_MANAGEMENT", "VIRTUAL_ENV_VS", "VIRTUAL_ENV_VDI", "CONTAINER_PROTECTION", "XDR_IDENTITY_SENSOR", "XDR_PRODUCTIVITY_SENSOR", "XDR_NETWORK_SENSOR", "XDR_CLOUD_SENSOR", "COMPLIANCE_MANAGER", "EASM", "SUPERVISOR", "GB_OF_PROVISIONED_VM_RAM_PER_HOUR", "GB_OF_USED_VM_STORAGE_PER_HOUR", "GB_OF_USED_S3_STORAGE_PER_HOUR", "VIRTUAL_ENVIRONMENT_VE_PER_MONTH", "STORAGE_100_GB_PER_MONTH", "GB_RAM_UNDER_MANAGEMENT_PER_MONTH", "GB_OF_VM_RAM_PER_HOUR", "BUSINESS_CLIENT", "SELF_EMPLOYED_CLIENT", "LANDLORD_CLIENT", "DATA_HEALTH_AND_INSIGHT_ADDON", "SWITCH_DAY", "ACCESS_POINT_DAY", "DATABASE", "FUNCTION", "APP_SERVICE", "FIREWALL", "EDR_SA_MDR_FOUNDATIONS", "EDR_SA", "FED_USF_CHARGE", "SERVICE_FEE", "SERVICE_FEE_AP", "SERVICE_FEE_SWITCH", "SERVICE_FEE_ROUTER", "USER_LICENCE_DAY", "DEVICE_DAY", "VM_DAY", "ROUTER_DAY", "FSE", "ON_SITE_SERVICE", "BASIC", "BASIC_PLUS", "STANDARD", "STANDARD_PLUS", "ADVANCED", "ADVANCED_PLUS", "PREMIUM_PLUS", "XXS", "XS", "SMALL", "MEDIUM", "LARGE", "XL", "XXL", "XXXL", "CUSTOM", "ENHANCED", "INCIDENT_RESPONSE_SERVICE", "IDENTITY", "JIRA_CONNECTOR", "SHAREPOINT_CONNECTOR", "CONFLUENCE_CONNECTOR", "PRIVATE_ACCESS", "INTERNET_ACCESS", "OBJECTIVE_FEEDBACK_QUESTION", "STAFFBASE_CONNECTOR", "CONSULTING_UNIT_AP", "CONSULTING_UNIT_ROUTER", "CONSULTING_UNIT_SWITCH", "CONSULTING_UNIT_DEVICE", "CONSULTING_UNIT_HA_DEVICE", "OBJECT", "VALIDATION", "ADVANCED_ELECTRONIC_SIGNATURE", "QUALIFIED_ELECTRONIC_SIGNATURE", "PERSONAL_IDENTIFICATION", "API_BASED_SIGNATURE", "ON_CALL_DUTY", "VSBU", "PAID_USER", "REMOTE_SEAL_SIGNATURE", "ENVELOPE", "VCPU_SHARED_PER_VCPU", "VCPU_DEDICATED_PER_VCPU", "GB_OF_RAM", "PUBLIC_IP_FOR_VPN", "ADVANCED_FIREWALL_PER_VDC", "ADDITIONAL_NETWORK", "ZERO_TRUST_FIREWALL_PER_VDC", "WINDOWS_SERVER_DATACENTER_PER_VM", "BACKUP_LICENSE_PER_VM", "BACKUP_STORAGE_ONSITE_PER_GB", "BACKUP_STORAGE_OFFSITE_PER_GB", "STORAGE_500_IOPS_PER_GB", "STORAGE_2000_IOPS_PER_GB", "STORAGE_8000_IOPS_PER_GB", "STORAGE_20000_IOPS_PER_GB", "OBJECT_STORAGE_STANDARD_PER_GB", "OBJECT_STORAGE_PREMIUM_PER_GB"]); export const productDiscountDetailsWS = z.object({amount: priceWS.optional(), availableRedemptions: z.number().optional(), description: z.string().nullable().optional(), expirationDate: z.number().optional(), numOfBillingCycles: z.number().optional(), percentage: z.number().optional(), pricingUnit: pricingUnit.optional(), startDate: z.number().optional()}).nullable(); export const paymentPlanWS = z.object({allowCustomUsage: z.boolean().optional(), contract: contractWS.optional(), cost: z.array(planCostWS).optional(), discount: productDiscountDetailsWS.optional(), frequency: z.string().optional(), href: z.string().optional(), id: z.number().optional(), isPrimaryPrice: z.boolean().optional(), keepBillDateOnUsageChange: z.boolean().optional(), separatePrepaid: z.boolean().optional(), tld: z.string().optional(), uuid: z.string().nullable().optional()}); export const addonOfferingWS = z.object({bullet: z.array(bulletWS).optional(), code: z.string().optional(), description: z.string().nullable().optional(), descriptionHtml: z.string().optional(), exclusive: z.boolean().optional(), id: z.number().optional(), name: z.string().optional(), paymentPlan: z.array(paymentPlanWS).optional(), stacked: z.boolean().optional(), status: z.string().optional(), uuid: z.string().optional()}); export const attributeType = z.enum(["TEXT", "MULTISELECT"]); export const customAttributeLocalizedValueOptionWS = z.object({optionKey: z.string().optional(), optionLabel: z.string().optional()}); export const customAttributeLightV2WS = z.object({attributeKey: z.string().optional(), attributeType: attributeType.optional(), label: z.string().optional(), value: z.string().optional(), valueKeys: z.array(z.string()).optional(), valueOptions: z.array(customAttributeLocalizedValueOptionWS).optional()}); export const characteristicHighlightWS = z.object({displayCheck: z.boolean().optional(), highlight: z.string().max(1024).optional(), id: z.number().optional()}); export const featureCharacteristicWS = z.object({abovePicture: z.boolean().optional(), highlight: z.array(characteristicHighlightWS).optional(), id: z.number().optional(), position: z.number().optional(), title: z.string().max(256).optional()}); export const featureWS = z.object({bullet: z.array(featureCharacteristicWS).optional(), description: z.string().max(2048).nullable().optional(), header: z.string().max(256).optional(), hideOnOverview: z.boolean().optional(), id: z.number().optional(), imageUrl: z.string().nullable().optional(), position: z.number().optional(), slogan: z.string().max(256).optional()}); export const featuredCustomerWS = z.object({id: z.number().optional(), logoUrl: z.string().optional(), name: z.string().optional()}); export const sourceWS = z.object({id: z.number().optional(), logoUrl: z.string().optional(), name: z.string().optional()}); export const featuredMediumWS = z.object({link: z.string().max(1024).optional(), linkDescription: z.string().max(1024).optional(), source: sourceWS.optional()}); export const integrationAdditionalSettingsFormFieldOptionWS = z.object({content: z.string().optional(), value: z.string().optional()}); export const integrationAdditionalSettingsFormFieldWS = z.object({integrationAdditionalSettingsFormFieldOptions: z.array(integrationAdditionalSettingsFormFieldOptionWS).optional(), key: z.string().optional(), label: z.string().optional(), repeatedForEachUnit: z.boolean().optional(), suffix: z.string().optional(), type: z.string().optional()}); export const integrationAdditionalSettingsFormWS = z.object({description: z.string().nullable().optional(), formField: z.array(integrationAdditionalSettingsFormFieldWS).optional(), hiddenByDefault: z.boolean().optional(), showFormControlLabel: z.string().optional(), specificToTopLevelDomain: z.string().optional(), title: z.string().optional()}); export const integrationAdditionalSettingsWS = z.object({enabledForSubscriptionChange: z.boolean().optional(), form: z.array(integrationAdditionalSettingsFormWS).optional(), preSubmitValidationRequired: z.boolean().optional(), validationUrl: z.string().optional()}).nullable(); export const integrationConfigurationWS = z.object({productSettings: integrationAdditionalSettingsWS.optional(), domainManagementEnabled: z.boolean().optional()}); export const listingInfoWS = z.object({blurb: z.string().nullable().optional(), imageSrcset: z.record(z.string(), z.string()).optional(), imageUrl: z.string().nullable().optional(), mobileAppStoreId: z.string().nullable().optional(), mobileBundleId: z.string().nullable().optional(), myAppLogoIconSrcset: z.record(z.string(), z.string()).optional(), myAppLogoIconUrl: z.string().nullable().optional(), overview: z.string().nullable().optional(), profileImageSrcset: z.record(z.string(), z.string()).optional(), profileImageUrl: z.string().nullable().optional(), rating: z.number().nullable().optional(), reviewCount: z.number().optional()}).nullable(); export const originApi = z.enum(["MOSI", "CREST"]); export const benefitWS = z.object({description: z.string().max(2048).nullable().optional(), title: z.string().max(256).optional()}); export const xmlMappableMultiValueMap = z.object({entry: z.array(z.object({})).optional()}); export const overviewInfoWS = z.object({benefit: z.array(benefitWS).optional(), demoUrl: z.string().nullable().optional(), documentationUrl: z.string().nullable().optional(), downloadDocumentationUrl: z.string().nullable().optional(), downloadFileSize: z.number().nullable().optional(), imageSrcset: z.record(z.string(), z.string()).optional(), imageUrl: z.string().nullable().optional(), splashDescription: z.string().nullable().optional(), splashTitle: z.string().nullable().optional(), systemRequirements: z.string().nullable().optional(), versions: xmlMappableMultiValueMap.optional()}); export const platformAttributeWS = z.object({applicationPlatformUuid: z.string().optional(), createdOn: z.number().optional(), lastModified: z.number().optional(), platformAttributeDefinitionUuid: z.string().optional(), platformAttributeOptionUuid: z.string().optional(), uuid: z.string().optional(), value: z.string().optional()}); export const platformAttributeOptionWS = z.object({createdOn: z.number().optional(), label: z.string().optional(), lastModified: z.number().optional(), order: z.number().optional(), uuid: z.string().optional(), value: z.string().optional()}); export const platformAttributeDefinitionWS = z.object({createdOn: z.number().optional(), hint: z.string(), isRequired: z.boolean(), key: z.string(), label: z.string(), lastModified: z.number().optional(), option: z.array(platformAttributeOptionWS).optional(), order: z.number(), type: z.string(), uuid: z.string().optional()}); export const platformWS = z.object({attributeDefinition: z.array(platformAttributeDefinitionWS).optional(), createdOn: z.number().optional(), description: z.string().nullable(), iconUrl: z.string().nullable(), isVersionSupported: z.boolean(), lastModified: z.number().optional(), name: z.string(), numTaggedProducts: z.number().optional(), uuid: z.string().optional()}); export const applicationPlatformWS = z.object({attribute: z.array(platformAttributeWS).optional(), platformDefinition: platformWS.optional(), uuid: z.string().optional()}); export const editionBulletWS = z.object({content: z.string().optional(), tooltip: z.string().optional()}); export const editionCustomizationWS = z.object({type: z.string().optional(), value: z.string().optional()}); export const includedItemWS = z.object({amount: z.number().optional(), unit: z.string().nullable().optional(), unlimited: z.boolean().optional()}); export const editionWS = z.object({bullet: z.array(editionBulletWS).optional(), bundleOnly: z.boolean().optional(), code: z.string().optional(), customerContractRestricted: z.boolean().optional(), customization: z.array(editionCustomizationWS).optional(), defaultFreeTrial: z.boolean().optional(), expiredTrialGracePeriod: z.number().nullable().optional(), freeTrialDuration: z.number().optional(), freeTrialType: z.string().optional(), id: z.number().optional(), invisible: z.boolean().optional(), item: z.array(includedItemWS).optional(), lastModified: z.number().optional(), leadGen: z.boolean().optional(), name: z.string().optional(), plan: z.array(paymentPlanWS).optional(), primary: z.boolean().optional(), rank: z.number().optional(), restricted: z.boolean().optional(), revenueType: z.string().optional(), targetAudience: z.string().nullable().optional(), trial: durationWS.optional(), uuid: z.string().optional()}); export const marketplacePricingWS = z.object({bullet: z.array(bulletWS).optional(), footnote: z.array(z.string()).optional(), pricingSummary: z.string().nullable().optional(), edition: z.array(editionWS).optional()}); export const productRibbonWS = z.object({ribbonColor: z.string().optional(), text: z.string().optional(), textColor: z.string().optional()}); export const providerWS = z.object({name: z.string().optional(), url: z.string().nullable().optional(), uuid: z.string().optional()}); export const linkWS = z.object({href: z.string().optional(), id: z.string().optional()}).nullable(); export const resourceWS = z.object({description: z.string().max(2048).nullable().optional(), id: z.number().optional(), link: z.string().max(2048).optional(), name: z.string().max(256).optional(), resellerAccess: z.boolean().optional(), resourceType: z.string().optional(), scribdId: z.string().max(256).optional(), scribdKey: z.string().max(256).optional()}); export const screenshotWS = z.object({imageUrl: z.string().nullable().optional(), imageUrlSrcset: z.record(z.string(), z.string()).optional(), name: z.string().max(256).optional()}); export const startingPriceWS = z.object({amount: priceWS.optional(), billingFrequency: z.string().nullable().optional(), discount: productDiscountDetailsWS.optional(), unit: z.string().nullable().optional()}).nullable(); export const supportWS = z.object({description: z.string().max(2048).nullable().optional(), email: z.string().max(256).nullable().optional(), knowledgebaseUrl: z.string().max(2048).nullable().optional(), phone: z.string().max(256).nullable().optional()}); export const tag: z.ZodType = z.object({badge: z.string().optional(), description: z.string().nullable().optional(), id: z.number().optional(), name: z.string().optional(), showBadge: z.boolean().optional(), showOnNavigation: z.boolean().optional(), tag: z.array(z.lazy(() => tag)).optional(), type: z.string().optional()}); export const productWS = z.object({_embedded: z.object({associatedAddons: z.array(associatedAddonWS).optional(), associatedEditions: z.array(associatedEditionWS).optional()}).optional(), addon: z.boolean().optional(), addonOffering: z.array(addonOfferingWS).optional(), assignLeadsToDevelopers: z.boolean().optional(), autoUpgradeToPaid: z.boolean().optional(), bundledPlanIds: z.object({}).nullable().optional(), buyable: z.boolean().optional(), changeSubscriptionAllowed: z.boolean().optional(), collectLeads: z.boolean().optional(), collectLeadsWithPurchaseEnabled: z.boolean().optional(), customAttributes: z.array(customAttributeLightV2WS).optional(), customIntegration: z.string().nullable().optional(), displayQuestions: z.boolean().optional(), displayReviews: z.boolean().optional(), downloadFileSize: z.number().nullable().optional(), features: z.array(featureWS).optional(), featuredCustomers: z.array(featuredCustomerWS).optional(), featuredMedia: z.array(featuredMediumWS).optional(), free: z.boolean().optional(), freeTrialOrEditionPresent: z.boolean().optional(), hidePricings: z.boolean().optional(), highestFixedDiscount: priceWS.optional(), highestPercentageDiscount: z.number().nullable().optional(), hostedLocation: z.string().nullable().optional(), href: z.string().optional(), id: z.number().optional(), importable: z.boolean().optional(), integrationConfiguration: integrationConfigurationWS.optional(), language: z.array(z.string()).optional(), lastModified: z.number().optional(), linkedImportableApplicationUuid: z.string().nullable().optional(), listing: listingInfoWS.optional(), liveChatAvailable: z.boolean().optional(), liveChatEnabled: z.boolean().optional(), merchandisingBadges: z.array(z.unknown()).optional(), mosiConnectorType: originApi.optional(), name: z.string().optional(), newSubscriptionEnabled: z.boolean().optional(), numRatings: z.number().nullable().optional(), oneClickPurchasable: z.boolean().optional(), overview: overviewInfoWS.optional(), platforms: z.array(applicationPlatformWS).optional(), pricing: marketplacePricingWS.optional(), privacyUrl: z.string().nullable().optional(), productRibbon: productRibbonWS.optional(), provider: providerWS.optional(), publishedApp: linkWS.optional(), publishedOn: z.number().optional(), rating: z.number().nullable().optional(), referUrl: z.string().nullable().optional(), referable: z.boolean().optional(), resources: z.array(resourceWS).optional(), screenshots: z.array(screenshotWS).optional(), sellerName: z.string().optional(), showSelfServiceRestriction: z.boolean().optional(), showThirdPartyLegalDisclosure: z.boolean().optional(), startingPrice: startingPriceWS.optional(), support: supportWS.optional(), supportedCountries: z.array(z.unknown()).optional(), supportedCurrencies: z.array(z.unknown()).optional(), supportedLanguages: z.array(z.unknown()).optional(), supportsMultipleEditions: z.boolean().optional(), tag: z.array(tag).optional(), termsUrl: z.string().nullable().optional(), type: z.string().optional(), usageType: z.string().optional(), uuid: z.string().optional(), workingApp: linkWS.optional()}); export const bundleWS = z.object({billingFrequency: z.string().nullable().optional(), blurb: z.string().nullable().optional(), bundleSettings: bundleSettingsWS.optional(), buyable: z.boolean().optional(), changeSubscriptionAllowed: z.boolean().optional(), collectLeads: z.boolean().optional(), collectLeadsWithPurchaseEnabled: z.boolean().optional(), description: z.string().optional(), discountDetails: discountDetailsWS.optional(), downloadFileSize: z.number().nullable().optional(), featured: z.boolean().optional(), featuredSliderPosition: z.number().nullable().optional(), free: z.boolean().optional(), freeTrialOrEditionPresent: z.boolean().optional(), href: z.string().optional(), iconUrl: z.string().nullable().optional(), id: z.number().optional(), language: z.array(z.string()).optional(), lastModified: z.number().optional(), name: z.string().optional(), newSubscriptionEnabled: z.boolean().optional(), numRatings: z.number().nullable().optional(), overview: z.string().nullable().optional(), overviewImageUrl: z.string().nullable().optional(), popular: z.boolean().optional(), popularity: z.number().nullable().optional(), product: z.array(productWS).optional(), productType: z.string().optional(), profileLogoUrl: z.string().nullable().optional(), provider: providerWS.optional(), publishedOn: z.number().optional(), rating: z.number().nullable().optional(), referable: z.boolean().optional(), staffPick: z.boolean().optional(), staffPickSliderPosition: z.number().nullable().optional(), startingPrice: startingPriceWS.optional(), tag: z.array(tag).optional(), url: z.string().optional()}); export const validateResponse = async ( schema: { readonly '~standard': { readonly validate: (value: unknown) => ({ readonly value: Output; readonly issues?: undefined } | { readonly issues: ReadonlyArray<{ readonly message: string; readonly path?: ReadonlyArray | undefined }> }) | Promise<{ readonly value: Output; readonly issues?: undefined } | { readonly issues: ReadonlyArray<{ readonly message: string; readonly path?: ReadonlyArray | undefined }> }> } }, value: unknown ): Promise => { const result = await schema['~standard'].validate(value) if (result.issues !== undefined) { const detail = result.issues .map(({ message, path }) => path?.length ? `${path.map((segment) => String(typeof segment === 'object' ? segment.key : segment)).join('.')}: ${message}` : message ) .join('; ') throw new Error(`Response does not match the schema: ${detail}`, { cause: { issues: result.issues } }) } return result.value }; /** * Retrieve a bundle * * GET /marketplace/v1/bundles/{bundleId} */ export const getApiMarketplaceV1BundlesBundleId = async (args: GetApiMarketplaceV1BundlesBundleIdArgs, options?: GetApiMarketplaceV1BundlesBundleIdOptions) => { const {baseUrl = "https://marketplace.appdirect.com/api", fetch: fetchFn = fetch} = options ?? {} const query = new URLSearchParams() const headers = new Headers() headers.set('accept', "application/json") const url = `${baseUrl.replace(/\/+$/, '')}/marketplace/v1/bundles/${encodeURIComponent(String(args.bundleId))}${query.size > 0 ? `?${query}` : ''}` const res = await fetchFn(url, {method: "GET", headers}) if (!res.ok) throw new Error(`Request failed with status ${res.status}`, {cause: {status: res.status, body: await res.text()}}) return validateResponse(bundleWS, await res.json()) };