perfume-api 2.4.0 → 2.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -141,7 +141,7 @@ vanilla, a gourmand note: Warm, creamy, sweet and comforting, like custard and c
141
141
 
142
142
  ## Languages
143
143
 
144
- Every call takes `locale` (`en`, `de`, `fr`, `es`, `it`, `ro`, `el`, `hu`, `cs`, `pl`) for the 10ml.com links in the answer, and `format` (`concise` or `detailed`). Notes are understood in other languages too: "Vanille" finds vanilla.
144
+ Every call takes `locale` (`en`, `de`, `fr`, `es`, `it`, `ro`, `el`, `hu`, `cs`, `pl`, `nl`) for the 10ml.com links in the answer, and `format` (`concise` or `detailed`). Notes are understood in other languages too: "Vanille" finds vanilla.
145
145
 
146
146
  ## Limits and fair use
147
147
 
package/dist/types.d.ts CHANGED
@@ -56,36 +56,36 @@ export interface SearchPerfumesResponse {
56
56
  source: string;
57
57
  }
58
58
  export interface SearchPerfumesParams {
59
- /** Free text: a perfume name, house, notes or mood. Examples: "fresh citrus summer for men", "Tom Ford tobacco", "vanilla gourmand for winter" */
59
+ /** Free text: a perfume name, house, notes or mood. Examples: "fresh citrus summer for men", "Tom Ford oud", "vanilla gourmand for winter" */
60
60
  q?: string;
61
61
  /** Only perfumes from this house. Examples: "Dior", "Maison Francis Kurkdjian", "MFK", "YSL" */
62
62
  house?: string;
63
- /** Every listed note must be present. Examples: ["oud","rose"], ["vanilla"] Comma-separated list. */
63
+ /** Every listed note must be present. Examples: ["oud","sandalwood"], ["vanilla"] Comma-separated list. */
64
64
  notes_include?: string | string[];
65
65
  /** None of these notes may be present. Example: ["patchouli"] Comma-separated list. */
66
66
  notes_exclude?: string | string[];
67
67
  /** Accords that must be present. Examples: ["woody","sweet"], ["fresh","aquatic"] Comma-separated list. */
68
68
  accords?: string | string[];
69
- /** Fragrance family: fougere, chypre, oriental-amber, gourmand, aquatic, aromatic, woody, floral, white-floral, fruity, citrus, green, leather, oud, musky, powdery, spicy, tobacco-boozy, smoky-incense, aldehydic-floral, mineral, fresh-spicy-woody, tea-zen. Also accepts words like "amber" or "citrus". */
69
+ /** Fragrance family. Examples: "chypre", "fougere", "gourmand", "amber", "citrus". Leave term empty in explain_perfume_term to list every family. */
70
70
  family?: string;
71
71
  /** Audience the perfume is marketed to. men and women also include unisex perfumes. */
72
72
  gender?: "men" | "women" | "unisex";
73
73
  /** Season the perfume suits (fall is accepted in text queries as autumn). */
74
74
  season?: "spring" | "summer" | "autumn" | "winter";
75
- /** Occasion the perfume suits: daytime, office, casual, evening, date night or special occasion. */
75
+ /** Occasion the perfume suits. */
76
76
  occasion?: "daytime" | "office" | "casual" | "evening" | "date night" | "special occasion";
77
- /** A style word: aquatic, boozy, clean, creamy, dark, floral, fresh, citrusy, fruity, gourmand, green, leathery, musky, powdery, sensual, smoky, spicy, sweet, woody. */
77
+ /** A style word the scent should have. */
78
78
  style?: "aquatic" | "boozy" | "clean" | "creamy" | "dark" | "floral" | "fresh" | "citrusy" | "fruity" | "gourmand" | "green" | "leathery" | "musky" | "powdery" | "sensual" | "smoky" | "spicy" | "sweet" | "woody";
79
79
  /** true = only the editors' iconic, era-defining classics (works with every other filter, and without a query) */
80
80
  iconic?: boolean;
81
- /** How many results per page (1-20, default 8). */
81
+ /** Results per page. */
82
82
  limit?: number;
83
- /** next_cursor from the previous page; omit for the first page. */
83
+ /** next_cursor from the previous page. */
84
84
  cursor?: string;
85
- /** concise (default) or detailed (adds note pyramid, seasons, occasions, longevity, projection). */
85
+ /** concise (default) or detailed (adds pyramid, seasons, occasions, longevity). */
86
86
  format?: "concise" | "detailed";
87
- /** Language of the 10ml.com links and labels. Perfume, house and note names stay as they are. */
88
- locale?: "en" | "de" | "fr" | "es" | "it" | "ro" | "el" | "hu" | "cs" | "pl";
87
+ /** Language of the 10ml.com links and labels. */
88
+ locale?: "en" | "de" | "fr" | "es" | "it" | "ro" | "el" | "hu" | "cs" | "pl" | "nl";
89
89
  }
