# Organization API: Catalog & Services: Platform products

> The 1 Organization API operations for platform products.

Source: https://docs.coritan.com/api/reference/organizations/catalog-services/platform-products/

Part of [Catalog & Services](/api/reference/organizations/catalog-services/).

## Operations

| Method | Path | Summary |
| --- | --- | --- |
| GET | [`/api/v1/orgs/{org_slug}/platform-products`](#op-get-api-v1-orgs-org-slug-platform-products) | The platform products this organization may link a product to |

### The platform products this organization may link a product to {#op-get-api-v1-orgs-org-slug-platform-products}

`GET /api/v1/orgs/{org_slug}/platform-products`

The platform products this organization may link a product to.

The platform catalogue (active products, with subnet rentals only while
they are on), plus the free plan when a platform admin has let the
organization sell it. It carries no availability: it is for choosing
what a product provisions, and the storefront reads availability itself.

#### Parameters

| Name | In | Type | Required |
| --- | --- | --- | --- |
| `org_slug` | path | string | yes |

#### Responses

| Status | Meaning |
| --- | --- |
| `200` | Success. |
| `422` | The request is not valid. `detail` lists each problem. |

A `200` response is a list; each item has these fields:

| Field | Type |
| --- | --- |
| `[].id` | integer |
| `[].name` | string |
| `[].slug` | string |
| `[].description` | string or null |
| `[].group_name` | string or null |
| `[].module_name` | string |
| `[].hardware_tier_id` | integer or null |
| `[].hardware_tier` | HardwareTierSummary or null |
| `[].hardware_tier.id` | integer |
| `[].hardware_tier.slug` | string |
| `[].hardware_tier.name` | string |
| `[].hardware_tier.code` | string |
| `[].hardware_tier.description` | string or null |
| `[].status` | string |
| `[].config_schema` | object or null |
| `[].sort_order` | integer |
| `[].stock_limit` | integer or null |
| `[].metadata` | object or null |
| `[].pricing` | array of PricingResponse |
| `[].pricing[].id` | integer |
| `[].pricing[].product_id` | integer |
| `[].pricing[].name` | string |
| `[].pricing[].billing_cycle` | string |
| `[].pricing[].price` | number |
| `[].pricing[].setup_fee` | number |
| `[].pricing[].currency` | string |
| `[].pricing[].is_active` | boolean |
| `[].pricing[].sort_order` | integer |
| `[].pricing[].metadata` | object or null |
| `[].pricing[].created_at` | string (date-time) |
| `[].config_options` | array of ConfigOptionResponse |
| `[].config_options[].id` | integer |
| `[].config_options[].product_id` | integer |
| `[].config_options[].field_name` | string |
| `[].config_options[].label` | string |
| `[].config_options[].field_type` | string |
| `[].config_options[].options` | object or null |
| `[].config_options[].default_value` | string or null |
| `[].config_options[].required` | boolean |
| `[].config_options[].price_modifier` | number |
| `[].config_options[].sort_order` | integer |
| `[].is_orderable_now` | boolean or null |
| `[].stock_status` | string or null |
| `[].availability_reason` | string or null |
| `[].group_is_orderable_now` | boolean or null |
| `[].group_stock_status` | string or null |
| `[].locations` | array of ProductLocationAvailability |
| `[].locations[].id` | integer |
| `[].locations[].code` | string |
| `[].locations[].name` | string |
| `[].locations[].country_code` | string |
| `[].locations[].available` | boolean |
| `[].locations[].orderable` | boolean |
| `[].locations[].reason` | string or null |
| `[].created_at` | string (date-time) |
