> 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/database-registration/models.md).

# Models

## The AddDatabaseRequest object

```json
{"openapi":"3.0.3","info":{"title":"Collibra Catalog Database Registration API","version":"1.6.0"},"components":{"schemas":{"AddDatabaseRequest":{"description":"Request to register a Database asset linked with a database connection.","type":"object","required":["databaseConnectionId","communityId","parentSystemId","ownerIds"],"properties":{"databaseConnectionId":{"type":"string","format":"uuid","description":"The ID of the database connection. The name of a database connection becomes the name of Database asset.\n"},"communityId":{"type":"string","format":"uuid","description":"The ID of the parent community in which the initial domain and database asset will be created."},"parentSystemId":{"type":"string","format":"uuid","description":"The ID of the parent *System* asset. After registering a database, a relation of type *Technology Asset groups / is grouped by technology Asset* is created between the System asset and the Database asset."},"ownerIds":{"type":"array","description":"The IDs of the users that are assigned as the Owner of the automatically created domain containing\nthe Database asset.\n","items":{"type":"string","format":"uuid"}},"description":{"type":"string","description":"A description of the database."}}}}}}
```

## The ChangeDatabaseRequest object

```json
{"openapi":"3.0.3","info":{"title":"Collibra Catalog Database Registration API","version":"1.6.0"},"components":{"schemas":{"ChangeDatabaseRequest":{"type":"object","description":"Request to change a Database asset. Only the provided properties are updated.","properties":{"description":{"type":"string","description":"A description of the database."},"parentSystemId":{"type":"string","format":"uuid","description":"The ID of the parent System asset.\n\nAfter registering a database, a relation of type *Technology Asset groups / is grouped by technology Asset*\nis created between the System asset and the Database asset.\n"},"ownerIds":{"type":"array","description":"The ID of the users that will be assigned as the Owner of existing domain containing the Database asset.\n","items":{"type":"string","format":"uuid"}}}}}}}
```

## The DatabaseConnection object

```json
{"openapi":"3.0.3","info":{"title":"Collibra Catalog Database Registration API","version":"1.6.0"},"components":{"schemas":{"DatabaseConnection":{"type":"object","description":"The connection reference to the specific database.","required":["id","edgeConnectionId","name"],"properties":{"id":{"type":"string","format":"uuid","description":"The ID of the database connection."},"name":{"type":"string","description":"The exact name of a database (catalog) read from the source."},"edgeConnectionId":{"type":"string","format":"uuid","description":"The ID of the Edge connection."},"databaseId":{"type":"string","format":"uuid","description":"The ID of the Database asset linked with this database connection."}}}}}}
```

## The SchemaConnection object

```json
{"openapi":"3.0.3","info":{"title":"Collibra Catalog Database Registration API","version":"1.6.0"},"components":{"schemas":{"SchemaConnection":{"type":"object","description":"The connection reference to the specific schema.","properties":{"id":{"type":"string","format":"uuid","description":"The ID of the schema connection."},"name":{"type":"string","description":"The exact name of a schema read from the source."},"databaseConnectionId":{"type":"string","format":"uuid","description":"The ID of the database connection."},"schemaId":{"type":"string","format":"uuid","description":"The ID of the Schema asset linked with this schema connection."}}}}}}
```

## The Database object

```json
{"openapi":"3.0.3","info":{"title":"Collibra Catalog Database Registration API","version":"1.6.0"},"components":{"schemas":{"Database":{"type":"object","description":"A Database asset created trough database registration with all necessary information required to run\ncapabilities on top of it.\n","properties":{"id":{"type":"string","format":"uuid","description":"The ID of the Database asset.","readOnly":true},"name":{"type":"string","description":"The name of the Database asset."},"description":{"type":"string","description":"A description of the Database asset."},"communityId":{"type":"string","format":"uuid","description":"The ID of the parent community in which the initial domain and database asset are created."},"ownerIds":{"type":"array","items":{"type":"string","format":"uuid","description":"Users that are assigned as the Owner of the Database asset."}},"parentSystemId":{"type":"string","format":"uuid","description":"The ID of the parent System asset."},"databaseConnectionId":{"type":"string","format":"uuid","description":"The ID of the database connection linked to the Database asset."},"edgeConnectionId":{"type":"string","format":"uuid","description":"The ID of the Edge connection.","deprecated":true}}}}}}
```

## The DatabasePagedResponse object

```json
{"openapi":"3.0.3","info":{"title":"Collibra Catalog Database Registration API","version":"1.6.0"},"components":{"schemas":{"DatabasePagedResponse":{"type":"object","properties":{"results":{"type":"array","description":"The list of results.","items":{"$ref":"#/components/schemas/Database"}}}},"Database":{"type":"object","description":"A Database asset created trough database registration with all necessary information required to run\ncapabilities on top of it.\n","properties":{"id":{"type":"string","format":"uuid","description":"The ID of the Database asset.","readOnly":true},"name":{"type":"string","description":"The name of the Database asset."},"description":{"type":"string","description":"A description of the Database asset."},"communityId":{"type":"string","format":"uuid","description":"The ID of the parent community in which the initial domain and database asset are created."},"ownerIds":{"type":"array","items":{"type":"string","format":"uuid","description":"Users that are assigned as the Owner of the Database asset."}},"parentSystemId":{"type":"string","format":"uuid","description":"The ID of the parent System asset."},"databaseConnectionId":{"type":"string","format":"uuid","description":"The ID of the database connection linked to the Database asset."},"edgeConnectionId":{"type":"string","format":"uuid","description":"The ID of the Edge connection.","deprecated":true}}}}}}
```

## The DatabaseConnectionPagedResponse object

