Developers
Set your API contextPick a region and space ID once. Every sample fills in your base URL.
Where do I find these?

In Coevera: open your space's API application and choose Show Access. It shows the space ID and the base URL, whose host starts with your region.

From the API: if you know the space ID, the discovery endpoint GET /api/discovery/spaces/{space_id} returns its region and base URLs, without credentials.

Only the region and space ID are kept, in this browser. Never paste a key or password here.

More in the quickstart

GraphQLRepositoriesquote

entities.quote

Read quote records with the quote repository, and change them with the quote mutations. Same records as the REST Quotes entity.

Queries

Fields of entities { quote { … } }.

Each operation opens an example built from the schema and checked against it on every build. Replace the placeholders, such as <quote id>, with values from your space.

KindFieldReturns
QUERYgetById(entityId: ID!)
Returns the record with the given id, or null when there is none. Deleted records are returned as well.
QuoteEntity
Example
Example: getById
query QuoteGetById {
  entities {
    quote {
      getById(entityId: "<quote id>") {
        id
        name
        formattedName
        modified
      }
    }
  }
}
curl 'https://{region}.api.coevera.com/api/v100/app/space/{space_id}/graphql/public' \
  --user "$COEVERA_API_KEY:$COEVERA_API_SECRET" \
  --header 'Content-Type: application/json' \
  --data '{"query":"query QuoteGetById { entities { quote { getById(entityId: \"<quote id>\") { id name formattedName modified } } } }"}'
QUERYgetByIds(entityIds: [ID!]!)
Returns the records with the given ids; ids without a record are left out. Deleted records are returned as well.
[QuoteEntity!]!
Example
Example: getByIds
query QuoteGetByIds {
  entities {
    quote {
      getByIds(entityIds: ["<quote id>"]) {
        id
        name
        formattedName
        modified
      }
    }
  }
}
curl 'https://{region}.api.coevera.com/api/v100/app/space/{space_id}/graphql/public' \
  --user "$COEVERA_API_KEY:$COEVERA_API_SECRET" \
  --header 'Content-Type: application/json' \
  --data '{"query":"query QuoteGetByIds { entities { quote { getByIds(entityIds: [\"<quote id>\"]) { id name formattedName modified } } } }"}'
QUERYgetAll(limit: Int, offset: Int, filter: QuoteFilterInput, orderBy: [QuoteOrderByInput!], includeDeleted: Boolean)
Returns the records that match the filter, paged with limit and offset.
[QuoteEntity!]!
Example
Example: getAll
query QuoteGetAll {
  entities {
    quote {
      getAll(limit: 10) {
        id
        name
        formattedName
        modified
      }
    }
  }
}
curl 'https://{region}.api.coevera.com/api/v100/app/space/{space_id}/graphql/public' \
  --user "$COEVERA_API_KEY:$COEVERA_API_SECRET" \
  --header 'Content-Type: application/json' \
  --data '{"query":"query QuoteGetAll { entities { quote { getAll(limit: 10) { id name formattedName modified } } } }"}'
QUERYgetByCriteria(filter: QuoteFilterInput, orderBy: [QuoteOrderByInput!], includeDeleted: Boolean, before: String, after: String, first: Int, last: Int)
Returns the records that match the filter as a cursor-paginated connection.
QuoteEntityConnection
Example
Example: getByCriteria
query QuoteGetByCriteria {
  entities {
    quote {
      getByCriteria(first: 10) {
        totalCount
        edges {
          node {
            id
            name
            formattedName
            modified
          }
        }
        pageInfo {
          hasNextPage
          endCursor
        }
      }
    }
  }
}
curl 'https://{region}.api.coevera.com/api/v100/app/space/{space_id}/graphql/public' \
  --user "$COEVERA_API_KEY:$COEVERA_API_SECRET" \
  --header 'Content-Type: application/json' \
  --data '{"query":"query QuoteGetByCriteria { entities { quote { getByCriteria(first: 10) { totalCount edges { node { id name formattedName modified } } pageInfo { hasNextPage endCursor } } } } }"}'
QUERYgetChangedFieldsSinceRevision(id: UUID!, revision: Int!)
Returns the ids of the fields of a record that changed after the given revision. Returns an empty list for entities without change tracking.
[UUID!]!
Example
Example: getChangedFieldsSinceRevision
query QuoteGetChangedFieldsSinceRevision {
  entities {
    quote {
      getChangedFieldsSinceRevision(id: "<quote id>", revision: 10)
    }
  }
}
curl 'https://{region}.api.coevera.com/api/v100/app/space/{space_id}/graphql/public' \
  --user "$COEVERA_API_KEY:$COEVERA_API_SECRET" \
  --header 'Content-Type: application/json' \
  --data '{"query":"query QuoteGetChangedFieldsSinceRevision { entities { quote { getChangedFieldsSinceRevision(id: \"<quote id>\", revision: 10) } } }"}'
QUERYgetBySession(includedIds: [UUID!]!, excludedIds: [UUID!]!, sessionId: String!, before: String, after: String, first: Int, last: Int)
Returns a page of records selected in a list or report: all records of the given result plus the explicitly included ids, minus the excluded ids.
QuoteEntityConnection
Example
Example: getBySession
query QuoteGetBySession {
  entities {
    quote {
      getBySession(
        includedIds: ["<quote id>"]
        excludedIds: ["<quote id>"]
        sessionId: "<session id>"
        first: 10
      ) {
        totalCount
        edges {
          node {
            id
            name
            formattedName
            modified
          }
        }
        pageInfo {
          hasNextPage
          endCursor
        }
      }
    }
  }
}
curl 'https://{region}.api.coevera.com/api/v100/app/space/{space_id}/graphql/public' \
  --user "$COEVERA_API_KEY:$COEVERA_API_SECRET" \
  --header 'Content-Type: application/json' \
  --data '{"query":"query QuoteGetBySession { entities { quote { getBySession( includedIds: [\"<quote id>\"] excludedIds: [\"<quote id>\"] sessionId: \"<session id>\" first: 10 ) { totalCount edges { node { id name formattedName modified } } pageInfo { hasNextPage endCursor } } } } }"}'
QUERYgetByIdFormatted(id: UUID!, fieldIds: [UUID!])
Returns the values of a record's fields formatted for display, keyed by field id.
JSONString
Example
Example: getByIdFormatted
query QuoteGetByIdFormatted {
  entities {
    quote {
      getByIdFormatted(id: "<quote id>")
    }
  }
}
curl 'https://{region}.api.coevera.com/api/v100/app/space/{space_id}/graphql/public' \
  --user "$COEVERA_API_KEY:$COEVERA_API_SECRET" \
  --header 'Content-Type: application/json' \
  --data '{"query":"query QuoteGetByIdFormatted { entities { quote { getByIdFormatted(id: \"<quote id>\") } } }"}'
QUERYautoPrefill(mappingId: UUID!, entityId: UUID!, targetEntityTypeId: UUID)
Returns a new, unsaved record pre-filled from a source record according to a field mapping. Nothing is saved; the returned values can be used as input for create.
QuoteEntity!
Example
Example: autoPrefill
query QuoteAutoPrefill {
  entities {
    quote {
      autoPrefill(mappingId: "<mapping id>", entityId: "<quote id>") {
        id
        name
        formattedName
        modified
      }
    }
  }
}
curl 'https://{region}.api.coevera.com/api/v100/app/space/{space_id}/graphql/public' \
  --user "$COEVERA_API_KEY:$COEVERA_API_SECRET" \
  --header 'Content-Type: application/json' \
  --data '{"query":"query QuoteAutoPrefill { entities { quote { autoPrefill(mappingId: \"<mapping id>\", entityId: \"<quote id>\") { id name formattedName modified } } } }"}'

Mutations

