GET
/api/v4/sub-categoriesサブカテゴリの一覧取得
拠点の作成時または更新時に分類に使用するサブカテゴリの全カタログを返します。
パラメーター
このエンドポイントにパラメーターはありません。
レスポンス
200The full list of subcategory objects.
{ "data": { "subcategories": [ { "databaseId": 639, "id": "U3ViQ2F0ZWdvcnk6NjM5", "key": "3d-printing", "name": "3D Printing", "primary": true }, { "databaseId": 4589, "id": "U3ViQ2F0ZWdvcnk6NDU4OQ==", "key": "3d-printing-service", "name": "3D printing service", "primary": true }, { "databaseId": 3268, "id": "U3ViQ2F0ZWdvcnk6MzI2OA==", "key": "aadhaar-center", "name": "Aadhaar center", "primary": true } ] }}401Unauthenticated, missing or invalid API key.
429Rate limit exceeded. Retry after the `Retry-After` header value.
拠点の業種を分類するサブカテゴリの完全なカタログを返します。このアカウントでは約6,000件のエントリが返されるため、作成や更新のたびに処理内で呼び出すのではなく、大規模でほぼ静的な参照データとして扱い、1度取得してキャッシュし、定期的に更新してください。
各項目には次の情報が含まれます。
databaseId: 拠点の作成時または更新時にsubCategoryIdとして渡す整数です。補足カテゴリとして使用する場合は、additionalCategoryIds配列に含めます。id: 同じレコードのBase64でエンコードされたRelay識別子です。key: カテゴリ名をURLで扱いやすい形式にしたスラッグです。name: 人が読んで理解できるラベルです。primary: そのカテゴリを拠点のメインサブカテゴリとして使用できるかどうかを示します。
拠点を作成する前のカテゴリの特定
拠点の登録時には、通常、業種を自由形式のテキスト(「3Dプリントサービス」)で把握していますが、createLocationには数値のsubCategoryIdが必要です。手順は、この一覧を1度取得し、自分のコード内でname → databaseIdのマッピングを作成してから、作成時にidを検索するという流れです。
const res = await fetch('https://listingsapi.com/api/v4/sub-categories', { headers: { Authorization: 'API ' + process.env.LISTINGSAPI_KEY },});const { data } = await res.json();const byName = new Map(data.subcategories.map((s) => [s.name.toLowerCase(), s.databaseId])); const subCategoryId = byName.get('3d printing service'); // 4589拠点に複数のカテゴリを設定するには、メインカテゴリをsubCategoryIdに渡し、最大9個の補足カテゴリのidをadditionalCategoryIdsに渡します。これらのフィールドの使用方法については、拠点の作成と拠点の更新を参照してください。
レスポンスは、ページ分割されていない単一の配列です。他の呼び出しと同様にアカウントのレート制限の対象となるため、拠点ごとに再取得するのではなくキャッシュしてください。429レスポンスにはRetry-Afterヘッダーが含まれます。
Request
curl -X GET 'https://listingsapi.com/api/v4/sub-categories' \ -H "Authorization: API $LISTINGSAPI_KEY"