```json
{"openapi":"3.0.3","info":{"title":"Collibra Catalog Database Registration API","version":"1.6.0"},"components":{"schemas":{"DatabaseConnectionPagedResponse":{"type":"object","properties":{"results":{"type":"array","description":"The list of results.","items":{"$ref":"#/components/schemas/DatabaseConnection"}}}},"DatabaseConnection":{"type":"object","description":"The connection reference to the specific database.","required":["id","edgeConnectionId","name"],"properties":{"id":{"type":"string","format":"uuid","description":"The ID of the database connection."},"name":{"type":"string","description":"The exact name of a database (catalog) read from the source."},"edgeConnectionId":{"type":"string","format":"uuid","description":"The ID of the Edge connection."},"databaseId":{"type":"string","format":"uuid","description":"The ID of the Database asset linked with this database connection."}}}}}}
```

## The SchemaConnectionPagedResponse object

```json
{"openapi":"3.0.3","info":{"title":"Collibra Catalog Database Registration API","version":"1.6.0"},"components":{"schemas":{"SchemaConnectionPagedResponse":{"type":"object","properties":{"results":{"type":"array","description":"The list of results.","items":{"$ref":"#/components/schemas/SchemaConnection"}}}},"SchemaConnection":{"type":"object","description":"The connection reference to the specific schema.","properties":{"id":{"type":"string","format":"uuid","description":"The ID of the schema connection."},"name":{"type":"string","description":"The exact name of a schema read from the source."},"databaseConnectionId":{"type":"string","format":"uuid","description":"The ID of the database connection."},"schemaId":{"type":"string","format":"uuid","description":"The ID of the Schema asset linked with this schema connection."}}}}}}
```

## The DatabaseMetadataSynchronizationRequest object

```json
{"openapi":"3.0.3","info":{"title":"Collibra Catalog Database Registration API","version":"1.6.0"},"components":{"schemas":{"DatabaseMetadataSynchronizationRequest":{"type":"object","properties":{"schemaConnectionIds":{"description":"The list of the schemas identified by the schema connection ID for which you want to synchronize metadata.\nIf left empty all schemas with rules defined are synchronized.\n","type":"array","items":{"type":"string","format":"uuid"}}}}}}}
```

## The Job object

```json
{"openapi":"3.0.3","info":{"title":"Collibra Catalog Database Registration API","version":"1.6.0"},"components":{"schemas":{"Job":{"required":["id","resourceType"],"type":"object","properties":{"id":{"type":"string","description":"The id of the represented object (entity).","format":"uuid"},"createdBy":{"type":"string","description":"The id of the user that created this resource.","format":"uuid"},"createdOn":{"type":"integer","description":"The timestamp (in UTC time standard) of the creation of this resource.","format":"int64"},"lastModifiedBy":{"type":"string","description":"The id of the user who modified this resource the last time.","format":"uuid"},"lastModifiedOn":{"type":"integer","description":"The timestamp (in UTC time standard) of the last modification of this resource.","format":"int64"},"system":{"type":"boolean","description":"Whether this is a system resource or not."},"resourceType":{"type":"string","description":"The type of this resource, i.e. [Community, Asset, Domain, Attribute, Relation, WorkflowInstance].\n","enum":["View","Asset","Community","Domain","AssetType","DomainType","Status","User","ClassificationMatch","UserGroup","Attribute","StringAttribute","ScriptAttribute","BooleanAttribute","DateAttribute","NumericAttribute","SingleValueListAttribute","MultiValueListAttribute","Comment","Attachment","Responsibility","Workflow","Job","Relation","RelationType","ComplexRelation","ComplexRelationType","ArticulationRule","Assignment","Scope","RelationTrace","ValidationRule","DataQualityRule","DataQualityMetric","Address","InstantMessagingAccount","Email","PhoneNumber","Website","Activity","FormProperty","WorkflowTask","ActivityChange","WorkflowInstance","Role","AttributeType","BooleanAttributeType","DateAttributeType","DateTimeAttributeType","MultiValueListAttributeType","NumericAttributeType","ScriptAttributeType","SingleValueListAttributeType","StringAttributeType","ViewSharingRule","ViewAssignmentRule","JdbcDriverFile","JdbcDriver","JdbcIngestionProperties","CsvIngestionProperties","ExcelIngestionProperties","ConnectionStringParameter","AssignedCharacteristicType","Notification","Tag","ComplexRelationLegType","ComplexRelationAttributeType","ComplexRelationLeg","BaseDataType","AdvancedDataType","DiagramPicture","DiagramPictureSharingRule","DiagramPictureAssignmentRule","Rating","Classification","PhysicalDataConnector","Context"]},"name":{"type":"string","description":"The name of the resource."},"type":{"type":"string","description":"The type of the job."},"userId":{"type":"string","description":"The ID of the user that initiated this job.","format":"uuid"},"progressPercentage":{"type":"number","description":"The progress percentage of the job.","format":"double"},"startDate":{"type":"integer","description":"The start date of the job.","format":"int64"},"endDate":{"type":"integer","description":"The end date of the job.","format":"int64"},"state":{"type":"string","description":"The state of the job.","enum":["WAITING","RUNNING","CANCELING","COMPLETED","CANCELED","ERROR"]},"message":{"type":"string","description":"The message of the job."}},"description":"Represents a job. Job is a single atomic task that is to be performed asynchronously."}}}}
```

## The MetadataSynchronizationRule object

```json
{"openapi":"3.0.3","info":{"title":"Collibra Catalog Database Registration API","version":"1.6.0"},"components":{"schemas":{"MetadataSynchronizationRule":{"type":"object","properties":{"include":{"type":"string","description":"A comma-separated list of the names of the tables you want to synchronize. You can use '*' as a wildcard.\nIf no value is defined, all the tables are included by default.\n","default":"*"},"exclude":{"type":"string","description":"A comma-separated list of the names of the tables you do not want to synchronize.\nYou can use this table rule to do the following:\n  1. Synchronize all tables in a schema except the ones defined in the Exclude field.\n  2. Synchronize only tables as defined in the Include field, with the exception of tables that are listed\n     in the Exclude field.\n","default":""},"targetDomainId":{"description":"The ID of a target domain in which the assets are created. If no domain is specified the assets are created\nin the automatically created domain for that schema.\n","type":"string","format":"uuid"},"skipViews":{"type":"boolean","default":false,"description":"A property to exclude database views from the synchronization process.\nIf true, no assets of the type Database View are created.\n"},"registerSourceTags":{"type":"boolean","description":"A property to register source tags when it is supported by the driver.\n"}}}}}}
```

