openapi: 3.2.0 info: title: Schema Manager Object Metadata API version: v1 servers: - url: https://rls.congacloud.com - url: https://preview-rls09.congacloud.com security: - bearerAuth: [] tags: - name: Object Metadata paths: /api/metadata/v1/objects: get: tags: - Object Metadata summary: Get all scoped object names description: Retrieves a list of object information, including object names and basic metadata, with support for sorting, pagination, and optional filtering. parameters: - name: sortField in: query description: Field name for sorting schema: type: string - name: sortDirection in: query description: Sort direction (ascending or descending) of the data in sortField. schema: $ref: '#/components/schemas/SortDirection' - name: pageSize in: query description: The number of records to display on each page schema: type: integer format: int32 - name: pageNumber in: query description: The page number of the result set to view schema: type: integer format: int32 - name: startsWithFilter in: query description: Optional filter to return objects that start with the specified string. schema: type: string responses: '200': description: Success content: text/plain: schema: $ref: '#/components/schemas/ObjectInfoListAPIResponse' example: Success: true Data: - Name: Currency DisplayName: Currency Description: Currency Category: Platform IsProtected: true IsDeprecated: false ObjectType: Default - Name: Role DisplayName: Role Description: Role Category: Platform IsProtected: true IsDeprecated: false ObjectType: Default - Name: ObjectPermission DisplayName: ObjectPermission Description: ObjectPermission Category: Platform IsProtected: true IsDeprecated: false ObjectType: Default - Name: Agreement_UserShare_p DisplayName: Agreement_UserShare_p Description: Agreement_UserShare_p Category: Platform IsProtected: true IsDeprecated: false ObjectType: Default StatusCode: OK application/json: schema: $ref: '#/components/schemas/ObjectInfoListAPIResponse' example: Success: true Data: - Name: Currency DisplayName: Currency Description: Currency Category: Platform IsProtected: true IsDeprecated: false ObjectType: Default - Name: Role DisplayName: Role Description: Role Category: Platform IsProtected: true IsDeprecated: false ObjectType: Default - Name: ObjectPermission DisplayName: ObjectPermission Description: ObjectPermission Category: Platform IsProtected: true IsDeprecated: false ObjectType: Default - Name: Agreement_UserShare_p DisplayName: Agreement_UserShare_p Description: Agreement_UserShare_p Category: Platform IsProtected: true IsDeprecated: false ObjectType: Default StatusCode: OK text/json: schema: $ref: '#/components/schemas/ObjectInfoListAPIResponse' example: Success: true Data: - Name: Currency DisplayName: Currency Description: Currency Category: Platform IsProtected: true IsDeprecated: false ObjectType: Default - Name: Role DisplayName: Role Description: Role Category: Platform IsProtected: true IsDeprecated: false ObjectType: Default - Name: ObjectPermission DisplayName: ObjectPermission Description: ObjectPermission Category: Platform IsProtected: true IsDeprecated: false ObjectType: Default - Name: Agreement_UserShare_p DisplayName: Agreement_UserShare_p Description: Agreement_UserShare_p Category: Platform IsProtected: true IsDeprecated: false ObjectType: Default StatusCode: OK '400': description: Bad Request '500': description: Internal Server Error /api/metadata/v1/objects/customschema/export: post: tags: - Object Metadata summary: Export custom schema description: "For the object(s) passed in the request body, exports a schema (zipped, with a JSON file for each object) for custom fields and custom objects. This exports:\n " requestBody: description: 'A list of standard and custom objects. For example: ["Agreement","CustomObject1_c","CustomObject2_c"]' content: application/json: schema: type: array items: type: string text/json: schema: type: array items: type: string application/*+json: schema: type: array items: type: string responses: '200': description: Success '400': description: Bad Request '500': description: Internal Server Error /api/metadata/v1/objects/{objectName}: get: tags: - Object Metadata summary: Get a schema definition description: Validates and retrieves an object's metadata at runtime. parameters: - name: objectName in: path description: Name of the object required: true schema: type: string - name: locale in: query description: Optional parameter, name of the organization supported locale schema: type: string responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ObjectMetadataAPIResponse' example: Success: true Data: Name: Account DisplayName: Account Description: Account IsProtected: true IsDeprecated: false IsShared: true IsDataCacheEnabled: true IsTrackingEnabled: true IsAllowOwnerScope: false Category: Common ObjectType: Default IsRecycleBinEnabled: false FieldMetadata: - FieldName: Name DisplayName: Name Description: null DataType: String DefaultValue: null IsProtected: false IsIndexField: false IsSortable: false IsRequired: true IsUnique: false IsDeprecated: false IsCalculated: false IsInternalField: false IsAliasField: false Length: null LookupObjectName: null LookupFilterCriteria: null DependentPicklistMetadataName: null PicklistName: null ComplexMetadataName: null AutoNumberInitialSeed: 0 AutoNumberPrefix: null Precision: 0 Scale: 0 Expression: null ExpressionDependency: null AliasExpressionDependency: null IsPreComputed: null ReferenceObject: null TargetObject: null TargetField: null RollupFunction: null RollupFilterCriteria: null AliasFieldDefinition: null AliasFieldMetadataName: null IsRichTextField: false IsPropertyLookup: false IdentifierType: null - FieldName: Id DisplayName: Id Description: null DataType: Identifier DefaultValue: null IsProtected: false IsIndexField: true IsSortable: false IsRequired: true IsUnique: false IsDeprecated: false IsCalculated: false IsInternalField: false IsAliasField: false Length: null LookupObjectName: null LookupFilterCriteria: null DependentPicklistMetadataName: null PicklistName: null ComplexMetadataName: null AutoNumberInitialSeed: 0 AutoNumberPrefix: null Precision: 0 Scale: 0 Expression: null ExpressionDependency: null AliasExpressionDependency: null IsPreComputed: null ReferenceObject: null TargetObject: null TargetField: null RollupFunction: null RollupFilterCriteria: null AliasFieldDefinition: null AliasFieldMetadataName: null IsRichTextField: false IsPropertyLookup: false IdentifierType: null InternalRuntimeAliasFields: [] InternalPrecomputedAliasFields: [] PicklistMetadata: [] DependentPicklistMetadata: [] ComplexFieldMetadata: [] AliasFieldMetadata: [] IndexMetadata: [] TtlFieldMetadata: null CreatedBy: Id: d9155304-5b37-40e6-a5ad-f16ea82ccc20 Name: System Admin CreatedDate: '2026-08-14T00:04:01.408+00:00' ModifiedBy: Id: 7cb347d9-e43c-470b-96a6-74c2b3d01cb2 Name: System Admin ModifiedDate: '2026-08-14T00:04:01.408+00:00' Attributes: PublishDataChangeEvents: true TrackAuditHistory: true IsInternalObject: false StatusCode: OK '400': description: Bad Request '500': description: Internal Server Error /api/metadata/v1/objects/{objectName}/dependencies: get: tags: - Object Metadata summary: Get all dependencies description: Retrieves all dependencies for a given object. parameters: - name: objectName in: path description: Name of the object required: true schema: type: string responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/DependentObjectMetadataListAPIResponse' example: Success: true Data: - Name: Agreement FieldName: ParentAgreement - Name: AgreementClause FieldName: Agreement StatusCode: OK '400': description: Bad Request '500': description: Internal Server Error /api/metadata/v1/objects/{objectName}/fields/{fieldName}: get: tags: - Object Metadata summary: Get field metadata description: Retrieves the metadata of the specified field. parameters: - name: objectName in: path description: Name of the object required: true schema: type: string - name: fieldName in: path description: Name of the field required: true schema: type: string responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/FieldMetadataAPIResponse' example: Success: true Data: FieldName: AgreementField DisplayName: AgreementField Description: AgreementField desc DataType: String DefaultValue: string IsProtected: false IsIndexField: false IsSortable: true IsRequired: true IsUnique: false IsDeprecated: false IsCalculated: false IsInternalField: false IsAliasField: false Length: 200 LookupObjectName: null LookupFilterCriteria: null DependentPicklistMetadataName: null PicklistName: null ComplexMetadataName: null AutoNumberInitialSeed: 0 AutoNumberPrefix: null Precision: 0 Scale: 0 Expression: null ExpressionDependency: null AliasExpressionDependency: null IsPreComputed: null ReferenceObject: null TargetObject: null TargetField: null RollupFunction: null RollupFilterCriteria: null AliasFieldDefinition: null AliasFieldMetadataName: null IsRichTextField: false IsPropertyLookup: false IdentifierType: null StatusCode: OK '400': description: Bad Request '500': description: Internal Server Error /api/metadata/v1/objects/{objectName}/fields/{fieldName}/dependency-fields: get: tags: - Object Metadata summary: Get field dependencies description: Retrieves the metadata of a specified field, including information about any dependent fields. parameters: - name: objectName in: path description: Name of the object required: true schema: type: string - name: fieldName in: path description: Name of the field required: true schema: type: string responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/DependencyFieldsMetadataAPIResponse' '400': description: Bad Request '500': description: Internal Server Error /api/metadata/v1/objects/{objectName}/fields/{fieldName}/dependent-picklists: get: tags: - Object Metadata summary: Get the dependent picklist definition description: Validates and fetches the dependent picklist metadata for the given dependent field name and object. parameters: - name: objectName in: path description: Name of the object containing the field required: true schema: type: string - name: fieldName in: path description: Name of the dependent field for which the dependent picklist metadata is to be fetched required: true schema: type: string responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/DependentPicklistMetadataAPIResponse' example: Success: true Data: Name: BillingCity DependentFieldName: BillingCity_c ControllingFieldName: BillingState_c ControllingAndDependentPicklistEntries: - ControllingPicklistEntry: Gujarat DependentPicklistEntries: - Value: Ahmedabad DisplayText: Ahmedabad Sequence: 0 IsDeprecated: false IsDeprecated: false StatusCode: Created '400': description: Bad Request '500': description: Internal Server Error /api/metadata/v1/objects/{objectName}/references: get: tags: - Object Metadata summary: Get all references description: Retrieves all references to the given object. parameters: - name: objectName in: path description: Name of the object required: true schema: type: string responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/DependentObjectMetadataListAPIResponse' example: Success: true Data: - Name: Agreement FieldName: ParentAgreement - Name: AgreementClause FieldName: Agreement StatusCode: OK '400': description: Bad Request '500': description: Internal Server Error components: schemas: Attributes: type: object properties: PublishDataChangeEvents: type: boolean TrackAuditHistory: type: boolean IsInternalObject: type: boolean additionalProperties: false DependentObjectMetadataListAPIResponse: type: object properties: Success: type: boolean RecordCount: type: - integer - 'null' format: int64 Data: type: - array - 'null' items: $ref: '#/components/schemas/DependentObjectMetadata' Errors: type: - array - 'null' items: $ref: '#/components/schemas/ErrorDetail' Profile: type: - string - 'null' TotalTime: type: number format: float StatusCode: $ref: '#/components/schemas/HttpStatusCode' HasMoreRecords: type: - boolean - 'null' NextCursor: type: - string - 'null' Warnings: type: - array - 'null' items: $ref: '#/components/schemas/ErrorDetail' additionalProperties: false DataType: enum: - String - Int - Double - Currency - Boolean - DateTime - AutoNumber - Lookup - Picklist - MultiPicklist - Identifier - LongString - Complex - ComplexArray - Reference - Rollup - Decimal - Image - Alias - Date - Owner type: string IdentifierType: enum: - UUIDv4 - UID18 type: string ObjectInfo: type: object properties: Name: type: - string - 'null' DisplayName: type: - string - 'null' Description: type: - string - 'null' Category: type: - string - 'null' IsProtected: type: boolean IsDeprecated: type: boolean ObjectType: $ref: '#/components/schemas/ObjectType' additionalProperties: false PicklistMetadata: type: object properties: Name: type: - string - 'null' AllowNonConfiguredPicklistEntries: type: boolean PicklistEntries: type: - array - 'null' items: $ref: '#/components/schemas/PicklistEntry' IsDeprecated: type: boolean additionalProperties: false AliasFieldMetadata: type: object properties: Name: type: - string - 'null' AliasFieldDefinitionDetail: type: - array - 'null' items: $ref: '#/components/schemas/AliasFieldDefinitionDetail' additionalProperties: false ComplexFieldMetadata: type: object properties: Name: type: - string - 'null' Fields: type: - array - 'null' items: $ref: '#/components/schemas/FieldMetadata' additionalProperties: false DependentPicklistMetadata: type: object properties: Name: type: - string - 'null' DependentFieldName: type: - string - 'null' ControllingFieldName: type: - string - 'null' ControllingAndDependentPicklistEntries: type: - array - 'null' items: $ref: '#/components/schemas/ControllingAndDependentPicklistEntry' IsDeprecated: type: boolean additionalProperties: false DependencyFieldsMetadata: type: object properties: ObjectName: type: - string - 'null' ObjectDisplayName: type: - string - 'null' ObjectDescription: type: - string - 'null' FieldMetadata: type: - array - 'null' items: $ref: '#/components/schemas/FieldMetadata' PicklistMetadata: type: - array - 'null' items: $ref: '#/components/schemas/PicklistMetadata' DependentPicklistMetadata: type: - array - 'null' items: $ref: '#/components/schemas/DependentPicklistMetadata' additionalProperties: false DependentObjectMetadata: type: object properties: Name: type: - string - 'null' FieldName: type: - string - 'null' additionalProperties: false TtlFieldMetadata: type: object properties: FieldName: type: - string - 'null' RetentionPeriodInDaysServiceQuotaKey: type: - string - 'null' description: Gets or sets the service quota key that specifies the retention period, in days, for data storage. additionalProperties: false description: TTL (Time To Live) field metadata class that defines the properties related to the TTL field used for data expiration in the data store. SortDirection: enum: - Ascending - Descending type: string ErrorDetail: type: object properties: Message: type: - string - 'null' additionalProperties: false DependentPicklistMetadataAPIResponse: type: object properties: Success: type: boolean RecordCount: type: - integer - 'null' format: int64 Data: $ref: '#/components/schemas/DependentPicklistMetadata' Errors: type: - array - 'null' items: $ref: '#/components/schemas/ErrorDetail' Profile: type: - string - 'null' TotalTime: type: number format: float StatusCode: $ref: '#/components/schemas/HttpStatusCode' HasMoreRecords: type: - boolean - 'null' NextCursor: type: - string - 'null' Warnings: type: - array - 'null' items: $ref: '#/components/schemas/ErrorDetail' additionalProperties: false FieldMetadataAPIResponse: type: object properties: Success: type: boolean RecordCount: type: - integer - 'null' format: int64 Data: $ref: '#/components/schemas/FieldMetadata' Errors: type: - array - 'null' items: $ref: '#/components/schemas/ErrorDetail' Profile: type: - string - 'null' TotalTime: type: number format: float StatusCode: $ref: '#/components/schemas/HttpStatusCode' HasMoreRecords: type: - boolean - 'null' NextCursor: type: - string - 'null' Warnings: type: - array - 'null' items: $ref: '#/components/schemas/ErrorDetail' additionalProperties: false ObjectType: enum: - Default - Property type: string ControllingAndDependentPicklistEntry: type: object properties: ControllingPicklistEntry: type: - string - 'null' DependentPicklistEntries: type: - array - 'null' items: $ref: '#/components/schemas/PicklistEntry' additionalProperties: false ObjectMetadata: type: object properties: Name: type: - string - 'null' description: Name of the object to be created DisplayName: type: - string - 'null' description: Display name of the object Description: type: - string - 'null' description: Description of the object IsProtected: type: boolean IsDeprecated: type: boolean IsShared: type: boolean IsDataCacheEnabled: type: boolean description: Indicates if data cache is enabled for this object. IsTrackingEnabled: type: boolean IsAllowOwnerScope: type: boolean description: RecordOwner feature Category: type: - string - 'null' description: Category of the object ObjectType: $ref: '#/components/schemas/ObjectType' IsRecycleBinEnabled: type: boolean description: Indicates if Recycle Bin is enabled for this object. FieldMetadata: type: - array - 'null' items: $ref: '#/components/schemas/FieldMetadata' description: Collection of the field InternalRuntimeAliasFields: type: - array - 'null' items: $ref: '#/components/schemas/FieldMetadata' InternalPrecomputedAliasFields: type: - array - 'null' items: $ref: '#/components/schemas/FieldMetadata' PicklistMetadata: type: - array - 'null' items: $ref: '#/components/schemas/PicklistMetadata' description: Collection of the picklist DependentPicklistMetadata: type: - array - 'null' items: $ref: '#/components/schemas/DependentPicklistMetadata' description: Collection of the dependent picklist ComplexFieldMetadata: type: - array - 'null' items: $ref: '#/components/schemas/ComplexFieldMetadata' description: Collection of the complex field AliasFieldMetadata: type: - array - 'null' items: $ref: '#/components/schemas/AliasFieldMetadata' IndexMetadata: type: - array - 'null' items: $ref: '#/components/schemas/IndexMetadata' TtlFieldMetadata: $ref: '#/components/schemas/TtlFieldMetadata' CreatedBy: $ref: '#/components/schemas/LookupObject' CreatedDate: type: string format: date-time ModifiedBy: $ref: '#/components/schemas/LookupObject' ModifiedDate: type: string format: date-time Attributes: $ref: '#/components/schemas/Attributes' additionalProperties: false description: Object's metadata FieldMetadata: type: object properties: FieldName: type: - string - 'null' DisplayName: type: - string - 'null' Description: type: - string - 'null' DataType: $ref: '#/components/schemas/DataType' DefaultValue: type: - string - 'null' IsProtected: type: boolean IsIndexField: type: boolean IsSortable: type: boolean IsRequired: type: boolean IsUnique: type: boolean IsDeprecated: type: boolean IsCalculated: type: boolean IsInternalField: type: boolean IsAliasField: type: boolean ReadAccess: type: - boolean - 'null' WriteAccess: type: - boolean - 'null' Length: type: - integer - 'null' format: int32 LookupObjectName: type: - string - 'null' LookupFilterCriteria: type: - string - 'null' DependentPicklistMetadataName: type: - string - 'null' PicklistName: type: - string - 'null' ComplexMetadataName: type: - string - 'null' AutoNumberInitialSeed: type: integer format: int32 AutoNumberPrefix: type: - string - 'null' Precision: type: integer format: int32 Scale: type: integer format: int32 Expression: type: - string - 'null' ExpressionDependency: type: - array - 'null' items: type: string AliasExpressionDependency: type: - array - 'null' items: type: string IsPreComputed: type: - boolean - 'null' ReferenceObject: type: - string - 'null' TargetObject: type: - string - 'null' TargetField: type: - string - 'null' RollupFunction: type: - string - 'null' RollupFilterCriteria: type: - string - 'null' AliasFieldDefinition: type: - string - 'null' AliasFieldMetadataName: type: - string - 'null' IsRichTextField: type: boolean IsPropertyLookup: type: - boolean - 'null' IdentifierType: $ref: '#/components/schemas/IdentifierType' additionalProperties: false AliasFieldDefinitionDetail: type: object properties: FieldName: type: - string - 'null' ObjectName: type: - string - 'null' Sequence: type: integer format: int32 additionalProperties: false HttpStatusCode: enum: - Continue - SwitchingProtocols - Processing - EarlyHints - OK - Created - Accepted - NonAuthoritativeInformation - NoContent - ResetContent - PartialContent - MultiStatus - AlreadyReported - IMUsed - MultipleChoices - MovedPermanently - Found - SeeOther - NotModified - UseProxy - Unused - TemporaryRedirect - PermanentRedirect - BadRequest - Unauthorized - PaymentRequired - Forbidden - NotFound - MethodNotAllowed - NotAcceptable - ProxyAuthenticationRequired - RequestTimeout - Conflict - Gone - LengthRequired - PreconditionFailed - RequestEntityTooLarge - RequestUriTooLong - UnsupportedMediaType - RequestedRangeNotSatisfiable - ExpectationFailed - MisdirectedRequest - UnprocessableEntity - Locked - FailedDependency - UpgradeRequired - PreconditionRequired - TooManyRequests - RequestHeaderFieldsTooLarge - UnavailableForLegalReasons - InternalServerError - NotImplemented - BadGateway - ServiceUnavailable - GatewayTimeout - HttpVersionNotSupported - VariantAlsoNegotiates - InsufficientStorage - LoopDetected - NotExtended - NetworkAuthenticationRequired type: string IndexMetadataDetail: type: object properties: FieldName: type: - string - 'null' additionalProperties: false LookupObject: type: object properties: Id: type: - string - 'null' Name: type: - string - 'null' additionalProperties: false ObjectMetadataAPIResponse: type: object properties: Success: type: boolean RecordCount: type: - integer - 'null' format: int64 Data: $ref: '#/components/schemas/ObjectMetadata' Errors: type: - array - 'null' items: $ref: '#/components/schemas/ErrorDetail' Profile: type: - string - 'null' TotalTime: type: number format: float StatusCode: $ref: '#/components/schemas/HttpStatusCode' HasMoreRecords: type: - boolean - 'null' NextCursor: type: - string - 'null' Warnings: type: - array - 'null' items: $ref: '#/components/schemas/ErrorDetail' additionalProperties: false DependencyFieldsMetadataAPIResponse: type: object properties: Success: type: boolean RecordCount: type: - integer - 'null' format: int64 Data: $ref: '#/components/schemas/DependencyFieldsMetadata' Errors: type: - array - 'null' items: $ref: '#/components/schemas/ErrorDetail' Profile: type: - string - 'null' TotalTime: type: number format: float StatusCode: $ref: '#/components/schemas/HttpStatusCode' HasMoreRecords: type: - boolean - 'null' NextCursor: type: - string - 'null' Warnings: type: - array - 'null' items: $ref: '#/components/schemas/ErrorDetail' additionalProperties: false PicklistEntry: type: object properties: Value: type: - string - 'null' DisplayText: type: - string - 'null' Sequence: type: integer format: int32 IsDeprecated: type: boolean additionalProperties: false ObjectInfoListAPIResponse: type: object properties: Success: type: boolean RecordCount: type: - integer - 'null' format: int64 Data: type: - array - 'null' items: $ref: '#/components/schemas/ObjectInfo' Errors: type: - array - 'null' items: $ref: '#/components/schemas/ErrorDetail' Profile: type: - string - 'null' TotalTime: type: number format: float StatusCode: $ref: '#/components/schemas/HttpStatusCode' HasMoreRecords: type: - boolean - 'null' NextCursor: type: - string - 'null' Warnings: type: - array - 'null' items: $ref: '#/components/schemas/ErrorDetail' additionalProperties: false IndexMetadata: type: object properties: Name: type: - string - 'null' IndexMetadataDetail: type: - array - 'null' items: $ref: '#/components/schemas/IndexMetadataDetail' additionalProperties: false securitySchemes: bearerAuth: type: http scheme: bearer bearerFormat: JWT