Zuora · Capability
API Reference — Custom Object Jobs
API Reference — Custom Object Jobs. 6 operations. Lead operation: Submit a custom object bulk job. Self-contained Naftiko capability covering one Zuora business surface.
What You Can Do
POST
Postcustomobjectbulkjob
— Submit a custom object bulk job
/v1/objects/jobs
GET
Getallcustomobjectbulkjobs
— List all custom object bulk jobs
/v1/objects/jobs
GET
Getcustomobjectbulkjob
— Retrieve a custom object bulk job
/v1/objects/jobs/{id}
PATCH
Patchcustomobjectbulkjob
— Cancel a custom object bulk job
/v1/objects/jobs/{id}/cancel
GET
Getcustomobjectbulkjoberrors
— List all errors for a custom object bulk job
/v1/objects/jobs/{id}/errors
POST
Postuploadfileforcustomobjectbulkjob
— Upload a file for a custom object bulk job
/v1/objects/jobs/{id}/files
MCP Tools
submit-custom-object-bulk-job
Submit a custom object bulk job
list-all-custom-object-bulk
List all custom object bulk jobs
read-only
idempotent
retrieve-custom-object-bulk-job
Retrieve a custom object bulk job
read-only
idempotent
cancel-custom-object-bulk-job
Cancel a custom object bulk job
idempotent
list-all-errors-custom-object
List all errors for a custom object bulk job
read-only
idempotent
upload-file-custom-object-bulk
Upload a file for a custom object bulk job
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: API Reference — Custom Object Jobs
description: 'API Reference — Custom Object Jobs. 6 operations. Lead operation: Submit a custom object bulk job. Self-contained
Naftiko capability covering one Zuora business surface.'
tags:
- Zuora
- Custom Object Jobs
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-jobs
baseUri: https://rest.zuora.com
description: API Reference — Custom Object Jobs business capability. Self-contained, no shared references.
resources:
- name: objects-jobs
path: /objects/jobs
operations:
- name: postcustomobjectbulkjob
method: POST
description: Submit a custom object bulk job
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: CustomObjectBulkJobRequest
in: body
type: string
description: Custom Objects bulk job request
required: true
- name: getallcustomobjectbulkjobs
method: GET
description: List all custom object bulk jobs
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: pageSize
in: query
type: integer
description: The number of records returned per page in the response.
- name: cursor
in: query
type: string
description: The `cursor` points to the last job of the previous result set. The cursor job is not included in this
query result. The call returns the first page if `cursor`
- name: status
in: query
type: string
description: The status of bulk jobs to be retrieved.
- name: objects-jobs-id
path: /objects/jobs/{id}
operations:
- name: getcustomobjectbulkjob
method: GET
description: Retrieve a custom object bulk job
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: id
in: path
type: string
description: The ID of the custom object bulk job to be retrieved.
required: true
- name: objects-jobs-id-cancel
path: /objects/jobs/{id}/cancel
operations:
- name: patchcustomobjectbulkjob
method: PATCH
description: Cancel a custom object bulk job
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: id
in: path
type: string
description: The ID of the custom object bulk job that you want to cancel.
required: true
- name: objects-jobs-id-errors
path: /objects/jobs/{id}/errors
operations:
- name: getcustomobjectbulkjoberrors
method: GET
description: List all errors for a custom object bulk job
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: id
in: path
type: string
description: The ID of the custom object bulk job that you retrieve errors for.
required: true
- name: objects-jobs-id-files
path: /objects/jobs/{id}/files
operations:
- name: postuploadfileforcustomobjectbulkjob
method: POST
description: Upload a file for a custom object bulk job
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: Content-Type
in: header
type: string
description: The `Content-Type` of the request must be `text/csv`.
required: true
- name: id
in: path
type: string
description: The ID of the custom object bulk job that the file is uploaded to.
required: true
- name: file
in: body
type: string
required: true
exposes:
- type: rest
namespace: v1-custom-object-jobs-rest
port: 8080
description: REST adapter for API Reference — Custom Object Jobs. One Spectral-compliant resource per consumed operation,
prefixed with /v1.
resources:
- path: /v1/objects/jobs
name: objects-jobs
description: REST surface for objects-jobs.
operations:
- method: POST
name: postcustomobjectbulkjob
description: Submit a custom object bulk job
call: v1-custom-object-jobs.postcustomobjectbulkjob
with:
Zuora-Version: rest.Zuora-Version
CustomObjectBulkJobRequest: rest.CustomObjectBulkJobRequest
outputParameters:
- type: object
mapping: $.
- method: GET
name: getallcustomobjectbulkjobs
description: List all custom object bulk jobs
call: v1-custom-object-jobs.getallcustomobjectbulkjobs
with:
Zuora-Version: rest.Zuora-Version
pageSize: rest.pageSize
cursor: rest.cursor
status: rest.status
outputParameters:
- type: object
mapping: $.
- path: /v1/objects/jobs/{id}
name: objects-jobs-id
description: REST surface for objects-jobs-id.
operations:
- method: GET
name: getcustomobjectbulkjob
description: Retrieve a custom object bulk job
call: v1-custom-object-jobs.getcustomobjectbulkjob
with:
Zuora-Version: rest.Zuora-Version
id: rest.id
outputParameters:
- type: object
mapping: $.
- path: /v1/objects/jobs/{id}/cancel
name: objects-jobs-id-cancel
description: REST surface for objects-jobs-id-cancel.
operations:
- method: PATCH
name: patchcustomobjectbulkjob
description: Cancel a custom object bulk job
call: v1-custom-object-jobs.patchcustomobjectbulkjob
with:
Zuora-Version: rest.Zuora-Version
id: rest.id
outputParameters:
- type: object
mapping: $.
- path: /v1/objects/jobs/{id}/errors
name: objects-jobs-id-errors
description: REST surface for objects-jobs-id-errors.
operations:
- method: GET
name: getcustomobjectbulkjoberrors
description: List all errors for a custom object bulk job
call: v1-custom-object-jobs.getcustomobjectbulkjoberrors
with:
Zuora-Version: rest.Zuora-Version
id: rest.id
outputParameters:
- type: object
mapping: $.
- path: /v1/objects/jobs/{id}/files
name: objects-jobs-id-files
description: REST surface for objects-jobs-id-files.
operations:
- method: POST
name: postuploadfileforcustomobjectbulkjob
description: Upload a file for a custom object bulk job
call: v1-custom-object-jobs.postuploadfileforcustomobjectbulkjob
with:
Zuora-Version: rest.Zuora-Version
Content-Type: rest.Content-Type
id: rest.id
file: rest.file
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: v1-custom-object-jobs-mcp
port: 9090
transport: http
description: MCP adapter for API Reference — Custom Object Jobs. One tool per consumed operation, routed inline through
this capability's consumes block.
tools:
- name: submit-custom-object-bulk-job
description: Submit a custom object bulk job
hints:
readOnly: false
destructive: false
idempotent: false
call: v1-custom-object-jobs.postcustomobjectbulkjob
with:
Zuora-Version: tools.Zuora-Version
CustomObjectBulkJobRequest: tools.CustomObjectBulkJobRequest
outputParameters:
- type: object
mapping: $.
- name: list-all-custom-object-bulk
description: List all custom object bulk jobs
hints:
readOnly: true
destructive: false
idempotent: true
call: v1-custom-object-jobs.getallcustomobjectbulkjobs
with:
Zuora-Version: tools.Zuora-Version
pageSize: tools.pageSize
cursor: tools.cursor
status: tools.status
outputParameters:
- type: object
mapping: $.
- name: retrieve-custom-object-bulk-job
description: Retrieve a custom object bulk job
hints:
readOnly: true
destructive: false
idempotent: true
call: v1-custom-object-jobs.getcustomobjectbulkjob
with:
Zuora-Version: tools.Zuora-Version
id: tools.id
outputParameters:
- type: object
mapping: $.
- name: cancel-custom-object-bulk-job
description: Cancel a custom object bulk job
hints:
readOnly: false
destructive: false
idempotent: true
call: v1-custom-object-jobs.patchcustomobjectbulkjob
with:
Zuora-Version: tools.Zuora-Version
id: tools.id
outputParameters:
- type: object
mapping: $.
- name: list-all-errors-custom-object
description: List all errors for a custom object bulk job
hints:
readOnly: true
destructive: false
idempotent: true
call: v1-custom-object-jobs.getcustomobjectbulkjoberrors
with:
Zuora-Version: tools.Zuora-Version
id: tools.id
outputParameters:
- type: object
mapping: $.
- name: upload-file-custom-object-bulk
description: Upload a file for a custom object bulk job
hints:
readOnly: false
destructive: false
idempotent: false
call: v1-custom-object-jobs.postuploadfileforcustomobjectbulkjob
with:
Zuora-Version: tools.Zuora-Version
Content-Type: tools.Content-Type
id: tools.id
file: tools.file
outputParameters:
- type: object
mapping: $.