KindMutationDoesReturns
MUTATIONchangeOwnershipQuote(input: ChangeOwnershipQuoteInput!)Change owner GraphQL onlyChangeOwnershipQuotePayload
Example
Example: changeOwnershipQuote
mutation ChangeOwnershipQuote {
  changeOwnershipQuote(
    input: {ownerId: "<owner id>", unitId: "<unit id>", keepOwnerAsEditor: false, transferLinkedRecords: false, id: "<quote id>"}
  ) {
    result {
      id
      name
      formattedName
      modified
    }
  }
}
curl 'https://{region}.api.coevera.com/api/v100/app/space/{space_id}/graphql/public' \
  --user "$COEVERA_API_KEY:$COEVERA_API_SECRET" \
  --header 'Content-Type: application/json' \
  --data '{"query":"mutation ChangeOwnershipQuote { changeOwnershipQuote( input: {ownerId: \"<owner id>\", unitId: \"<unit id>\", keepOwnerAsEditor: false, transferLinkedRecords: false, id: \"<quote id>\"} ) { result { id name formattedName modified } } }"}'
MUTATIONmanageSharingQuote(input: ManageSharingQuoteInput!)Change who it is shared with GraphQL onlyManageSharingQuotePayload
Example
Example: manageSharingQuote
mutation ManageSharingQuote {
  manageSharingQuote(input: {shareMode: Standard, id: "<quote id>"}) {
    result {
      id
      name
      formattedName
      modified
    }
  }
}
curl 'https://{region}.api.coevera.com/api/v100/app/space/{space_id}/graphql/public' \
  --user "$COEVERA_API_KEY:$COEVERA_API_SECRET" \
  --header 'Content-Type: application/json' \
  --data '{"query":"mutation ManageSharingQuote { manageSharingQuote(input: {shareMode: Standard, id: \"<quote id>\"}) { result { id name formattedName modified } } }"}'
MUTATIONrestoreQuote(input: RestoreQuoteInput!)Restore a deleted recordRestoreQuotePayload
Example
Example: restoreQuote
mutation RestoreQuote {
  restoreQuote(input: {id: "<quote id>"}) {
    result {
      id
      name
      formattedName
      modified
    }
  }
}
curl 'https://{region}.api.coevera.com/api/v100/app/space/{space_id}/graphql/public' \
  --user "$COEVERA_API_KEY:$COEVERA_API_SECRET" \
  --header 'Content-Type: application/json' \
  --data '{"query":"mutation RestoreQuote { restoreQuote(input: {id: \"<quote id>\"}) { result { id name formattedName modified } } }"}'
MUTATIONarchiveQuote(input: ArchiveQuoteInput!)Archive GraphQL onlyArchiveQuotePayload
Example
Example: archiveQuote
mutation ArchiveQuote {
  archiveQuote(input: {entity: {id: "<quote id>"}}) {
    result {
      id
      name
      formattedName
      modified
    }
  }
}
curl 'https://{region}.api.coevera.com/api/v100/app/space/{space_id}/graphql/public' \
  --user "$COEVERA_API_KEY:$COEVERA_API_SECRET" \
  --header 'Content-Type: application/json' \
  --data '{"query":"mutation ArchiveQuote { archiveQuote(input: {entity: {id: \"<quote id>\"}}) { result { id name formattedName modified } } }"}'
MUTATIONreactivateQuote(input: ReactivateQuoteInput!)Undo archive GraphQL onlyReactivateQuotePayload
Example
Example: reactivateQuote
mutation ReactivateQuote {
  reactivateQuote(input: {id: "<quote id>"}) {
    result {
      id
      name
      formattedName
      modified
    }
  }
}
curl 'https://{region}.api.coevera.com/api/v100/app/space/{space_id}/graphql/public' \
  --user "$COEVERA_API_KEY:$COEVERA_API_SECRET" \
  --header 'Content-Type: application/json' \
  --data '{"query":"mutation ReactivateQuote { reactivateQuote(input: {id: \"<quote id>\"}) { result { id name formattedName modified } } }"}'
MUTATIONmoveQuote(input: MoveQuoteInput!)Move to another step GraphQL onlyMoveQuotePayload
Example
Example: moveQuote
mutation MoveQuote {
  moveQuote(input: {entity: {id: "<quote id>"}}) {
    result {
      id
      name
      formattedName
      modified
    }
  }
}
curl 'https://{region}.api.coevera.com/api/v100/app/space/{space_id}/graphql/public' \
  --user "$COEVERA_API_KEY:$COEVERA_API_SECRET" \
  --header 'Content-Type: application/json' \
  --data '{"query":"mutation MoveQuote { moveQuote(input: {entity: {id: \"<quote id>\"}}) { result { id name formattedName modified } } }"}'
MUTATIONchangePipelineQuote(input: ChangePipelineQuoteInput!)Move to another pipeline GraphQL onlyChangePipelineQuotePayload
Example
Example: changePipelineQuote
mutation ChangePipelineQuote {
  changePipelineQuote(
    input: {entity: {id: "<quote id>"}, keepOwnerAsEditor: false, transferLinkedRecords: false}
  ) {
    result {
      id
      name
      formattedName
      modified
    }
  }
}
curl 'https://{region}.api.coevera.com/api/v100/app/space/{space_id}/graphql/public' \
  --user "$COEVERA_API_KEY:$COEVERA_API_SECRET" \
  --header 'Content-Type: application/json' \
  --data '{"query":"mutation ChangePipelineQuote { changePipelineQuote( input: {entity: {id: \"<quote id>\"}, keepOwnerAsEditor: false, transferLinkedRecords: false} ) { result { id name formattedName modified } } }"}'
MUTATIONcreateQuote(input: CreateQuoteInput!, validationLevel: [ValidationLevel!])Create one recordCreateQuotePayload
Example
Example: createQuote
mutation CreateQuote {
  createQuote(
    input: {name: "Northwind Analytics", ownerId: "<owner id>", stepId: "<step id>"}
  ) {
    quote {
      id
      name
      formattedName
      modified
    }
  }
}
curl 'https://{region}.api.coevera.com/api/v100/app/space/{space_id}/graphql/public' \
  --user "$COEVERA_API_KEY:$COEVERA_API_SECRET" \
  --header 'Content-Type: application/json' \
  --data '{"query":"mutation CreateQuote { createQuote( input: {name: \"Northwind Analytics\", ownerId: \"<owner id>\", stepId: \"<step id>\"} ) { quote { id name formattedName modified } } }"}'
MUTATIONupdateQuote(input: UpdateQuoteInput!, validationLevel: [ValidationLevel!], sessionIdToUpdate: String)Update fieldsUpdateQuotePayload
Example
Example: updateQuote
mutation UpdateQuote {
  updateQuote(input: {id: "<quote id>"}) {
    quote {
      id
      name
      formattedName
      modified
    }
  }
}
curl 'https://{region}.api.coevera.com/api/v100/app/space/{space_id}/graphql/public' \
  --user "$COEVERA_API_KEY:$COEVERA_API_SECRET" \
  --header 'Content-Type: application/json' \
  --data '{"query":"mutation UpdateQuote { updateQuote(input: {id: \"<quote id>\"}) { quote { id name formattedName modified } } }"}'
MUTATIONbulkUpdateQuote(input: [CreateOrUpdateQuoteInput!]!, deleteInput: [DeleteQuoteInput!], validationLevel: [ValidationLevel!], rollbackMethod: RollbackMethod, match: MatchingInput)Create or update many; per-item resultsBulkUpdateQuotePayload
Example
Example: bulkUpdateQuote
mutation BulkUpdateQuote {
  bulkUpdateQuote(input: [{id: "<quote id>"}]) {
    result {
      created {
        id
      }
      errors {
        index
        code
        message
        entityId
      }
      updated
      deleted
      errorsOnDelete {
        index
        code
        message
        entityId
      }
    }
  }
}
curl 'https://{region}.api.coevera.com/api/v100/app/space/{space_id}/graphql/public' \
  --user "$COEVERA_API_KEY:$COEVERA_API_SECRET" \
  --header 'Content-Type: application/json' \
  --data '{"query":"mutation BulkUpdateQuote { bulkUpdateQuote(input: [{id: \"<quote id>\"}]) { result { created { id } errors { index code message entityId } updated deleted errorsOnDelete { index code message entityId } } } }"}'