## The ChangeSchemaMetadataConfigurationRequest object

```json
{"openapi":"3.0.3","info":{"title":"Collibra Catalog Database Registration API","version":"1.6.0"},"components":{"schemas":{"ChangeSchemaMetadataConfigurationRequest":{"allOf":[{"$ref":"#/components/schemas/SchemaMetadataConfiguration"}]},"SchemaMetadataConfiguration":{"type":"object","required":["schemaConnectionId"],"properties":{"schemaConnectionId":{"type":"string","format":"uuid"},"synchronizationRules":{"$ref":"#/components/schemas/MetadataSynchronizationRules"}}},"MetadataSynchronizationRules":{"type":"array","items":{"$ref":"#/components/schemas/MetadataSynchronizationRule"}},"MetadataSynchronizationRule":{"type":"object","properties":{"include":{"type":"string","description":"A comma-separated list of the names of the tables you want to synchronize. You can use '*' as a wildcard.\nIf no value is defined, all the tables are included by default.\n","default":"*"},"exclude":{"type":"string","description":"A comma-separated list of the names of the tables you do not want to synchronize.\nYou can use this table rule to do the following:\n  1. Synchronize all tables in a schema except the ones defined in the Exclude field.\n  2. Synchronize only tables as defined in the Include field, with the exception of tables that are listed\n     in the Exclude field.\n","default":""},"targetDomainId":{"description":"The ID of a target domain in which the assets are created. If no domain is specified the assets are created\nin the automatically created domain for that schema.\n","type":"string","format":"uuid"},"skipViews":{"type":"boolean","default":false,"description":"A property to exclude database views from the synchronization process.\nIf true, no assets of the type Database View are created.\n"},"registerSourceTags":{"type":"boolean","description":"A property to register source tags when it is supported by the driver.\n"}}}}}}
```

## The SchemaMetadataConfigurations object

```json
{"openapi":"3.0.3","info":{"title":"Collibra Catalog Database Registration API","version":"1.6.0"},"components":{"schemas":{"SchemaMetadataConfigurations":{"type":"array","items":{"$ref":"#/components/schemas/SchemaMetadataConfiguration"}},"SchemaMetadataConfiguration":{"type":"object","required":["schemaConnectionId"],"properties":{"schemaConnectionId":{"type":"string","format":"uuid"},"synchronizationRules":{"$ref":"#/components/schemas/MetadataSynchronizationRules"}}},"MetadataSynchronizationRules":{"type":"array","items":{"$ref":"#/components/schemas/MetadataSynchronizationRule"}},"MetadataSynchronizationRule":{"type":"object","properties":{"include":{"type":"string","description":"A comma-separated list of the names of the tables you want to synchronize. You can use '*' as a wildcard.\nIf no value is defined, all the tables are included by default.\n","default":"*"},"exclude":{"type":"string","description":"A comma-separated list of the names of the tables you do not want to synchronize.\nYou can use this table rule to do the following:\n  1. Synchronize all tables in a schema except the ones defined in the Exclude field.\n  2. Synchronize only tables as defined in the Include field, with the exception of tables that are listed\n     in the Exclude field.\n","default":""},"targetDomainId":{"description":"The ID of a target domain in which the assets are created. If no domain is specified the assets are created\nin the automatically created domain for that schema.\n","type":"string","format":"uuid"},"skipViews":{"type":"boolean","default":false,"description":"A property to exclude database views from the synchronization process.\nIf true, no assets of the type Database View are created.\n"},"registerSourceTags":{"type":"boolean","description":"A property to register source tags when it is supported by the driver.\n"}}}}}}
```

## The MetadataSynchronizationRules object

```json
{"openapi":"3.0.3","info":{"title":"Collibra Catalog Database Registration API","version":"1.6.0"},"components":{"schemas":{"MetadataSynchronizationRules":{"type":"array","items":{"$ref":"#/components/schemas/MetadataSynchronizationRule"}},"MetadataSynchronizationRule":{"type":"object","properties":{"include":{"type":"string","description":"A comma-separated list of the names of the tables you want to synchronize. You can use '*' as a wildcard.\nIf no value is defined, all the tables are included by default.\n","default":"*"},"exclude":{"type":"string","description":"A comma-separated list of the names of the tables you do not want to synchronize.\nYou can use this table rule to do the following:\n  1. Synchronize all tables in a schema except the ones defined in the Exclude field.\n  2. Synchronize only tables as defined in the Include field, with the exception of tables that are listed\n     in the Exclude field.\n","default":""},"targetDomainId":{"description":"The ID of a target domain in which the assets are created. If no domain is specified the assets are created\nin the automatically created domain for that schema.\n","type":"string","format":"uuid"},"skipViews":{"type":"boolean","default":false,"description":"A property to exclude database views from the synchronization process.\nIf true, no assets of the type Database View are created.\n"},"registerSourceTags":{"type":"boolean","description":"A property to register source tags when it is supported by the driver.\n"}}}}}}
```

## The SchemaMetadataConfiguration object

