API Reference

The following are a list of API calls that can be used to access the BlueprintCPQ data.

Page

Get metadata about a page.

API Method Description
page/{name} GET

Get Page description containing list of all views.

page/{name}/{template} GET

Gets page template section description.

page/defaults/{name} GET

Gets default fields for page without section defined.

page/menu GET

Gets the main menu.

page/pinnedmenu GET

Gets the pinned menu.

page/pin/{id} POST

Pin menu item.

page/unpin/{id} DELETE

Unpin menu.

page/internaladdress/{name}/{externalId} GET

Gets url from integration identifier and page name.

Property

A controller for handling properties.

API Method Description
property/clone/{property} POST

Makes a copy of this object.

Account

Manages all tasks related to user accounts such as logins and password changes.

API Method Description
account/login POST

Perform a login to get an access token for API access.

account/externallogin POST

External login.

account/refresh POST

Token refresh.

account/externalauthorize POST

External authorize and login.

account/notify POST

Notifies a connection that a user has authenticated.

account/delegateapprovals GET

Delegate approvals.

account/delegateapprovals POST

Delegate approvals.

account/delegateapprovals/{id} DELETE

Deletes the delegate approval described by ID.

account/changepassword POST

Change the current users password.

account/forgotpassword POST

Forgot password.

account/register POST

Registers this user for shared access.

account/setpassword POST

Sets a password.

account/hasrights GET

Query if a user has rights to a resource.

account/isadministrator GET

Query if this user is an administrator.

account/who-am-i GET

Gets the current users details.

account/groupoptions GET

Gets the users group options.

account/2fa/configuration GET

Two factor configuration asynchronous.

account/2fa/configuration POST

Two factor configuration asynchronous.

account/2fa/authenticator/validate POST

Validates a Two factor authenticator code.

account/2fa/email/validate POST

Two factor email validate.

account/2fa/email/setup POST

Two factor email setup.

account/sharing/email-check POST

Queries if a given sharing login exists.

account/support GET

Gets the support system URL.

account/confirm/email POST

Confirm account email.

account/error-report POST

Creates error report or ticket.

account/ticket/{id} POST

Create a new support ticket.

account/access/{page} POST

Creates page access token.

Action

A controller for handling executing actions.

API Method Description
action/run/{actionName} POST

Runs an action.

Email

A controller for handling emails.

API Method Description
email/mergeandsend POST

Merge and send.

Workflow

A controller for handling workflows.

API Method Description
workflow/run POST

Runs any workflows for the defined records.

PriceBook

A controller for handling price books.

API Method Description
pricebook POST

Adds a category.

pricebook/{id} PUT

Sets a category.

pricebook/{id} DELETE

Deletes the category described by ID.

pricebook/products GET

Gets the products the user has access to.

pricebook/parts GET

Gets parts in categories.

pricebook/categories GET

Gets the categories.

pricebook/documents/front GET

Gets front covers.

pricebook/documents/back GET

Gets back covers.

pricebook/documents/defaults GET

Gets default covers.

pricebook/merge POST

Merges a price book.

pricebook/download/{id} GET

Downloads the pricebook by identifier.

Sync

A controller for handling syncs.

API Method Description
sync/run POST

Runs a set of syncs by event.

Quote

Manages the creation, deletion and modification of quotes, quote products, quote parts and quote documents.

API Method Description
quote/clone/{quote} POST

Clone the quote by quote identifier.

quote/uprevise/{quote} POST

Up-Revise Quote.

quote/main/{quote} PUT

Sets the quote as the main quote of its opportunity.

quote/main/{quote} GET

Query if the quote is main quote.

quote/configurator/{quote} GET

Gets the configurator URL for the quote.

quote/share/{quote} POST

Shares a quote.

quote/forward/{quote} POST

Forwards a quote.

quote/order/{quote} POST

Place order.

quote/reject/{quote} POST

Rejects a quote.

quote/approvals/reject/{quote} POST

Rejects approvals.

quote/changestatus/{quote} POST

Change a quotes status.

quote/shared GET

Gets shared quotes.

quote/products/{id} GET

Gets the products.

quote/product/{quote}/{product} POST

Adds a Quote Product.

quote/product/{quote}/{quoteToProduct} GET

Gets a product from a quote.

quote/product/{product}/copytoquote/{quote} POST