MUTATIONdeleteQuote(input: DeleteQuoteInput!)Soft-deleteDeleteQuotePayload
Example
Example: deleteQuote
mutation DeleteQuote {
  deleteQuote(input: {id: "<quote id>"}) {
    quote {
      id
      name
      formattedName
      modified
    }
  }
}
curl 'https://{region}.api.coevera.com/api/v100/app/space/{space_id}/graphql/public' \
  --user "$COEVERA_API_KEY:$COEVERA_API_SECRET" \
  --header 'Content-Type: application/json' \
  --data '{"query":"mutation DeleteQuote { deleteQuote(input: {id: \"<quote id>\"}) { quote { id name formattedName modified } } }"}'
MUTATIONbulkArchiveQuote(input: BulkArchiveQuoteInput!)Archive many GraphQL onlyBulkArchiveQuotePayload
Example
Example: bulkArchiveQuote
mutation BulkArchiveQuote {
  bulkArchiveQuote(
    input: {bulkFilter: {includedIds: ["<quote id>"]}, entity: {id: "<quote id>"}}
  ) {
    result {
      created {
        id
      }
      errors {
        index
        code
        message
        entityId
      }
      updated
      deleted
      errorsOnDelete {
        index
        code
        message
        entityId
      }
    }
  }
}
curl 'https://{region}.api.coevera.com/api/v100/app/space/{space_id}/graphql/public' \
  --user "$COEVERA_API_KEY:$COEVERA_API_SECRET" \
  --header 'Content-Type: application/json' \
  --data '{"query":"mutation BulkArchiveQuote { bulkArchiveQuote( input: {bulkFilter: {includedIds: [\"<quote id>\"]}, entity: {id: \"<quote id>\"}} ) { result { created { id } errors { index code message entityId } updated deleted errorsOnDelete { index code message entityId } } } }"}'
MUTATIONbulkReactivateQuote(input: BulkReactivateQuoteInput!)Undo archive for many GraphQL onlyBulkReactivateQuotePayload
Example
Example: bulkReactivateQuote
mutation BulkReactivateQuote {
  bulkReactivateQuote(input: {bulkFilter: {includedIds: ["<quote id>"]}}) {
    result {
      created {
        id
      }
      errors {
        index
        code
        message
        entityId
      }
      updated
      deleted
      errorsOnDelete {
        index
        code
        message
        entityId
      }
    }
  }
}
curl 'https://{region}.api.coevera.com/api/v100/app/space/{space_id}/graphql/public' \
  --user "$COEVERA_API_KEY:$COEVERA_API_SECRET" \
  --header 'Content-Type: application/json' \
  --data '{"query":"mutation BulkReactivateQuote { bulkReactivateQuote(input: {bulkFilter: {includedIds: [\"<quote id>\"]}}) { result { created { id } errors { index code message entityId } updated deleted errorsOnDelete { index code message entityId } } } }"}'
MUTATIONbulkMoveQuote(input: BulkMoveQuoteInput!)Move many to another step GraphQL onlyBulkMoveQuotePayload
Example
Example: bulkMoveQuote
mutation BulkMoveQuote {
  bulkMoveQuote(
    input: {bulkFilter: {includedIds: ["<quote id>"]}, entity: {id: "<quote id>"}}
  ) {
    result {
      created {
        id
      }
      errors {
        index
        code
        message
        entityId
      }
      updated
      deleted
      errorsOnDelete {
        index
        code
        message
        entityId
      }
    }
  }
}
curl 'https://{region}.api.coevera.com/api/v100/app/space/{space_id}/graphql/public' \
  --user "$COEVERA_API_KEY:$COEVERA_API_SECRET" \
  --header 'Content-Type: application/json' \
  --data '{"query":"mutation BulkMoveQuote { bulkMoveQuote( input: {bulkFilter: {includedIds: [\"<quote id>\"]}, entity: {id: \"<quote id>\"}} ) { result { created { id } errors { index code message entityId } updated deleted errorsOnDelete { index code message entityId } } } }"}'
MUTATIONconvertQuote(input: CreateQuoteInput!, sourceEntity: EntityNameEnum!, sourceEntityId: UUID!, operation: RecordConversionOperationEnum!, options: RecordConversionOptions!, sourceEntityApiName: String, validationLevel: [ValidationLevel!])Create from another record GraphQL onlyConvertQuotePayload
Example
Example: convertQuote
mutation ConvertQuote {
  convertQuote(
    input: {name: "Northwind Analytics", ownerId: "<owner id>", stepId: "<step id>"}
    sourceEntity: AiAgent
    sourceEntityId: "<source entity id>"
    operation: Nothing
    options: {}
  ) {
    quote {
      id
      name
      formattedName
      modified
    }
  }
}
curl 'https://{region}.api.coevera.com/api/v100/app/space/{space_id}/graphql/public' \
  --user "$COEVERA_API_KEY:$COEVERA_API_SECRET" \
  --header 'Content-Type: application/json' \
  --data '{"query":"mutation ConvertQuote { convertQuote( input: {name: \"Northwind Analytics\", ownerId: \"<owner id>\", stepId: \"<step id>\"} sourceEntity: AiAgent sourceEntityId: \"<source entity id>\" operation: Nothing options: {} ) { quote { id name formattedName modified } } }"}'

Types

The types this repository uses, each with its fields and their descriptions. Types several repositories share, such as PageInfo and the filter fields, are in the types index.

QuoteEntity object 66 fields: customFields, pendingScheduledActions, isDeleteProtected, …

Price offer for a customer, usually prepared from an opportunity, with product line items; it moves through a quote process.

