Chilkat Online Tools

PureBasic / Cognite API v1 / Create transformations

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.

    ; {
    ;   "items": [
    ;     {
    ;       "name": "ipsum ut sed d",
    ;       "ignoreNullFields": false,
    ;       "externalId": "proident eu mollit",
    ;       "query": "qui non sint ut",
    ;       "destination": {
    ;         "type": "assets"
    ;       },
    ;       "conflictMode": "aliquip dolore nulla c",
    ;       "isPublic": false,
    ;       "sourceApiKey": "esse dolore aliqua in",
    ;       "destinationApiKey": "nulla in tempor",
    ;       "sourceOidcCredentials": {
    ;         "clientId": "p",
    ;         "clientSecret": "amet",
    ;         "tokenUri": "sit voluptate dolore ",
    ;         "cdfProjectName": "aliquip velit incididunt",
    ;         "scopes": "consectetur cillum",
    ;         "audience": "non magna"
    ;       },
    ;       "destinationOidcCredentials": {
    ;         "clientId": "est culpa",
    ;         "clientSecret": "cillum exercitation",
    ;         "tokenUri": "do ea sint culpa",
    ;         "cdfProjectName": "officia proident",
    ;         "scopes": "cupidatat Lorem elit adipisicing",
    ;         "audience": "nisi veniam"
    ;       }
    ;     },
    ;     {
    ;       "name": "in occaecat ut",
    ;       "ignoreNullFields": false,
    ;       "externalId": "magna Lorem",
    ;       "query": "cillum dolor ea",
    ;       "destination": {
    ;         "type": "relationships"
    ;       },
    ;       "conflictMode": "pariatur laborum eiusmod Ut consectetur",
    ;       "isPublic": true,
    ;       "sourceApiKey": "ullamco eu velit elit",
    ;       "destinationApiKey": "dolore in",
    ;       "sourceOidcCredentials": {
    ;         "clientId": "Ut",
    ;         "clientSecret": "minim commodo Lorem in",
    ;         "tokenUri": "culpa ipsum aliquip pariatur",
    ;         "cdfProjectName": "minim",
    ;         "scopes": "deserunt cillum in non mollit",
    ;         "audience": "elit ea"
    ;       },
    ;       "destinationOidcCredentials": {
    ;         "clientId": "elit eu exercitation",
    ;         "clientSecret": "fugiat",
    ;         "tokenUri": "velit mollit",
    ;         "cdfProjectName": "tempor enim exercitation voluptate dolore",
    ;         "scopes": "ipsum Lorem ullamco consequat",
    ;         "audience": "ullamco"
    ;       }
    ;     }
    ;   ]
    ; }

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

    CkJsonObject::ckUpdateString(json,"items[0].name","ipsum ut sed d")
    CkJsonObject::ckUpdateBool(json,"items[0].ignoreNullFields",0)
    CkJsonObject::ckUpdateString(json,"items[0].externalId","proident eu mollit")
    CkJsonObject::ckUpdateString(json,"items[0].query","qui non sint ut")
    CkJsonObject::ckUpdateString(json,"items[0].destination.type","assets")
    CkJsonObject::ckUpdateString(json,"items[0].conflictMode","aliquip dolore nulla c")
    CkJsonObject::ckUpdateBool(json,"items[0].isPublic",0)
    CkJsonObject::ckUpdateString(json,"items[0].sourceApiKey","esse dolore aliqua in")
    CkJsonObject::ckUpdateString(json,"items[0].destinationApiKey","nulla in tempor")
    CkJsonObject::ckUpdateString(json,"items[0].sourceOidcCredentials.clientId","p")
    CkJsonObject::ckUpdateString(json,"items[0].sourceOidcCredentials.clientSecret","amet")
    CkJsonObject::ckUpdateString(json,"items[0].sourceOidcCredentials.tokenUri","sit voluptate dolore ")
    CkJsonObject::ckUpdateString(json,"items[0].sourceOidcCredentials.cdfProjectName","aliquip velit incididunt")
    CkJsonObject::ckUpdateString(json,"items[0].sourceOidcCredentials.scopes","consectetur cillum")
    CkJsonObject::ckUpdateString(json,"items[0].sourceOidcCredentials.audience","non magna")
    CkJsonObject::ckUpdateString(json,"items[0].destinationOidcCredentials.clientId","est culpa")
    CkJsonObject::ckUpdateString(json,"items[0].destinationOidcCredentials.clientSecret","cillum exercitation")
    CkJsonObject::ckUpdateString(json,"items[0].destinationOidcCredentials.tokenUri","do ea sint culpa")
    CkJsonObject::ckUpdateString(json,"items[0].destinationOidcCredentials.cdfProjectName","officia proident")
    CkJsonObject::ckUpdateString(json,"items[0].destinationOidcCredentials.scopes","cupidatat Lorem elit adipisicing")
    CkJsonObject::ckUpdateString(json,"items[0].destinationOidcCredentials.audience","nisi veniam")
    CkJsonObject::ckUpdateString(json,"items[1].name","in occaecat ut")
    CkJsonObject::ckUpdateBool(json,"items[1].ignoreNullFields",0)
    CkJsonObject::ckUpdateString(json,"items[1].externalId","magna Lorem")
    CkJsonObject::ckUpdateString(json,"items[1].query","cillum dolor ea")
    CkJsonObject::ckUpdateString(json,"items[1].destination.type","relationships")
    CkJsonObject::ckUpdateString(json,"items[1].conflictMode","pariatur laborum eiusmod Ut consectetur")
    CkJsonObject::ckUpdateBool(json,"items[1].isPublic",1)
    CkJsonObject::ckUpdateString(json,"items[1].sourceApiKey","ullamco eu velit elit")
    CkJsonObject::ckUpdateString(json,"items[1].destinationApiKey","dolore in")
    CkJsonObject::ckUpdateString(json,"items[1].sourceOidcCredentials.clientId","Ut")
    CkJsonObject::ckUpdateString(json,"items[1].sourceOidcCredentials.clientSecret","minim commodo Lorem in")
    CkJsonObject::ckUpdateString(json,"items[1].sourceOidcCredentials.tokenUri","culpa ipsum aliquip pariatur")
    CkJsonObject::ckUpdateString(json,"items[1].sourceOidcCredentials.cdfProjectName","minim")
    CkJsonObject::ckUpdateString(json,"items[1].sourceOidcCredentials.scopes","deserunt cillum in non mollit")
    CkJsonObject::ckUpdateString(json,"items[1].sourceOidcCredentials.audience","elit ea")
    CkJsonObject::ckUpdateString(json,"items[1].destinationOidcCredentials.clientId","elit eu exercitation")
    CkJsonObject::ckUpdateString(json,"items[1].destinationOidcCredentials.clientSecret","fugiat")
    CkJsonObject::ckUpdateString(json,"items[1].destinationOidcCredentials.tokenUri","velit mollit")
    CkJsonObject::ckUpdateString(json,"items[1].destinationOidcCredentials.cdfProjectName","tempor enim exercitation voluptate dolore")
    CkJsonObject::ckUpdateString(json,"items[1].destinationOidcCredentials.scopes","ipsum Lorem ullamco consequat")
    CkJsonObject::ckUpdateString(json,"items[1].destinationOidcCredentials.audience","ullamco")

    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}}/transformations","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 '{
    "items": [
        {
            "name": "ipsum ut sed d",
            "ignoreNullFields": false,
            "externalId": "proident eu mollit",
            "query": "qui non sint ut",
            "destination": {
                "type": "assets"
            },
            "conflictMode": "aliquip dolore nulla c",
            "isPublic": false,
            "sourceApiKey": "esse dolore aliqua in",
            "destinationApiKey": "nulla in tempor",
            "sourceOidcCredentials": {
                "clientId": "p",
                "clientSecret": "amet",
                "tokenUri": "sit voluptate dolore ",
                "cdfProjectName": "aliquip velit incididunt",
                "scopes": "consectetur cillum",
                "audience": "non magna"
            },
            "destinationOidcCredentials": {
                "clientId": "est culpa",
                "clientSecret": "cillum exercitation",
                "tokenUri": "do ea sint culpa",
                "cdfProjectName": "officia proident",
                "scopes": "cupidatat Lorem elit adipisicing",
                "audience": "nisi veniam"
            }
        },
        {
            "name": "in occaecat ut",
            "ignoreNullFields": false,
            "externalId": "magna Lorem",
            "query": "cillum dolor ea",
            "destination": {
                "type": "relationships"
            },
            "conflictMode": "pariatur laborum eiusmod Ut consectetur",
            "isPublic": true,
            "sourceApiKey": "ullamco eu velit elit",
            "destinationApiKey": "dolore in",
            "sourceOidcCredentials": {
                "clientId": "Ut",
                "clientSecret": "minim commodo Lorem in",
                "tokenUri": "culpa ipsum aliquip pariatur",
                "cdfProjectName": "minim",
                "scopes": "deserunt cillum in non mollit",
                "audience": "elit ea"
            },
            "destinationOidcCredentials": {
                "clientId": "elit eu exercitation",
                "clientSecret": "fugiat",
                "tokenUri": "velit mollit",
                "cdfProjectName": "tempor enim exercitation voluptate dolore",
                "scopes": "ipsum Lorem ullamco consequat",
                "audience": "ullamco"
            }
        }
    ]
}'
https://domain.com/api/v1/projects/{{project}}/transformations