```json
{"openapi":"3.0.3","info":{"title":"Collibra Catalog Database Registration API","version":"1.6.0"},"components":{"schemas":{"SchemaMetadataConfiguration":{"type":"object","required":["schemaConnectionId"],"properties":{"schemaConnectionId":{"type":"string","format":"uuid"},"synchronizationRules":{"$ref":"#/components/schemas/MetadataSynchronizationRules"}}},"MetadataSynchronizationRules":{"type":"array","items":{"$ref":"#/components/schemas/MetadataSynchronizationRule"}},"MetadataSynchronizationRule":{"type":"object","properties":{"include":{"type":"string","description":"A comma-separated list of the names of the tables you want to synchronize. You can use '*' as a wildcard.\nIf no value is defined, all the tables are included by default.\n","default":"*"},"exclude":{"type":"string","description":"A comma-separated list of the names of the tables you do not want to synchronize.\nYou can use this table rule to do the following:\n  1. Synchronize all tables in a schema except the ones defined in the Exclude field.\n  2. Synchronize only tables as defined in the Include field, with the exception of tables that are listed\n     in the Exclude field.\n","default":""},"targetDomainId":{"description":"The ID of a target domain in which the assets are created. If no domain is specified the assets are created\nin the automatically created domain for that schema.\n","type":"string","format":"uuid"},"skipViews":{"type":"boolean","default":false,"description":"A property to exclude database views from the synchronization process.\nIf true, no assets of the type Database View are created.\n"},"registerSourceTags":{"type":"boolean","description":"A property to register source tags when it is supported by the driver.\n"}}}}}}
```

## The SchemaMetadataConfigurationPagedResponse object

```json
{"openapi":"3.0.3","info":{"title":"Collibra Catalog Database Registration API","version":"1.6.0"},"components":{"schemas":{"SchemaMetadataConfigurationPagedResponse":{"type":"object","properties":{"results":{"type":"array","description":"The list of results.","items":{"$ref":"#/components/schemas/SchemaMetadataConfiguration"}}}},"SchemaMetadataConfiguration":{"type":"object","required":["schemaConnectionId"],"properties":{"schemaConnectionId":{"type":"string","format":"uuid"},"synchronizationRules":{"$ref":"#/components/schemas/MetadataSynchronizationRules"}}},"MetadataSynchronizationRules":{"type":"array","items":{"$ref":"#/components/schemas/MetadataSynchronizationRule"}},"MetadataSynchronizationRule":{"type":"object","properties":{"include":{"type":"string","description":"A comma-separated list of the names of the tables you want to synchronize. You can use '*' as a wildcard.\nIf no value is defined, all the tables are included by default.\n","default":"*"},"exclude":{"type":"string","description":"A comma-separated list of the names of the tables you do not want to synchronize.\nYou can use this table rule to do the following:\n  1. Synchronize all tables in a schema except the ones defined in the Exclude field.\n  2. Synchronize only tables as defined in the Include field, with the exception of tables that are listed\n     in the Exclude field.\n","default":""},"targetDomainId":{"description":"The ID of a target domain in which the assets are created. If no domain is specified the assets are created\nin the automatically created domain for that schema.\n","type":"string","format":"uuid"},"skipViews":{"type":"boolean","default":false,"description":"A property to exclude database views from the synchronization process.\nIf true, no assets of the type Database View are created.\n"},"registerSourceTags":{"type":"boolean","description":"A property to register source tags when it is supported by the driver.\n"}}}}}}
```

## The ProfilingConfigurationPagedResponse object

```json
{"openapi":"3.0.3","info":{"title":"Collibra Catalog Database Registration API","version":"1.6.0"},"components":{"schemas":{"ProfilingConfigurationPagedResponse":{"type":"object","properties":{"results":{"type":"array","description":"The list of results.","items":{"$ref":"#/components/schemas/ProfilingConfiguration"}}}},"ProfilingConfiguration":{"allOf":[{"$ref":"#/components/schemas/AddProfilingConfigurationRequest"},{"type":"object","required":["id"],"properties":{"id":{"type":"string","description":"The ID of the profiling configuration.","format":"uuid","readOnly":true}}}]},"AddProfilingConfigurationRequest":{"type":"object","required":["databaseId"],"properties":{"databaseId":{"type":"string","format":"uuid","description":"The ID of the Database asset."},"profilingType":{"type":"string","enum":["full","sample","none"],"default":"sample","description":"- **full**: Select to profile based on all synchronized metadata.\n- **sample**: Select to profile based on a sample of the synchronized metadata.\n  When you select Partial scan, you can define the maximum number of rows that you want to use for profiling (as *sampleSize*).\nBy default, the maximum number of rows is 20000.\n"},"sampleSize":{"$ref":"#/components/schemas/SampleSize"},"runAfterMetadataSynchronization":{"type":"boolean","default":false,"description":"If set to *true*, it will automatically create a data profile every time\nthe metadata synchronization process of one or more schemas finishes.\n\nThis may take a long time. You can also add a schedule to profile at regular intervals.\n"},"excludeTypes":{"$ref":"#/components/schemas/ExcludeTypes"}}},"SampleSize":{"type":"integer","default":20000,"maximum":1000000,"description":"If *profilingType* is defined as *sample*, this attribute defines how many rows are used for profiling. The minimum value is 100."},"ExcludeTypes":{"type":"string","description":"A comma-separated list of table types to be excluded during profiling.\n","default":""}}}}
```

## The SchemaProfilingConfigurationPagedResponse object