FieldTypeDescription
customFieldsJSONString! (1 args)Values of the record's custom fields as a JSON object keyed by custom field apiName (camelCase).
pendingScheduledActionsIntFilled only when a single record is read by its id; otherwise null or an empty list.
isDeleteProtectedBoolean!True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.
idID!Unique identifier of entity.
isDeletedBooleanSpecifies if the entity is considered deleted.
modifiedDateTimeLast modification time.
createdDateTimeCreation time.
currencyExchangeRatesListCurrencyExchangeRatesListEntityCurrency exchange rate list used to convert monetary fields linked to this quote. Empty to inherit the team space default.
opptyOpportunityEntityOpportunity this quote was prepared for. Empty for standalone quotes.
ownerClientEntitySales user who owns this quote.
productCurrencyCurrencyEntityCurrency used for product line-item prices on this quote.
productPriceListProductPriceListEntityProduct price list used to populate prices for product line items added to this quote. Empty to use catalog defaults.
quoteTypeQuoteTypeEntityQuote type that classifies this quote. Each type maps to one quote process and drives which form, fields and stages apply.
reasonOfCloseDataEntityConfigurable reason recorded when the quote is archived (lost). Required when the lost form mandates it.
stepStepEntityQuote-process step the quote is currently sitting in. Reaching the last step in the process marks the quote as accepted.
unitSalesUnitEntitySales unit this quote is assigned to. Determines which team members can see the record under unit-based sharing.
currencyExchangeRatesListIdIDId of the currency exchange rate list applied to this quote.
descriptionStringFree-form description of the quote.
expirationDateDateDate after which the quote is no longer considered valid.
isArchivedBooleanTrue when the quote has been archived (lost). Archived quotes remain readable but are hidden from active lists and cannot be edited until reactivated.
nameString!Name of the entity and its default text representation.
opptyIdIDId of the opportunity.
ownerIdID!Id of the quote owner.
productCurrencyIdIDId of the currency used for product line-item prices on this quote.
productPriceListIdIDId of the price list that supplies prices for product line items added to this quote, or empty to use catalog defaults.
productSections[ProductSection!]Product sections grouping the record's line items, as a JSON array of {"id": <UUID>, "name": <string>} objects. Validated on write.
quickAccountEmailStringFree-text company email captured at quote creation when no Account record has been linked yet.
quickAccountNameStringFree-text company name captured at quote creation when no Account record has been linked yet.
quickAccountPhoneStringFree-text company phone captured at quote creation when no Account record has been linked yet.
quickContactNameStringFree-text contact name captured at quote creation when no Contact record has been linked yet.
quickEmailStringFree-text contact email captured at quote creation when no Contact record has been linked yet.
quickPhoneStringFree-text contact phone captured at quote creation when no Contact record has been linked yet.
quoteNumberStringAuto-generated sequential identifier of the quote, used for human-readable reference.
quoteTypeIdIDId of the quote type that classifies this quote.
reasonOfCloseDescriptionStringFree-form note explaining why the quote was archived (lost).
reasonOfCloseIdIDId of the reason of close option selected when the quote was archived (lost).
shareModeShareModeEnumSharing model applied on top of the owner/unit visibility (e.g. shared with selected sales units or selected users). The matching sharingUnits / sharingClients lists control who is granted access.
stepIdID!Id of the quote-process step.
unitIdIDId of the sales unit.
versionIntRevision number of the quote, incremented when a new version of the same quote is created.
revisionIntRevision when entity was lastly changed.
totalAmountCurrencyForeignFieldTotal monetary value of the quote in the team space base currency, with the foreign value and currency code preserved alongside.
productRelationsOpptyProductRelationEntityConnection (8 args)Product line items on this quote. Each entry holds the product, quantity, price and discount that contribute to totalAmount.
primaryContactContactEntityPrimary contact of this quote. Set automatically from the contact relation marked as primary.
primaryAccountAccountEntityPrimary account of this quote. Set automatically from the account relation marked as primary.
contactRelationsQuoteContactRelationEntityConnection (8 args)Contacts linked to this quote.
accountRelationsQuoteAccountRelationEntityConnection (8 args)Accounts linked to this quote, including the primary-account flag.
documentsCloudObjectRelationEntityConnection (8 args)Documents linked to this quote.
sharingUnitsQuoteSharingSalesUnitRelationEntityConnection (8 args)Sales units that have been granted shared access to this quote. Editable only when shareMode allows unit sharing.
sharingClientsQuoteSharingClientRelationEntityConnection (8 args)Users that have been granted shared access to this quote. Editable only when shareMode allows user sharing.
statusQuoteStatusEnum!Current status of the quote (Open, Lost, Accepted). Read-only; derived from the current step and the archived flag.
formattedNameString!Display version of the quote name, used in lists and references.
isFavoriteBoolean!True when the current authenticated user has marked this quote as favorite. Per-user.
isActiveInOpportunityBooleanIf quote is set as active in opportunity.
viewerIdsPerSalesUnit[UUID!]!Filled only when a single record is read by its id; otherwise null or an empty list.
modifiedByUserDateTimeTimestamp of the most recent modification made by an end user (excluding system changes). Read-only; computed by Coevera.
staticProfilesProfileRelationEntityConnection (8 args)Saved view profiles this quote currently matches.
tagsTagRelationEntityConnection (8 args)Tag labels applied to this quote.
instancePermissions[EntityPermsEnum!]! (1 args)Permissions the current user has on this record, out of the requested ones.
relatedEntitiesDrilldownCompactViewDrilldownModel! (1 args)Records of the given entity type that are related to this record, as a drilldown list.
charts[DashboardChartData!] (1 args)Data of the given preview pane charts and lists, computed for this record.
chartsDrilldownCompactViewDrilldownModel! (3 args)Records behind one preview pane chart of this record: all records of a list chart, or the records of a single data point of a report chart.
fields[InterfaceFieldData]! (2 args)Values of the fields shown in the record's preview pane, as configured for the record's type.
projectObjectiveActivitiesDrilldownCompactViewDrilldownModel! (1 args)Activities of this project linked to the given project objective.
stepChecklists[StepChecklistActivityItem]! (1 args)Checklist items of the steps of the record's quote process, with the completion state of each item for this record.
approvalApprovalEntityApproval request of this record that is pending or was rejected; null when there is none or it was approved.
QuoteEntityConnection object pageInfo: PageInfo!, edges: [QuoteEntityEdge]!, totalCount: Int

Paginated list of Quote records.

FieldTypeDescription
pageInfoPageInfo!Pagination data for this connection.
edges[QuoteEntityEdge]!Contains the nodes in this connection.
totalCountIntTotal number of items in the connection.
QuoteEntityEdge object node: QuoteEntity, cursor: String!

A Relay edge containing a QuoteEntity and its cursor.

FieldTypeDescription
nodeQuoteEntityThe item at the end of the edge
cursorString!A cursor for use in pagination
QuoteFilterInput input AND, OR, NOT, globalSearchQuery, one condition per field

Filter conditions for Quote records. Conditions on different fields are combined with AND; use OR, AND and NOT for other combinations.

Input fieldTypeDescription
OR[QuoteFilterInput!]Matches records that meet at least one of the listed filters.
AND[QuoteFilterInput!]Matches records that meet all of the listed filters.
NOTQuoteFilterInputMatches records that do not meet this filter.
globalSearchQueryStringSearch term matched against the fields that the global search covers for this entity.
idEntityFilterStringFieldUnique identifier of entity.
isDeletedBooleanSpecifies if the entity is considered deleted.
modifiedEntityFilterDateTimeFieldLast modification time.
createdEntityFilterDateTimeFieldCreation time.
currencyExchangeRatesListIdEntityFilterStringFieldId of the currency exchange rate list applied to this quote.
descriptionEntityFilterStringFieldFree-form description of the quote.
isArchivedBooleanTrue when the quote has been archived (lost). Archived quotes remain readable but are hidden from active lists and cannot be edited until reactivated.
nameEntityFilterStringFieldName of the entity and its default text representation.
opptyIdEntityFilterStringFieldId of the opportunity.
ownerIdEntityFilterStringFieldId of the quote owner.
productCurrencyIdEntityFilterStringFieldId of the currency used for product line-item prices on this quote.
productPriceListIdEntityFilterStringFieldId of the price list that supplies prices for product line items added to this quote, or empty to use catalog defaults.
quickAccountEmailEntityFilterStringFieldFree-text company email captured at quote creation when no Account record has been linked yet.
quickAccountNameEntityFilterStringFieldFree-text company name captured at quote creation when no Account record has been linked yet.
quickAccountPhoneEntityFilterStringFieldFree-text company phone captured at quote creation when no Account record has been linked yet.
quickContactNameEntityFilterStringFieldFree-text contact name captured at quote creation when no Contact record has been linked yet.
quickEmailEntityFilterStringFieldFree-text contact email captured at quote creation when no Contact record has been linked yet.
quickPhoneEntityFilterStringFieldFree-text contact phone captured at quote creation when no Contact record has been linked yet.
quoteNumberEntityFilterStringFieldAuto-generated sequential identifier of the quote, used for human-readable reference.
quoteTypeIdEntityFilterStringFieldId of the quote type that classifies this quote.
reasonOfCloseDescriptionEntityFilterStringFieldFree-form note explaining why the quote was archived (lost).
reasonOfCloseIdEntityFilterStringFieldId of the reason of close option selected when the quote was archived (lost).
shareModeShareModeEnumFilterInputSharing model applied on top of the owner/unit visibility (e.g. shared with selected sales units or selected users). The matching sharingUnits / sharingClients lists control who is granted access.
stepIdEntityFilterStringFieldId of the quote-process step.
unitIdEntityFilterStringFieldId of the sales unit.
versionEntityFilterNumberFieldRevision number of the quote, incremented when a new version of the same quote is created.
revisionEntityFilterNumberFieldRevision when entity was lastly changed.
pipelineIdEntityFilterStringFieldId of the quote process the quote runs in. Read-only; derived from the quote type. Useful as a filter when listing quotes by process.
statusQuoteStatusEnumFilterInputCurrent status of the quote (Open, Lost, Accepted). Read-only; derived from the current step and the archived flag.
withCustom[CustomField!]Conditions on custom fields, each identified by its api name. All listed conditions must match.
currencyExchangeRatesListCurrencyExchangeRatesListFilterInputCurrency exchange rate list used to convert monetary fields linked to this quote. Empty to inherit the team space default. Matches records where a related record meets these conditions.
opptyOpportunityFilterInputOpportunity this quote was prepared for. Empty for standalone quotes. Matches records where a related record meets these conditions.
ownerClientFilterInputSales user who owns this quote. Matches records where a related record meets these conditions.
productCurrencyCurrencyFilterInputCurrency used for product line-item prices on this quote. Matches records where a related record meets these conditions.
productPriceListProductPriceListFilterInputProduct price list used to populate prices for product line items added to this quote. Empty to use catalog defaults. Matches records where a related record meets these conditions.
quoteTypeQuoteTypeFilterInputQuote type that classifies this quote. Each type maps to one quote process and drives which form, fields and stages apply. Matches records where a related record meets these conditions.
reasonOfCloseDataFilterInputConfigurable reason recorded when the quote is archived (lost). Required when the lost form mandates it. Matches records where a related record meets these conditions.
stepStepFilterInputQuote-process step the quote is currently sitting in. Reaching the last step in the process marks the quote as accepted. Matches records where a related record meets these conditions.
unitSalesUnitFilterInputSales unit this quote is assigned to. Determines which team members can see the record under unit-based sharing. Matches records where a related record meets these conditions.
productRelationsOpptyProductRelationFilterInputProduct line items on this quote. Each entry holds the product, quantity, price and discount that contribute to totalAmount. Matches records where a related record meets these conditions.
primaryContactContactFilterInputPrimary contact of this quote. Set automatically from the contact relation marked as primary. Matches records where a related record meets these conditions.
primaryAccountAccountFilterInputPrimary account of this quote. Set automatically from the account relation marked as primary. Matches records where a related record meets these conditions.
contactRelationsQuoteContactRelationFilterInputContacts linked to this quote. Matches records where a related record meets these conditions.
accountRelationsQuoteAccountRelationFilterInputAccounts linked to this quote, including the primary-account flag. Matches records where a related record meets these conditions.
documentsCloudObjectRelationFilterInputDocuments linked to this quote. Matches records where a related record meets these conditions.
sharingUnitsQuoteSharingSalesUnitRelationFilterInputSales units that have been granted shared access to this quote. Editable only when shareMode allows unit sharing. Matches records where a related record meets these conditions.
sharingClientsQuoteSharingClientRelationFilterInputUsers that have been granted shared access to this quote. Editable only when shareMode allows user sharing. Matches records where a related record meets these conditions.
staticProfilesProfileRelationFilterInputSaved view profiles this quote currently matches. Matches records where a related record meets these conditions.
tagsTagRelationFilterInputTag labels applied to this quote. Matches records where a related record meets these conditions.
QuoteOrderByInput input Asc or Desc per field

