> For the complete documentation index, see [llms.txt](https://developer.collibra.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developer.collibra.com/api/references/popularity/aggregated-data.md).

# Aggregated Data

Endpoints to submit your own usage data and track its writing

## Submit aggregated data

> Uploads aggregated data required to calculate Popularity Score for assets. \
> \
> There are 2 different ways to provide keys and type (see examples).<br>

```json
{"openapi":"3.0.3","info":{"title":"Catalog Popularity","version":"0.0.1"},"tags":[{"name":"Aggregated Data","description":"Endpoints to submit your own usage data and track its writing"}],"servers":[{"url":"/rest/dataUsage/v1"}],"security":[{"basicAuth":[]},{"jwtAuth":[]}],"components":{"securitySchemes":{"basicAuth":{"type":"http","scheme":"basic","description":"Collibra REST API authentication using Basic Authentication."},"jwtAuth":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"Collibra REST API authentication using JSON Web Token."}},"schemas":{"AggregatedData":{"type":"object","properties":{"assetLocator":{"$ref":"#/components/schemas/AssetLocator"},"toDate":{"type":"string","format":"date-time","description":"End date of the 30-day window used for popularity calculation"},"timePeriod":{"type":"string"},"queryCount":{"type":"integer"},"distinctUsers":{"type":"integer","description":"Number of distinct users that have queried the asset"}}},"AssetLocator":{"description":"Describes where to search for a specific Catalog asset. It might match more than one result.\n\nIt also specifies the type of the datastore of origin and its commercial name\n","type":"object","required":["type","keys"],"properties":{"type":{"$ref":"#/components/schemas/Type"},"product":{"$ref":"#/components/schemas/ProductName"},"keys":{"$ref":"#/components/schemas/Keys"}}},"Type":{"description":"Identifier for the datastore type of origin.\n","type":"string"},"ProductName":{"description":"Commercial name of the datastore of origin.\n","type":"string"},"Keys":{"description":"Ordered list of names for each member of the hierarchy of an item.\n","type":"array","minItems":1,"items":{"type":"string","nullable":false}},"Job":{"type":"object","required":["id","createdBy","createdOn","startDate","status"],"properties":{"id":{"type":"string","format":"uuid"},"createdBy":{"type":"string","format":"uuid"},"createdOn":{"type":"string","format":"date-time"},"startDate":{"type":"string","format":"date-time"},"endDate":{"type":"string","format":"date-time"},"status":{"type":"string","enum":["Waiting","Running","Completed","Failed"]},"report":{"type":"object","additionalProperties":true}}},"StandardErrorResponse":{"type":"object","properties":{"statusCode":{"type":"integer","description":"HTTP response code"},"titleMessage":{"type":"string"},"helpMessage":{"type":"string"},"userMessage":{"type":"string"},"errorCode":{"type":"string"}}}},"responses":{"InvalidRequest400":{"description":"The request is not valid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StandardErrorResponse"}}}},"InvalidRequest401":{"description":"The client is not authenticated.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StandardErrorResponse"}}}},"InvalidRequest403":{"description":"The user lacks permissions.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StandardErrorResponse"}}}},"InvalidRequest404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StandardErrorResponse"}}}}}},"paths":{"/aggregatedData/submit":{"post":{"tags":["Aggregated Data"],"summary":"Submit aggregated data","operationId":"submitAggregatedData","description":"Uploads aggregated data required to calculate Popularity Score for assets. \n\nThere are 2 different ways to provide keys and type (see examples).\n","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"array","maxItems":1000,"items":{"$ref":"#/components/schemas/AggregatedData"}}}}},"responses":{"202":{"description":"Submits a batch of data to be written (asynchronous endpoint).","headers":{"Location":{"schema":{"type":"string"},"description":"Endpoint to retrieve batch status."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"$ref":"#/components/responses/InvalidRequest400"},"401":{"$ref":"#/components/responses/InvalidRequest401"},"403":{"$ref":"#/components/responses/InvalidRequest403"},"404":{"$ref":"#/components/responses/InvalidRequest404"}}}}}}
```

## Find jobs

> Returns a list of jobs related to the data aggregation process.<br>

```json
{"openapi":"3.0.3","info":{"title":"Catalog Popularity","version":"0.0.1"},"tags":[{"name":"Aggregated Data","description":"Endpoints to submit your own usage data and track its writing"}],"servers":[{"url":"/rest/dataUsage/v1"}],"security":[{"basicAuth":[]},{"jwtAuth":[]}],"components":{"securitySchemes":{"basicAuth":{"type":"http","scheme":"basic","description":"Collibra REST API authentication using Basic Authentication."},"jwtAuth":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"Collibra REST API authentication using JSON Web Token."}},"parameters":{"Status":{"name":"status","required":false,"in":"query","description":"The status of the jobs to retrieve.\n\nIf not set, this filter will not be applied and everything will be returned.\n","schema":{"type":"string","enum":["Waiting","Running","Completed","Failed"]}},"Offset":{"name":"offset","in":"query","description":"The index of the first result to retrieve.\n\nIf not set (offset = <code>0</code>), results will be retrieved starting from row <code>0</code>.\n","schema":{"type":"integer","format":"int32","default":0,"minimum":0,"maximum":2147483647}},"Limit":{"name":"limit","in":"query","description":"The maximum number of results to retrieve.\n\nIf not set, the default limit  (limit = <code>0</code>) will be used. The maximum value for this parameter is\n<code>500</code>.\n","schema":{"type":"integer","format":"int32","default":10,"minimum":1,"maximum":500}}},"schemas":{"JobsResultPage":{"type":"object","required":["results"],"properties":{"results":{"type":"array","items":{"$ref":"#/components/schemas/Job"}}}},"Job":{"type":"object","required":["id","createdBy","createdOn","startDate","status"],"properties":{"id":{"type":"string","format":"uuid"},"createdBy":{"type":"string","format":"uuid"},"createdOn":{"type":"string","format":"date-time"},"startDate":{"type":"string","format":"date-time"},"endDate":{"type":"string","format":"date-time"},"status":{"type":"string","enum":["Waiting","Running","Completed","Failed"]},"report":{"type":"object","additionalProperties":true}}},"StandardErrorResponse":{"type":"object","properties":{"statusCode":{"type":"integer","description":"HTTP response code"},"titleMessage":{"type":"string"},"helpMessage":{"type":"string"},"userMessage":{"type":"string"},"errorCode":{"type":"string"}}}},"responses":{"InvalidRequest400":{"description":"The request is not valid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StandardErrorResponse"}}}},"InvalidRequest401":{"description":"The client is not authenticated.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StandardErrorResponse"}}}},"InvalidRequest403":{"description":"The user lacks permissions.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StandardErrorResponse"}}}},"InvalidRequest404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StandardErrorResponse"}}}}}},"paths":{"/aggregatedData/jobs":{"get":{"tags":["Aggregated Data"],"parameters":[{"$ref":"#/components/parameters/Status"},{"$ref":"#/components/parameters/Offset"},{"$ref":"#/components/parameters/Limit"}],"summary":"Find jobs","operationId":"findJobs","description":"Returns a list of jobs related to the data aggregation process.\n","responses":{"200":{"description":"List of jobs successfully retrieved. The report of the job will not be present.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JobsResultPage"}}}},"400":{"$ref":"#/components/responses/InvalidRequest400"},"401":{"$ref":"#/components/responses/InvalidRequest401"},"403":{"$ref":"#/components/responses/InvalidRequest403"},"404":{"$ref":"#/components/responses/InvalidRequest404"}}}}}}
```

## Find job by id

> Returns a job related to the data aggregation process by its ID.<br>

```json
{"openapi":"3.0.3","info":{"title":"Catalog Popularity","version":"0.0.1"},"tags":[{"name":"Aggregated Data","description":"Endpoints to submit your own usage data and track its writing"}],"servers":[{"url":"/rest/dataUsage/v1"}],"security":[{"basicAuth":[]},{"jwtAuth":[]}],"components":{"securitySchemes":{"basicAuth":{"type":"http","scheme":"basic","description":"Collibra REST API authentication using Basic Authentication."},"jwtAuth":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"Collibra REST API authentication using JSON Web Token."}},"schemas":{"Job":{"type":"object","required":["id","createdBy","createdOn","startDate","status"],"properties":{"id":{"type":"string","format":"uuid"},"createdBy":{"type":"string","format":"uuid"},"createdOn":{"type":"string","format":"date-time"},"startDate":{"type":"string","format":"date-time"},"endDate":{"type":"string","format":"date-time"},"status":{"type":"string","enum":["Waiting","Running","Completed","Failed"]},"report":{"type":"object","additionalProperties":true}}},"StandardErrorResponse":{"type":"object","properties":{"statusCode":{"type":"integer","description":"HTTP response code"},"titleMessage":{"type":"string"},"helpMessage":{"type":"string"},"userMessage":{"type":"string"},"errorCode":{"type":"string"}}}},"responses":{"InvalidRequest400":{"description":"The request is not valid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StandardErrorResponse"}}}},"InvalidRequest401":{"description":"The client is not authenticated.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StandardErrorResponse"}}}},"InvalidRequest403":{"description":"The user lacks permissions.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StandardErrorResponse"}}}},"InvalidRequest404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StandardErrorResponse"}}}}}},"paths":{"/aggregatedData/jobs/{id}":{"get":{"tags":["Aggregated Data"],"summary":"Find job by id","operationId":"findJobById","description":"Returns a job related to the data aggregation process by its ID.\n","parameters":[{"name":"id","in":"path","required":true,"description":"The job ID to retrieve.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Job successfully retrieved.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"$ref":"#/components/responses/InvalidRequest400"},"401":{"$ref":"#/components/responses/InvalidRequest401"},"403":{"$ref":"#/components/responses/InvalidRequest403"},"404":{"$ref":"#/components/responses/InvalidRequest404"}}}}}}
```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://developer.collibra.com/api/references/popularity/aggregated-data.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
