Chilkat Online Tools

delphiDll / Cognite API v1 / Search 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": "labore",
//     "directoryPrefix": "non",
//     "mimeType": "amet",
//     "metadata": {},
//     "assetIds": [
//       2806482587450292,
//       5885270784918610
//     ],
//     "assetExternalIds": [
//       "cillum quis laborum eu in",
//       "pariatur aute incididunt minim nulla"
//     ],
//     "rootAssetIds": [
//       {
//         "id": 3434712602792354
//       },
//       {
//         "externalId": "dolor nostrud sint tempor"
//       }
//     ],
//     "dataSetIds": [
//       {
//         "id": 6643919081009120
//       },
//       {
//         "externalId": "incidid"
//       }
//     ],
//     "assetSubtreeIds": [
//       {
//         "id": 1381446255269154
//       },
//       {
//         "id": 6877534894841850
//       }
//     ],
//     "source": "in ullamco in qu",
//     "createdTime": {
//       "max": 52776204,
//       "min": 19590899
//     },
//     "lastUpdatedTime": {
//       "max": 2447871,
//       "min": 62024320
//     },
//     "uploadedTime": {
//       "max": 88446108,
//       "min": 12715733
//     },
//     "sourceCreatedTime": {
//       "max": 6470658,
//       "min": 75552038
//     },
//     "sourceModifiedTime": {
//       "max": 56421116,
//       "min": 98065077
//     },
//     "externalIdPrefix": "incididunt occaecat eiusmod ut",
//     "uploaded": true,
//     "labels": {
//       "containsAll": [
//         {
//           "externalId": "pariatur"
//         },
//         {
//           "externalId": "adipisicing occaecat"
//         }
//       ]
//     },
//     "geoLocation": {
//       "relation": "INTERSECTS",
//       "shape": {
//         "type": "Point",
//         "coordinates": [
//           -28013106.93372789,
//           67047806.90769461
//         ]
//       }
//     }
//   },
//   "search": {
//     "name": "qui"
//   }
// }

json := CkJsonObject_Create();
CkJsonObject_UpdateString(json,'filter.name','labore');
CkJsonObject_UpdateString(json,'filter.directoryPrefix','non');
CkJsonObject_UpdateString(json,'filter.mimeType','amet');
CkJsonObject_UpdateNewObject(json,'filter.metadata');
CkJsonObject_UpdateInt(json,'filter.assetIds[0]',2806482587450292);
CkJsonObject_UpdateInt(json,'filter.assetIds[1]',5885270784918610);
CkJsonObject_UpdateString(json,'filter.assetExternalIds[0]','cillum quis laborum eu in');
CkJsonObject_UpdateString(json,'filter.assetExternalIds[1]','pariatur aute incididunt minim nulla');
CkJsonObject_UpdateInt(json,'filter.rootAssetIds[0].id',123);
CkJsonObject_UpdateString(json,'filter.rootAssetIds[1].externalId','dolor nostrud sint tempor');
CkJsonObject_UpdateInt(json,'filter.dataSetIds[0].id',123);
CkJsonObject_UpdateString(json,'filter.dataSetIds[1].externalId','incidid');
CkJsonObject_UpdateInt(json,'filter.assetSubtreeIds[0].id',123);
CkJsonObject_UpdateInt(json,'filter.assetSubtreeIds[1].id',123);
CkJsonObject_UpdateString(json,'filter.source','in ullamco in qu');
CkJsonObject_UpdateInt(json,'filter.createdTime.max',52776204);
CkJsonObject_UpdateInt(json,'filter.createdTime.min',19590899);
CkJsonObject_UpdateInt(json,'filter.lastUpdatedTime.max',2447871);
CkJsonObject_UpdateInt(json,'filter.lastUpdatedTime.min',62024320);
CkJsonObject_UpdateInt(json,'filter.uploadedTime.max',88446108);
CkJsonObject_UpdateInt(json,'filter.uploadedTime.min',12715733);
CkJsonObject_UpdateInt(json,'filter.sourceCreatedTime.max',6470658);
CkJsonObject_UpdateInt(json,'filter.sourceCreatedTime.min',75552038);
CkJsonObject_UpdateInt(json,'filter.sourceModifiedTime.max',56421116);
CkJsonObject_UpdateInt(json,'filter.sourceModifiedTime.min',98065077);
CkJsonObject_UpdateString(json,'filter.externalIdPrefix','incididunt occaecat eiusmod ut');
CkJsonObject_UpdateBool(json,'filter.uploaded',True);
CkJsonObject_UpdateString(json,'filter.labels.containsAll[0].externalId','pariatur');
CkJsonObject_UpdateString(json,'filter.labels.containsAll[1].externalId','adipisicing occaecat');
CkJsonObject_UpdateString(json,'filter.geoLocation.relation','INTERSECTS');
CkJsonObject_UpdateString(json,'filter.geoLocation.shape.type','Point');
CkJsonObject_UpdateNumber(json,'filter.geoLocation.shape.coordinates[0]','-28013106.93372789');
CkJsonObject_UpdateNumber(json,'filter.geoLocation.shape.coordinates[1]','67047806.90769461');
CkJsonObject_UpdateString(json,'search.name','qui');

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/search','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": "labore",
        "directoryPrefix": "non",
        "mimeType": "amet",
        "metadata": {},
        "assetIds": [
            2806482587450292,
            5885270784918610
        ],
        "assetExternalIds": [
            "cillum quis laborum eu in",
            "pariatur aute incididunt minim nulla"
        ],
        "rootAssetIds": [
            {
                "id": 3434712602792354
            },
            {
                "externalId": "dolor nostrud sint tempor"
            }
        ],
        "dataSetIds": [
            {
                "id": 6643919081009120
            },
            {
                "externalId": "incidid"
            }
        ],
        "assetSubtreeIds": [
            {
                "id": 1381446255269154
            },
            {
                "id": 6877534894841850
            }
        ],
        "source": "in ullamco in qu",
        "createdTime": {
            "max": 52776204,
            "min": 19590899
        },
        "lastUpdatedTime": {
            "max": 2447871,
            "min": 62024320
        },
        "uploadedTime": {
            "max": 88446108,
            "min": 12715733
        },
        "sourceCreatedTime": {
            "max": 6470658,
            "min": 75552038
        },
        "sourceModifiedTime": {
            "max": 56421116,
            "min": 98065077
        },
        "externalIdPrefix": "incididunt occaecat eiusmod ut",
        "uploaded": true,
        "labels": {
            "containsAll": [
                {
                    "externalId": "pariatur"
                },
                {
                    "externalId": "adipisicing occaecat"
                }
            ]
        },
        "geoLocation": {
            "relation": "INTERSECTS",
            "shape": {
                "type": "Point",
                "coordinates": [
                    -28013106.93372789,
                    67047806.90769461
                ]
            }
        }
    },
    "search": {
        "name": "qui"
    }
}'
https://domain.com/api/v1/projects/{{project}}/files/search