Sorting of Quote records. Set exactly one field in each item; list several items to sort by more fields, in order of priority.

Input fieldTypeDescription
idOrderByEnumUnique identifier of entity.
isDeletedOrderByEnumSpecifies if the entity is considered deleted.
modifiedOrderByEnumLast modification time.
createdOrderByEnumCreation time.
currencyExchangeRatesList[CurrencyExchangeRatesListOrderByNestedInput!]Currency exchange rate list used to convert monetary fields linked to this quote. Empty to inherit the team space default. Sorts by fields of the related record, listed in order of priority.
oppty[OpportunityOrderByNestedInput!]Opportunity this quote was prepared for. Empty for standalone quotes. Sorts by fields of the related record, listed in order of priority.
owner[ClientOrderByNestedInput!]Sales user who owns this quote. Sorts by fields of the related record, listed in order of priority.
productPriceList[ProductPriceListOrderByNestedInput!]Product price list used to populate prices for product line items added to this quote. Empty to use catalog defaults. Sorts by fields of the related record, listed in order of priority.
quoteType[QuoteTypeOrderByNestedInput!]Quote type that classifies this quote. Each type maps to one quote process and drives which form, fields and stages apply. Sorts by fields of the related record, listed in order of priority.
reasonOfClose[DataOrderByNestedInput!]Configurable reason recorded when the quote is archived (lost). Required when the lost form mandates it. Sorts by fields of the related record, listed in order of priority.
step[StepOrderByNestedInput!]Quote-process step the quote is currently sitting in. Reaching the last step in the process marks the quote as accepted. Sorts by fields of the related record, listed in order of priority.
unit[SalesUnitOrderByNestedInput!]Sales unit this quote is assigned to. Determines which team members can see the record under unit-based sharing. Sorts by fields of the related record, listed in order of priority.
currencyExchangeRatesListIdOrderByEnumId of the currency exchange rate list applied to this quote.
descriptionOrderByEnumFree-form description of the quote.
expirationDateOrderByEnumDate after which the quote is no longer considered valid.
isArchivedOrderByEnumTrue when the quote has been archived (lost). Archived quotes remain readable but are hidden from active lists and cannot be edited until reactivated.
nameOrderByEnumName of the entity and its default text representation.
opptyIdOrderByEnumId of the opportunity.
ownerIdOrderByEnumId of the quote owner.
productPriceListIdOrderByEnumId of the price list that supplies prices for product line items added to this quote, or empty to use catalog defaults.
quickAccountEmailOrderByEnumFree-text company email captured at quote creation when no Account record has been linked yet.
quickAccountNameOrderByEnumFree-text company name captured at quote creation when no Account record has been linked yet.
quickAccountPhoneOrderByEnumFree-text company phone captured at quote creation when no Account record has been linked yet.
quickContactNameOrderByEnumFree-text contact name captured at quote creation when no Contact record has been linked yet.
quickEmailOrderByEnumFree-text contact email captured at quote creation when no Contact record has been linked yet.
quickPhoneOrderByEnumFree-text contact phone captured at quote creation when no Contact record has been linked yet.
quoteNumberOrderByEnumAuto-generated sequential identifier of the quote, used for human-readable reference.
quoteTypeIdOrderByEnumId of the quote type that classifies this quote.
reasonOfCloseDescriptionOrderByEnumFree-form note explaining why the quote was archived (lost).
reasonOfCloseIdOrderByEnumId of the reason of close option selected when the quote was archived (lost).
shareModeOrderByEnumSharing model applied on top of the owner/unit visibility (e.g. shared with selected sales units or selected users). The matching sharingUnits / sharingClients lists control who is granted access.
stepIdOrderByEnumId of the quote-process step.
unitIdOrderByEnumId of the sales unit.
versionOrderByEnumRevision number of the quote, incremented when a new version of the same quote is created.
revisionOrderByEnumRevision when entity was lastly changed.
totalAmountOrderByEnumTotal monetary value of the quote in the team space base currency, with the foreign value and currency code preserved alongside.
statusOrderByEnumCurrent status of the quote (Open, Lost, Accepted). Read-only; derived from the current step and the archived flag.
withCustomCommonEntityRepositoryOrderByCustomFieldSorts by a custom field.
QuoteStatusEnumFilterInput input eq: [QuoteStatusEnum!], NOT: QuoteStatusEnumFilterInput

Conditions on an enumeration field. Several conditions given together must all match.

Input fieldTypeDescription
eq[QuoteStatusEnum!]Matches any of the listed values.
NOTQuoteStatusEnumFilterInputMatches values that do not meet this condition.
ArchiveQuoteInput input 5 fields: entity, completeActivityIds, archiveOpportunityIds, …

Parameters of the archiveQuote mutation.

Input fieldTypeDescription
entityUpdateQuoteInput!Id of the quote and optional field values to save together with the archive.
completeActivityIds[UUID!]Ids of tasks linked to the quote, or to an opportunity archived with it, to mark as completed.
archiveOpportunityIds[UUID!]Archives the quote's opportunity when its id is listed and it is still open; other ids are ignored.
completeAllRelatedOpportunitiesTasksBooleanMarks all tasks of the quote's opportunity as completed.
clientMutationIdStringOptional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
BulkArchiveQuoteInput input 7 fields: bulkFilter, entity, completeActivityIds, …