90
90
  export interface GetPerfumeResponse {
91
91
  found: boolean;
@@ -121,10 +121,10 @@ export interface GetPerfumeResponse {
121
121
  export interface GetPerfumeParams {
122
122
  /** House, when the name alone is ambiguous. Example: "Creed" */
123
123
  house?: string;
124
- /** concise (default) or detailed (adds note pyramid, seasons, occasions, longevity, projection). */
124
+ /** concise (default) or detailed (adds pyramid, seasons, occasions, longevity). */
125
125
  format?: "concise" | "detailed";
126
- /** Language of the 10ml.com links and labels. Perfume, house and note names stay as they are. */
127
- locale?: "en" | "de" | "fr" | "es" | "it" | "ro" | "el" | "hu" | "cs" | "pl";
126
+ /** Language of the 10ml.com links and labels. */
127
+ locale?: "en" | "de" | "fr" | "es" | "it" | "ro" | "el" | "hu" | "cs" | "pl" | "nl";
128
128
  }
129
129
  export interface FindSimilarPerfumesResponse {
130
130
  /** How many results matched in all */
@@ -167,14 +167,14 @@ export interface FindSimilarPerfumesParams {
167
167
  gender?: "men" | "women" | "unisex";
168
168
  /** True to leave out perfumes from the same house as the starting perfume */
169
169
  other_houses_only?: boolean;
170
- /** How many results per page (1-15, default 8). */
170
+ /** Results per page. */
171
171
  limit?: number;
172
- /** next_cursor from the previous page; omit for the first page. */
172
+ /** next_cursor from the previous page. */
173
173
  cursor?: string;
174
- /** concise (default) or detailed (adds note pyramid, seasons, occasions, longevity, projection). */
174
+ /** concise (default) or detailed (adds pyramid, seasons, occasions, longevity). */
175
175
  format?: "concise" | "detailed";
176
- /** Language of the 10ml.com links and labels. Perfume, house and note names stay as they are. */
177
- locale?: "en" | "de" | "fr" | "es" | "it" | "ro" | "el" | "hu" | "cs" | "pl";
176
+ /** Language of the 10ml.com links and labels. */
177
+ locale?: "en" | "de" | "fr" | "es" | "it" | "ro" | "el" | "hu" | "cs" | "pl" | "nl";
178
178
  }
179
179
  export interface FindPerfumeAlternativesResponse {
180
180
  /** How many results matched in all */
@@ -211,12 +211,12 @@ export interface FindPerfumeAlternativesParams {
211
211
  house?: string;
212
212
  /** Only alternatives at this closeness */
213
213
  closeness?: "very close" | "similar vibe" | "same spirit";
214
- /** How many results per page (1-10, default 6). */
214
+ /** Results per page. */
215
215
  limit?: number;
216
- /** next_cursor from the previous page; omit for the first page. */
216
+ /** next_cursor from the previous page. */
217
217
  cursor?: string;
218
- /** Language of the 10ml.com links and labels. Perfume, house and note names stay as they are. */
219
- locale?: "en" | "de" | "fr" | "es" | "it" | "ro" | "el" | "hu" | "cs" | "pl";
218
+ /** Language of the 10ml.com links and labels. */
219
+ locale?: "en" | "de" | "fr" | "es" | "it" | "ro" | "el" | "hu" | "cs" | "pl" | "nl";
220
220
  }
221
221
  export interface ExplainNoteResponse {
222
222
  found: boolean;
@@ -239,10 +239,10 @@ export interface ExplainNoteResponse {
239
239
  source: string;
240
240
  }
241
241
  export interface ExplainNoteParams {
242
- /** concise (default) or detailed (adds note pyramid, seasons, occasions, longevity, projection). */
242
+ /** concise (default) or detailed (adds pyramid, seasons, occasions, longevity). */
243
243
  format?: "concise" | "detailed";
244
- /** Language of the 10ml.com links and labels. Perfume, house and note names stay as they are. */
245
- locale?: "en" | "de" | "fr" | "es" | "it" | "ro" | "el" | "hu" | "cs" | "pl";
244
+ /** Language of the 10ml.com links and labels. */
245
+ locale?: "en" | "de" | "fr" | "es" | "it" | "ro" | "el" | "hu" | "cs" | "pl" | "nl";
246
246
  }
247
247
  export interface ListHousesResponse {
248
248
  /** How many results matched in all */
@@ -269,12 +269,12 @@ export interface ListHousesParams {
269
269
  country?: string;
270
270
  /** Part of a house name, e.g. "tom" or "maison" */
271
271
  query?: string;
272
- /** How many results per page (1-50, default 20). */
272
+ /** Results per page. */
273
273
  limit?: number;
274
- /** next_cursor from the previous page; omit for the first page. */
274
+ /** next_cursor from the previous page. */
275
275
  cursor?: string;
276
- /** Language of the 10ml.com links and labels. Perfume, house and note names stay as they are. */
277
- locale?: "en" | "de" | "fr" | "es" | "it" | "ro" | "el" | "hu" | "cs" | "pl";
276
+ /** Language of the 10ml.com links and labels. */
277
+ locale?: "en" | "de" | "fr" | "es" | "it" | "ro" | "el" | "hu" | "cs" | "pl" | "nl";
278
278
  }
279
279
  export interface GetHouseResponse {
280
280
  found: boolean;
@@ -296,10 +296,10 @@ export interface GetHouseResponse {
296
296
  source: string;
297
297
  }
298
298
  export interface GetHouseParams {
299
- /** concise (default) or detailed (adds note pyramid, seasons, occasions, longevity, projection). */
299
+ /** concise (default) or detailed (adds pyramid, seasons, occasions, longevity). */
300
300
  format?: "concise" | "detailed";
301
- /** Language of the 10ml.com links and labels. Perfume, house and note names stay as they are. */
302
- locale?: "en" | "de" | "fr" | "es" | "it" | "ro" | "el" | "hu" | "cs" | "pl";
301
+ /** Language of the 10ml.com links and labels. */
302
+ locale?: "en" | "de" | "fr" | "es" | "it" | "ro" | "el" | "hu" | "cs" | "pl" | "nl";
303
303
  }
304
304
  export interface SearchGuidesResponse {
305
305
  /** How many results matched in all */
@@ -312,7 +312,7 @@ export interface SearchGuidesResponse {
312
312
  title: string;
313
313
  type: string;
314
314
  topics: string[];
315
- url: string;
315
+ url?: string;
316
316
  /** False when the guide is only available in English (the url is then the English page) */
317
317
  translated: boolean;
318
318
  }>;
@@ -323,12 +323,12 @@ export interface SearchGuidesParams {
323
323
  q?: string;
324
324
  /** how-to, list (rankings/comparisons), alternatives (dupes guides), note (a note explained), house (a house mapped) */
325
325
  type?: "how-to" | "list" | "alternatives" | "note" | "house";
326
- /** How many results per page (1-20, default 8). */
326
+ /** Results per page. */
327
327
  limit?: number;
328
- /** next_cursor from the previous page; omit for the first page. */
328
+ /** next_cursor from the previous page. */
329
329
  cursor?: string;
330
- /** Language of the 10ml.com links and labels. Perfume, house and note names stay as they are. */
331
- locale?: "en" | "de" | "fr" | "es" | "it" | "ro" | "el" | "hu" | "cs" | "pl";
330
+ /** Language of the 10ml.com links and labels. */
331
+ locale?: "en" | "de" | "fr" | "es" | "it" | "ro" | "el" | "hu" | "cs" | "pl" | "nl";
332
332
  }
333
- export type Locale = "en" | "de" | "fr" | "es" | "it" | "ro" | "el" | "hu" | "cs" | "pl";
333
+ export type Locale = "en" | "de" | "fr" | "es" | "it" | "ro" | "el" | "hu" | "cs" | "pl" | "nl";
334
334
  export type ResponseFormat = "concise" | "detailed";
package/dist/types.js CHANGED
@@ -1,2 +1,2 @@
1
- // Generated by scripts/gen-types.mjs from spec/openapi.json (10ML Fragrance Index API 2.3.4). Do not edit by hand.
1
+ // Generated by scripts/gen-types.mjs from spec/openapi.json (10ML Fragrance Index API 2.5.1). Do not edit by hand.
2
2
  export {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "perfume-api",
3
- "version": "2.4.0",
3
+ "version": "2.5.1",
4
4
  "description": "Free perfume API client: perfumes, note pyramids, accords, similar scents, notes and houses from the 10ML Fragrance Index. No API key, JSON over HTTPS.",
5
5
  "keywords": [
6
6
  "perfume",