Product
Product associated with an integration event.
This page contains
Fields
| id: ID! | Catalog reference ID of the product |
| version: String! | Product version, either PUBLISHED or WORKING |
| vendor: Account! PREVIEW | Vendor information |
| externalSource: PriceBookExternalSource PREVIEW | |
| type: ProductType! PREVIEW | The type of product (ex: WEB_APP) |
| name: [LocalizedString!]! | The name of the product |
| vendorId: ID! @deprecated( reason: "No longer supported" ) | Vendor identifier |
| addon: Boolean! | Whether the product is an add-on |
| importable: Boolean! | Whether the product is an importable |
| buyable: Boolean! | Whether the product is buyable |
| allowMultiplePurchases: Boolean! | Whether the product allows multiple purchases |
| usageType: UsageType! | How many users can be assigned per purchase of the product. |
| referable: Boolean! | Whether the product is referable |
| supplierId: ID | Supplier id |
| defaultVariant: ProductVariant @deprecated( reason: "Replaced by templateVariant in favour of better naming" ) | Default product variant |
| templateVariant: ProductVariant | Template product variant. This template is used to configure fields that are common to multiple variants such as the physical attributes. |
| variantOptions: [ProductVariantOption!] | Variant options of the product |
| variants(configuration: ProductVariantConfigurationInput): [ProductVariant!] | Variants of the product |
| integration: ProductIntegration | Integration configuration for the product |
| validationErrors: [ProductValidationError!] | Publication validation errors |
| edition(id: ID!): ProductEdition! | Edition by id |
| editions: [ProductEdition!]! | Editions |
| editionSharedInformation: ProductEditionSharedInformation | Edition shared information |
| shortDescription: [LocalizedString!]! | Listing 5 words description of the product |
| description: [LocalizedString!]! | Listing description of the product |
| vendorName: [LocalizedString!]! | Displayed customizable name of the vendor |
| linkToProductWebsite: [LocalizedString!]! | Link to the product website |
| support: ProductSupport! | Support information of a Product |
| overview: ProductOverview! | Profile overview information |
| media: [ProductMedia!] | Media information |
| features: [ProductFeature!] | Features of a product |
| benefits: [ProductBenefit!]! | Profile Benefits Information |
| listingLogo: ProductImage | Logo for listing information |
| myAppsLogo: ProductImage | Logo for MyApps |
| profileLogo: ProductImage | Application profile logo |
| screenshots: [ProductScreenshot!] | Profile screenshots |
| privacyPolicyLink: [LocalizedURL!] | URL to the application's privacy policy |
| termsAndConditionsLink: [LocalizedURL!] | URL to the application's terms and conditions |
| resources: [ProductResource!] | Application's resources |
| source: ProductSource PREVIEW | Product source |
| externalResources: ProductExternalResources! | Application's external resources |
| customIntegration: String | Custom integration type for specialized vendor integrations. Returns the integration type name (e.g., "GOOGLE_APPS", "DOCUSIGN", etc.) or null if not set |
| customAttributeValues: [ProductCustomAttributeValue!]! PREVIEW | Custom attribute values for this product |
| isFullyInitialized: Boolean! PREVIEW | Whether the product's MySQL applications row is available |
| distributionStatus: ProductDistributionStatus PREVIEW | Distribution status for this product |
| status: ProductStatus PREVIEW | Status for this product |
| isVisible: Boolean PREVIEW | Whether the product is visible |
| isInViewerCatalog: Boolean PREVIEW | True when this product is already in the viewer's marketplace (is_added=Y or is_staging=Y). |
| requiresDistributionApproval: Boolean PREVIEW | True when adding to the viewer's marketplace requires ISV/NCM approval (!isPreapprovedByIsv). Computed fresh each query — not frozen at add time. |
| networkSellStatus: NetworkCatalogSellStatus PREVIEW | Sell-readiness. READY_TO_SELL if isPreapprovedByIsv=true. |
| viewerSyndicationRequest: ProductSyndicationRequest PREVIEW | The viewer's active syndication request for this product, if any. |
| isNetworkVisible: Boolean PREVIEW | Whether the base product is visible on the network catalog (applications.is_visible). |
| isNetworkFeatured: Boolean PREVIEW | NCM editorial flags |
| isNetworkPopular: Boolean PREVIEW | |
| isNetworkStaffPick: Boolean PREVIEW |
Parent objects of Product
| AdobeRevertSwitchCurrentSubscription PREVIEW | |
| AdobeRevertSwitchRestoredSubscription PREVIEW | |
| MarketplaceProductSettings PREVIEW | |
| PriceBookEntry | Represents the custom prices set in price book entry |
| ProductAlreadyDistributedOnNetworkError PREVIEW | |
| ProductAlreadyInLocalCatalogError PREVIEW | Returned when the product is already in the caller's marketplace (is_added=Y or is_staging=Y). |
| ProductAlreadyRequestedForDistributionError PREVIEW | |
| ProductConnection | |
| ProductCustomization PREVIEW | |
| ProductEdition | Product edition associated with the event. |
| ProductInfo PREVIEW | Product for invoice. Contains a reference to current object and data recorded at invoice creation. |
| ProductIntegrationEvent PREVIEW | Base integration event type owned by graphql-rest-proxy. Extended in integration-events-query.graphqls with monolith-only fields. |
| ProductIntegrationEventItem PREVIEW | A product integration event. |
| ProductNetworkDistributionNotRequestedError PREVIEW | Returned when distributionStatus is not REQUESTED (stale request guard). |
| ProductNotEligibleForDistributionError PREVIEW | |
| ProductNotSyndicatableError PREVIEW | Returned when the product is not eligible for syndication to the caller's marketplace. |
| ProductPublicationRequest | |
| ProductSyndicationPendingError PREVIEW | Returned when a syndication request is already pending for this product. |
| ProductSyndicationRequest PREVIEW | |
| ProductVariant | Specific variant of a Product from a configuration of a product's variant value |
| ProductVariantsCreationProcess | Asynchronous ProductVariant creation process |
| PsaProductMapping PREVIEW | Definition of a product mapping |
| QuoteItem PREVIEW | Individual item within a quote representing a product to be purchased |
| QuoteVersionItem PREVIEW | Individual item within a quote version representing a product to be purchased |
| SubscriptionDefinition PREVIEW | Subscription definition |
| SubscriptionDefinitionPreview PREVIEW | Subscription definition preview |
| SubscriptionRecordState PREVIEW | |
| SubscriptionState PREVIEW | Subscription State |
| TransferUnitEligibleEdition PREVIEW | Response for unit transfer. |
| UsageReaderConfiguration PREVIEW | Payload for new reader |
Mutations for Product
| addProductVariantOption | Add a product variant option to a product |
| addProductVariantOptionValue | Create variant option values for a product |
| createProduct | Create a product |
| disableProductVariants | Disable a product variant |
| enableProductVariants | Enable a product variant |
| linkProductIntegration | Link a product to a product integration |
| orderProductVariantOptions | Edit the order for product variant options |
| orderProductVariantOptionValues | Order product variant option values |
| removePrivacyPolicyLink | Remove a privacy policy link for a product |
| removeProductVariantOption | Remove a product variant option from a product |
| removeProductVariantOptionValue | Delete/remove a variant option's value |
| removeTermsAndConditionsLink | Remove a terms and conditions link for a product |
| requestProductNetworkDistribution PREVIEW | Developer/ISV or MM submits a product they own for inclusion in the AppDirect Network Catalog. Caller must have write access to the product (tenant or vendor). Transitions distributionStatus: NEW or DENIED → REQUESTED. NCM reviews and transitions to DISTRIBUTED or DENIED via the existing Wicket UI. V1 notification gap (D13): does NOT emit the monolith's NCM notification Kafka event. |
| updateProduct | Update a product |
| updateProductDefaultVariant | Update a product's default variant |
| updateProductVariantOption | Update a product's variant option |
| updateProductVariantOptionValue | Update a product variant option value |
| updateProductVariants | Update the product's variant(s) |
| withdrawProductNetworkDistribution PREVIEW | Developer/ISV or MM withdraws a pending network distribution request for a product they own. Caller must have write access to the product (tenant or vendor). Transitions distributionStatus: REQUESTED → NEW. Clears distributionTargetPartner. Does NOT change exclusivePartner (cleared only on approve). Does NOT emit the monolith NCM notification Kafka event. |
Queries for Product
| distributionCatalogProducts PREVIEW | Consolidated catalog for the Distribution Catalog UI. Returns exactly one node per product owned by the vendor. Each node is the product's PUBLISHED snapshot when one exists, and its WORKING (draft) snapshot otherwise — so name, logo, and branding always reflect what buyers currently see when the product is live, and reflect the draft when it is not. Product.version identifies which snapshot a node came from ("PUBLISHED" or "WORKING"). Status badge display is left to the UI for v1 — derive from version, status, and distributionStatus on each node. Check version first: on a node whose version is "WORKING", distributionStatus is a stale working-document value and must not be used to render a badge. Bundles and internal product types are always excluded. |
| marketplaceProductSettings PREVIEW | |
| networkCatalogProducts PREVIEW | Browse products on the AppDirect Network Catalog available to the viewer's marketplace. Viewer's marketplace = context.user.tenant. |
| priceBookEntry | Returns price book entry by its id |
| product | Query a product |
| productIntegrationEvent PREVIEW | A single product integration event, looked up by event identifier (event token). Returns null when the event is not found. |
| products | Query products by tenant |
| productsByVendorId | Query products by vendor ID |
| productSyndicationRequest PREVIEW | Returns the caller's own syndication request for the given catalog_requests.request_ref_id. Scoped to context.user.tenant (D3) — rows belonging to other marketplaces are invisible (null), even if the ID is known. Only returns the current (non-superseded) request for the app_2_market row. |
| productVariantsCreationProcess | Query the variants creation process |
| productVariantsCreationProcessByProductRefId | Query the variants creation process by product ref id |
| transferUnitEligibleSubscriptions PREVIEW | Get the list of eligible subscriptions for a unit transfer. |
| vendorIntegrationEventDetail PREVIEW | Fetch a single integration event by its unique token. Returns null if the event does not exist or the caller cannot access it. |