Parameters of the bulkArchiveQuote mutation.

Input fieldTypeDescription
bulkFilterBulkOperationInput!Quotes to archive: includedIds minus excludedIds. Integrations can leave sessionId empty.
entityCreateOrUpdateQuoteInput!Field values saved on every archived quote.
completeActivityIds[UUID!]Ids of linked tasks to mark as completed.
archiveOpportunityIds[UUID!]Opportunities of these quotes to archive when still open.
completeAllRelatedOpportunitiesTasksBooleanMarks all tasks of each quote's opportunity as completed.
rollbackMethodRollbackMethodROLLBACK_ALL fails the whole request when any item fails; ROLLBACK_FAILED skips only the failed items and reports them in errors.
clientMutationIdStringOptional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
BulkMoveQuoteInput input 7 fields: bulkFilter, entity, completeActivityIds, …

Parameters of the bulkMoveQuote mutation.

Input fieldTypeDescription
bulkFilterBulkOperationInput!Quotes to move: includedIds minus excludedIds. Integrations can leave sessionId empty.
entityCreateOrUpdateQuoteInput!Target step (stepId) and field values applied to every quote.
completeActivityIds[UUID!]Ids of linked tasks to mark as completed.
winOpportunityIds[UUID!]Opportunities of these quotes to move to their won step when still open.
archiveQuoteIds[UUID!]Ids of other quotes of the same opportunities to archive.
rollbackMethodRollbackMethodROLLBACK_ALL fails the whole request when any item fails; ROLLBACK_FAILED skips only the failed items and reports them in errors.
clientMutationIdStringOptional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
BulkReactivateQuoteInput input bulkFilter: BulkOperationInput!, expirationDate: Date, rollbackMethod: RollbackMethod, clientMutationId: String

Parameters of the bulkReactivateQuote mutation.

Input fieldTypeDescription
bulkFilterBulkOperationInput!Quotes to reactivate: includedIds minus excludedIds. Integrations can leave sessionId empty.
expirationDateDateNew expiration date set on every reactivated quote; when empty, each quote keeps its current expiration date.
rollbackMethodRollbackMethodROLLBACK_ALL fails the whole request when any item fails; ROLLBACK_FAILED skips only the failed items and reports them in errors.
clientMutationIdStringOptional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
ChangeOwnershipQuoteInput input 6 fields: ownerId, unitId, keepOwnerAsEditor, …

Parameters of the changeOwnershipQuote mutation.

Input fieldTypeDescription
ownerIdID!User who becomes the new owner of the quote.
unitIdID!Sales unit the quote is assigned to.
keepOwnerAsEditorBoolean!When true, the previous owner (if still an active user) stays on the quote as a shared user with the Editor role, and a Private sharing mode is switched to Standard.
transferLinkedRecordsBoolean!When true, the new owner and sales unit are also applied to the quote's open tasks and appointments, its notes, its linked contacts and accounts and its opportunity. Linked records that cannot be transferred are skipped without failing the mutation.
idID!Identifier of the QuoteEntity to perform the action on.
clientMutationIdStringOptional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
ChangePipelineQuoteInput input entity: UpdateQuoteInput!, keepOwnerAsEditor: Boolean!, transferLinkedRecords: Boolean!, clientMutationId: String

Parameters of the changePipelineQuote mutation.

Input fieldTypeDescription
entityUpdateQuoteInput!Id of the quote, the target stepId, an optional new ownerId or unitId, and any other field values to save.
keepOwnerAsEditorBoolean!Adds the previous owner as an editor of the quote; a private quote becomes shared.
transferLinkedRecordsBoolean!Gives the new owner the quote's open activities and its notes.
clientMutationIdStringOptional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
CreateOrUpdateQuoteInput input 39 fields: clientMutationId, id, modified, …

Field values of a Quote record to create, or to update when its id is set.

Input fieldTypeDescription
clientMutationIdStringOptional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
idIDUnique identifier of entity.
modifiedDateTimeLast modification time.
createdDateTimeCreation time.
currencyExchangeRatesListIdIDId of the currency exchange rate list applied to this quote.
descriptionStringFree-form description of the quote.
expirationDateDateDate after which the quote is no longer considered valid.
isArchivedBooleanTrue when the quote has been archived (lost). Archived quotes remain readable but are hidden from active lists and cannot be edited until reactivated.
nameStringName of the entity and its default text representation.
opptyIdIDId of the opportunity.
ownerIdIDId of the quote owner.
productCurrencyIdIDId of the currency used for product line-item prices on this quote.
productPriceListIdIDId of the price list that supplies prices for product line items added to this quote, or empty to use catalog defaults.
productSectionsJSONStringProduct sections grouping the record's line items, as a JSON array of {"id": <UUID>, "name": <string>} objects. Validated on write.
quickAccountEmailStringFree-text company email captured at quote creation when no Account record has been linked yet.
quickAccountNameStringFree-text company name captured at quote creation when no Account record has been linked yet.
quickAccountPhoneStringFree-text company phone captured at quote creation when no Account record has been linked yet.
quickContactNameStringFree-text contact name captured at quote creation when no Contact record has been linked yet.
quickEmailStringFree-text contact email captured at quote creation when no Contact record has been linked yet.
quickPhoneStringFree-text contact phone captured at quote creation when no Contact record has been linked yet.
quoteTypeIdIDId of the quote type that classifies this quote.
reasonOfCloseDescriptionStringFree-form note explaining why the quote was archived (lost).
reasonOfCloseIdIDId of the reason of close option selected when the quote was archived (lost).
shareModeShareModeEnumSharing model applied on top of the owner/unit visibility (e.g. shared with selected sales units or selected users). The matching sharingUnits / sharingClients lists control who is granted access.
stepIdIDId of the quote-process step.
unitIdIDId of the sales unit.
versionIntRevision number of the quote, incremented when a new version of the same quote is created.
customFieldsJSONStringCustom field values to set, as a JSON object keyed by custom field API name, e.g. {"cfBudget": 1000}. Only the custom fields included are changed; each value uses the format of that field.
revisionIntRevision when entity was lastly changed.
totalAmountCurrencyForeignFieldInputTotal monetary value of the quote in the team space base currency, with the foreign value and currency code preserved alongside.
productRelations[CreateOrUpdateOpptyProductRelationNoBackrefInput!]Product line items on this quote. Each entry holds the product, quantity, price and discount that contribute to totalAmount.
contactRelations[CreateQuoteContactRelationNoQuoteBackrefInput!]Contacts linked to this quote.
accountRelations[CreateQuoteAccountRelationNoQuoteBackrefInput!]Accounts linked to this quote, including the primary-account flag.
documents[CreateCloudObjectRelationNoBackrefInput!]Documents linked to this quote.
sharingUnits[CreateQuoteSharingSalesUnitRelationNoQuoteBackrefInput!]Sales units that have been granted shared access to this quote. Editable only when shareMode allows unit sharing.
sharingClients[CreateQuoteSharingClientRelationNoQuoteBackrefInput!]Users that have been granted shared access to this quote. Editable only when shareMode allows user sharing.
isActiveInOpportunityBooleanIf quote is set as active in opportunity.
staticProfiles[CreateProfileRelationNoQuoteBackrefInput!]Saved view profiles this quote currently matches.
tags[CreateTagRelationNoQuoteBackrefInput!]Tag labels applied to this quote.
CreateProfileRelationNoQuoteBackrefInput input 8 fields: modified, created, accountId, …

Field values of a new ProfileRelation record, created together with the record it belongs to.

Input fieldTypeDescription
modifiedDateTimeLast modification time.
createdDateTimeCreation time.
accountIdIDId of the linked account.
contactIdIDId of the linked contact.
customEntityIdIDId of the linked custom entity record.
leadOpptyIdIDId of the linked lead or opportunity, or empty when not pointing to one.
profileIdID!Id of the screen profile.
projectIdIDId of the linked project.
CreateQuoteAccountRelationNoQuoteBackrefInput input 5 fields: modified, created, accountId, …

