---
title: "createCatalog"
method: POST
path: "/core/api/v1/catalog"
tags: ["catalog-controller"]
---

# createCatalog

`POST /core/api/v1/catalog`

## Request

- Base URL: `https://api.freshlearn.com`
- URL: `https://api.freshlearn.com/core/api/v1/catalog`
- Auth: none declared

## Headers

- `Authorization` string
- `domain` string
- `api-key` string

## Request body

- CatalogDTO
  - `catalogueName` string
  - `courseCatalogueResponse` CourseCatalogueResponseDTO[]
    - `authors` UserEntity[]
      - `apiKey` string
      - `country` string
      - `countryCode` string
      - `countryDialCode` string
      - `createdDate` integer
      - `deleted` boolean
      - `description` string
      - `designation` string
      - `disabled` boolean
      - `domainId` integer
      - `email` string
      - `emailVerificationStatus` 'NOT_VERIFIED' | 'VERIFIED' | 'BLOCKED' | 'EMAIL_SENT'
      - `enableNotification` boolean
      - `firstName` string
      - `headline` string
      - `id` integer
      - `imageUrl` string
      - `lastName` string
      - `permission` string
      - `phone` string
      - `primaryEmail` boolean
      - `socialProfile` string
      - `source` 'FRESHLEARN' | 'GOOGLE' | 'FACEBOOK' | 'APPLE' | 'MICROSOFT' | 'SLACK'
      - `timeZone` string
      - `updatedDate` integer
      - `useSupportEmail` boolean
      - `userName` string
      - `userRoleId` integer
      - `userType` 'ADMIN' | 'AUTHOR' | 'USER' | 'OTHER'
    - `courseAccess` integer
    - `courseCollaboration` CourseCollaboration
      - `course` integer
      - `createdTime` integer
      - `id` integer
      - `memberId` integer
      - `rating` number, float
    - `courseCompletionTime` integer
    - `coursePlan` CoursePlanEntity[]
      - `amount` number, double
      - `buttonText` string
      - `catalogId` integer
      - `countryCode` string
      - `couponCode` string
      - `couponId` integer
      - `courseId` integer
      - `createdBy` integer
      - `createdTime` integer
      - `currency` string
      - `deleted` boolean
      - `description` string
      - `discountAmount` number, double
      - `domainId` integer
      - `expireInDays` integer
      - `expireOnDate` integer
      - `expiryType` 'AFTER_N_DAYS' | 'FIXED_DATE'
      - `finalAmount` number, double
      - `hubspotId` string
      - `id` integer
      - `intervalCount` integer
      - `isEnabled` boolean
      - `isLifetime` boolean
      - `isStripePlanCreated` boolean
      - `numberOfIteration` integer
      - `planName` string
      - `planType` 'FREE' | 'ONE_TIME' | 'RECURRING' | 'OTHER' | 'PAID'
      - `primary` boolean
      - `razorpayPlanId` string
      - `recurringGateway` 'STRIPE' | 'RAZORPAY' | 'PAYPAL' | 'MANUAL' | 'FREE'
      - `shortDescription` string
      - `showLandingpage` boolean
      - `strikeoutAmount` integer
      - `strikeoutPrice` boolean
      - `stripeInterval` 'DAY' | 'MONTH' | 'QUARTER' | 'HALF_YEARLY' | 'YEAR' | 'WEEK' | 'NONE' | 'ONE_TIME'
      - `stripePaymentLink` string
      - `stripePaymentLinkId` string
      - `stripePlanId` string
      - `stripeProductId` string
      - `updatedBy` integer
      - `updatedTime` integer
    - `createdByUser` User
      - `apiKey` string
      - `country` string
      - `createdDate` integer
      - `currentPassword` string
      - `description` string
      - `designation` string
      - `disabled` boolean
      - `domain` Domain
        - `createdTime` integer
        - `disabled` boolean
        - `domainTitle` string
        - `id` integer
        - `name` string
        - `updatedBy` integer
        - `updatedTime` integer
      - `domainId` integer
      - `email` string
      - `emailVerificationStatus` 'NOT_VERIFIED' | 'VERIFIED' | 'BLOCKED' | 'EMAIL_SENT'
      - `enableNotification` boolean
      - `firstName` string
      - `headline` string
      - `id` integer
      - `imageUrl` string
      - `lastName` string
      - `memberAppLink` string
      - `password` string
      - `permission` object
      - `phone` string
      - `primaryEmail` boolean
      - `socialProfile` object
      - `source` 'FRESHLEARN' | 'GOOGLE' | 'FACEBOOK' | 'APPLE' | 'MICROSOFT' | 'SLACK'
      - `subscription` Subscription
        - `active` boolean
        - `createdBy` string
        - `createdTime` integer
        - `domainId` integer
        - `endTime` integer
        - `freeTrial` boolean
        - `id` integer
        - `planId` integer
        - `startTime` integer
        - `subscriptionStatus` 'ACTIVE' | 'PAUSED' | 'CANCELLED' | 'DOWNGRADED_FREE'
        - `updatedBy` string
        - `updatedTime` integer
      - `timeZone` string
      - `useSupportEmail` boolean
      - `userName` string
      - `userRoleId` integer
      - `userType` 'ADMIN' | 'AUTHOR' | 'USER' | 'OTHER'
    - `createdTime` integer
    - `customField` string
    - `description` string
    - `id` integer
    - `imageUrl` string
    - `name` string
    - `showFreePlan` boolean
    - `status` 'DRAFT' | 'PUBLISH'
    - `updatedByUser` User
      - `apiKey` string
      - `country` string
      - `createdDate` integer
      - `currentPassword` string
      - `description` string
      - `designation` string
      - `disabled` boolean
      - `domain` Domain
        - `createdTime` integer
        - `disabled` boolean
        - `domainTitle` string
        - `id` integer
        - `name` string
        - `updatedBy` integer
        - `updatedTime` integer
      - `domainId` integer
      - `email` string
      - `emailVerificationStatus` 'NOT_VERIFIED' | 'VERIFIED' | 'BLOCKED' | 'EMAIL_SENT'
      - `enableNotification` boolean
      - `firstName` string
      - `headline` string
      - `id` integer
      - `imageUrl` string
      - `lastName` string
      - `memberAppLink` string
      - `password` string
      - `permission` object
      - `phone` string
      - `primaryEmail` boolean
      - `socialProfile` object
      - `source` 'FRESHLEARN' | 'GOOGLE' | 'FACEBOOK' | 'APPLE' | 'MICROSOFT' | 'SLACK'
      - `subscription` Subscription
        - `active` boolean
        - `createdBy` string
        - `createdTime` integer
        - `domainId` integer
        - `endTime` integer
        - `freeTrial` boolean
        - `id` integer
        - `planId` integer
        - `startTime` integer
        - `subscriptionStatus` 'ACTIVE' | 'PAUSED' | 'CANCELLED' | 'DOWNGRADED_FREE'
        - `updatedBy` string
        - `updatedTime` integer
      - `timeZone` string
      - `useSupportEmail` boolean
      - `userName` string
      - `userRoleId` integer
      - `userType` 'ADMIN' | 'AUTHOR' | 'USER' | 'OTHER'
    - `updatedTime` integer
  - `courseDTOs` CourseDTO[]
    - `advAssessment` boolean
    - `advBuilder` boolean
    - `authorIds` integer[]
    - `authors` UserEntity[]
      - `apiKey` string
      - `country` string
      - `countryCode` string
      - `countryDialCode` string
      - `createdDate` integer
      - `deleted` boolean
      - `description` string
      - `designation` string
      - `disabled` boolean
      - `domainId` integer
      - `email` string
      - `emailVerificationStatus` 'NOT_VERIFIED' | 'VERIFIED' | 'BLOCKED' | 'EMAIL_SENT'
      - `enableNotification` boolean
      - `firstName` string
      - `headline` string
      - `id` integer
      - `imageUrl` string
      - `lastName` string
      - `permission` string
      - `phone` string
      - `primaryEmail` boolean
      - `socialProfile` string
      - `source` 'FRESHLEARN' | 'GOOGLE' | 'FACEBOOK' | 'APPLE' | 'MICROSOFT' | 'SLACK'
      - `timeZone` string
      - `updatedDate` integer
      - `useSupportEmail` boolean
      - `userName` string
      - `userRoleId` integer
      - `userType` 'ADMIN' | 'AUTHOR' | 'USER' | 'OTHER'
    - `autoCreateGroup` boolean
    - `courseAccess` integer
    - `coursePlan` CoursePlanEntity[]
      - `amount` number, double
      - `buttonText` string
      - `catalogId` integer
      - `countryCode` string
      - `couponCode` string
      - `couponId` integer
      - `courseId` integer
      - `createdBy` integer
      - `createdTime` integer
      - `currency` string
      - `deleted` boolean
      - `description` string
      - `discountAmount` number, double
      - `domainId` integer
      - `expireInDays` integer
      - `expireOnDate` integer
      - `expiryType` 'AFTER_N_DAYS' | 'FIXED_DATE'
      - `finalAmount` number, double
      - `hubspotId` string
      - `id` integer
      - `intervalCount` integer
      - `isEnabled` boolean
      - `isLifetime` boolean
      - `isStripePlanCreated` boolean
      - `numberOfIteration` integer
      - `planName` string
      - `planType` 'FREE' | 'ONE_TIME' | 'RECURRING' | 'OTHER' | 'PAID'
      - `primary` boolean
      - `razorpayPlanId` string
      - `recurringGateway` 'STRIPE' | 'RAZORPAY' | 'PAYPAL' | 'MANUAL' | 'FREE'
      - `shortDescription` string
      - `showLandingpage` boolean
      - `strikeoutAmount` integer
      - `strikeoutPrice` boolean
      - `stripeInterval` 'DAY' | 'MONTH' | 'QUARTER' | 'HALF_YEARLY' | 'YEAR' | 'WEEK' | 'NONE' | 'ONE_TIME'
      - `stripePaymentLink` string
      - `stripePaymentLinkId` string
      - `stripePlanId` string
      - `stripeProductId` string
      - `updatedBy` integer
      - `updatedTime` integer
    - `courseType` 'COURSE' | 'PLAYLIST' | 'COHORT'
    - `createdTime` integer
    - `customField` string
    - `description` string
    - `endDate` integer
    - `groupName` string
    - `groupType` 'PUBLIC' | 'PRIVATE' | 'SECRET'
    - `hubspotProperties` boolean
    - `icon` string
    - `id` integer
    - `imageUrl` string
    - `name` string
    - `orderIndex` integer
    - `participantCount` integer
    - `publicView` boolean
    - `startDate` integer
    - `status` 'DRAFT' | 'PUBLISH'
    - `whiteLabelOldUrl` string
  - `courseIds` integer[]
  - `domain` DomainEntity
    - `createdTime` integer
    - `disabled` boolean
    - `domainTitle` string
    - `id` integer
    - `name` string
    - `sourceIP` string
    - `updatedBy` integer
    - `updatedTime` integer
  - `domainId` integer
  - `id` integer
  - `isHomePage` boolean

## Response `200`

OK

## Other responses

- `201`: Created
- `401`: Unauthorized
- `403`: Forbidden
- `404`: Not Found

---

[API](https://skmtc.dev/freshlearn/apis/freshlearn-api.md) · [All operations](https://skmtc.dev/freshlearn/apis/freshlearn-api/llms.txt) · [OpenAPI document](https://skmtc.dev/freshlearn/apis/freshlearn-api/revisions/8a82ee14b586?raw)
