1{
2  "basePath": "",
3  "baseUrl": "https://ideahub.googleapis.com/",
4  "batchPath": "batch",
5  "canonicalName": "Ideahub",
6  "description": "This is an invitation-only API.",
7  "discoveryVersion": "v1",
8  "documentationLink": "https://console.cloud.google.com/apis/library/ideahub.googleapis.com",
9  "fullyEncodeReservedExpansion": true,
10  "icons": {
11    "x16": "http://www.google.com/images/icons/product/search-16.gif",
12    "x32": "http://www.google.com/images/icons/product/search-32.gif"
13  },
14  "id": "ideahub:v1alpha",
15  "kind": "discovery#restDescription",
16  "mtlsRootUrl": "https://ideahub.mtls.googleapis.com/",
17  "name": "ideahub",
18  "ownerDomain": "google.com",
19  "ownerName": "Google",
20  "parameters": {
21    "$.xgafv": {
22      "description": "V1 error format.",
23      "enum": [
24        "1",
25        "2"
26      ],
27      "enumDescriptions": [
28        "v1 error format",
29        "v2 error format"
30      ],
31      "location": "query",
32      "type": "string"
33    },
34    "access_token": {
35      "description": "OAuth access token.",
36      "location": "query",
37      "type": "string"
38    },
39    "alt": {
40      "default": "json",
41      "description": "Data format for response.",
42      "enum": [
43        "json",
44        "media",
45        "proto"
46      ],
47      "enumDescriptions": [
48        "Responses with Content-Type of application/json",
49        "Media download with context-dependent Content-Type",
50        "Responses with Content-Type of application/x-protobuf"
51      ],
52      "location": "query",
53      "type": "string"
54    },
55    "callback": {
56      "description": "JSONP",
57      "location": "query",
58      "type": "string"
59    },
60    "fields": {
61      "description": "Selector specifying which fields to include in a partial response.",
62      "location": "query",
63      "type": "string"
64    },
65    "key": {
66      "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.",
67      "location": "query",
68      "type": "string"
69    },
70    "oauth_token": {
71      "description": "OAuth 2.0 token for the current user.",
72      "location": "query",
73      "type": "string"
74    },
75    "prettyPrint": {
76      "default": "true",
77      "description": "Returns response with indentations and line breaks.",
78      "location": "query",
79      "type": "boolean"
80    },
81    "quotaUser": {
82      "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.",
83      "location": "query",
84      "type": "string"
85    },
86    "uploadType": {
87      "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
88      "location": "query",
89      "type": "string"
90    },
91    "upload_protocol": {
92      "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
93      "location": "query",
94      "type": "string"
95    }
96  },
97  "protocol": "rest",
98  "resources": {
99    "ideas": {
100      "methods": {
101        "list": {
102          "description": "List ideas for a given Creator and filter and sort options.",
103          "flatPath": "v1alpha/ideas",
104          "httpMethod": "GET",
105          "id": "ideahub.ideas.list",
106          "parameterOrder": [],
107          "parameters": {
108            "filter": {
109              "description": "Allows filtering. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions are implicitly combined, as if the `AND` operator was always used. The `OR` operator is currently unsupported. * Supported functions: - `saved(bool)`: If set to true, fetches only saved ideas. If set to false, fetches all except saved ideas. Can't be simultaneously used with `dismissed(bool)`. - `dismissed(bool)`: If set to true, fetches only dismissed ideas. Can't be simultaneously used with `saved(bool)`. The `false` value is currently unsupported. Examples: * `saved(true)` * `saved(false)` * `dismissed(true)` The length of this field should be no more than 500 characters.",
110              "location": "query",
111              "type": "string"
112            },
113            "orderBy": {
114              "description": "Order semantics described below.",
115              "location": "query",
116              "type": "string"
117            },
118            "pageSize": {
119              "description": "The maximum number of ideas per page. If unspecified, at most 10 ideas will be returned. The maximum value is 2000; values above 2000 will be coerced to 2000.",
120              "format": "int32",
121              "location": "query",
122              "type": "integer"
123            },
124            "pageToken": {
125              "description": "Used to fetch next page.",
126              "location": "query",
127              "type": "string"
128            },
129            "parent": {
130              "description": "If defined, specifies the creator for which to filter by. Format: publishers/{publisher}/properties/{property}",
131              "location": "query",
132              "type": "string"
133            }
134          },
135          "path": "v1alpha/ideas",
136          "response": {
137            "$ref": "GoogleSearchIdeahubV1alphaListIdeasResponse"
138          }
139        }
140      }
141    },
142    "platforms": {
143      "resources": {
144        "properties": {
145          "resources": {
146            "ideaActivities": {
147              "methods": {
148                "create": {
149                  "description": "Creates an idea activity entry.",
150                  "flatPath": "v1alpha/platforms/{platformsId}/properties/{propertiesId}/ideaActivities",
151                  "httpMethod": "POST",
152                  "id": "ideahub.platforms.properties.ideaActivities.create",
153                  "parameterOrder": [
154                    "parent"
155                  ],
156                  "parameters": {
157                    "parent": {
158                      "description": "Required. The parent resource where this idea activity will be created. Format: platforms/{platform}/property/{property}",
159                      "location": "path",
160                      "pattern": "^platforms/[^/]+/properties/[^/]+$",
161                      "required": true,
162                      "type": "string"
163                    }
164                  },
165                  "path": "v1alpha/{+parent}/ideaActivities",
166                  "request": {
167                    "$ref": "GoogleSearchIdeahubV1alphaIdeaActivity"
168                  },
169                  "response": {
170                    "$ref": "GoogleSearchIdeahubV1alphaIdeaActivity"
171                  }
172                }
173              }
174            },
175            "ideaStates": {
176              "methods": {
177                "patch": {
178                  "description": "Update an idea state resource.",
179                  "flatPath": "v1alpha/platforms/{platformsId}/properties/{propertiesId}/ideaStates/{ideaStatesId}",
180                  "httpMethod": "PATCH",
181                  "id": "ideahub.platforms.properties.ideaStates.patch",
182                  "parameterOrder": [
183                    "name"
184                  ],
185                  "parameters": {
186                    "name": {
187                      "description": "Unique identifier for the idea state. Format: platforms/{platform}/properties/{property}/ideaStates/{idea_state}",
188                      "location": "path",
189                      "pattern": "^platforms/[^/]+/properties/[^/]+/ideaStates/[^/]+$",
190                      "required": true,
191                      "type": "string"
192                    },
193                    "updateMask": {
194                      "description": "The list of fields to be updated.",
195                      "format": "google-fieldmask",
196                      "location": "query",
197                      "type": "string"
198                    }
199                  },
200                  "path": "v1alpha/{+name}",
201                  "request": {
202                    "$ref": "GoogleSearchIdeahubV1alphaIdeaState"
203                  },
204                  "response": {
205                    "$ref": "GoogleSearchIdeahubV1alphaIdeaState"
206                  }
207                }
208              }
209            },
210            "ideas": {
211              "methods": {
212                "list": {
213                  "description": "List ideas for a given Creator and filter and sort options.",
214                  "flatPath": "v1alpha/platforms/{platformsId}/properties/{propertiesId}/ideas",
215                  "httpMethod": "GET",
216                  "id": "ideahub.platforms.properties.ideas.list",
217                  "parameterOrder": [
218                    "parent"
219                  ],
220                  "parameters": {
221                    "filter": {
222                      "description": "Allows filtering. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions are implicitly combined, as if the `AND` operator was always used. The `OR` operator is currently unsupported. * Supported functions: - `saved(bool)`: If set to true, fetches only saved ideas. If set to false, fetches all except saved ideas. Can't be simultaneously used with `dismissed(bool)`. - `dismissed(bool)`: If set to true, fetches only dismissed ideas. Can't be simultaneously used with `saved(bool)`. The `false` value is currently unsupported. Examples: * `saved(true)` * `saved(false)` * `dismissed(true)` The length of this field should be no more than 500 characters.",
223                      "location": "query",
224                      "type": "string"
225                    },
226                    "orderBy": {
227                      "description": "Order semantics described below.",
228                      "location": "query",
229                      "type": "string"
230                    },
231                    "pageSize": {
232                      "description": "The maximum number of ideas per page. If unspecified, at most 10 ideas will be returned. The maximum value is 2000; values above 2000 will be coerced to 2000.",
233                      "format": "int32",
234                      "location": "query",
235                      "type": "integer"
236                    },
237                    "pageToken": {
238                      "description": "Used to fetch next page.",
239                      "location": "query",
240                      "type": "string"
241                    },
242                    "parent": {
243                      "description": "If defined, specifies the creator for which to filter by. Format: publishers/{publisher}/properties/{property}",
244                      "location": "path",
245                      "pattern": "^platforms/[^/]+/properties/[^/]+$",
246                      "required": true,
247                      "type": "string"
248                    }
249                  },
250                  "path": "v1alpha/{+parent}/ideas",
251                  "response": {
252                    "$ref": "GoogleSearchIdeahubV1alphaListIdeasResponse"
253                  }
254                }
255              }
256            },
257            "locales": {
258              "methods": {
259                "list": {
260                  "description": "Returns which locales ideas are available in for a given Creator.",
261                  "flatPath": "v1alpha/platforms/{platformsId}/properties/{propertiesId}/locales",
262                  "httpMethod": "GET",
263                  "id": "ideahub.platforms.properties.locales.list",
264                  "parameterOrder": [
265                    "parent"
266                  ],
267                  "parameters": {
268                    "pageSize": {
269                      "description": "The maximum number of locales to return. The service may return fewer than this value. If unspecified, at most 100 locales will be returned. The maximum value is 100; values above 100 will be coerced to 100.",
270                      "format": "int32",
271                      "location": "query",
272                      "type": "integer"
273                    },
274                    "pageToken": {
275                      "description": "A page token, received from a previous `ListAvailableLocales` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListAvailableLocales` must match the call that provided the page token.",
276                      "location": "query",
277                      "type": "string"
278                    },
279                    "parent": {
280                      "description": "Required. The web property to check idea availability for Format: platforms/{platform}/property/{property}",
281                      "location": "path",
282                      "pattern": "^platforms/[^/]+/properties/[^/]+$",
283                      "required": true,
284                      "type": "string"
285                    }
286                  },
287                  "path": "v1alpha/{+parent}/locales",
288                  "response": {
289                    "$ref": "GoogleSearchIdeahubV1alphaListAvailableLocalesResponse"
290                  }
291                }
292              }
293            },
294            "topicStates": {
295              "methods": {
296                "patch": {
297                  "description": "Update a topic state resource.",
298                  "flatPath": "v1alpha/platforms/{platformsId}/properties/{propertiesId}/topicStates/{topicStatesId}",
299                  "httpMethod": "PATCH",
300                  "id": "ideahub.platforms.properties.topicStates.patch",
301                  "parameterOrder": [
302                    "name"
303                  ],
304                  "parameters": {
305                    "name": {
306                      "description": "Unique identifier for the topic state. Format: platforms/{platform}/properties/{property}/topicStates/{topic_state}",
307                      "location": "path",
308                      "pattern": "^platforms/[^/]+/properties/[^/]+/topicStates/[^/]+$",
309                      "required": true,
310                      "type": "string"
311                    },
312                    "updateMask": {
313                      "description": "The list of fields to be updated.",
314                      "format": "google-fieldmask",
315                      "location": "query",
316                      "type": "string"
317                    }
318                  },
319                  "path": "v1alpha/{+name}",
320                  "request": {
321                    "$ref": "GoogleSearchIdeahubV1alphaTopicState"
322                  },
323                  "response": {
324                    "$ref": "GoogleSearchIdeahubV1alphaTopicState"
325                  }
326                }
327              }
328            }
329          }
330        }
331      }
332    }
333  },
334  "revision": "20220103",
335  "rootUrl": "https://ideahub.googleapis.com/",
336  "schemas": {
337    "GoogleSearchIdeahubV1alphaAvailableLocale": {
338      "description": "Represents locales that are available for a web property.",
339      "id": "GoogleSearchIdeahubV1alphaAvailableLocale",
340      "properties": {
341        "locale": {
342          "description": "A string in BCP 47 format, without a resource prefix.",
343          "type": "string"
344        },
345        "name": {
346          "description": "A string in BCP 47 format, prefixed with the platform and property name, and \"locales/\". Format: platforms/{platform}/properties/{property}/locales/{locale}",
347          "type": "string"
348        }
349      },
350      "type": "object"
351    },
352    "GoogleSearchIdeahubV1alphaIdea": {
353      "description": "A single Idea that we want to show the end user.",
354      "id": "GoogleSearchIdeahubV1alphaIdea",
355      "properties": {
356        "name": {
357          "description": "Unique identifier for the idea. Format: ideas/{ideaId}",
358          "type": "string"
359        },
360        "text": {
361          "description": "The idea\u2019s text.",
362          "type": "string"
363        },
364        "topics": {
365          "description": "The Topics that match the idea.",
366          "items": {
367            "$ref": "GoogleSearchIdeahubV1alphaTopic"
368          },
369          "type": "array"
370        }
371      },
372      "type": "object"
373    },
374    "GoogleSearchIdeahubV1alphaIdeaActivity": {
375      "description": "An idea activity entry.",
376      "id": "GoogleSearchIdeahubV1alphaIdeaActivity",
377      "properties": {
378        "ideas": {
379          "description": "The Idea IDs for this entry. If empty, topics should be set.",
380          "items": {
381            "type": "string"
382          },
383          "type": "array"
384        },
385        "name": {
386          "description": "Unique identifier for the idea activity. The name is ignored when creating an idea activity. Format: platforms/{platform}/properties/{property}/ideaActivities/{idea_activity}",
387          "type": "string"
388        },
389        "topics": {
390          "description": "The Topic IDs for this entry. If empty, ideas should be set.",
391          "items": {
392            "type": "string"
393          },
394          "type": "array"
395        },
396        "type": {
397          "description": "The type of activity performed.",
398          "enum": [
399            "TYPE_UNSPECIFIED",
400            "POST_DRAFTED",
401            "POST_PUBLISHED",
402            "POST_DELETED",
403            "POST_UNPUBLISHED"
404          ],
405          "enumDescriptions": [
406            "An unspecified, unknown type of idea activity.",
407            "An idea activity type indicating a post has been drafted.",
408            "An idea activity type indicating a post has been published.",
409            "An idea activity type indicating a post has been deleted.",
410            "An idea activity type indicating a post has been unpublished."
411          ],
412          "type": "string"
413        },
414        "uri": {
415          "description": "The uri the activity relates to.",
416          "type": "string"
417        }
418      },
419      "type": "object"
420    },
421    "GoogleSearchIdeahubV1alphaIdeaState": {
422      "description": "Represents idea state specific to a web property.",
423      "id": "GoogleSearchIdeahubV1alphaIdeaState",
424      "properties": {
425        "dismissed": {
426          "description": "Whether the idea is dismissed.",
427          "type": "boolean"
428        },
429        "name": {
430          "description": "Unique identifier for the idea state. Format: platforms/{platform}/properties/{property}/ideaStates/{idea_state}",
431          "type": "string"
432        },
433        "saved": {
434          "description": "Whether the idea is saved.",
435          "type": "boolean"
436        }
437      },
438      "type": "object"
439    },
440    "GoogleSearchIdeahubV1alphaListAvailableLocalesResponse": {
441      "description": "Response for whether ideas are available for a given web property on a platform, for the currently logged-in user.",
442      "id": "GoogleSearchIdeahubV1alphaListAvailableLocalesResponse",
443      "properties": {
444        "availableLocales": {
445          "description": "Locales for which ideas are available for the given Creator.",
446          "items": {
447            "$ref": "GoogleSearchIdeahubV1alphaAvailableLocale"
448          },
449          "type": "array"
450        },
451        "nextPageToken": {
452          "description": "A token that can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.",
453          "type": "string"
454        }
455      },
456      "type": "object"
457    },
458    "GoogleSearchIdeahubV1alphaListIdeasResponse": {
459      "id": "GoogleSearchIdeahubV1alphaListIdeasResponse",
460      "properties": {
461        "ideas": {
462          "description": "Results for the ListIdeasRequest.",
463          "items": {
464            "$ref": "GoogleSearchIdeahubV1alphaIdea"
465          },
466          "type": "array"
467        },
468        "nextPageToken": {
469          "description": "Used to fetch the next page in a subsequent request.",
470          "type": "string"
471        }
472      },
473      "type": "object"
474    },
475    "GoogleSearchIdeahubV1alphaTopic": {
476      "description": "Represents a Topic umbrella for a list of questions that a Creator may want to respond to.",
477      "id": "GoogleSearchIdeahubV1alphaTopic",
478      "properties": {
479        "displayName": {
480          "description": "String displayed to the creator indicating the name of the Topic.",
481          "type": "string"
482        },
483        "mid": {
484          "description": "The mID of the topic.",
485          "type": "string"
486        },
487        "name": {
488          "description": "Unique identifier for the topic. Format: topics/{topic}",
489          "type": "string"
490        }
491      },
492      "type": "object"
493    },
494    "GoogleSearchIdeahubV1alphaTopicState": {
495      "description": "Represents topic state specific to a web property.",
496      "id": "GoogleSearchIdeahubV1alphaTopicState",
497      "properties": {
498        "dismissed": {
499          "description": "Whether the topic is dismissed.",
500          "type": "boolean"
501        },
502        "name": {
503          "description": "Unique identifier for the topic state. Format: platforms/{platform}/properties/{property}/topicStates/{topic_state}",
504          "type": "string"
505        },
506        "saved": {
507          "description": "Whether the topic is saved.",
508          "type": "boolean"
509        }
510      },
511      "type": "object"
512    }
513  },
514  "servicePath": "",
515  "title": "Idea Hub API",
516  "version": "v1alpha",
517  "version_module": true
518}