{
  "opencollection": "1.0.0",
  "info": {
    "name": "Cognite 3D Asset Mapping Entity matching API",
    "version": "v1"
  },
  "request": {
    "auth": {
      "type": "bearer",
      "token": "{{bearerToken}}"
    }
  },
  "items": [
    {
      "info": {
        "name": "Entity matching",
        "type": "folder"
      },
      "items": [
        {
          "info": {
            "name": "List entity matching models",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://{cluster}.cognitedata.com/api/v1/projects/{project}/context/entitymatching",
            "params": [
              {
                "name": "cursor",
                "value": "",
                "type": "query",
                "description": "Cursor for paging through results. In general, if a response contains a `nextCursor`\nproperty, it means that there may be more results, and you should pass that value as the\n`cursor` parameter in the next request.\n\nNote that the cursor may or may not be encrypted, but either way, it is not intended to be\ndecoded. Its internal structure is not a part of the public API, and may change without\nnotice. You should treat it as an opaque string and not attempt to craft your own cursors.\n"
              },
              {
                "name": "limit",
                "value": "",
                "type": "query",
                "description": "Limits the number of results to be returned."
              }
            ]
          },
          "docs": "\n\n> **Required capabilities:** `entitymatchingAcl:READ`\n\nList all available entity matching models, with pagination."
        },
        {
          "info": {
            "name": "Create entity matcher model",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://{cluster}.cognitedata.com/api/v1/projects/{project}/context/entitymatching",
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "\n\n> **Required capabilities:** `entitymatchingAcl:WRITE`\n\nTrain a model that predicts matches between entities (for example, time series names to asset names). This is also known as fuzzy joining. If there are no trueMatches (labeled data), you train a static (unsupervised) model, otherwise a machine learned (supervised) model is trained."
        },
        {
          "info": {
            "name": "Retrieve an entity matching model by the ID of the model",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://{cluster}.cognitedata.com/api/v1/projects/{project}/context/entitymatching/:id",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path"
              }
            ]
          },
          "docs": "\n\n> **Required capabilities:** `entitymatchingAcl:READ`\n\nShows the status of the model. If the status is completed, shows the parameters used to train the model."
        },
        {
          "info": {
            "name": "Retrieve entity matching models",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://{cluster}.cognitedata.com/api/v1/projects/{project}/context/entitymatching/byids",
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "\n\n> **Required capabilities:** `entitymatchingAcl:READ`\n\nRetrieve entity matching models by IDs or external IDs."
        },
        {
          "info": {
            "name": "Filter models",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://{cluster}.cognitedata.com/api/v1/projects/{project}/context/entitymatching/list",
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "\n\n> **Required capabilities:** `entitymatchingAcl:READ`\n\nUse filtering options to find entity matcher models."
        },
        {
          "info": {
            "name": "Update entity matching models",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://{cluster}.cognitedata.com/api/v1/projects/{project}/context/entitymatching/update",
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "\n\n> **Required capabilities:** `entitymatchingAcl:WRITE`\n\nUpdate entity matching models by IDs or external IDs."
        },
        {
          "info": {
            "name": "Delete entity matcher model",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://{cluster}.cognitedata.com/api/v1/projects/{project}/context/entitymatching/delete",
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "\n\n> **Required capabilities:** `entitymatchingAcl:WRITE`\n\nDeletes an entity matching model. Currently, this is a soft delete, and only removes the entry from listing."
        },
        {
          "info": {
            "name": "Predict matches",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://{cluster}.cognitedata.com/api/v1/projects/{project}/context/entitymatching/predict",
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "\n\n> **Required capabilities:** `entitymatchingAcl:WRITE`\n\nPredicts entity matches using a trained model. Note: 'assetsAcl:READ' capability is required unless both `sources` and `targets` are specified in the request. Also note that the header of a successful response contains a `X-Job-Token` which allows to fetch the result of the job at `/context/entitymatching/jobs/{jobId}` without requiring 'assetsAcl:READ'."
        },
        {
          "info": {
            "name": "Retrieve entity matcher predict results",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://{cluster}.cognitedata.com/api/v1/projects/{project}/context/entitymatching/jobs/:jobId",
            "headers": [
              {
                "name": "X-Job-Token",
                "value": ""
              }
            ],
            "params": [
              {
                "name": "jobId",
                "value": "",
                "type": "path"
              }
            ]
          },
          "docs": "\n\n> **Required capabilities:** `assetsAcl:READ` `entitymatchingAcl:WRITE`\n\nGet the results from a predict job. Note: 'assetsAcl:READ' capability is required, unless you specify a valid `X-Job-Token` in the request header. The `X-Job-Token` is provided in the response header of the initial call to `/context/entitymatching/predict`"
        },
        {
          "info": {
            "name": "Re-fit entity matcher model",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://{cluster}.cognitedata.com/api/v1/projects/{project}/context/entitymatching/refit",
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "\n\n> **Required capabilities:** `entitymatchingAcl:READ` `entitymatchingAcl:WRITE`\n\nCreates a new model by re-training an existing model on existing data but with additional true matches. The old model is not changed. The new model gets a new id and new external id if `newExternalId` is set, or no external id if `newExternalId` is not set. Use for efficient re-training of the model after a user creates additional confirmed matches."
        }
      ]
    }
  ],
  "bundled": true
}