Postman Collection Item JSON

{
  "id": "searchFiles",
  "name": "Search files",
  "request": {
    "url": {
      "host": "{{baseUrl}}",
      "path": [
        "api",
        "v1",
        "projects",
        "{{project}}",
        "files",
        "search"
      ],
      "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": "Search for files based on relevance. You can also supply a strict match filter as in Filter files, and search in the results from the filter. Returns first 1000 results based on relevance. This operation does not support pagination.",
    "body": {
      "mode": "raw",
      "raw": "{\n    \"filter\": {\n        \"name\": \"labore\",\n        \"directoryPrefix\": \"non\",\n        \"mimeType\": \"amet\",\n        \"metadata\": {},\n        \"assetIds\": [\n            2806482587450292,\n            5885270784918610\n        ],\n        \"assetExternalIds\": [\n            \"cillum quis laborum eu in\",\n            \"pariatur aute incididunt minim nulla\"\n        ],\n        \"rootAssetIds\": [\n            {\n                \"id\": 3434712602792354\n            },\n            {\n                \"externalId\": \"dolor nostrud sint tempor\"\n            }\n        ],\n        \"dataSetIds\": [\n            {\n                \"id\": 6643919081009120\n            },\n            {\n                \"externalId\": \"incidid\"\n            }\n        ],\n        \"assetSubtreeIds\": [\n            {\n                \"id\": 1381446255269154\n            },\n            {\n                \"id\": 6877534894841850\n            }\n        ],\n        \"source\": \"in ullamco in qu\",\n        \"createdTime\": {\n            \"max\": 52776204,\n            \"min\": 19590899\n        },\n        \"lastUpdatedTime\": {\n            \"max\": 2447871,\n            \"min\": 62024320\n        },\n        \"uploadedTime\": {\n            \"max\": 88446108,\n            \"min\": 12715733\n        },\n        \"sourceCreatedTime\": {\n            \"max\": 6470658,\n            \"min\": 75552038\n        },\n        \"sourceModifiedTime\": {\n            \"max\": 56421116,\n            \"min\": 98065077\n        },\n        \"externalIdPrefix\": \"incididunt occaecat eiusmod ut\",\n        \"uploaded\": true,\n        \"labels\": {\n            \"containsAll\": [\n                {\n                    \"externalId\": \"pariatur\"\n                },\n                {\n                    \"externalId\": \"adipisicing occaecat\"\n                }\n            ]\n        },\n        \"geoLocation\": {\n            \"relation\": \"INTERSECTS\",\n            \"shape\": {\n                \"type\": \"Point\",\n                \"coordinates\": [\n                    -28013106.93372789,\n                    67047806.90769461\n                ]\n            }\n        }\n    },\n    \"search\": {\n        \"name\": \"qui\"\n    }\n}"
    }
  }
}