```json
{"openapi":"3.0.3","info":{"title":"Collibra Catalog Database Registration API","version":"1.6.0"},"components":{"schemas":{"SchemaProfilingConfigurationPagedResponse":{"type":"object","properties":{"results":{"type":"array","description":"The list of results.","items":{"$ref":"#/components/schemas/SchemaProfilingConfiguration"}}}},"SchemaProfilingConfiguration":{"allOf":[{"$ref":"#/components/schemas/AddSchemaProfilingConfigurationRequest"},{"type":"object","required":["id"],"properties":{"id":{"type":"string","format":"uuid","description":"The ID of schema profiling configuration.","readOnly":true}}}]},"AddSchemaProfilingConfigurationRequest":{"type":"object","required":["schemaConnectionId","profilingRules"],"properties":{"schemaConnectionId":{"type":"string","format":"uuid","description":"The ID of the schema connection."},"profilingRules":{"$ref":"#/components/schemas/SchemaProfilingRules"}}},"SchemaProfilingRules":{"type":"array","maxItems":1,"items":{"$ref":"#/components/schemas/SchemaProfilingRule"}},"SchemaProfilingRule":{"type":"object","required":["profilingType"],"properties":{"profilingType":{"type":"string","enum":["full","sample","none"],"default":"sample","description":"- **full**: Select to profile based on all synchronized metadata.\n- **sample**: Select to profile based on a sample of the synchronized metadata.\n  When you select Partial scan, you can define the maximum number of rows that you want to use for profiling (as *sampleSize*).\nBy default, the maximum number of rows is 20000.\n"},"sampleSize":{"$ref":"#/components/schemas/SampleSize"},"include":{"type":"string","description":"A comma-separated list of the table names you want to profile. You can use `*` as a wildcard.\nIf not defined, all the tables are included by default.\n","default":"*"},"exclude":{"type":"string","description":"A comma-separated list of table names to be excluded during profiling. You can use `*` as a wildcard.\nIf not defined, no table will be excluded and all tables defined in `include` will be profiled. \nYou can use this table rule to:\n\t1. Profile all tables in a schema except the ones defined in the `exclude` field.\n\t2. Profile only tables as defined in the `include` field, with the exception of tables that are listed\n\t\t in the `exclude` field.\n","default":""},"excludeTypes":{"$ref":"#/components/schemas/ExcludeTypes"}}},"SampleSize":{"type":"integer","default":20000,"maximum":1000000,"description":"If *profilingType* is defined as *sample*, this attribute defines how many rows are used for profiling. The minimum value is 100."},"ExcludeTypes":{"type":"string","description":"A comma-separated list of table types to be excluded during profiling.\n","default":""}}}}
```

## The StandardErrorResponse object

```json
{"openapi":"3.0.3","info":{"title":"Collibra Catalog Database Registration API","version":"1.6.0"},"components":{"schemas":{"StandardErrorResponse":{"type":"object","properties":{"statusCode":{"type":"integer","description":"HTTP response code"},"titleMessage":{"type":"string"},"helpMessage":{"type":"string"},"userMessage":{"type":"string"},"errorCode":{"type":"string"}}}}}}
```

## The SchemaProfilingConfigurations object

```json
{"openapi":"3.0.3","info":{"title":"Collibra Catalog Database Registration API","version":"1.6.0"},"components":{"schemas":{"SchemaProfilingConfigurations":{"type":"array","items":{"$ref":"#/components/schemas/SchemaProfilingConfiguration"}},"SchemaProfilingConfiguration":{"allOf":[{"$ref":"#/components/schemas/AddSchemaProfilingConfigurationRequest"},{"type":"object","required":["id"],"properties":{"id":{"type":"string","format":"uuid","description":"The ID of schema profiling configuration.","readOnly":true}}}]},"AddSchemaProfilingConfigurationRequest":{"type":"object","required":["schemaConnectionId","profilingRules"],"properties":{"schemaConnectionId":{"type":"string","format":"uuid","description":"The ID of the schema connection."},"profilingRules":{"$ref":"#/components/schemas/SchemaProfilingRules"}}},"SchemaProfilingRules":{"type":"array","maxItems":1,"items":{"$ref":"#/components/schemas/SchemaProfilingRule"}},"SchemaProfilingRule":{"type":"object","required":["profilingType"],"properties":{"profilingType":{"type":"string","enum":["full","sample","none"],"default":"sample","description":"- **full**: Select to profile based on all synchronized metadata.\n- **sample**: Select to profile based on a sample of the synchronized metadata.\n  When you select Partial scan, you can define the maximum number of rows that you want to use for profiling (as *sampleSize*).\nBy default, the maximum number of rows is 20000.\n"},"sampleSize":{"$ref":"#/components/schemas/SampleSize"},"include":{"type":"string","description":"A comma-separated list of the table names you want to profile. You can use `*` as a wildcard.\nIf not defined, all the tables are included by default.\n","default":"*"},"exclude":{"type":"string","description":"A comma-separated list of table names to be excluded during profiling. You can use `*` as a wildcard.\nIf not defined, no table will be excluded and all tables defined in `include` will be profiled. \nYou can use this table rule to:\n\t1. Profile all tables in a schema except the ones defined in the `exclude` field.\n\t2. Profile only tables as defined in the `include` field, with the exception of tables that are listed\n\t\t in the `exclude` field.\n","default":""},"excludeTypes":{"$ref":"#/components/schemas/ExcludeTypes"}}},"SampleSize":{"type":"integer","default":20000,"maximum":1000000,"description":"If *profilingType* is defined as *sample*, this attribute defines how many rows are used for profiling. The minimum value is 100."},"ExcludeTypes":{"type":"string","description":"A comma-separated list of table types to be excluded during profiling.\n","default":""}}}}
```

## The AddSchemaProfilingConfigurationBatchRequest object

