/* generated using openapi-typescript-codegen -- do not edit */ /* istanbul ignore file */ /* tslint:disable */ /* eslint-disable */ import type { MediaResource } from '../models/MediaResource'; import type { PatchedMediaResource } from '../models/PatchedMediaResource'; import type { CancelablePromise } from '../core/CancelablePromise'; import { OpenAPI } from '../core/OpenAPI'; import { request as __request } from '../core/request'; export class MediaService { /** * List and filter media resources. Supports filtering by course_id, unit_id, item_id and searching across multiple fields. * @returns any Successfully retrieved media resources * @throws ApiError */ public static mediaOrgsUsersMediaMediaResourcesList({ org, userId, courseId, itemId, page, pageSize, search, unitId, }: { /** * Organization identifier */ org: string, /** * User identifier */ userId: string, /** * Filter by course ID (e.g., course-v1:main+NB101+2025-T1) */ courseId?: string, /** * Filter by item ID */ itemId?: string, /** * A page number within the paginated result set. */ page?: number, /** * Number of results to return per page. */ pageSize?: number, /** * Search across title, description, course_id, unit_id, item_id, and file_url */ search?: string, /** * Filter by unit ID (e.g., block-v1:main+NB101+2025-T1+type@vertical+block@12345) */ unitId?: string, }): CancelablePromise { return __request(OpenAPI, { method: 'GET', url: '/api/media/orgs/{org}/users/{user_id}/media/media-resources/', path: { 'org': org, 'user_id': userId, }, query: { 'course_id': courseId, 'item_id': itemId, 'page': page, 'page_size': pageSize, 'search': search, 'unit_id': unitId, }, }); } /** * List and filter media resources. Supports filtering by course_id, unit_id, item_id and searching across multiple fields. * @returns any Successfully retrieved media resources * @throws ApiError */ public static mediaOrgsUsersMediaMediaResourcesCreate({ org, userId, requestBody, courseId, itemId, search, unitId, }: { /** * Organization identifier */ org: string, /** * User identifier */ userId: string, requestBody: MediaResource, /** * Filter by course ID (e.g., course-v1:main+NB101+2025-T1) */ courseId?: string, /** * Filter by item ID */ itemId?: string, /** * Search across title, description, course_id, unit_id, item_id, and file_url */ search?: string, /** * Filter by unit ID (e.g., block-v1:main+NB101+2025-T1+type@vertical+block@12345) */ unitId?: string, }): CancelablePromise { return __request(OpenAPI, { method: 'POST', url: '/api/media/orgs/{org}/users/{user_id}/media/media-resources/', path: { 'org': org, 'user_id': userId, }, query: { 'course_id': courseId, 'item_id': itemId, 'search': search, 'unit_id': unitId, }, body: requestBody, mediaType: 'application/json', }); } /** * List and filter media resources. Supports filtering by course_id, unit_id, item_id and searching across multiple fields. * @returns any Successfully retrieved media resources * @throws ApiError */ public static mediaOrgsUsersMediaMediaResourcesRetrieve({ id, org, userId, courseId, itemId, search, unitId, }: { /** * A unique integer value identifying this Media Resource. */ id: number, /** * Organization identifier */ org: string, /** * User identifier */ userId: string, /** * Filter by course ID (e.g., course-v1:main+NB101+2025-T1) */ courseId?: string, /** * Filter by item ID */ itemId?: string, /** * Search across title, description, course_id, unit_id, item_id, and file_url */ search?: string, /** * Filter by unit ID (e.g., block-v1:main+NB101+2025-T1+type@vertical+block@12345) */ unitId?: string, }): CancelablePromise { return __request(OpenAPI, { method: 'GET', url: '/api/media/orgs/{org}/users/{user_id}/media/media-resources/{id}/', path: { 'id': id, 'org': org, 'user_id': userId, }, query: { 'course_id': courseId, 'item_id': itemId, 'search': search, 'unit_id': unitId, }, }); } /** * List and filter media resources. Supports filtering by course_id, unit_id, item_id and searching across multiple fields. * @returns any Successfully retrieved media resources * @throws ApiError */ public static mediaOrgsUsersMediaMediaResourcesUpdate({ id, org, userId, requestBody, courseId, itemId, search, unitId, }: { /** * A unique integer value identifying this Media Resource. */ id: number, /** * Organization identifier */ org: string, /** * User identifier */ userId: string, requestBody: MediaResource, /** * Filter by course ID (e.g., course-v1:main+NB101+2025-T1) */ courseId?: string, /** * Filter by item ID */ itemId?: string, /** * Search across title, description, course_id, unit_id, item_id, and file_url */ search?: string, /** * Filter by unit ID (e.g., block-v1:main+NB101+2025-T1+type@vertical+block@12345) */ unitId?: string, }): CancelablePromise { return __request(OpenAPI, { method: 'PUT', url: '/api/media/orgs/{org}/users/{user_id}/media/media-resources/{id}/', path: { 'id': id, 'org': org, 'user_id': userId, }, query: { 'course_id': courseId, 'item_id': itemId, 'search': search, 'unit_id': unitId, }, body: requestBody, mediaType: 'application/json', }); } /** * List and filter media resources. Supports filtering by course_id, unit_id, item_id and searching across multiple fields. * @returns any Successfully retrieved media resources * @throws ApiError */ public static mediaOrgsUsersMediaMediaResourcesPartialUpdate({ id, org, userId, courseId, itemId, search, unitId, requestBody, }: { /** * A unique integer value identifying this Media Resource. */ id: number, /** * Organization identifier */ org: string, /** * User identifier */ userId: string, /** * Filter by course ID (e.g., course-v1:main+NB101+2025-T1) */ courseId?: string, /** * Filter by item ID */ itemId?: string, /** * Search across title, description, course_id, unit_id, item_id, and file_url */ search?: string, /** * Filter by unit ID (e.g., block-v1:main+NB101+2025-T1+type@vertical+block@12345) */ unitId?: string, requestBody?: PatchedMediaResource, }): CancelablePromise { return __request(OpenAPI, { method: 'PATCH', url: '/api/media/orgs/{org}/users/{user_id}/media/media-resources/{id}/', path: { 'id': id, 'org': org, 'user_id': userId, }, query: { 'course_id': courseId, 'item_id': itemId, 'search': search, 'unit_id': unitId, }, body: requestBody, mediaType: 'application/json', }); } /** * List and filter media resources. Supports filtering by course_id, unit_id, item_id and searching across multiple fields. * @returns any Successfully retrieved media resources * @throws ApiError */ public static mediaOrgsUsersMediaMediaResourcesDestroy({ id, org, userId, courseId, itemId, search, unitId, }: { /** * A unique integer value identifying this Media Resource. */ id: number, /** * Organization identifier */ org: string, /** * User identifier */ userId: string, /** * Filter by course ID (e.g., course-v1:main+NB101+2025-T1) */ courseId?: string, /** * Filter by item ID */ itemId?: string, /** * Search across title, description, course_id, unit_id, item_id, and file_url */ search?: string, /** * Filter by unit ID (e.g., block-v1:main+NB101+2025-T1+type@vertical+block@12345) */ unitId?: string, }): CancelablePromise { return __request(OpenAPI, { method: 'DELETE', url: '/api/media/orgs/{org}/users/{user_id}/media/media-resources/{id}/', path: { 'id': id, 'org': org, 'user_id': userId, }, query: { 'course_id': courseId, 'item_id': itemId, 'search': search, 'unit_id': unitId, }, }); } /** * Get media resources for a specific item. The item_type determines which resources are returned based on the provided item_id. * @returns any Successfully retrieved media resources for item * @throws ApiError */ public static mediaOrgsUsersMediaMediaResourcesByItemRetrieve({ itemId, itemType, org, userId, courseId, search, unitId, }: { /** * ID of the item */ itemId: string, /** * Type of item. Valid values: course, unit, resource, course_unit, course_resource, unit_resource, all */ itemType: 'all' | 'course' | 'course_resource' | 'course_unit' | 'resource' | 'unit' | 'unit_resource', /** * Organization identifier */ org: string, /** * User identifier */ userId: string, /** * Filter by course ID (e.g., course-v1:main+NB101+2025-T1) */ courseId?: string, /** * Search across title, description, course_id, unit_id, item_id, and file_url */ search?: string, /** * Filter by unit ID (e.g., block-v1:main+NB101+2025-T1+type@vertical+block@12345) */ unitId?: string, }): CancelablePromise { return __request(OpenAPI, { method: 'GET', url: '/api/media/orgs/{org}/users/{user_id}/media/media-resources/by_item/', path: { 'org': org, 'user_id': userId, }, query: { 'course_id': courseId, 'item_id': itemId, 'item_type': itemType, 'search': search, 'unit_id': unitId, }, }); } /** * Search media resources by title, description, or IDs. Supports filtering results by course_id, unit_id, and item_id. * @returns any Successfully searched media resources * @throws ApiError */ public static mediaOrgsUsersMediaMediaResourcesSearchRetrieve({ org, q, userId, courseId, itemId, search, unitId, }: { /** * Organization identifier */ org: string, /** * Search query string */ q: string, /** * User identifier */ userId: string, /** * Filter results by course ID */ courseId?: string, /** * Filter results by item ID */ itemId?: string, /** * Search across title, description, course_id, unit_id, item_id, and file_url */ search?: string, /** * Filter results by unit ID */ unitId?: string, }): CancelablePromise { return __request(OpenAPI, { method: 'GET', url: '/api/media/orgs/{org}/users/{user_id}/media/media-resources/search/', path: { 'org': org, 'user_id': userId, }, query: { 'course_id': courseId, 'item_id': itemId, 'q': q, 'search': search, 'unit_id': unitId, }, }); } }