Edushade Docs
Courses

A: List all courses

GET
/admin/learning/courses
AuthorizationBearer <token>

In: header

Query Parameters

page?number

Page number

Default1
Range1 <= value
per_page?number

Number of courses per page

Default20
Range1 <= value <= 100
search?string

Search in course title and description

Defaultnull
course_type?string

Filter by course type (values: self_paced, cohort_based)

Defaultnull
Value in"self_paced" | "cohort_based"
status?string

Filter by status (values: draft, published, archived)

Defaultnull
Value in"draft" | "published" | "archived"
difficulty_level?string

Filter by difficulty level (values: beginner, intermediate, advanced)

Defaultnull
Value in"beginner" | "intermediate" | "advanced"
language?string

Filter by language (e.g., en, es, fr, de)

Defaultnull
max_enrollments?number

Filter by maximum number of students

Defaultnull
tags?array<unknown>

Filter by tags (comma-separated strings)

Defaultnull
published_from?string

Filter by published date from (ISO 8601 format)

Defaultnull
published_to?string

Filter by published date to (ISO 8601 format)

Defaultnull
created_from?string

Filter by creation date from (ISO 8601 format)

Defaultnull
created_to?string

Filter by creation date to (ISO 8601 format)

Defaultnull
certificate_enabled?boolean

Filter by certificate availability

Defaultnull
allow_preview?boolean

Filter by preview availability

Defaultnull
category_ids?array<unknown>

Filter by category IDs (comma-separated UUIDs)

Defaultnull
instructor_ids?array<unknown>

Filter by instructor IDs (comma-separated UUIDs)

Defaultnull
sort?string

Sort by field (values: created_at, updated_at, title)

Defaultnull
Value in"created_at" | "updated_at" | "title"
order?string

Sort order (values: asc, desc)

Defaultnull
Value in"asc" | "desc"

Response Body

curl -X GET "https://edushade.com/api/v1/admin/learning/courses?page=1&per_page=20&course_type=self_paced&status=draft&difficulty_level=beginner&sort=created_at&order=asc"
{}
Empty
Empty
Empty