---
title: "Retrieve a custom object definition"
method: GET
path: "/objects/definitions/default/{object}"
tags: ["Custom Object Definitions"]
---

# Retrieve a custom object definition

`GET /objects/definitions/default/{object}`

Retrieves the custom object definition by type for the given tenant.

## Path parameters

- `object` string, required

## Headers

- `Accept-Encoding` string
- `Content-Encoding` string
- `Zuora-Track-Id` string
- `Zuora-Entity-Ids` string
- `Zuora-Org-Ids` string
- `Zuora-Version` string, date

## Response `200`

OK

- CustomObjectDefinition
  - `CreatedById` string, uuid — The creator's Id
  - `CreatedDate` string, date-time — The creation time of the custom object definition in date-time format.
  - `Id` string, uuid — The unique Id of the custom object definition
  - `UpdatedById` string, uuid — The modifier's Id
  - `UpdatedDate` string, date-time — The update time of the custom object definition in date-time format.
  - `schema` object — The schema of the custom object definition
    - `auditable` string[] — The set of fields which Audit Trail tracks and records changes of.
    - `enableCreateRecordAuditing` boolean — Indicates whether to audit the creation of custom object records of this custom object definition.
    - `enableDeleteRecordAuditing` boolean — Indicates whether to audit the deletion of custom object records of this custom object definition.
    - `filterable` string[] — The set of fields that are allowed to be queried on. Queries on non-filterable fields will be rejected. You can not change a non-filterable field to filterable.
    - `label` string — A label for the custom object
    - `object` string — The API name of the custom object
    - `properties` CustomObjectAllFieldsDefinition — The definitions of all the fields in the custom object definition
      - `CreatedById` object — The `CreatedById` field definition
        - `format` 'uuid' — The field data format
        - `label` string — The UI name of the field
        - `origin` 'system' — Specifies whether the field is a system field or a custom field
        - `type` 'string' — The field data type
      - `CreatedDate` object — The `CreatedDate` field definition
        - `format` 'date-time' — The field data format
        - `origin` 'system' — Specifies the field is a system field
        - `type` 'string' — The field data type
      - `Id` object — The `Id` field definition
        - `format` 'uuid' — The field data format
        - `label` string — The UI name of the field
        - `origin` 'system' — Specifies whether the field is a system field or a custom field
        - `type` 'string' — The field data type
      - `UpdatedById` object — The `UpdatedById` field definition
        - `format` 'uuid' — The field data format
        - `label` string — The UI name of the field
        - `origin` 'system' — Specifies whether the field is a system field or a custom field
        - `type` 'string' — The field data type
      - `UpdatedDate` object — The `UpdatedDate` field definition
        - `format` 'date-time' — The field data format
        - `origin` 'system' — Specifies the field is a system field
        - `type` 'string' — The field data type
    - `relationships` object[] — An array of relationships with Zuora objects or other custom objects
      - `cardinality` 'manyToOne' | 'oneToMany' — The cardinality of the relationship from this object to another object. A `manyToOne` relationship means this object is the child object (the "many" side), and the referenced object (the "one" side) is the parent. A `oneToMany` relationship means this object is the parent object (the "one" side), and the referenced object (the "many" side) is the child.
      - `fields` FieldsAdditionalProperties — Field mappings in the form of `<this-object-field-name>`: `<other-object-field-name>`.
      - `namespace` string — The namespace where the related object is located
      - `object` string — The API name of the related object
      - `recordConstraints` object — Specifies contraints to apply to custom object records.
        - `create` object
          - `enforceValidMapping` boolean — Specifies whether Zuora validates the values of mapped fields in custom object records.
    - `required` string[] — The required fields of the custom object definition. You can change required fields to optional. However, you can only change optional fields to required on the custom objects with no records.
    - `type` 'object' — The custom object definition type. Can only be `object` currently.
    - `unique` string[] — The fields with unique constraints.
  - `type` string — The API name of the custom object

## Other responses

- `404` — Resource Request-URI not found.

---

[API](https://skmtc.dev/zuora/apis/api-reference.md) · [All operations](https://skmtc.dev/zuora/apis/api-reference/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/zuora/api-reference/revisions/d11e237f3e54/schema)
