> ## Documentation Index
> Fetch the complete documentation index at: https://developers.redo.com/llms.txt
> Use this file to discover all available pages before exploring further.

# importRestriction

> Fetch an import restriction the catalog trips by its id. Null when no product in the caller's catalog trips it.

**Required scopes:** [`markets_read`](https://developers.redo.com/docs/api-reference/v3/reference/scopes#scope-markets_read)

## Arguments

**id** `ID!` *required*

The id of the import restriction.

## Returns

**importRestriction** `[ImportRestriction](/docs/api-reference/v3/reference/markets/import-restriction)`

An import rule of a destination country that screening found products in the catalog trip. Only rules found in the last 21 days, in countries of enabled markets with restriction screening on, are visible.

**fields**

**affectedProducts** `[ProductConnection!](/docs/api-reference/v3/pagination)` *required*

The products in the catalog that trip the rule.

**Requires:** [`products_read`](https://developers.redo.com/docs/api-reference/v3/reference/scopes#scope-products_read)

**fields**

**Arguments**

**after** `String`

Forward pagination cursor — returns products after it.

**before** `String`

Backward pagination cursor — returns products before it.

**first** `Int`

Forward pagination: returns the first N products (max 100, default 25). Use with `after`; mutually exclusive with `last`/`before`.

**last** `Int`

Backward pagination: returns the last N products (max 100, default 25). Use with `before`; mutually exclusive with `first`/`after`.

**Fields**

**edges** `[\[ProductEdge!\]!](/docs/api-reference/v3/pagination)` *required*

The list of edges (each a node plus its pagination `cursor`).

**fields**

**cursor** `String!` *required*

Opaque cursor for this item; pass to `after`/`before` to page from here.

**node** `[Product!](/docs/api-reference/v3/reference/catalog/product)` *required*

The item at this edge.

**nodes** `[\[Product!\]!](/docs/api-reference/v3/reference/catalog/product)` *required*

The nodes in this page, without the edge/cursor wrapper — a convenience over `edges`.

**fields**

**attribute** `[Attribute](/docs/api-reference/v3/reference/catalog/attribute)`

Look up a single attribute on this product by its name, if set.

**Requires:** [`products_read`](https://developers.redo.com/docs/api-reference/v3/reference/scopes#scope-products_read)

**fields**

**Arguments**

**name** `String!` *required*

The machine name of the attribute to look up.

**attributes** `[\[Attribute!\]!](/docs/api-reference/v3/reference/catalog/attribute)` *required*

The merchant-defined attributes set on this product.

**barcodes** `[String!]!` *required*

Barcodes associated with this product.

**cost** `[Money](/docs/api-reference/v3/reference/common/money)`

The merchant's unit cost for the product.

**createdAt** `[DateTime!](/docs/api-reference/v3/reference/common/date-time)` *required*

When the record was created.

**description** `String!` *required*

The product's long-form description.

**dimensions** `[Dimensions](/docs/api-reference/v3/reference/catalog/dimensions)`

The product's length, width, and height, expressed in a single shared unit.

**hsCode** `String`

The Harmonized System code used for customs.

**id** `ID!` *required*

The id of this product.

**image** `[ProductImage](/docs/api-reference/v3/reference/catalog/product-image)`

The first (default) image for this product, if any.

**Requires:** [`products_read`](https://developers.redo.com/docs/api-reference/v3/reference/scopes#scope-products_read)

**images** `[ProductImageConnection!](/docs/api-reference/v3/pagination)` *required*

A paginated list of the product's images.

**Requires:** [`products_read`](https://developers.redo.com/docs/api-reference/v3/reference/scopes#scope-products_read)

**fields**

**Arguments**

**after** `String`

Forward pagination cursor — returns items after it. Pass an `edges[].cursor` or `pageInfo.endCursor` from a previous page.

**before** `String`

Backward pagination cursor — returns items before it. Pass an `edges[].cursor` or `pageInfo.startCursor` from a previous page.

**first** `Int`

Forward pagination: returns the first N items (max 100, default 25). Use with `after`; mutually exclusive with `last`/`before`.

**last** `Int`

Backward pagination: returns the last N items (max 100, default 25). Use with `before`; mutually exclusive with `first`/`after`.

**importRestrictions** `[ProductImportRestrictionConnection!](/docs/api-reference/v3/pagination)` *required*

The import restrictions the product trips, one per destination country and rule. Only countries of enabled markets with restriction screening on are screened, and a restriction drops off 21 days after screening last found it.

**Requires:** [`markets_read`](https://developers.redo.com/docs/api-reference/v3/reference/scopes#scope-markets_read)

**fields**

**Arguments**

**after** `String`

Forward pagination cursor — returns import restrictions after it.

**before** `String`

Backward pagination cursor — returns import restrictions before it.

**first** `Int`

Forward pagination: returns the first N import restrictions (max 100, default 25). Use with `after`; mutually exclusive with `last`/`before`.

**last** `Int`

Backward pagination: returns the last N import restrictions (max 100, default 25). Use with `before`; mutually exclusive with `first`/`after`.

**inventoryItems** `[InventoryItemConnection!](/docs/api-reference/v3/pagination)` *required*

Traceable inventory units for this product.

**Requires:** [`inventory_read`](https://developers.redo.com/docs/api-reference/v3/reference/scopes#scope-inventory_read)

**fields**

**Arguments**

**after** `String`

**before** `String`

**first** `Int`

**last** `Int`

**inventoryLevel** `[LocationInventoryLevel](/docs/api-reference/v3/reference/inventory/location-inventory-level)`

This product's inventory level at a single location, if any.

**Requires:** [`inventory_read`](https://developers.redo.com/docs/api-reference/v3/reference/scopes#scope-inventory_read)

**fields**

**Arguments**

**locationId** `ID!` *required*

The id of the location to fetch the level at.

**inventoryLevels** `[LocationInventoryLevelConnection!](/docs/api-reference/v3/pagination)` *required*

Per-location inventory levels for this product.

**Requires:** [`inventory_read`](https://developers.redo.com/docs/api-reference/v3/reference/scopes#scope-inventory_read)

**fields**

**Arguments**

**after** `String`

Forward pagination cursor — returns items after it. Pass an `edges[].cursor` or `pageInfo.endCursor` from a previous page.

**before** `String`

Backward pagination cursor — returns items before it. Pass an `edges[].cursor` or `pageInfo.startCursor` from a previous page.

**first** `Int`

Forward pagination: returns the first N items (max 100, default 25). Use with `after`; mutually exclusive with `last`/`before`.

**last** `Int`

Backward pagination: returns the last N items (max 100, default 25). Use with `before`; mutually exclusive with `first`/`after`.

**marketPublishing** `[\[ProductMarketPublishing!\]](/docs/api-reference/v3/reference/markets/product-market-publishing)`

Publishing per destination country where the product trips an import restriction, or has a publish override. Only countries of enabled markets with restriction screening on are screened. Null when publishing can't be read.

**Requires:** [`markets_read`](https://developers.redo.com/docs/api-reference/v3/reference/scopes#scope-markets_read)

**options** `[\[ProductOptionValue!\]!](/docs/api-reference/v3/reference/catalog/product-option-value)` *required*

The variant's selected option values (e.g. Size: M, Color: Red), ordered by the family's option positions.

**originCountry** `String`

The country of origin, as a country code.

**physicalItem** `Boolean!` *required*

Whether the product is a physical, shippable item.

**price** `[Money](/docs/api-reference/v3/reference/common/money)`

The product's selling price.

**productFamily** `[ProductFamily](/docs/api-reference/v3/reference/catalog/product-family)`

The product family this product belongs to, if any.

**Requires:** [`products_read`](https://developers.redo.com/docs/api-reference/v3/reference/scopes#scope-products_read)

**sku** `String`

The stock keeping unit identifying this product.

**tags** `[String!]!` *required*

Free-form tags applied to the product.

**taxCode** `String`

The tax code used to classify the product for taxation.

**taxable** `Boolean!` *required*

Whether the product is subject to tax.

**title** `String!` *required*

The product's title.

**upc** `String`

The Universal Product Code for this product.

**updatedAt** `[DateTime!](/docs/api-reference/v3/reference/common/date-time)` *required*

When the record was last updated.

**vendor** `String`

The vendor or manufacturer of the product.

**weight** `[Weight](/docs/api-reference/v3/reference/catalog/weight)`

The product's weight.

**pageInfo** `[PageInfo!](/docs/api-reference/v3/pagination)` *required*

Pagination metadata for the current page.

**fields**

**endCursor** `String`

Cursor of the last edge in this page; pass to `after` to page forward.

**hasNextPage** `Boolean!` *required*

Whether more items exist after this page (drives forward pagination with `first`/`after`).

**hasPreviousPage** `Boolean!` *required*

Whether more items exist before this page (drives backward pagination with `last`/`before`).

**startCursor** `String`

Cursor of the first edge in this page; pass to `before` to page backward.

**category** `[ImportRestrictionCategory](/docs/api-reference/v3/reference/markets/import-restriction-category)`

The kind of rule. Null when the source does not say.

**countryCode** `[CountryCode!](/docs/api-reference/v3/reference/common/country-code)` *required*

The destination country that imposes the restriction.

**id** `ID!` *required*

The id of this import restriction.

**lastSeenAt** `[DateTime!](/docs/api-reference/v3/reference/common/date-time)` *required*

When screening last found a product in the catalog tripping the rule.

**market** `[Market!](/docs/api-reference/v3/reference/markets/market)` *required*

The market that sells into the restriction's country.

**Requires:** [`markets_read`](https://developers.redo.com/docs/api-reference/v3/reference/scopes#scope-markets_read)

**fields**

**breakdownDisplay** `[LandedCostBreakdownDisplay!](/docs/api-reference/v3/reference/markets/landed-cost-breakdown-display)` *required*

How uncharged landed-cost lines appear in the checkout breakdown.

**breakdownLabels** `[MarketBreakdownLabels!](/docs/api-reference/v3/reference/markets/market-breakdown-labels)` *required*

Custom labels for the checkout landed-cost breakdown.

**fields**

**dutiesAndFees** `String`

The label for the duties and fees line.

**shipping** `String`

The label for the shipping line.

**taxes** `String`

The label for the taxes line.

**countries** `[\[MarketCountry!\]!](/docs/api-reference/v3/reference/markets/market-country)` *required*

The destination countries this market sells into.

**fields**

**countryCode** `[CountryCode!](/docs/api-reference/v3/reference/common/country-code)` *required*

The destination country.

**createdAt** `[DateTime!](/docs/api-reference/v3/reference/common/date-time)` *required*

When the country was added to the market.

**currency** `String`

The ISO 4217 currency shoppers in this country are charged in. Null until the country has been set up on the sales channel.

**updatedAt** `[DateTime!](/docs/api-reference/v3/reference/common/date-time)` *required*

When the record was last updated.

**coveredByMarkup** `[\[LandedCostComponent!\]!](/docs/api-reference/v3/reference/markets/landed-cost-component)` *required*

Landed-cost components whose checkout charge is absorbed by the markup, drawn down in order.

**createdAt** `[DateTime!](/docs/api-reference/v3/reference/common/date-time)` *required*

When the record was created.

**enabled** `Boolean!` *required*

Whether the market's pricing is live.

**excludedFromCheckout** `[\[LandedCostComponent!\]!](/docs/api-reference/v3/reference/markets/landed-cost-component)` *required*

Landed-cost components neither charged nor shown at checkout.

**id** `ID!` *required*

The id of this market.

**includedInPrice** `[\[LandedCostComponent!\]!](/docs/api-reference/v3/reference/markets/landed-cost-component)` *required*

Landed-cost components baked into product prices.

**lastSyncedAt** `[DateTime](/docs/api-reference/v3/reference/common/date-time)`

When prices were last pushed to the sales channel. Null until the first sync.

**markup** `[Decimal!](/docs/api-reference/v3/reference/common/decimal)` *required*

The markup on the base price, as a fraction (e.g. "0.1" for 10%).

**markupStrategy** `[MarketMarkupStrategy!](/docs/api-reference/v3/reference/markets/market-markup-strategy)` *required*

How the markup combines with the landed cost in the price.

**name** `String`

The merchant-set name. Null when unnamed; the countries then identify the market.

**pricingMode** `[MarketPricingMode!](/docs/api-reference/v3/reference/markets/market-pricing-mode)` *required*

How landed costs are turned into prices.

**shopCurrency** `String!` *required*

The ISO 4217 currency of the store's base prices, which the market's prices are converted from.

**updatedAt** `[DateTime!](/docs/api-reference/v3/reference/common/date-time)` *required*

When the record was last updated.

**regulationUrl** `String`

A link to the regulation or source the rule comes from, when known.

**resolutionNote** `String`

The note recorded when the rule was marked resolved. Null while open.

**resolvedAt** `[DateTime](/docs/api-reference/v3/reference/common/date-time)`

When the rule was marked resolved. Null while open.

**resolvedBy** `[Actor](/docs/api-reference/v3/reference/common/actor)`

Who marked the rule resolved: a team member or an API token. Null while open, when an automation or a change before this field resolved it, or when the team member has left the team.

**Requires:** [`markets_read`](https://developers.redo.com/docs/api-reference/v3/reference/scopes#scope-markets_read)

**status** `[ImportRestrictionStatus!](/docs/api-reference/v3/reference/markets/import-restriction-status)` *required*

Whether the merchant has marked the rule resolved.

**summary** `String!` *required*

A plain-language summary of what the rule requires.

**tier** `[ImportRestrictionTier!](/docs/api-reference/v3/reference/markets/import-restriction-tier)` *required*

The most severe tier at which any product in the catalog trips the rule.

## Example

```graphql theme={null}
query {
  importRestriction(id: "...") {
    affectedProducts {
      nodes {
        barcodes
        createdAt
        description
        hsCode
        id
        originCountry
        physicalItem
        sku
        # ...
      }
      pageInfo { hasNextPage endCursor }
    }
    category
    countryCode
    id
    lastSeenAt
    regulationUrl
    resolutionNote
    resolvedAt
    # ...
  }
}
```


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.