Media.list api not working


#1

I’m trying out the api test console. I have a vpaas account in which I have uploaded a few videos. I have tagged one of them using the KMC. Now I want to try filtering for that video using the tag value through an api call. So I am trying to call media.list endpoint with tagsLike parameter set to the particular tag value. But the result shows 0 objects in the array returned. What am I doing wrong? the generated query in js is
var filter = {objectType: “KalturaMediaEntryFilter”};
filter.tagsLike = “song”;
var pager = {objectType: “KalturaFilterPager”};

KalturaMediaService.listAction(filter, pager)
  .execute(client, function(success, results) {
    if (!success || (results && results.code && results.message)) {
      console.log('Kaltura Error', success, results);
    } else {
      console.log('Kaltura Result', results);
    }
  });

This is the result I get

Headers

```
x-kaltura: cache-key,cache_v3-4ae4522f7e84842e967732ee0f7d0372
x-me: pa-front-api124
date: Sat, 01 Dec 2018 07:57:44 GMT
content-length: 84
pragma: no-cache
server: Apache
content-type: application/json
cache-control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
x-kaltura-session: 1581568519
expires: Sun, 19 Nov 2000 08:52:00 GMT
```

```
{
  "objects": [],
  "totalCount": 0,
  "objectType": "KalturaMediaListResponse"
}
```

I can also confirm that the media.count api call works correctly for me. It returns the number of video files I uploaded into vpaas.

var filter = {objectType: "KalturaMediaEntryFilter"};

KalturaMediaService.count(filter)
  .execute(client, function(success, results) {
    if (!success || (results && results.code && results.message)) {
      console.log('Kaltura Error', success, results);
    } else {
      console.log('Kaltura Result', results);
    }
  });

Now, I must say that I am still on the free trial period account. And that this query works correctly when I query with the tags which the default video uploaded by kaltura has in vpaas.
So I’m wondering whether the apis will work only when payments begin.


#2

Hello @vinod_kumar1,

The fact you are using a trial account does not matter at all. The media->list() API [and all others for that matter] will work equally well with any account type unless a certain service or action are blocked. In such a case, you will get an informative response such as:

    code    SERVICE_FORBIDDEN
   message The access to service [$SERVICE->$ACTION] is forbidden

Start by making a KalturaMediaService.get() request, passing the entry ID you think has the correct tags set and let’s see what the response looks like.

Also, is the entitlement mechanism enabled? If so, see my response here: