naftiko: 1.0.0-alpha2 info: label: API Reference — Custom Object Definitions description: 'API Reference — Custom Object Definitions. 5 operations. Lead operation: List custom object definitions. Self-contained Naftiko capability covering one Zuora business surface.' tags: - Zuora - Custom Object Definitions created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: ZUORA_API_KEY: ZUORA_API_KEY capability: consumes: - type: http namespace: v1-custom-object-definitions baseUri: https://rest.zuora.com description: API Reference — Custom Object Definitions business capability. Self-contained, no shared references. resources: - name: objects-definitions-default path: /objects/definitions/default operations: - name: getallcustomobjectdefinitionsinnamespace method: GET description: List custom object definitions outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: Zuora-Version in: header type: string description: API version that determines the response schema. The default version is used if this parameter is not included. Specify `Zuora-Version` in the request header if - name: select in: query type: string description: If you set `select` to `type`, the response will only contain the `type` of each custom object. - name: postcustomobjectdefinitions method: POST description: Create custom object definitions outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: Zuora-Version in: header type: string description: API version that determines the response schema. The default version is used if this parameter is not included. Specify `Zuora-Version` in the request header if - name: custom object definitions in: body type: string description: The custom object definitions to be created required: true - name: objects-definitions-default-object path: /objects/definitions/default/{object} operations: - name: getcustomobjectdefinitionbytype method: GET description: Retrieve a custom object definition outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: Zuora-Version in: header type: string description: API version that determines the response schema. The default version is used if this parameter is not included. Specify `Zuora-Version` in the request header if - name: object in: path type: string description: Specifies the custom object's API name as object. It is case-sensitive. required: true - name: deletecustomobjectdefinitionbytype method: DELETE description: Delete a custom object definition outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: Zuora-Version in: header type: string description: API version that determines the response schema. The default version is used if this parameter is not included. Specify `Zuora-Version` in the request header if - name: object in: path type: string description: Specifies the custom object's API name as object. It is case-sensitive. required: true - name: objects-migrations path: /objects/migrations operations: - name: postupdatecustomobjectdefinition method: POST description: Update a custom object definition outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: Zuora-Version in: header type: string description: API version that determines the response schema. The default version is used if this parameter is not included. Specify `Zuora-Version` in the request header if - name: migration in: body type: string description: Migration resource for object and namespace changes. required: true exposes: - type: rest namespace: v1-custom-object-definitions-rest port: 8080 description: REST adapter for API Reference — Custom Object Definitions. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/objects/definitions/default name: objects-definitions-default description: REST surface for objects-definitions-default. operations: - method: GET name: getallcustomobjectdefinitionsinnamespace description: List custom object definitions call: v1-custom-object-definitions.getallcustomobjectdefinitionsinnamespace with: Zuora-Version: rest.Zuora-Version select: rest.select outputParameters: - type: object mapping: $. - method: POST name: postcustomobjectdefinitions description: Create custom object definitions call: v1-custom-object-definitions.postcustomobjectdefinitions with: Zuora-Version: rest.Zuora-Version custom object definitions: rest.custom object definitions outputParameters: - type: object mapping: $. - path: /v1/objects/definitions/default/{object} name: objects-definitions-default-object description: REST surface for objects-definitions-default-object. operations: - method: GET name: getcustomobjectdefinitionbytype description: Retrieve a custom object definition call: v1-custom-object-definitions.getcustomobjectdefinitionbytype with: Zuora-Version: rest.Zuora-Version object: rest.object outputParameters: - type: object mapping: $. - method: DELETE name: deletecustomobjectdefinitionbytype description: Delete a custom object definition call: v1-custom-object-definitions.deletecustomobjectdefinitionbytype with: Zuora-Version: rest.Zuora-Version object: rest.object outputParameters: - type: object mapping: $. - path: /v1/objects/migrations name: objects-migrations description: REST surface for objects-migrations. operations: - method: POST name: postupdatecustomobjectdefinition description: Update a custom object definition call: v1-custom-object-definitions.postupdatecustomobjectdefinition with: Zuora-Version: rest.Zuora-Version migration: rest.migration outputParameters: - type: object mapping: $. - type: mcp namespace: v1-custom-object-definitions-mcp port: 9090 transport: http description: MCP adapter for API Reference — Custom Object Definitions. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: list-custom-object-definitions description: List custom object definitions hints: readOnly: true destructive: false idempotent: true call: v1-custom-object-definitions.getallcustomobjectdefinitionsinnamespace with: Zuora-Version: tools.Zuora-Version select: tools.select outputParameters: - type: object mapping: $. - name: create-custom-object-definitions description: Create custom object definitions hints: readOnly: false destructive: false idempotent: false call: v1-custom-object-definitions.postcustomobjectdefinitions with: Zuora-Version: tools.Zuora-Version custom object definitions: tools.custom object definitions outputParameters: - type: object mapping: $. - name: retrieve-custom-object-definition description: Retrieve a custom object definition hints: readOnly: true destructive: false idempotent: true call: v1-custom-object-definitions.getcustomobjectdefinitionbytype with: Zuora-Version: tools.Zuora-Version object: tools.object outputParameters: - type: object mapping: $. - name: delete-custom-object-definition description: Delete a custom object definition hints: readOnly: false destructive: true idempotent: true call: v1-custom-object-definitions.deletecustomobjectdefinitionbytype with: Zuora-Version: tools.Zuora-Version object: tools.object outputParameters: - type: object mapping: $. - name: update-custom-object-definition description: Update a custom object definition hints: readOnly: false destructive: false idempotent: false call: v1-custom-object-definitions.postupdatecustomobjectdefinition with: Zuora-Version: tools.Zuora-Version migration: tools.migration outputParameters: - type: object mapping: $.