createBidFromConfiguration
Requires the permissions biddesk:bid:create and biddesk:bid:update.
Creates a bid from a finished configurator run: applies the stage template when given, saves and freezes the configuration on the bid, and adds one requirement per answered question marked Comply and linked to the frozen configuration. Refused before anything is written with CONFIGURATION_INVALID, CONFIGURATION_INCOMPLETE, CONFIG_MODEL_NOT_RELEASED, REQUIREMENTS_MISMATCH, REQUIREMENT_TEXT_INVALID, an answer code (UNKNOWN_PARAMETER, PARAM_NOT_ASKED, BAD_ANSWER_KIND, OUT_OF_OPTIONS) or the bid's own refusals. A step failing after the bid exists is returned in failedStep. Requires Bid Desk with engineered products and permission to create and edit bids.
Errors: a failed call returns a GraphQL errors entry, not a field on the result, and data may be null or partial. Read the entry's extensions.code and message; every shape and code is in the Error reference.
Example:
- GraphQL
- cURL
mutation CreateBidFromConfiguration($input: CreateBidFromConfigurationInput!) {
createBidFromConfiguration(input: $input) {
bidNumber
bidId
configurationId
failedStep
failureMessage
frozen
}
}
curl -X POST "https://<api-host>/graphql" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $ACCESS_TOKEN" \
--data @- <<'EOF'
{
"query": "mutation CreateBidFromConfiguration($input: CreateBidFromConfigurationInput!) {\n createBidFromConfiguration(input: $input) {\n bidNumber\n bidId\n configurationId\n failedStep\n failureMessage\n frozen\n }\n}",
"variables": {
"input": {
"answers": {},
"configurationName": "string",
"dueAt": "2025-01-15T00:00:00Z",
"modelVersionId": "id",
"quantity": "string",
"requirements": [
{
"paramKey": "string",
"text": "string"
}
],
"title": "string"
}
}
}
EOF
Variables:
{
"input": {
"answers": {},
"configurationName": "string",
"dueAt": "2025-01-15T00:00:00Z",
"modelVersionId": "id",
"quantity": "string",
"requirements": [
{
"paramKey": "string",
"text": "string"
}
],
"title": "string"
}
}
Response:
{
"data": {
"createBidFromConfiguration": {
"bidNumber": "string",
"bidId": "id",
"configurationId": "id",
"failedStep": "string",
"failureMessage": "string",
"frozen": true
}
}
}
createBidFromConfiguration(
input: CreateBidFromConfigurationInput!
): BidFromConfigurationResult!
Arguments
createBidFromConfiguration.input ● CreateBidFromConfigurationInput! non-null input
The bid, the configurator run and one requirement per answered question.
Type
BidFromConfigurationResult object
The bid created from a configuration, and how far the steps after it went. When a step failed the bid exists; open it to finish by hand.