Query parameters

  • page number

    Current page

  • pageSize number

    Number of items per page

  • selectAll boolean

    Determines if all items are selected

  • where object

    App\Seasons\Core\Models\Season Filters: 0, 1

    Hide where attributes Show where attributes object
  • sort object

    App\Seasons\Core\Models\Season Sorting by name, startAt, endAt, createdAt

    Hide sort attributes Show sort attributes object
    • name string

      Values are asc or desc.

    • startAt string

      Values are asc or desc.

    • endAt string

      Values are asc or desc.

    • createdAt string

      Values are asc or desc.

  • onlyArchived boolean

    Determines whether to return only archived records in the response.

Responses

  • 200 application/json

    Paginated response

    Hide response attributes Show response attributes object
    • data array[object] Required

      Season schema

      Hide data attributes Show data attributes object
      • id string Required

        id

      • companyId string Required

        Company ID

      • name string Required

        Name

      • startAt string(date) Required

        Start At

      • endAt string(date) Required

        End At

      • registrationOpen boolean Required

        Whether Registration is currently open

      • registrationStatus string Required

        Values are never, open, closed, or ended.

      • enableRegistrationFees boolean Required

        Whether company registration fees are enabled for this season

      • registrationFeeDto object Required

        Registration Fee schema

        Hide registrationFeeDto attributes Show registrationFeeDto attributes object
        • id string Required

          Registration fee ID

        • name string Required

          Name

        • amount integer Required

          Amount

        • maxAmountPerFamily integer | null Required

          Max Amount Per Family

        • repetitionInterval string Required

          Values are one-off, annual, or per-season.

        • dueDate string(date) | null Required

          Due Date

        • proRated boolean

          Whether the registration fee can be pro-rated

        • taxRate object Required

          Tax Rate schema

          Hide taxRate attributes Show taxRate attributes object
          • id string Required

            id

          • rate number(float) Required

            Tax Rate (percent) with 3 decimal places

          • label string Required

            Label

          • isDefault boolean Required

            Is Default

        • archivedAt string(date-time) | null Required

          Archived At

      • registrationFee integer Required

        Registration fee

      • registrationFeeTaxRateId string | null Required

        Registration Fee Tax Rate ID

      • hasMaxRegistrationFee boolean Required

        Whether there is a maximum registration fee

      • maxRegistrationFee integer | null Required

        Maximum registration fee per Family

      • pricingScheme string Required

        Values are none, class-count, or total-duration.

      • pricingModel string Required

        Values are per-lesson, per-month, or per-season.

      • pricingPlans array[object] Required

        Pricing plan schema

        Hide pricingPlans attributes Show pricingPlans attributes object
        • id string Required

          Pricing plan ID

        • seasonId string Required

          Season ID

        • pricingModel string Required

          Values are per-lesson, per-month, or per-season.

        • firstPaymentDate string(date) Required

          First payment date

        • numberOfInstallments integer Required

          Number of installments

        • type string Required

          Values are one-off, monthly, fortnightly, weekly, or custom.

        • discount number Required
        • enabled boolean Required

          Whether the pricing plan is enabled

        • installmentDates array[string(date-time)] | null Required

          Custom installment dates for custom pricing plans

      • additionalFees array[object] Required

        Additional fees

        Fee for entity

        Hide additionalFees attributes Show additionalFees attributes object
        • id string Required

          Make up lesson ID

        • companyId string Required

          Company ID

        • entityId string Required

          The entity ID

        • description string Required

          The description of the fee

        • amount integer Required

          The amount of fee

        • proRated boolean Required

          Whether the fee is prorated based on season duration

        • maxAmountPerFamily integer | null Required

          The maximum amount per family

        • taxRateId string | null Required

          Tax rate ID

      • createdAt string(date-time) Required

        Created at date

      • updatedAt string(date-time) | null Required

        Updated at date

      • archivedAt string(date-time) | null Required

        Archived at date

    • pagination object Required

      Pagination schema

      Hide pagination attributes Show pagination attributes object
      • total integer Required

        Total number of items

      • count integer Required

        Number of items on this page

      • perPage integer

        Number of items per page

      • currentPage integer

        Current page number

      • totalPages integer

        Total number of pages

  • 403 application/json

    Not authorized

    Hide response attributes Show response attributes object

    Error schema

    • statusCode number Required

      Status Code

    • messages array[string] Required

      List of error messages

    • exception object

      Exception

GET /v1/seasons/
curl \
 --request GET 'https://localhost/v1/seasons/'
Response examples (200)
{
  "data": [
    {
      "id": "sea_xxxxxxxxxxx",
      "companyId": "co_123123123123",
      "name": "2024 Season",
      "startAt": "2023-12-25",
      "endAt": "2023-12-25",
      "registrationOpen": true,
      "registrationStatus": "never",
      "enableRegistrationFees": true,
      "registrationFeeDto": {
        "id": "reg_xxxxxxxxxxxxxxxxxxxxxxxxxx",
        "name": "Registration Fee",
        "amount": 100,
        "maxAmountPerFamily": 100,
        "repetitionInterval": "one-off",
        "dueDate": "2023-12-05",
        "proRated": true,
        "taxRate": {
          "id": "tax_xxxxxxxxxxxxxxxxxxxxxxxxxx",
          "rate": "20.000",
          "label": "VAT (20%)",
          "isDefault": true
        },
        "archivedAt": "2024-06-12T09:39:49.000000Z"
      },
      "registrationFee": 100,
      "registrationFeeTaxRateId": "tax_xxxxxxxxxxxxxxxxxxxxxxxxxx",
      "hasMaxRegistrationFee": true,
      "maxRegistrationFee": 200,
      "pricingScheme": "none",
      "pricingModel": "per-lesson",
      "pricingPlans": [
        {
          "id": "pp_xxxxxxxxxxxxxxxxxxxxxxxxxx",
          "seasonId": "sea_xxxxxxxxxxxxxxxxxxxxxxxxxx",
          "pricingModel": "per-lesson",
          "firstPaymentDate": "2023-12-05",
          "numberOfInstallments": 100,
          "type": "one-off",
          "discount": 42.0,
          "enabled": true,
          "installmentDates": [
            "2025-05-04T09:42:00Z"
          ]
        }
      ],
      "additionalFees": [
        {
          "id": "mkpl_xxxxxxxxxxxxxxxxxxxxxxxxxx",
          "companyId": "co_xxxxxxxxxxxxxxxxxxxxxxxxxx",
          "entityId": "sea_xxxxxxxxxxx",
          "description": "Setup fee",
          "amount": 1500,
          "proRated": false,
          "maxAmountPerFamily": 100,
          "taxRateId": "tax_xxxxxxxxxxxxxxxxxxxxxxxxxx"
        }
      ],
      "createdAt": "2023-12-05 14:30:41",
      "updatedAt": "2023-12-05 14:30:41",
      "archivedAt": "2023-12-05 14:30:41"
    }
  ],
  "pagination": {
    "total": 15,
    "count": 10,
    "perPage": 10,
    "currentPage": 1,
    "totalPages": 2
  }
}
Response examples (403)
{
  "statusCode": 42.0,
  "messages": [
    "string"
  ],
  "exception": {}
}