```json
{"openapi":"3.0.3","info":{"title":"Collibra Catalog Database Registration API","version":"1.6.0"},"components":{"schemas":{"AddSchemaProfilingConfigurationBatchRequest":{"type":"array","minItems":1,"items":{"$ref":"#/components/schemas/AddSchemaProfilingConfigurationRequest"}},"AddSchemaProfilingConfigurationRequest":{"type":"object","required":["schemaConnectionId","profilingRules"],"properties":{"schemaConnectionId":{"type":"string","format":"uuid","description":"The ID of the schema connection."},"profilingRules":{"$ref":"#/components/schemas/SchemaProfilingRules"}}},"SchemaProfilingRules":{"type":"array","maxItems":1,"items":{"$ref":"#/components/schemas/SchemaProfilingRule"}},"SchemaProfilingRule":{"type":"object","required":["profilingType"],"properties":{"profilingType":{"type":"string","enum":["full","sample","none"],"default":"sample","description":"- **full**: Select to profile based on all synchronized metadata.\n- **sample**: Select to profile based on a sample of the synchronized metadata.\n  When you select Partial scan, you can define the maximum number of rows that you want to use for profiling (as *sampleSize*).\nBy default, the maximum number of rows is 20000.\n"},"sampleSize":{"$ref":"#/components/schemas/SampleSize"},"include":{"type":"string","description":"A comma-separated list of the table names you want to profile. You can use `*` as a wildcard.\nIf not defined, all the tables are included by default.\n","default":"*"},"exclude":{"type":"string","description":"A comma-separated list of table names to be excluded during profiling. You can use `*` as a wildcard.\nIf not defined, no table will be excluded and all tables defined in `include` will be profiled. \nYou can use this table rule to:\n\t1. Profile all tables in a schema except the ones defined in the `exclude` field.\n\t2. Profile only tables as defined in the `include` field, with the exception of tables that are listed\n\t\t in the `exclude` field.\n","default":""},"excludeTypes":{"$ref":"#/components/schemas/ExcludeTypes"}}},"SampleSize":{"type":"integer","default":20000,"maximum":1000000,"description":"If *profilingType* is defined as *sample*, this attribute defines how many rows are used for profiling. The minimum value is 100."},"ExcludeTypes":{"type":"string","description":"A comma-separated list of table types to be excluded during profiling.\n","default":""}}}}
```

## The AddProfilingConfigurationRequest object

```json
{"openapi":"3.0.3","info":{"title":"Collibra Catalog Database Registration API","version":"1.6.0"},"components":{"schemas":{"AddProfilingConfigurationRequest":{"type":"object","required":["databaseId"],"properties":{"databaseId":{"type":"string","format":"uuid","description":"The ID of the Database asset."},"profilingType":{"type":"string","enum":["full","sample","none"],"default":"sample","description":"- **full**: Select to profile based on all synchronized metadata.\n- **sample**: Select to profile based on a sample of the synchronized metadata.\n  When you select Partial scan, you can define the maximum number of rows that you want to use for profiling (as *sampleSize*).\nBy default, the maximum number of rows is 20000.\n"},"sampleSize":{"$ref":"#/components/schemas/SampleSize"},"runAfterMetadataSynchronization":{"type":"boolean","default":false,"description":"If set to *true*, it will automatically create a data profile every time\nthe metadata synchronization process of one or more schemas finishes.\n\nThis may take a long time. You can also add a schedule to profile at regular intervals.\n"},"excludeTypes":{"$ref":"#/components/schemas/ExcludeTypes"}}},"SampleSize":{"type":"integer","default":20000,"maximum":1000000,"description":"If *profilingType* is defined as *sample*, this attribute defines how many rows are used for profiling. The minimum value is 100."},"ExcludeTypes":{"type":"string","description":"A comma-separated list of table types to be excluded during profiling.\n","default":""}}}}
```

## The ChangeProfilingConfigurationRequest object

```json
{"openapi":"3.0.3","info":{"title":"Collibra Catalog Database Registration API","version":"1.6.0"},"components":{"schemas":{"ChangeProfilingConfigurationRequest":{"type":"object","properties":{"profilingType":{"type":"string","enum":["full","sample","none"],"description":"- **full**: Select to profile based on all synchronized metadata.\n- **sample**: Select to profile based on a sample of the synchronized metadata.\n  When you select Partial scan, you can define the maximum number of rows that you want to use for profiling (as *sampleSize*).\nBy default, the maximum number of rows is 20000.\n"},"sampleSize":{"type":"integer","maximum":1000000,"description":"If *profilingType* is defined as *sample*, this attribute defines how many rows are used for profiling. The minimum value is 100."},"runAfterMetadataSynchronization":{"type":"boolean","description":"If set to *true*, it will automatically create a data profile every time\nthe metadata synchronization process of one or more schemas finishes.\n\nThis may take a long time. You can also add a schedule to profile at regular intervals.\n"},"excludeTypes":{"$ref":"#/components/schemas/ExcludeTypes"}}},"ExcludeTypes":{"type":"string","description":"A comma-separated list of table types to be excluded during profiling.\n","default":""}}}}
```

## The ProfilingConfiguration object

```json
{"openapi":"3.0.3","info":{"title":"Collibra Catalog Database Registration API","version":"1.6.0"},"components":{"schemas":{"ProfilingConfiguration":{"allOf":[{"$ref":"#/components/schemas/AddProfilingConfigurationRequest"},{"type":"object","required":["id"],"properties":{"id":{"type":"string","description":"The ID of the profiling configuration.","format":"uuid","readOnly":true}}}]},"AddProfilingConfigurationRequest":{"type":"object","required":["databaseId"],"properties":{"databaseId":{"type":"string","format":"uuid","description":"The ID of the Database asset."},"profilingType":{"type":"string","enum":["full","sample","none"],"default":"sample","description":"- **full**: Select to profile based on all synchronized metadata.\n- **sample**: Select to profile based on a sample of the synchronized metadata.\n  When you select Partial scan, you can define the maximum number of rows that you want to use for profiling (as *sampleSize*).\nBy default, the maximum number of rows is 20000.\n"},"sampleSize":{"$ref":"#/components/schemas/SampleSize"},"runAfterMetadataSynchronization":{"type":"boolean","default":false,"description":"If set to *true*, it will automatically create a data profile every time\nthe metadata synchronization process of one or more schemas finishes.\n\nThis may take a long time. You can also add a schedule to profile at regular intervals.\n"},"excludeTypes":{"$ref":"#/components/schemas/ExcludeTypes"}}},"SampleSize":{"type":"integer","default":20000,"maximum":1000000,"description":"If *profilingType* is defined as *sample*, this attribute defines how many rows are used for profiling. The minimum value is 100."},"ExcludeTypes":{"type":"string","description":"A comma-separated list of table types to be excluded during profiling.\n","default":""}}}}
```

