> 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/protect-partner/synchronizations.md).

# Synchronizations

Retrieval of detailed information on synchronizations.

## GET /synchronizations/byDataSource

> Returns the details of the synchronization for the provided data source.

```json
{"openapi":"3.0.3","info":{"title":"Collibra Protect API - Partner","version":"1.0.0-beta"},"tags":[{"name":"Synchronizations","description":"Retrieval of detailed information on synchronizations."}],"servers":[{"url":"/rest/protect/v1"}],"security":[{"basicAuth":[]}],"components":{"securitySchemes":{"basicAuth":{"description":"The APIs require Basic HTTP authentication.","type":"http","scheme":"basic"}},"schemas":{"Synchronization":{"description":"All information needed to perform synchronization","type":"object","properties":{"id":{"description":"Operation id","type":"string"},"dataAccessRuleSet":{"$ref":"#/components/schemas/DataAccessRuleSet"}}},"DataAccessRuleSet":{"description":"All of the data access rules that need to be synchronized.","type":"object","properties":{"databases":{"type":"array","items":{"$ref":"#/components/schemas/Database"}}},"required":["databases"]},"Database":{"type":"object","properties":{"provider":{"$ref":"#/components/schemas/Provider"},"providerDetails":{"$ref":"#/components/schemas/ProviderDetails"},"id":{"type":"string","description":"The id of the database"},"name":{"type":"string","description":"The name of the database"},"schemas":{"type":"array","minItems":1,"items":{"$ref":"#/components/schemas/DatabaseSchema"}},"tags":{"type":"array","items":{"$ref":"#/components/schemas/DatabaseTag"}},"customMaskings":{"type":"array","items":{"$ref":"#/components/schemas/DatabaseCustomMasking"}}},"required":["provider","id","name","schema","tags","customMaskings"]},"Provider":{"type":"string","description":"Value must be \"Snowflake\", \"GoogleBigQuery, or \"AWSLakeFormation\""},"ProviderDetails":{"description":"The provider specific details. For example, AWSLakeFormation contains the property awsRegion, which denotes in which region the database is located.","type":"object","additionalProperties":{"type":"string"}},"DatabaseSchema":{"type":"object","properties":{"id":{"type":"string","description":"The id of the database schema"},"name":{"type":"string","description":"The name of the database schema"},"tables":{"type":"array","items":{"$ref":"#/components/schemas/DatabaseTable"}}},"required":["id","name","tables"]},"DatabaseTable":{"type":"object","properties":{"id":{"type":"string","description":"The id of the database table"},"name":{"type":"string","description":"The name of the database table"},"columns":{"type":"array","items":{"$ref":"#/components/schemas/DatabaseColumn"}},"accesses":{"type":"array","items":{"$ref":"#/components/schemas/DatabaseTableAccessRule"}}},"required":["id","name","columns","accesses"]},"DatabaseColumn":{"type":"object","properties":{"id":{"type":"string","description":"The id of the database column"},"name":{"type":"string","description":"The name of the database column"},"dataType":{"description":"The data type as it is declared by the provider. For example: String, Integer, Varchar, Blob, Boolean, ...\n","type":"string"},"precision":{"type":"integer","description":"The precision of the column."},"scale":{"type":"integer","description":"The scale of the column."},"tags":{"type":"array","items":{"$ref":"#/components/schemas/DatabaseColumnTag"}},"accesses":{"type":"array","items":{"$ref":"#/components/schemas/DatabaseColumnAccessRule"}}},"required":["id","name","tags","accesses"]},"DatabaseColumnTag":{"type":"object","properties":{"id":{"type":"string","description":"The id of database column tag"},"name":{"type":"string","description":"The name of database column tag"}},"required":["id","name"]},"DatabaseColumnAccessRule":{"type":"object","properties":{"group":{"type":"string","description":"The name of protect group"},"access":{"$ref":"#/components/schemas/Access"},"masking":{"$ref":"#/components/schemas/Masking"},"rowFilter":{"$ref":"#/components/schemas/RowFilter"}},"required":["group","access"]},"Access":{"type":"string","description":"Possible values are: `Read` or `NoChange`."},"Masking":{"oneOf":[{"$ref":"#/components/schemas/NoMasking"},{"$ref":"#/components/schemas/DefaultMasking"},{"$ref":"#/components/schemas/ConstantMasking"},{"$ref":"#/components/schemas/HashMasking"},{"$ref":"#/components/schemas/ShowLastMasking"},{"$ref":"#/components/schemas/CustomMasking"}],"discriminator":{"propertyName":"type","mapping":{"None":"#/components/schemas/NoMasking","Default":"#/components/schemas/DefaultMasking","Constant":"#/components/schemas/ConstantMasking","Hash":"#/components/schemas/HashMasking","ShowLast":"#/components/schemas/ShowLastMasking","Custom":"#/components/schemas/CustomMasking"}}},"NoMasking":{"allOf":[{"$ref":"#/components/schemas/BaseMasking"}]},"BaseMasking":{"type":"object","required":["type"],"properties":{"type":{"$ref":"#/components/schemas/MaskingType"}}},"MaskingType":{"type":"string","description":"Possible values are: `None`, `Default`, `Constant`, `Hash` or `ShowLast`."},"DefaultMasking":{"description":"The masked value applied is source dependent and chosen based on the column data type.","allOf":[{"$ref":"#/components/schemas/BaseMasking"}]},"ConstantMasking":{"description":"This masked strategy is not supported by the Protect application therefore it is deprecated and it will be removed in new versions of the API. Use DefaultMasking instead.","allOf":[{"$ref":"#/components/schemas/BaseMasking"},{"type":"object","properties":{"constant":{"type":"string"}}}]},"HashMasking":{"allOf":[{"$ref":"#/components/schemas/BaseMasking"}]},"ShowLastMasking":{"allOf":[{"$ref":"#/components/schemas/BaseMasking"},{"type":"object","properties":{"numberOfCharacters":{"type":"integer","description":"The number of characters to display"}}}]},"CustomMasking":{"allOf":[{"$ref":"#/components/schemas/BaseMasking"},{"type":"object","properties":{"customMaskingId":{"type":"string","format":"uuid","description":"The id of custom masking"},"customMaskingName":{"type":"string","description":"The name of custom masking"}}}]},"RowFilter":{"type":"object","properties":{"operator":{"$ref":"#/components/schemas/RowFilterOperator"},"values":{"type":"array","items":{"type":"string","description":"The value of row filter"},"uniqueItems":true}}},"RowFilterOperator":{"type":"string","description":"Possible values are: `Equals` or `NotEquals`."},"DatabaseTableAccessRule":{"type":"object","properties":{"group":{"type":"string","description":"The name of protect group"},"access":{"$ref":"#/components/schemas/Access"}},"required":["group","access"]},"DatabaseTag":{"type":"object","properties":{"id":{"type":"string","description":"The id of database tag"},"name":{"type":"string","description":"The name of database tag"},"maskings":{"type":"array","items":{"$ref":"#/components/schemas/GroupMasking"}}},"required":["id","tag","maskings"]},"GroupMasking":{"type":"object","properties":{"group":{"type":"string","description":"The name of protect group"},"masking":{"$ref":"#/components/schemas/Masking"}},"required":["group","masking"]},"DatabaseCustomMasking":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"The id of database custom masking"},"name":{"type":"string","description":"The name of database custom masking"},"mappings":{"type":"array","items":{"$ref":"#/components/schemas/MaskingMappings"}}}},"MaskingMappings":{"description":"a mapping of the data type and function name used to provide the custom mapping.","properties":{"dataType":{"type":"string","description":"The name of the data type (String, Number, Date ...). Data types name depend on the provider, a list of compatible types per provider is available in the documentation."},"functionName":{"type":"string","description":"The name of the function that will be used on the provider to provide the custom masking."}},"required":["dataType","functionName"]},"StandardErrorResponse":{"type":"object","properties":{"statusCode":{"type":"integer","description":"HTTP response code"},"titleMessage":{"type":"string","description":"The title of the error message."},"helpMessage":{"type":"string","description":"A message containing actions you can take regarding the error."},"userMessage":{"type":"string","description":"A user friendly error message."},"errorCode":{"type":"string","description":"An error code identifier."}}}},"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"}}}},"InvalidRequest500":{"description":"An unexpected error happened.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StandardErrorResponse"}}}}}},"paths":{"/synchronizations/byDataSource":{"get":{"tags":["Synchronizations"],"summary":"Returns the details of the synchronization for the provided data source.","operationId":"getSynchronizationByDataSource","parameters":[{"in":"query","description":"Name of the data source","name":"dataSource","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"The set of data access rules to synchronize","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Synchronization"}}}},"400":{"$ref":"#/components/responses/InvalidRequest400"},"401":{"$ref":"#/components/responses/InvalidRequest401"},"403":{"$ref":"#/components/responses/InvalidRequest403"},"404":{"$ref":"#/components/responses/InvalidRequest404"},"500":{"$ref":"#/components/responses/InvalidRequest500"}}}}}}
```


---

# 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/protect-partner/synchronizations.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.
