# Get Fees for Online Store

Public endpoint that gets fees for use in the online store

Endpoint: POST /examFees/{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):

  - `exam_ids` (array, required)

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

## Response 200:

  - `200` (unknown)
    The store was retrieved

## Response 200 fields (application/json):

  - `exams` (array)

  - `exams.description` (string)

  - `exams.display_in_portal_as` (string)
    Portal display

  - `exams.id` (string)
    ID of the exam

  - `exams.name` (string)
    Name of the exam

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

  - `fees` (array)

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

  - `fees.exam_id` (string)
    Exam id

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

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

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

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

  - `offerings` (array)

  - `offerings.additional_location_info` (string)
    Additional location information

  - `offerings.date` (string)

  - `offerings.description` (string)
    A description for the portal

  - `offerings.end_time` (string)
    The registration date/time

  - `offerings.exam_id` (string, required)
    The exam

  - `offerings.fee_id` (string)
    The fee for initial testing

  - `offerings.id` (string)

  - `offerings.location` (string, required)
    Enum: "none", "testing facility", "training location"

  - `offerings.name` (string, required)
    The name of the offering

  - `offerings.registration_time` (string)
    The registration date/time

  - `offerings.retest_fee_id` (string)
    The fee for retake/retest

  - `offerings.start_time` (string)
    The registration date/time

  - `offerings.testing_facility_id` (string)
    The exam testing site

  - `offerings.training_location_id` (string)
    The training facility

  - `offerings.type` (string, required)
    The type of exam
    Enum: "live", "remote proctor"

## 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)