Copy a QuoteToProduct record (and all of it's associated property values) to a new quote.

quote/product/{quote}/{quoteToProduct} PUT

Sets discount percent.

quote/product/{quote}/{quoteToProduct} DELETE

Deletes the product from quote.

quote/product/{quote}/{quoteToProduct}/{index} PUT

Set the order of products by moving a product to a new index.

quote/template/{quoteTemplate} GET

Gets quote template entries.

quote/template POST

(An Action that handles HTTP POST requests) Create template quote.

quote/template/{quote}/{quoteTemplate} POST

Adds a quote templates entries to a quote.

quote/templatequotes GET

Gets template quotes.

quote/templatequotes/{quote}/{templateQuote} POST

Adds a template quote to a quote.

quote/templatequotes/{quoteTemplateQuote} DELETE

Deletes the template quote described by quoteTemplateQuote.

quote/part/{quote} POST

Adds a Quote Part.

quote/part/{quote}/{quoteToPart} GET

Gets the part from quote.

quote/{quote}/parts GET

Gets valid parts that can be added to a quote.

quote/part/discount/{quote}/{quoteToPart} PUT

Sets part discount percent.

quote/part/{quote}/{quoteToPart} DELETE

Deletes the part from quote.

quote/part/{quote}/{quoteToPart}/{index} PUT

Set the order of parts.

quote/document/{quote} POST

Uploads a document.

quote/document/{id} DELETE

Deletes a document by ID.

quote/document/{id} GET

Downloads the document by ID.

quote/document/download/{id} GET

Downloads the document by ID.

quote/document/token/{id} GET

Generate a one time use token that is valid for 10 minutes in order to download a document

quote/{quote}/document/email POST

Send an email attaching the document to the email.

quote/{quote}/documents GET

Gets the documents for a quote.

quote/web-document/{id} DELETE

Deletes a web document by ID.

quote/{quote}/web-documents GET

Gets the web documents for a quote.

quote/parameterheader/{quote} POST

Creates a quote parameter header.

quote/parameter/{quoteParametersHeader} POST

Adds a quote parameter.

quote/customer/{customer} POST

Gets customer quote.

quote/deals/{quote} GET

Gets the deals.

quote/generate-commercial-bom/{quote} POST

Generates a commercial bom.

quote/approvals/{quote} GET

Gets the quote approvals.

quote/approvals/remind/{quote}/{user} POST

Sends a reminder email to a user.

quote/approvals/approve/{quote} POST

Approves the given quote.

quote/approvals/recall/{quote} POST

Recalls an approval or rejection.

ItemBuilder

A controller for handling item builders.

API Method Description
item-builder/{product} GET

Gets a product definition.

item-builder/{product} POST

Saves a product definition.

item-builder/properties GET

Gets the properties.

item-builder/algorithms GET

Gets the algorithms.

item-builder/roles GET

Gets the roles.

item-builder/behaviours GET

Gets the available behaviours.

item-builder/properties/add-enum POST

Adds an enum property.

item-builder/subitem-components GET

Gets a list of subitem component products.

APIStatus

A controller for handling API status.

API Method Description
api-status GET

Gets the API status.

XaitPorter

The XaitPorterController allows XaitCPQ to enable the integration between XaitCPQ and XaitPorter.

API Method Description
xaitporter/tables GET

Gets all the tables tagged with external metadata JSON information on the XaitPorter tables for the XaitCPQ integration to identify and update. The tables are filtered based on the user's available access to the projects.

xaitporter/publish POST

Publish API allows the XaitCPQ user to update the Table in XaitPorter by passing the XaitCPQ user selected table from Publish Dialog. The object with its property set to the XaitCPQ merge table data is what is all required. Optionally, you may also set to manage the rendering in the XP document as well as the .

xaitporter/lookup/{xaitPorterTableUUID} GET

Looks up the last used location of the table uuid.

xaitporter/update_project_options POST

This method checks the quote product details and updates the selected documents, such that if two template documents are selected by the user upon clicking on the Create action, the selected document objects are duplicated for each product. E.g. for two products that would 4 documents available in the ConfirmProject dialog.

xaitporter/existing_project_options GET

If this CPQ record already has an associated XaitPorter Project then this API returns the XaitPorterCreateProjectOptions for the UI to call instead of

xaitporter/project_templates GET

Provides a list of XaitPorter Projects that are marked as Project Templates containing all the pre-populated documents and sections along with the workflow and user assignments. This List of Project Templates will have the CPQ integration user as one of the project coordinators/privileged contributor in order to use these Project Templates to duplicate and create a new project based on a particular quote and user selection. Project Templates returned are restricted to those the user have access to.

xaitporter/create_project POST

Registers a new XaitPorter project record in XaitCPQ for the user to later confirm the project creation in XaitPorter based on the project template with the given project name.

xaitporter/project_document GET

Returns the document section information for the confirm dialog to display the document section tree based on the document drop-down selection by the user in the Confirm Dialog.

xaitporter/section_preview GET

Gets the document section's content as HTML or plain text for preview on the Confirm Project Dialog

xaitporter/confirm_project POST

Creates a new project from XaitPorter project template with the given project name.

xaitporter/cancel_confirm_project POST

Removes the registered project record if the user cancels the project create confirmation.

xaitporter/update_project POST

Updates the XaitPorter project with the latest merge data.

xaitporter/publish_documents POST

Updates the XaitPorter project with document revisions of all the project documents as request by the user. The document revisions are available in XaitPorter as well as in the quote documents section of CPQ

xaitporter/unlink_project/{recordId} DELETE

Unlinks the project by recordId.

xaitporter/download_xplog/token GET

Generate a one time use token that is valid for 10 minutes in order to download the xaitporter log

xaitporter/download_xplog/{days} GET

Downloads XaitPorter Log Entries for the Day.

xaitporter/operation_progress/{operationId} GET

Gets the progress for an on going operation

VisualScript

A controller for handling visual scripts.

API Method Description
visual-script/{id} GET

Gets a script.

visual-script POST

No documentation available.

visual-script/{id} PUT

Saves a script.

Product

Manage products and properties.

API Method Description
product/clone/{product} POST

Makes a copy of this object.

product/property POST

Adds a property.

product/property/{id} POST

Copies the product property by identifier.

product/property/{id} DELETE

Deletes the product property by identifier.

product/{id}/properties PUT

Sets the order of all product properties.

product/{id}/subscripts PUT

Sets subscripts order.

Part

Manage the creation, deletion and modification of parts.

API Method Description
part/add POST

Adds a Part.

part/{id} PUT

Updates the part.

part/{id} DELETE

Deactivate part.

part/{part}/price POST

Adds a price to a part.

part/{part}/bom POST

Adds a bom part to a part.

Note

Manage the creation, deletion and modification of notes.

API Method Description
notes/quote/add/{quote} POST

Adds a note to quote.

notes/quotes/add/{quote} POST

Adds a note to quote.

notes/opportunity/add/{opportunity} POST

Opportunity add note.

notes/opportunities/add/{opportunity} POST

Opportunity add note.

notes/company/add/{company} POST

Adds a note to Company.

notes/contact/add/{contact} POST

Adds a note to contact.

notes/{id} GET

Gets a note.

notes/update/{note} PUT

Updates the note.

notes/delete/{id} DELETE

Deletes the note by ID.

Data

Manages the creation, reading, updating and deletion of generic data records.

API Method Description
data/list/{name}/{section} GET

Get paginated list of data for a section.

data/list/{name}/{section}/{pageNumber} GET

Get paginated list of data for a section.

data/list/{name}/{section}/{pageNumber}/{pageSize} GET

Get paginated list of data for a section.

data/{name}/{recordId} GET

Gets a record using the default section layout.

data/{name}/{section}/{recordId} GET

Get data for section by record Id.

data/list-simple/{name}/{section} GET

Get paginated list of data for a section with all the fields as a single flattened data object

data/list-simple/{name}/{section}/{pageNumber} GET

Get paginated list of data for a section with all the fields as a single flattened data object

data/list-simple/{name}/{section}/{pageNumber}/{pageSize} GET

Get paginated list of data for a section with all the fields as a single flattened data object

data/list-export/{name}/{section} GET

No documentation available.

data/list-export/{name}/{section}/{pageNumber} GET

No documentation available.

data/list-export/{name}/{section}/{pageNumber}/{pageSize} GET

No documentation available.

data/image/{name}/{section}/{fieldId}/{recordId} GET

Gets an image as a base64 string.

data/download/{name}/{section}/{fieldId}/{recordId} GET

Gets a file.

data/{name} POST

Add new data record.

data/batch/{name}/{id} POST

Update and add new data in a batch

data/{name}/{id} PUT

Update data by record Id.

data/{name}/{id} DELETE

Delete data by record Id.

data/{name}/{section}/{id} DELETE

Deletes the link.

data/link/{name}/{section}/{id} POST

Gets link options.

data/link/{name}/{section}/{id}/{id2} POST

Adds a link.

data/lookup/relationship/{id} POST

Gets lookup values for relationship by Id.

data/lookup/default/{id} POST

Gets default value.

data/lookup/table/{id} POST

Gets the table lookup values.

data/clone/{name}/{recordId} POST

Makes a copy of this record.

data/owner/{name}/{recordId} GET

Gets the owner of this item.

data/assign/{name}/{recordId} POST

Assigns a user.

data/export/{name}/{recordId} POST

Exports a record and associated records.

Upload

A controller for handling uploads.

API Method Description
upload/report POST

Uploads a report.

upload/dashboard POST

Uploads the dashboard.

upload/graphics POST

Uploads a graphics doc.

Configurator

A controller for handling configurators.

API Method Description
configurator/header GET

Gets the header.

configurator/image/{id} GET

Gets a base64 encoded image.

Document

Manage the creation and modification of Quote Documents.

API Method Description
document/merge/{quote} POST

Create a new Quote Document.

document/mergesf/{quoteSFID} POST

Create the Profile Form (using SFID Parameters).

document/templates/{quoteId} GET

Gets web available web templates.

document/web/merge/{quote} POST

Merge web document.

document/web/mergedata/{quote} POST

Merge web data.

document/web/templates GET

Gets web available web templates.

document/web/share/{document} POST

Share web document.

document/web/meta/{id} GET

Gets web document meta.

document/web/graphic/{id} GET

Gets a graphic.