Chilkat Online Tools

delphiDll / Cognite API v1 / Filter files

Back to Collection Items

var
http: HCkHttp;
success: Boolean;
json: HCkJsonObject;
resp: HCkHttpResponse;

begin
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.

http := CkHttp_Create();

// Use this online tool to generate code from sample JSON: Generate Code to Create JSON

// The following JSON is sent in the request body.

// {
//   "filter": {
//     "name": "ex nostrud consectetur",
//     "directoryPrefix": "tempor laborum ad consectetur",
//     "mimeType": "aute dolor sit Duis",
//     "metadata": {},
//     "assetIds": [
//       467579989120294,
//       8421974867540202
//     ],
//     "assetExternalIds": [
//       "",
//       "sint minim aliqua "
//     ],
//     "rootAssetIds": [
//       {
//         "id": 1543391847125216
//       },
//       {
//         "id": 6483833221883084
//       }
//     ],
//     "dataSetIds": [
//       {
//         "externalId": "eu aliqua dolor ea"
//       },
//       {
//         "id": 954668826986822
//       }
//     ],
//     "assetSubtreeIds": [
//       {
//         "externalId": "nisi occaecat sunt enim Ut"
//       },
//       {
//         "externalId": "anim reprehenderit ex nostrud"
//       }
//     ],
//     "source": "nulla mollit exercita",
//     "createdTime": {
//       "max": 35775661,
//       "min": 68358871
//     },
//     "lastUpdatedTime": {
//       "max": 39458190,
//       "min": 53247476
//     },
//     "uploadedTime": {
//       "max": 20009824,
//       "min": 24281615
//     },
//     "sourceCreatedTime": {
//       "max": 94237198,
//       "min": 59856114
//     },
//     "sourceModifiedTime": {
//       "max": 74319204,
//       "min": 63072110
//     },
//     "externalIdPrefix": "et",
//     "uploaded": false,
//     "labels": {
//       "containsAll": [
//         {
//           "externalId": "Ut ipsum in"
//         },
//         {
//           "externalId": "amet reprehenderit velit"
//         }
//       ]
//     },
//     "geoLocation": {
//       "relation": "WITHIN",
//       "shape": {
//         "type": "LineString",
//         "coordinates": [
//         ]
//       }
//     }
//   },
//   "partition": "proident est Duis nisi et",
//   "limit": 100,
//   "cursor": "incididunt"
// }

json := CkJsonObject_Create();
CkJsonObject_UpdateString(json,'filter.name','ex nostrud consectetur');
CkJsonObject_UpdateString(json,'filter.directoryPrefix','tempor laborum ad consectetur');
CkJsonObject_UpdateString(json,'filter.mimeType','aute dolor sit Duis');
CkJsonObject_UpdateNewObject(json,'filter.metadata');
CkJsonObject_UpdateInt(json,'filter.assetIds[0]',467579989120294);
CkJsonObject_UpdateInt(json,'filter.assetIds[1]',8421974867540202);
CkJsonObject_UpdateString(json,'filter.assetExternalIds[0]','');
CkJsonObject_UpdateString(json,'filter.assetExternalIds[1]','sint minim aliqua ');
CkJsonObject_UpdateInt(json,'filter.rootAssetIds[0].id',123);
CkJsonObject_UpdateInt(json,'filter.rootAssetIds[1].id',123);
CkJsonObject_UpdateString(json,'filter.dataSetIds[0].externalId','eu aliqua dolor ea');
CkJsonObject_UpdateInt(json,'filter.dataSetIds[1].id',123);
CkJsonObject_UpdateString(json,'filter.assetSubtreeIds[0].externalId','nisi occaecat sunt enim Ut');
CkJsonObject_UpdateString(json,'filter.assetSubtreeIds[1].externalId','anim reprehenderit ex nostrud');
CkJsonObject_UpdateString(json,'filter.source','nulla mollit exercita');
CkJsonObject_UpdateInt(json,'filter.createdTime.max',35775661);
CkJsonObject_UpdateInt(json,'filter.createdTime.min',68358871);
CkJsonObject_UpdateInt(json,'filter.lastUpdatedTime.max',39458190);
CkJsonObject_UpdateInt(json,'filter.lastUpdatedTime.min',53247476);
CkJsonObject_UpdateInt(json,'filter.uploadedTime.max',20009824);
CkJsonObject_UpdateInt(json,'filter.uploadedTime.min',24281615);
CkJsonObject_UpdateInt(json,'filter.sourceCreatedTime.max',94237198);
CkJsonObject_UpdateInt(json,'filter.sourceCreatedTime.min',59856114);
CkJsonObject_UpdateInt(json,'filter.sourceModifiedTime.max',74319204);
CkJsonObject_UpdateInt(json,'filter.sourceModifiedTime.min',63072110);
CkJsonObject_UpdateString(json,'filter.externalIdPrefix','et');
CkJsonObject_UpdateBool(json,'filter.uploaded',False);
CkJsonObject_UpdateString(json,'filter.labels.containsAll[0].externalId','Ut ipsum in');
CkJsonObject_UpdateString(json,'filter.labels.containsAll[1].externalId','amet reprehenderit velit');
CkJsonObject_UpdateString(json,'filter.geoLocation.relation','WITHIN');
CkJsonObject_UpdateString(json,'filter.geoLocation.shape.type','LineString');
CkJsonObject_UpdateNewArray(json,'filter.geoLocation.shape.coordinates');
CkJsonObject_UpdateString(json,'partition','proident est Duis nisi et');
CkJsonObject_UpdateInt(json,'limit',100);
CkJsonObject_UpdateString(json,'cursor','incididunt');

CkHttp_SetRequestHeader(http,'content-type','application/json');
CkHttp_SetRequestHeader(http,'api-key','{{api-key}}');