## The SampleSize object

```json
{"openapi":"3.0.3","info":{"title":"Collibra Catalog Database Registration API","version":"1.6.0"},"components":{"schemas":{"SampleSize":{"type":"integer","default":20000,"maximum":1000000,"description":"If *profilingType* is defined as *sample*, this attribute defines how many rows are used for profiling. The minimum value is 100."}}}}
```

## The AddSchemaProfilingConfigurationRequest object

```json
{"openapi":"3.0.3","info":{"title":"Collibra Catalog Database Registration API","version":"1.6.0"},"components":{"schemas":{"AddSchemaProfilingConfigurationRequest":{"type":"object","required":["schemaConnectionId","profilingRules"],"properties":{"schemaConnectionId":{"type":"string","format":"uuid","description":"The ID of the schema connection."},"profilingRules":{"$ref":"#/components/schemas/SchemaProfilingRules"}}},"SchemaProfilingRules":{"type":"array","maxItems":1,"items":{"$ref":"#/components/schemas/SchemaProfilingRule"}},"SchemaProfilingRule":{"type":"object","required":["profilingType"],"properties":{"profilingType":{"type":"string","enum":["full","sample","none"],"default":"sample","description":"- **full**: Select to profile based on all synchronized metadata.\n- **sample**: Select to profile based on a sample of the synchronized metadata.\n  When you select Partial scan, you can define the maximum number of rows that you want to use for profiling (as *sampleSize*).\nBy default, the maximum number of rows is 20000.\n"},"sampleSize":{"$ref":"#/components/schemas/SampleSize"},"include":{"type":"string","description":"A comma-separated list of the table names you want to profile. You can use `*` as a wildcard.\nIf not defined, all the tables are included by default.\n","default":"*"},"exclude":{"type":"string","description":"A comma-separated list of table names to be excluded during profiling. You can use `*` as a wildcard.\nIf not defined, no table will be excluded and all tables defined in `include` will be profiled. \nYou can use this table rule to:\n\t1. Profile all tables in a schema except the ones defined in the `exclude` field.\n\t2. Profile only tables as defined in the `include` field, with the exception of tables that are listed\n\t\t in the `exclude` field.\n","default":""},"excludeTypes":{"$ref":"#/components/schemas/ExcludeTypes"}}},"SampleSize":{"type":"integer","default":20000,"maximum":1000000,"description":"If *profilingType* is defined as *sample*, this attribute defines how many rows are used for profiling. The minimum value is 100."},"ExcludeTypes":{"type":"string","description":"A comma-separated list of table types to be excluded during profiling.\n","default":""}}}}
```

## The SchemaProfilingRules object

```json
{"openapi":"3.0.3","info":{"title":"Collibra Catalog Database Registration API","version":"1.6.0"},"components":{"schemas":{"SchemaProfilingRules":{"type":"array","maxItems":1,"items":{"$ref":"#/components/schemas/SchemaProfilingRule"}},"SchemaProfilingRule":{"type":"object","required":["profilingType"],"properties":{"profilingType":{"type":"string","enum":["full","sample","none"],"default":"sample","description":"- **full**: Select to profile based on all synchronized metadata.\n- **sample**: Select to profile based on a sample of the synchronized metadata.\n  When you select Partial scan, you can define the maximum number of rows that you want to use for profiling (as *sampleSize*).\nBy default, the maximum number of rows is 20000.\n"},"sampleSize":{"$ref":"#/components/schemas/SampleSize"},"include":{"type":"string","description":"A comma-separated list of the table names you want to profile. You can use `*` as a wildcard.\nIf not defined, all the tables are included by default.\n","default":"*"},"exclude":{"type":"string","description":"A comma-separated list of table names to be excluded during profiling. You can use `*` as a wildcard.\nIf not defined, no table will be excluded and all tables defined in `include` will be profiled. \nYou can use this table rule to:\n\t1. Profile all tables in a schema except the ones defined in the `exclude` field.\n\t2. Profile only tables as defined in the `include` field, with the exception of tables that are listed\n\t\t in the `exclude` field.\n","default":""},"excludeTypes":{"$ref":"#/components/schemas/ExcludeTypes"}}},"SampleSize":{"type":"integer","default":20000,"maximum":1000000,"description":"If *profilingType* is defined as *sample*, this attribute defines how many rows are used for profiling. The minimum value is 100."},"ExcludeTypes":{"type":"string","description":"A comma-separated list of table types to be excluded during profiling.\n","default":""}}}}
```

## The SchemaProfilingRule object

```json
{"openapi":"3.0.3","info":{"title":"Collibra Catalog Database Registration API","version":"1.6.0"},"components":{"schemas":{"SchemaProfilingRule":{"type":"object","required":["profilingType"],"properties":{"profilingType":{"type":"string","enum":["full","sample","none"],"default":"sample","description":"- **full**: Select to profile based on all synchronized metadata.\n- **sample**: Select to profile based on a sample of the synchronized metadata.\n  When you select Partial scan, you can define the maximum number of rows that you want to use for profiling (as *sampleSize*).\nBy default, the maximum number of rows is 20000.\n"},"sampleSize":{"$ref":"#/components/schemas/SampleSize"},"include":{"type":"string","description":"A comma-separated list of the table names you want to profile. You can use `*` as a wildcard.\nIf not defined, all the tables are included by default.\n","default":"*"},"exclude":{"type":"string","description":"A comma-separated list of table names to be excluded during profiling. You can use `*` as a wildcard.\nIf not defined, no table will be excluded and all tables defined in `include` will be profiled. \nYou can use this table rule to:\n\t1. Profile all tables in a schema except the ones defined in the `exclude` field.\n\t2. Profile only tables as defined in the `include` field, with the exception of tables that are listed\n\t\t in the `exclude` field.\n","default":""},"excludeTypes":{"$ref":"#/components/schemas/ExcludeTypes"}}},"SampleSize":{"type":"integer","default":20000,"maximum":1000000,"description":"If *profilingType* is defined as *sample*, this attribute defines how many rows are used for profiling. The minimum value is 100."},"ExcludeTypes":{"type":"string","description":"A comma-separated list of table types to be excluded during profiling.\n","default":""}}}}
```

