Chilkat Online Tools

PureBasic / Cognite API v1 / Search files

Back to Collection Items

IncludeFile "CkJsonObject.pb"
IncludeFile "CkHttp.pb"
IncludeFile "CkHttpResponse.pb"

Procedure ChilkatExample()

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

    http.i = CkHttp::ckCreate()
    If http.i = 0
        Debug "Failed to create object."
        ProcedureReturn
    EndIf

    success.i

    ; 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.i = CkJsonObject::ckCreate()
    If json.i = 0
        Debug "Failed to create object."
        ProcedureReturn
    EndIf

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

    CkHttp::ckSetRequestHeader(http,"content-type","application/json")
    CkHttp::ckSetRequestHeader(http,"api-key","{{api-key}}")

    resp.i = CkHttp::ckPostJson3(http,"https://domain.com/api/v1/projects/{{project}}/files/search","application/json",json)
    If CkHttp::ckLastMethodSuccess(http) = 0
        Debug CkHttp::ckLastErrorText(http)
        CkHttp::ckDispose(http)
        CkJsonObject::ckDispose(json)
        ProcedureReturn
    EndIf

    Debug Str(CkHttpResponse::ckStatusCode(resp))
    Debug CkHttpResponse::ckBodyStr(resp)
    CkHttpResponse::ckDispose(resp)



    CkHttp::ckDispose(http)
    CkJsonObject::ckDispose(json)


    ProcedureReturn
EndProcedure

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}"
    }
  }
}