resp := CkHttp_PostJson3(http,'https://domain.com/api/v1/projects/{{project}}/files/list','application/json',json);
if (CkHttp_getLastMethodSuccess(http) = False) then
  begin
    Memo1.Lines.Add(CkHttp__lastErrorText(http));
    Exit;
  end;

Memo1.Lines.Add(IntToStr(CkHttpResponse_getStatusCode(resp)));
Memo1.Lines.Add(CkHttpResponse__bodyStr(resp));
CkHttpResponse_Dispose(resp);

CkHttp_Dispose(http);
CkJsonObject_Dispose(json);

Curl Command

curl -X POST
	-H "api-key: {{api-key}}"
	-H "content-type: application/json"
	-d '{
    "filter": {
        "name": "ex nostrud consectetur",
        "directoryPrefix": "tempor laborum ad consectetur",
        "mimeType": "aute dolor sit Duis",
        "metadata": {},
        "assetIds": [
            467579989120294,
            8421974867540202
        ],
        "assetExternalIds": [
            "",
            "sint minim aliqua "
        ],
        "rootAssetIds": [
            {
                "id": 1543391847125216
            },
            {
                "id": 6483833221883084
            }
        ],
        "dataSetIds": [
            {
                "externalId": "eu aliqua dolor ea"
            },
            {
                "id": 954668826986822
            }
        ],
        "assetSubtreeIds": [
            {
                "externalId": "nisi occaecat sunt enim Ut"
            },
            {
                "externalId": "anim reprehenderit ex nostrud"
            }
        ],
        "source": "nulla mollit exercita",
        "createdTime": {
            "max": 35775661,
            "min": 68358871
        },
        "lastUpdatedTime": {
            "max": 39458190,
            "min": 53247476
        },
        "uploadedTime": {
            "max": 20009824,
            "min": 24281615
        },
        "sourceCreatedTime": {
            "max": 94237198,
            "min": 59856114
        },
        "sourceModifiedTime": {
            "max": 74319204,
            "min": 63072110
        },
        "externalIdPrefix": "et",
        "uploaded": false,
        "labels": {
            "containsAll": [
                {
                    "externalId": "Ut ipsum in"
                },
                {
                    "externalId": "amet reprehenderit velit"
                }
            ]
        },
        "geoLocation": {
            "relation": "WITHIN",
            "shape": {
                "type": "LineString",
                "coordinates": []
            }
        }
    },
    "partition": "proident est Duis nisi et",
    "limit": 100,
    "cursor": "incididunt"
}'
https://domain.com/api/v1/projects/{{project}}/files/list

Postman Collection Item JSON

{
  "id": "advancedListFiles",
  "name": "Filter files",
  "request": {
    "url": {
      "host": "{{baseUrl}}",
      "path": [
        "api",
        "v1",
        "projects",
        "{{project}}",
        "files",
        "list"
      ],
      "query": [
      ],
      "variable": [
      ]
    },
    "method": "POST",
    "header": [
      {
        "key": "api-key",
        "value": "{{api-key}}",
        "description": "An admin can create API keys in the Cognite console."
      },
      {
        "key": "content-type",
        "value": "application/json"
      }
    ],
    "description": "Retrieves a list of all files in a project. Criteria can be supplied to select a subset of files. This operation supports pagination with cursors.",
    "body": {
      "mode": "raw",
      "raw": "{\n    \"filter\": {\n        \"name\": \"ex nostrud consectetur\",\n        \"directoryPrefix\": \"tempor laborum ad consectetur\",\n        \"mimeType\": \"aute dolor sit Duis\",\n        \"metadata\": {},\n        \"assetIds\": [\n            467579989120294,\n            8421974867540202\n        ],\n        \"assetExternalIds\": [\n            \"\",\n            \"sint minim aliqua \"\n        ],\n        \"rootAssetIds\": [\n            {\n                \"id\": 1543391847125216\n            },\n            {\n                \"id\": 6483833221883084\n            }\n        ],\n        \"dataSetIds\": [\n            {\n                \"externalId\": \"eu aliqua dolor ea\"\n            },\n            {\n                \"id\": 954668826986822\n            }\n        ],\n        \"assetSubtreeIds\": [\n            {\n                \"externalId\": \"nisi occaecat sunt enim Ut\"\n            },\n            {\n                \"externalId\": \"anim reprehenderit ex nostrud\"\n            }\n        ],\n        \"source\": \"nulla mollit exercita\",\n        \"createdTime\": {\n            \"max\": 35775661,\n            \"min\": 68358871\n        },\n        \"lastUpdatedTime\": {\n            \"max\": 39458190,\n            \"min\": 53247476\n        },\n        \"uploadedTime\": {\n            \"max\": 20009824,\n            \"min\": 24281615\n        },\n        \"sourceCreatedTime\": {\n            \"max\": 94237198,\n            \"min\": 59856114\n        },\n        \"sourceModifiedTime\": {\n            \"max\": 74319204,\n            \"min\": 63072110\n        },\n        \"externalIdPrefix\": \"et\",\n        \"uploaded\": false,\n        \"labels\": {\n            \"containsAll\": [\n                {\n                    \"externalId\": \"Ut ipsum in\"\n                },\n                {\n                    \"externalId\": \"amet reprehenderit velit\"\n                }\n            ]\n        },\n        \"geoLocation\": {\n            \"relation\": \"WITHIN\",\n            \"shape\": {\n                \"type\": \"LineString\",\n                \"coordinates\": []\n            }\n        }\n    },\n    \"partition\": \"proident est Duis nisi et\",\n    \"limit\": 100,\n    \"cursor\": \"incididunt\"\n}"
    }
  }
}