Skip to main content
The search query provides full-text search across the entire WikiParfum catalog — perfumes, ingredients, brands, sub-brands, families, and perfumists — in a single call. Results are scored by relevance and grouped by entity type, making it ideal for building search-as-you-type experiences and omnibox interfaces.
query Search {
  search(q: "rose", lang: "EN", limit: 10) {
    q
    totals {
      perfumes
      ingredients
      brands
      families
      perfumists
    }
    results {
      perfumes {
        id
        score
      }
      ingredients {
        id
        score
      }
      brands {
        id
        score
      }
    }
  }
}

Filter by entity type

Use the types parameter to restrict results to specific entity types. This reduces payload size and improves response time when you only need one category.
query SearchPerfumesOnly {
  search(q: "sauvage", lang: "EN", types: [perfumes], limit: 20) {
    totals {
      perfumes
    }
    results {
      perfumes {
        id
        score
      }
    }
  }
}

Available search types

TypeDescription
perfumesFragrance products
ingredientsOlfactive ingredients
brandsParent brands
subbrandsSub-brand lines
familiesOlfactive families
perfumistsFragrance creators

Search multiple types

Combine types to build focused search experiences — for example, searching perfumes and ingredients together for a discovery interface.
query SearchDiscovery {
  search(
    q: "oud"
    lang: "EN"
    types: [perfumes, ingredients]
    limit: 10
  ) {
    totals {
      perfumes
      ingredients
    }
    results {
      perfumes {
        id
        score
      }
      ingredients {
        id
        score
      }
    }
  }
}
Use limit_catalog: true to restrict results to perfumes available in the client’s configured catalog. This ensures search results only show products the end user can actually access or purchase.
query CatalogSearch {
  search(
    q: "floral"
    lang: "EN"
    types: [perfumes]
    limit: 20
    limit_catalog: true
  ) {
    results {
      perfumes {
        id
        score
      }
    }
  }
}

Multi-language support

Search works across all supported languages. Pass the appropriate language code to get results matched and ranked in that language.
query SearchInFrench {
  search(q: "boisé", lang: "FR", types: [perfumes, ingredients], limit: 10) {
    results {
      perfumes {
        id
        score
      }
      ingredients {
        id
        score
      }
    }
  }
}