Field values of a new QuoteAccountRelation record, created together with the record it belongs to.

Input fieldTypeDescription
modifiedDateTimeLast modification time.
createdDateTimeCreation time.
accountIdID!Id of the account linked to this quote.
isPrimaryBoolean!True for the row that represents the primary related entity for this record. Setting isPrimary to true on a row automatically clears it on any other primary row.
revisionIntRevision when entity was lastly changed.
CreateQuoteContactRelationNoQuoteBackrefInput input 5 fields: modified, created, contactId, …

Field values of a new QuoteContactRelation record, created together with the record it belongs to.

Input fieldTypeDescription
modifiedDateTimeLast modification time.
createdDateTimeCreation time.
contactIdID!Id of the contact linked to this quote.
isPrimaryBoolean!True for the row that represents the primary related entity for this record. Setting isPrimary to true on a row automatically clears it on any other primary row.
revisionIntRevision when entity was lastly changed.
CreateQuoteInput input 38 fields: clientMutationId, modified, created, …

Field values of a new Quote record.

Input fieldTypeDescription
clientMutationIdStringOptional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
modifiedDateTimeLast modification time.
createdDateTimeCreation time.
currencyExchangeRatesListIdIDId of the currency exchange rate list applied to this quote.
descriptionStringFree-form description of the quote.
expirationDateDateDate after which the quote is no longer considered valid.
isArchivedBooleanTrue when the quote has been archived (lost). Archived quotes remain readable but are hidden from active lists and cannot be edited until reactivated.
nameString!Name of the entity and its default text representation.
opptyIdIDId of the opportunity.
ownerIdID!Id of the quote owner.
productCurrencyIdIDId of the currency used for product line-item prices on this quote.
productPriceListIdIDId of the price list that supplies prices for product line items added to this quote, or empty to use catalog defaults.
productSectionsJSONStringProduct sections grouping the record's line items, as a JSON array of {"id": <UUID>, "name": <string>} objects. Validated on write.
quickAccountEmailStringFree-text company email captured at quote creation when no Account record has been linked yet.
quickAccountNameStringFree-text company name captured at quote creation when no Account record has been linked yet.
quickAccountPhoneStringFree-text company phone captured at quote creation when no Account record has been linked yet.
quickContactNameStringFree-text contact name captured at quote creation when no Contact record has been linked yet.
quickEmailStringFree-text contact email captured at quote creation when no Contact record has been linked yet.
quickPhoneStringFree-text contact phone captured at quote creation when no Contact record has been linked yet.
quoteTypeIdIDId of the quote type that classifies this quote.
reasonOfCloseDescriptionStringFree-form note explaining why the quote was archived (lost).
reasonOfCloseIdIDId of the reason of close option selected when the quote was archived (lost).
shareModeShareModeEnumSharing model applied on top of the owner/unit visibility (e.g. shared with selected sales units or selected users). The matching sharingUnits / sharingClients lists control who is granted access.
stepIdID!Id of the quote-process step.
unitIdIDId of the sales unit.
versionIntRevision number of the quote, incremented when a new version of the same quote is created.
customFieldsJSONStringCustom field values to set, as a JSON object keyed by custom field API name, e.g. {"cfBudget": 1000}. Only the custom fields included are changed; each value uses the format of that field.
revisionIntRevision when entity was lastly changed.
totalAmountCurrencyForeignFieldInputTotal monetary value of the quote in the team space base currency, with the foreign value and currency code preserved alongside.
productRelations[CreateOpptyProductRelationNoBackrefInput!]Product line items on this quote. Each entry holds the product, quantity, price and discount that contribute to totalAmount.
contactRelations[CreateQuoteContactRelationNoQuoteBackrefInput!]Contacts linked to this quote.
accountRelations[CreateQuoteAccountRelationNoQuoteBackrefInput!]Accounts linked to this quote, including the primary-account flag.
documents[CreateCloudObjectRelationNoBackrefInput!]Documents linked to this quote.
sharingUnits[CreateQuoteSharingSalesUnitRelationNoQuoteBackrefInput!]Sales units that have been granted shared access to this quote. Editable only when shareMode allows unit sharing.
sharingClients[CreateQuoteSharingClientRelationNoQuoteBackrefInput!]Users that have been granted shared access to this quote. Editable only when shareMode allows user sharing.
isActiveInOpportunityBooleanIf quote is set as active in opportunity.
staticProfiles[CreateProfileRelationNoQuoteBackrefInput!]Saved view profiles this quote currently matches.
tags[CreateTagRelationNoQuoteBackrefInput!]Tag labels applied to this quote.
CreateQuoteSharingClientRelationNoQuoteBackrefInput input 5 fields: modified, created, clientId, …

Field values of a new QuoteSharingClientRelation record, created together with the record it belongs to.

Input fieldTypeDescription
modifiedDateTimeLast modification time.
createdDateTimeCreation time.
clientIdID!Id of the user.
roleSharingRoleEnumAccess the sharing gives the user on the quote: Watcher can view it, Editor can view and edit it.
revisionIntRevision when entity was lastly changed.
CreateQuoteSharingSalesUnitRelationNoQuoteBackrefInput input 5 fields: modified, created, role, …

Field values of a new QuoteSharingSalesUnitRelation record, created together with the record it belongs to.

Input fieldTypeDescription
modifiedDateTimeLast modification time.
createdDateTimeCreation time.
roleSharingRoleEnumAccess the sharing gives the sales unit on the quote: Watcher can view it, Editor can view and edit it.
unitIdID!Id of the sales unit.
revisionIntRevision when entity was lastly changed.
CreateTagRelationNoQuoteBackrefInput input 15 fields: modified, created, accountId, …

Field values of a new TagRelation record, created together with the record it belongs to.

Input fieldTypeDescription
modifiedDateTimeLast modification time.
createdDateTimeCreation time.
accountIdIDId of the linked account.
appointmentIdIDId of the linked appointment.
contactIdIDId of the linked contact.
customEntityIdIDId of the linked custom entity record.
emailIdIDId of the linked email.
leadIdIDId of the linked lead.
opptyIdIDId of the linked opportunity.
processIdIDId of the linked sales process.
projectIdIDId of the linked project.
solutionIdIDId of the linked solution.
tagIdID!Id of the tag attached to the record.
taskIdIDId of the linked task.
revisionIntRevision when entity was lastly changed.
DeleteQuoteInput input clientMutationId: String, id: ID!

Id of the Quote record to delete.

Input fieldTypeDescription
clientMutationIdStringOptional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
idID!Unique identifier of entity.
ManageSharingQuoteInput input 5 fields: shareMode, sharingClients, sharingUnits, …

Parameters of the manageSharingQuote mutation.

Input fieldTypeDescription
shareModeShareModeEnum!Sharing mode of the record: Standard, Private, AllView or AllEdit.
sharingClients[CreateQuoteSharingClientRelationNoQuoteBackrefInput!]Users the record is shared with, each with the Watcher (view) or Editor (edit) role. Send an empty list to remove all shared users.
sharingUnits[CreateQuoteSharingSalesUnitRelationNoQuoteBackrefInput!]Sales units the record is shared with, each with the Watcher or Editor role. Send an empty list to remove all shared units.
idID!Identifier of the QuoteEntity to perform the action on.
clientMutationIdStringOptional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
MoveQuoteInput input 5 fields: entity, completeActivityIds, winOpportunityIds, …

Parameters of the moveQuote mutation.

Input fieldTypeDescription
entityUpdateQuoteInput!Id of the quote, the target step (stepId) and any field values to save with the move.
completeActivityIds[UUID!]Ids of tasks linked to the quote or affected records to mark as completed.
winOpportunityIds[UUID!]Moves the quote's opportunity to its won step when its id is listed and it is still open; other ids are ignored.
archiveQuoteIds[UUID!]Ids of other quotes of the same opportunity to archive.
clientMutationIdStringOptional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
ReactivateQuoteInput input id: UUID!, closingDate: Date, clientMutationId: String