## The ChangeSchemaProfilingConfigurationRequest object

```json
{"openapi":"3.0.3","info":{"title":"Collibra Catalog Database Registration API","version":"1.6.0"},"components":{"schemas":{"ChangeSchemaProfilingConfigurationRequest":{"allOf":[{"$ref":"#/components/schemas/AddSchemaProfilingConfigurationRequest"}]},"AddSchemaProfilingConfigurationRequest":{"type":"object","required":["schemaConnectionId","profilingRules"],"properties":{"schemaConnectionId":{"type":"string","format":"uuid","description":"The ID of the schema connection."},"profilingRules":{"$ref":"#/components/schemas/SchemaProfilingRules"}}},"SchemaProfilingRules":{"type":"array","maxItems":1,"items":{"$ref":"#/components/schemas/SchemaProfilingRule"}},"SchemaProfilingRule":{"type":"object","required":["profilingType"],"properties":{"profilingType":{"type":"string","enum":["full","sample","none"],"default":"sample","description":"- **full**: Select to profile based on all synchronized metadata.\n- **sample**: Select to profile based on a sample of the synchronized metadata.\n  When you select Partial scan, you can define the maximum number of rows that you want to use for profiling (as *sampleSize*).\nBy default, the maximum number of rows is 20000.\n"},"sampleSize":{"$ref":"#/components/schemas/SampleSize"},"include":{"type":"string","description":"A comma-separated list of the table names you want to profile. You can use `*` as a wildcard.\nIf not defined, all the tables are included by default.\n","default":"*"},"exclude":{"type":"string","description":"A comma-separated list of table names to be excluded during profiling. You can use `*` as a wildcard.\nIf not defined, no table will be excluded and all tables defined in `include` will be profiled. \nYou can use this table rule to:\n\t1. Profile all tables in a schema except the ones defined in the `exclude` field.\n\t2. Profile only tables as defined in the `include` field, with the exception of tables that are listed\n\t\t in the `exclude` field.\n","default":""},"excludeTypes":{"$ref":"#/components/schemas/ExcludeTypes"}}},"SampleSize":{"type":"integer","default":20000,"maximum":1000000,"description":"If *profilingType* is defined as *sample*, this attribute defines how many rows are used for profiling. The minimum value is 100."},"ExcludeTypes":{"type":"string","description":"A comma-separated list of table types to be excluded during profiling.\n","default":""}}}}
```

## The SchemaProfilingConfiguration object

```json
{"openapi":"3.0.3","info":{"title":"Collibra Catalog Database Registration API","version":"1.6.0"},"components":{"schemas":{"SchemaProfilingConfiguration":{"allOf":[{"$ref":"#/components/schemas/AddSchemaProfilingConfigurationRequest"},{"type":"object","required":["id"],"properties":{"id":{"type":"string","format":"uuid","description":"The ID of schema profiling configuration.","readOnly":true}}}]},"AddSchemaProfilingConfigurationRequest":{"type":"object","required":["schemaConnectionId","profilingRules"],"properties":{"schemaConnectionId":{"type":"string","format":"uuid","description":"The ID of the schema connection."},"profilingRules":{"$ref":"#/components/schemas/SchemaProfilingRules"}}},"SchemaProfilingRules":{"type":"array","maxItems":1,"items":{"$ref":"#/components/schemas/SchemaProfilingRule"}},"SchemaProfilingRule":{"type":"object","required":["profilingType"],"properties":{"profilingType":{"type":"string","enum":["full","sample","none"],"default":"sample","description":"- **full**: Select to profile based on all synchronized metadata.\n- **sample**: Select to profile based on a sample of the synchronized metadata.\n  When you select Partial scan, you can define the maximum number of rows that you want to use for profiling (as *sampleSize*).\nBy default, the maximum number of rows is 20000.\n"},"sampleSize":{"$ref":"#/components/schemas/SampleSize"},"include":{"type":"string","description":"A comma-separated list of the table names you want to profile. You can use `*` as a wildcard.\nIf not defined, all the tables are included by default.\n","default":"*"},"exclude":{"type":"string","description":"A comma-separated list of table names to be excluded during profiling. You can use `*` as a wildcard.\nIf not defined, no table will be excluded and all tables defined in `include` will be profiled. \nYou can use this table rule to:\n\t1. Profile all tables in a schema except the ones defined in the `exclude` field.\n\t2. Profile only tables as defined in the `include` field, with the exception of tables that are listed\n\t\t in the `exclude` field.\n","default":""},"excludeTypes":{"$ref":"#/components/schemas/ExcludeTypes"}}},"SampleSize":{"type":"integer","default":20000,"maximum":1000000,"description":"If *profilingType* is defined as *sample*, this attribute defines how many rows are used for profiling. The minimum value is 100."},"ExcludeTypes":{"type":"string","description":"A comma-separated list of table types to be excluded during profiling.\n","default":""}}}}
```

## The ExcludeTypes object

```json
{"openapi":"3.0.3","info":{"title":"Collibra Catalog Database Registration API","version":"1.6.0"},"components":{"schemas":{"ExcludeTypes":{"type":"string","description":"A comma-separated list of table types to be excluded during profiling.\n","default":""}}}}
```


---

# 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/database-registration/models.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.
