# Get Fees for Online Store

Public endpoint that gets fees for use in the online store

Endpoint: POST /courseFees/{tenantId}/public/onlineStore
Version: v1-2025-04-18

## Path parameters:

  - `tenantId` (string, required)
    The tenant

## Request body:

  - `application/json` (unknown)
    Restrictions

## Request fields (application/json):

  - `course_ids` (array, required)

  - `course_restriction` (string)
    Enum: "exclude", "include", "none"

  - `course_type_ids` (array, required)

  - `course_type_restriction` (string)
    Enum: "exclude", "include", "none"

## Response 200:

  - `200` (unknown)
    The store was retrieved

## Response 200 fields (application/json):

  - `course_types` (array)

  - `course_types.display_in_portal_as` (string)
    Portal display

  - `course_types.display_order` (number)
    Display order for the course type

  - `course_types.id` (string)
    ID of the course type

  - `course_types.name` (string)
    Name of the course type

  - `courses` (array)

  - `courses.display_in_portal_as` (string)
    Portal display

  - `courses.id` (string)
    ID of the course

  - `courses.name` (string)
    Name of the course

  - `courses.type_id` (string)
    The course type id

  - `courses.universal_shopping_cart_image_uri` (string)
    Image to use for the cart

  - `fees` (array)

  - `fees.course_id` (string)
    Course id

  - `fees.enable_special_prices` (boolean)
    Whether special prices are used

  - `fees.id` (string)
    ID of the course fee

  - `fees.member_price` (number)
    Renewal price of the package

  - `fees.name` (string)
    Name of the course fee

  - `fees.price` (number)
    Price of the package

  - `offerings` (array)

  - `offerings.course_id` (string, required)
    The course being scheduled

  - `offerings.course_type_id` (string)
    The type of course

  - `offerings.description` (string)
    Any information you want to display about this in the portal

  - `offerings.end_date` (string)
    The date of the course

  - `offerings.fee_id` (string)
    The course registration fee

  - `offerings.id` (string)
    ID of the course

  - `offerings.name` (string)
    Name of the course

  - `offerings.program_ids` (array)
    The programs for which this course is relevant

  - `offerings.short_description` (string)
    Any short descriptive information to display in the directory

  - `offerings.start_date` (string)
    The date of the course

  - `offerings.timezone` (string)
    The timezone in which the course offering lives

  - `offerings.timezone_abbreviation` (string)
    The timezone abbreviation, based on the event start date

  - `offerings.timezone_mode` (string)
    Enum: "local", "specific timezone"

  - `offerings.timezone_offset` (number)
    The time zone offset, in minutes, from UTC, based on the event start date

  - `offerings.type` (string)
    Enum: "in person", "on-demand", "virtual"

## Response 200 headers (application/json):

  - `Access-Control-Allow-Headers` (string)

  - `Access-Control-Allow-Methods` (string)

  - `Access-Control-Allow-Origin` (string)

## Response 400:

  - `400` (unknown)
    The request was not valid.

## Response 400 headers:

  - `Access-Control-Allow-Headers` (string)

  - `Access-Control-Allow-Methods` (string)

  - `Access-Control-Allow-Origin` (string)

## Response 401:

  - `401` (unknown)
    Unauthorized

## Response 401 headers:

  - `Access-Control-Allow-Headers` (string)

  - `Access-Control-Allow-Methods` (string)

  - `Access-Control-Allow-Origin` (string)

## Response 403:

  - `403` (unknown)
    Forbidden

## Response 403 headers:

  - `Access-Control-Allow-Headers` (string)

  - `Access-Control-Allow-Methods` (string)

  - `Access-Control-Allow-Origin` (string)

## Response 404:

  - `404` (unknown)
    Unable to locate records

## Response 404 headers:

  - `Access-Control-Allow-Headers` (string)

  - `Access-Control-Allow-Methods` (string)

  - `Access-Control-Allow-Origin` (string)

## Response 429:

  - `429` (unknown)
    Limit exceeded... unable to retrieve records based on tenant limits.

## Response 429 headers:

  - `Access-Control-Allow-Headers` (string)

  - `Access-Control-Allow-Methods` (string)

  - `Access-Control-Allow-Origin` (string)

## Response 500:

  - `500` (unknown)
    General server error

## Response 500 headers:

  - `Access-Control-Allow-Headers` (string)

  - `Access-Control-Allow-Methods` (string)

  - `Access-Control-Allow-Origin` (string)