Parameters of the reactivateQuote mutation.

Input fieldTypeDescription
idUUID!Id of the archived quote.
closingDateDateNew expiration date of the quote; when empty, the current expiration date is kept.
clientMutationIdStringOptional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
RestoreQuoteInput input id: ID!, clientMutationId: String

Parameters of the restoreQuote mutation.

Input fieldTypeDescription
idID!Identifier of the QuoteEntity to perform the action on.
clientMutationIdStringOptional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
UpdateQuoteInput input 39 fields: clientMutationId, id, modified, …

Id of a Quote record and the field values to change.

Input fieldTypeDescription
clientMutationIdStringOptional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
idID!Unique identifier of entity.
modifiedDateTimeLast modification time.
createdDateTimeCreation time.
currencyExchangeRatesListIdIDId of the currency exchange rate list applied to this quote.
descriptionStringFree-form description of the quote.
expirationDateDateDate after which the quote is no longer considered valid.
isArchivedBooleanTrue when the quote has been archived (lost). Archived quotes remain readable but are hidden from active lists and cannot be edited until reactivated.
nameStringName of the entity and its default text representation.
opptyIdIDId of the opportunity.
ownerIdIDId of the quote owner.
productCurrencyIdIDId of the currency used for product line-item prices on this quote.
productPriceListIdIDId of the price list that supplies prices for product line items added to this quote, or empty to use catalog defaults.
productSectionsJSONStringProduct sections grouping the record's line items, as a JSON array of {"id": <UUID>, "name": <string>} objects. Validated on write.
quickAccountEmailStringFree-text company email captured at quote creation when no Account record has been linked yet.
quickAccountNameStringFree-text company name captured at quote creation when no Account record has been linked yet.
quickAccountPhoneStringFree-text company phone captured at quote creation when no Account record has been linked yet.
quickContactNameStringFree-text contact name captured at quote creation when no Contact record has been linked yet.
quickEmailStringFree-text contact email captured at quote creation when no Contact record has been linked yet.
quickPhoneStringFree-text contact phone captured at quote creation when no Contact record has been linked yet.
quoteTypeIdIDId of the quote type that classifies this quote.
reasonOfCloseDescriptionStringFree-form note explaining why the quote was archived (lost).
reasonOfCloseIdIDId of the reason of close option selected when the quote was archived (lost).
shareModeShareModeEnumSharing model applied on top of the owner/unit visibility (e.g. shared with selected sales units or selected users). The matching sharingUnits / sharingClients lists control who is granted access.
stepIdIDId of the quote-process step.
unitIdIDId of the sales unit.
versionIntRevision number of the quote, incremented when a new version of the same quote is created.
customFieldsJSONStringCustom field values to set, as a JSON object keyed by custom field API name, e.g. {"cfBudget": 1000}. Only the custom fields included are changed; each value uses the format of that field.
revisionIntRevision when entity was lastly changed.
totalAmountCurrencyForeignFieldInputTotal monetary value of the quote in the team space base currency, with the foreign value and currency code preserved alongside.
productRelations[CreateOrUpdateOpptyProductRelationNoBackrefInput!]Product line items on this quote. Each entry holds the product, quantity, price and discount that contribute to totalAmount.
contactRelations[CreateQuoteContactRelationNoQuoteBackrefInput!]Contacts linked to this quote.
accountRelations[CreateQuoteAccountRelationNoQuoteBackrefInput!]Accounts linked to this quote, including the primary-account flag.
documents[CreateCloudObjectRelationNoBackrefInput!]Documents linked to this quote.
sharingUnits[CreateQuoteSharingSalesUnitRelationNoQuoteBackrefInput!]Sales units that have been granted shared access to this quote. Editable only when shareMode allows unit sharing.
sharingClients[CreateQuoteSharingClientRelationNoQuoteBackrefInput!]Users that have been granted shared access to this quote. Editable only when shareMode allows user sharing.
isActiveInOpportunityBooleanIf quote is set as active in opportunity.
staticProfiles[CreateProfileRelationNoQuoteBackrefInput!]Saved view profiles this quote currently matches.
tags[CreateTagRelationNoQuoteBackrefInput!]Tag labels applied to this quote.
ArchiveQuotePayload object result: QuoteEntity, clientMutationId: String

Result of the archiveQuote mutation.

FieldTypeDescription
resultQuoteEntityThe archived quote.
clientMutationIdStringOptional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
BulkArchiveQuotePayload object result: BulkUpdateResults!, clientMutationId: String

Result of the bulkArchiveQuote mutation.

FieldTypeDescription
resultBulkUpdateResults!Ids of the archived quotes and the items that failed.
clientMutationIdStringOptional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
BulkMoveQuotePayload object result: BulkUpdateResults!, clientMutationId: String

Result of the bulkMoveQuote mutation.

FieldTypeDescription
resultBulkUpdateResults!Ids of the moved quotes and the items that failed.
clientMutationIdStringOptional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
BulkReactivateQuotePayload object result: BulkUpdateResults!, clientMutationId: String

Result of the bulkReactivateQuote mutation.

FieldTypeDescription
resultBulkUpdateResults!Ids of the reactivated quotes and the items that failed.
clientMutationIdStringOptional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
BulkUpdateQuotePayload object result: BulkUpdateResults!

Result of the bulkUpdateQuote mutation.

FieldTypeDescription
resultBulkUpdateResults!Ids of the created, updated and deleted records, and the items that failed.
ChangeOwnershipQuotePayload object result: QuoteEntity, clientMutationId: String

Result of the changeOwnershipQuote mutation.

FieldTypeDescription
resultQuoteEntityThe quote with its new owner.
clientMutationIdStringOptional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
ChangePipelineQuotePayload object result: QuoteEntity, clientMutationId: String

Result of the changePipelineQuote mutation.

FieldTypeDescription
resultQuoteEntityThe updated quote.
clientMutationIdStringOptional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
ConvertQuotePayload object quote: QuoteEntity!, clientMutationId: String

Result of the convertQuote mutation.

FieldTypeDescription
quoteQuoteEntity!The created record.
clientMutationIdStringOptional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
CreateQuotePayload object quote: QuoteEntity, clientMutationId: String

Result of the createQuote mutation.

FieldTypeDescription
quoteQuoteEntityThe created record.
clientMutationIdStringOptional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
DeleteQuotePayload object quote: QuoteEntity, clientMutationId: String

Result of the deleteQuote mutation.

FieldTypeDescription
quoteQuoteEntityThe deleted record.
clientMutationIdStringOptional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
ManageSharingQuotePayload object result: QuoteEntity, clientMutationId: String

Result of the manageSharingQuote mutation.

FieldTypeDescription
resultQuoteEntityThe record with its updated sharing.
clientMutationIdStringOptional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
MoveQuotePayload object result: QuoteEntity, clientMutationId: String

Result of the moveQuote mutation.

FieldTypeDescription
resultQuoteEntityThe moved quote.
clientMutationIdStringOptional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
ReactivateQuotePayload object result: QuoteEntity, clientMutationId: String

Result of the reactivateQuote mutation.

FieldTypeDescription
resultQuoteEntityThe reactivated quote.
clientMutationIdStringOptional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
RestoreQuotePayload object result: QuoteEntity, clientMutationId: String

Result of the restoreQuote mutation.

FieldTypeDescription
resultQuoteEntityThe restored record.
clientMutationIdStringOptional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
UpdateQuotePayload object quote: QuoteEntity, clientMutationId: String

Result of the updateQuote mutation.

FieldTypeDescription
quoteQuoteEntityThe updated record.
clientMutationIdStringOptional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
QuoteStatusEnum enum Open, Lost, Accepted

Status of a quote.

ValueDescription
OpenThe quote is active.
LostThe quote was archived without being accepted.
AcceptedThe quote reached the last step of its quote process.