Postman Collection Item JSON

{
  "id": "createTransformations",
  "name": "Create transformations",
  "request": {
    "url": {
      "host": "{{baseUrl}}",
      "path": [
        "api",
        "v1",
        "projects",
        "{{project}}",
        "transformations"
      ],
      "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": "Create a maximum of 1000 transformations per request.",
    "body": {
      "mode": "raw",
      "raw": "{\n    \"items\": [\n        {\n            \"name\": \"ipsum ut sed d\",\n            \"ignoreNullFields\": false,\n            \"externalId\": \"proident eu mollit\",\n            \"query\": \"qui non sint ut\",\n            \"destination\": {\n                \"type\": \"assets\"\n            },\n            \"conflictMode\": \"aliquip dolore nulla c\",\n            \"isPublic\": false,\n            \"sourceApiKey\": \"esse dolore aliqua in\",\n            \"destinationApiKey\": \"nulla in tempor\",\n            \"sourceOidcCredentials\": {\n                \"clientId\": \"p\",\n                \"clientSecret\": \"amet\",\n                \"tokenUri\": \"sit voluptate dolore \",\n                \"cdfProjectName\": \"aliquip velit incididunt\",\n                \"scopes\": \"consectetur cillum\",\n                \"audience\": \"non magna\"\n            },\n            \"destinationOidcCredentials\": {\n                \"clientId\": \"est culpa\",\n                \"clientSecret\": \"cillum exercitation\",\n                \"tokenUri\": \"do ea sint culpa\",\n                \"cdfProjectName\": \"officia proident\",\n                \"scopes\": \"cupidatat Lorem elit adipisicing\",\n                \"audience\": \"nisi veniam\"\n            }\n        },\n        {\n            \"name\": \"in occaecat ut\",\n            \"ignoreNullFields\": false,\n            \"externalId\": \"magna Lorem\",\n            \"query\": \"cillum dolor ea\",\n            \"destination\": {\n                \"type\": \"relationships\"\n            },\n            \"conflictMode\": \"pariatur laborum eiusmod Ut consectetur\",\n            \"isPublic\": true,\n            \"sourceApiKey\": \"ullamco eu velit elit\",\n            \"destinationApiKey\": \"dolore in\",\n            \"sourceOidcCredentials\": {\n                \"clientId\": \"Ut\",\n                \"clientSecret\": \"minim commodo Lorem in\",\n                \"tokenUri\": \"culpa ipsum aliquip pariatur\",\n                \"cdfProjectName\": \"minim\",\n                \"scopes\": \"deserunt cillum in non mollit\",\n                \"audience\": \"elit ea\"\n            },\n            \"destinationOidcCredentials\": {\n                \"clientId\": \"elit eu exercitation\",\n                \"clientSecret\": \"fugiat\",\n                \"tokenUri\": \"velit mollit\",\n                \"cdfProjectName\": \"tempor enim exercitation voluptate dolore\",\n                \"scopes\": \"ipsum Lorem ullamco consequat\",\n                \"audience\": \"ullamco\"\n            }\n        }\n    ]\n}"
    }
  }
}