draftBidProposalNarrative
Requires permission biddesk:proposal:edit.
Drafts the technical description of a draft proposal revision in the background from the bid's non-commercial requirements, its latest frozen configuration and the published knowledge notes on its parts, and leaves one AI suggestion for a person to accept, edit or reject. Every sentence of the draft cites the sources it rests on; the model sees no price and its draft cannot hold an amount (prices stay in the price schedule). Nothing is written to the proposal until a person accepts the card; accepting is refused with DRAFT_STALE when the section changed since the draft. Follow progress with bidAiRuns and read the card with bidAiSuggestions (skillKey proposal-writer). Refused with PROPOSAL_REVISION_LOCKED or NOTHING_TO_DRAFT. Requires Bid Desk, the AI plan feature and permission to edit proposals.
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 DraftBidProposalNarrative($revisionId: ID!) {
draftBidProposalNarrative(revisionId: $revisionId) {
runId
started
}
}
curl -X POST "https://<api-host>/graphql" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $ACCESS_TOKEN" \
--data @- <<'EOF'
{
"query": "mutation DraftBidProposalNarrative($revisionId: ID!) {\n draftBidProposalNarrative(revisionId: $revisionId) {\n runId\n started\n }\n}",
"variables": {
"revisionId": "id"
}
}
EOF
Variables:
{
"revisionId": "id"
}
Response:
{
"data": {
"draftBidProposalNarrative": {
"runId": "id",
"started": true
}
}
}
draftBidProposalNarrative(
revisionId: ID!
): BidAiRunStarted!
Arguments
draftBidProposalNarrative.revisionId ● ID! non-null scalar
The draft proposal revision to draft the narrative for.
Type
BidAiRunStarted object
Whether an AI run started, and its id once it has one.