---
title: entities.step
description: Read step records with the step repository, and change them with the step mutations. Same records as the REST Steps entity.
canonical: https://developers.coevera.com/reference/graphql/step/
section: graphql
verification: schema
generatedFrom: schema f155746 (2026-10-20)
publisher: Coevera
---

# entities.step

Read step records with the step repository, and change them with the step mutations. Same records as the REST Steps entity.

REST: [Steps](https://developers.coevera.com/reference/rest/steps.md).

## Queries

- `getById(entityId: ID!): StepEntity` Returns the record with the given id, or null when there is none. Deleted records are returned as well.
- `getByIds(entityIds: [ID!]!): [StepEntity!]!` Returns the records with the given ids; ids without a record are left out. Deleted records are returned as well.
- `getAll(limit: Int, offset: Int, filter: StepFilterInput, orderBy: [StepOrderByInput!], includeDeleted: Boolean): [StepEntity!]!` Returns the records that match the filter, paged with limit and offset.
- `getByCriteria(filter: StepFilterInput, orderBy: [StepOrderByInput!], includeDeleted: Boolean, before: String, after: String, first: Int, last: Int): StepEntityConnection` Returns the records that match the filter as a cursor-paginated connection.
- `getChangedFieldsSinceRevision(id: UUID!, revision: Int!): [UUID!]!` Returns the ids of the fields of a record that changed after the given revision. Returns an empty list for entities without change tracking.
- `getByPipeline(pipelineId: UUID!): [StepEntity!]!` Returns the steps of the pipeline in their display order.
- `getByLeadProcess(leadProcessId: UUID!): [StepEntity!]!` Returns the steps of the lead process in their display order.
- `getByQuoteProcess(quoteProcessId: UUID!): [StepEntity!]!` Returns the steps of the quote process in their display order.

## Mutations

- `createStep(input: CreateStepInput!, validationLevel: [ValidationLevel!]): CreateStepPayload` Create one record.
- `updateStep(input: UpdateStepInput!, validationLevel: [ValidationLevel!], sessionIdToUpdate: String): UpdateStepPayload` Update fields.
- `bulkUpdateStep(input: [CreateOrUpdateStepInput!]!, deleteInput: [DeleteStepInput!], validationLevel: [ValidationLevel!], rollbackMethod: RollbackMethod, match: MatchingInput): BulkUpdateStepPayload` Create or update many; per-item results.

## Types

### StepEntity (object)

Step of an opportunity pipeline, lead process or quote process that records move through.

- `isDeleteProtected: Boolean!` 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.
- `id: ID!` Unique identifier of entity.
- `isDeleted: Boolean` Specifies if the entity is considered deleted.
- `modified: DateTime` Last modification time.
- `created: DateTime` Creation time.
- `leadProcess: LeadProcessEntity` Lead process this step belongs to. Set when the step is part of a lead process.
- `pipeline: PipelineEntity` Opportunity pipeline this step belongs to. Set when the step is part of an opportunity pipeline.
- `quoteProcess: QuoteProcessEntity` Quote process this step belongs to. Set when the step is part of a quote process.
- `description: String` Free-text description shown in the step UI.
- `hasReadonlyForm: Boolean` When true, the record form is read-only while a record is in this step.
- `hasVersionIncrement: Boolean` When true, transitioning a record into this step bumps its version counter.
- `leadProcessId: ID` Id of the lead process this step belongs to, or empty when the step is not part of a lead process.
- `name: String!` Name of the entity and its default text representation.
- `percent: Int` Probability percent associated with the step (0-100). Required for opportunity pipeline steps; null for lead/quote process steps.
- `pipelineId: ID` Id of the opportunity pipeline.
- `quoteProcessId: ID` Id of the quote process this step belongs to, or empty when the step is not part of a quote process.
- `sortOrder: Int` Position of the step within its pipeline or process; lower values appear first.
- `timeframe: Int` Expected number of days a record should spend in this step. Used to flag overdue records.
- `revision: Int` Revision when entity was lastly changed.
- `documents: CloudObjectStepRelationEntityConnection (8 args)` Files attached to the step (e.g. step-specific documentation or templates).
- `stepChecklists: StepChecklistEntityConnection (7 args)` Checklist items the user must complete before moving a record out of this step.
- `instancePermissions: [EntityPermsEnum!]! (1 args)` Permissions the current user has on this record, out of the requested ones.

### StepEntityConnection (object)

Paginated list of Step records.

- `pageInfo: PageInfo!` Pagination data for this connection.
- `edges: [StepEntityEdge]!` Contains the nodes in this connection.
- `totalCount: Int` Total number of items in the connection.

### StepEntityEdge (object)

A Relay edge containing a `StepEntity` and its cursor.

- `node: StepEntity` The item at the end of the edge
- `cursor: String!` A cursor for use in pagination

### StepFilterInput (input)

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

- `OR: [StepFilterInput!]` Matches records that meet at least one of the listed filters.
- `AND: [StepFilterInput!]` Matches records that meet all of the listed filters.
- `NOT: StepFilterInput` Matches records that do not meet this filter.
- `globalSearchQuery: String` Search term matched against the fields that the global search covers for this entity.
- `id: EntityFilterStringField` Unique identifier of entity.
- `isDeleted: Boolean` Specifies if the entity is considered deleted.
- `modified: EntityFilterDateTimeField` Last modification time.
- `created: EntityFilterDateTimeField` Creation time.
- `description: EntityFilterStringField` Free-text description shown in the step UI.
- `hasReadonlyForm: Boolean` When true, the record form is read-only while a record is in this step.
- `hasVersionIncrement: Boolean` When true, transitioning a record into this step bumps its version counter.
- `leadProcessId: EntityFilterStringField` Id of the lead process this step belongs to, or empty when the step is not part of a lead process.
- `name: EntityFilterStringField` Name of the entity and its default text representation.
- `percent: EntityFilterNumberField` Probability percent associated with the step (0-100). Required for opportunity pipeline steps; null for lead/quote process steps.
- `pipelineId: EntityFilterStringField` Id of the opportunity pipeline.
- `quoteProcessId: EntityFilterStringField` Id of the quote process this step belongs to, or empty when the step is not part of a quote process.
- `sortOrder: EntityFilterNumberField` Position of the step within its pipeline or process; lower values appear first.
- `timeframe: EntityFilterNumberField` Expected number of days a record should spend in this step. Used to flag overdue records.
- `revision: EntityFilterNumberField` Revision when entity was lastly changed.
- `leadProcess: LeadProcessFilterInput` Lead process this step belongs to. Set when the step is part of a lead process. Matches records where a related record meets these conditions.
- `pipeline: PipelineFilterInput` Opportunity pipeline this step belongs to. Set when the step is part of an opportunity pipeline. Matches records where a related record meets these conditions.
- `quoteProcess: QuoteProcessFilterInput` Quote process this step belongs to. Set when the step is part of a quote process. Matches records where a related record meets these conditions.
- `documents: CloudObjectStepRelationFilterInput` Files attached to the step (e.g. step-specific documentation or templates). Matches records where a related record meets these conditions.
- `stepChecklists: StepChecklistFilterInput` Checklist items the user must complete before moving a record out of this step. Matches records where a related record meets these conditions.

### StepOrderByInput (input)

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

- `id: OrderByEnum` Unique identifier of entity.
- `isDeleted: OrderByEnum` Specifies if the entity is considered deleted.
- `modified: OrderByEnum` Last modification time.
- `created: OrderByEnum` Creation time.
- `leadProcess: [LeadProcessOrderByNestedInput!]` Lead process this step belongs to. Set when the step is part of a lead process. Sorts by fields of the related record, listed in order of priority.
- `pipeline: [PipelineOrderByNestedInput!]` Opportunity pipeline this step belongs to. Set when the step is part of an opportunity pipeline. Sorts by fields of the related record, listed in order of priority.
- `quoteProcess: [QuoteProcessOrderByNestedInput!]` Quote process this step belongs to. Set when the step is part of a quote process. Sorts by fields of the related record, listed in order of priority.
- `description: OrderByEnum` Free-text description shown in the step UI.
- `hasReadonlyForm: OrderByEnum` When true, the record form is read-only while a record is in this step.
- `hasVersionIncrement: OrderByEnum` When true, transitioning a record into this step bumps its version counter.
- `leadProcessId: OrderByEnum` Id of the lead process this step belongs to, or empty when the step is not part of a lead process.
- `name: OrderByEnum` Name of the entity and its default text representation.
- `percent: OrderByEnum` Probability percent associated with the step (0-100). Required for opportunity pipeline steps; null for lead/quote process steps.
- `pipelineId: OrderByEnum` Id of the opportunity pipeline.
- `quoteProcessId: OrderByEnum` Id of the quote process this step belongs to, or empty when the step is not part of a quote process.
- `sortOrder: OrderByEnum` Position of the step within its pipeline or process; lower values appear first.
- `timeframe: OrderByEnum` Expected number of days a record should spend in this step. Used to flag overdue records.
- `revision: OrderByEnum` Revision when entity was lastly changed.

### CreateCloudObjectStepRelationNoStepBackrefInput (input)

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

- `modified: DateTime` Last modification time.
- `created: DateTime` Creation time.
- `cloudObject: CreateCloudObjectInput!` File attached to the step.
- `cloudObjectId: ID` Id of the attached file.
- `sortOrder: Int` Position of the file within the step's document list.
- `revision: Int` Revision when entity was lastly changed.

### CreateOrUpdateCloudObjectStepRelationNoStepBackrefInput (input)

Field values of a CloudObjectStepRelation record to create, or to update when its id is set, together with the record it belongs to.

- `id: ID` Unique identifier of entity.
- `modified: DateTime` Last modification time.
- `created: DateTime` Creation time.
- `cloudObject: CreateCloudObjectInput` File attached to the step.
- `cloudObjectId: ID` Id of the attached file.
- `sortOrder: Int` Position of the file within the step's document list.
- `revision: Int` Revision when entity was lastly changed.

### CreateOrUpdateStepChecklistNoStepBackrefInput (input)

Field values of a StepChecklist record to create, or to update when its id is set, together with the record it belongs to.

- `id: ID` Unique identifier of entity.
- `modified: DateTime` Last modification time.
- `created: DateTime` Creation time.
- `cloudObjectTemplate: CreateCloudObjectTemplateInput` Document template the checklist item fills and attaches to the record. Set when itemType is UseDocumentTemplate.
- `activityTypeId: ID` Id of the appointment or task type that satisfies the checklist item, or empty when the item is not activity-based.
- `cloudObjectFormat: StepChecklistDocumentFormatEnum` File format of the document generated from cloudObjectTemplate when itemType is UseDocumentTemplate: the template's own format or PDF.
- `cloudObjectTemplateId: ID` Id of the document template the checklist item fills and attaches to the record. Set when itemType is UseDocumentTemplate.
- `description: String` Free-text description shown alongside the checklist item.
- `emailSequenceId: ID` Id of the email sequence the record must be enrolled in to complete the item. Set when itemType is EnrollToEmailSequence.
- `fieldId: ID` Id of the related field.
- `itemType: StepChecklistTypeEnum` Kind of checklist item, which determines what completes it, such as checking it off, filling in field, logging an activity of activityTypeId or running process.
- `itemValidation: StepChecklistValidationEnum` Condition the item must meet before the record can move past the step; empty when the item is optional. RelatedActivityCompleted is allowed only when itemType is ActivityType.
- `label: String` Display label of the checklist item.
- `labelUseLang: Boolean` When true, label is treated as a translation key and localized in the UI; otherwise the literal text is shown.
- `processId: ID` Id of the related process.
- `sendEmailFieldId: ID` Id of the recipient field.
- `sendEmailLookupFieldId: ID` Id of the Contact or Account lookup field whose primary record supplies the recipient; empty when the recipient comes from the Primary Contact or Primary Account.
- `sendEmailTemplateId: ID` Id of the email template the email is pre-filled with when the item is completed by sending an email. Set when itemType is SendEmail; empty when no template is preset.
- `visibilityCondition: StepChecklistVisibilityFilterJSONString` Filter expression that controls when the checklist item is shown. The item is visible only when the record matches this filter; defaults to a no-op filter matching all records.
- `visibilityType: StepChecklistVisibilityEnum` Whether the item is always shown on the record or only when the record matches visibilityCondition.
- `revision: Int` Revision when entity was lastly changed.
- `salesRoles: [CreateStepChecklistSalesRoleRelationNoStepChecklistBackrefInput!]` Sales roles the checklist item is shown to. Empty means the item is shown to all roles.

### CreateOrUpdateStepInput (input)

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

- `clientMutationId: String` Optional 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).
- `id: ID` Unique identifier of entity.
- `modified: DateTime` Last modification time.
- `created: DateTime` Creation time.
- `description: String` Free-text description shown in the step UI.
- `hasReadonlyForm: Boolean` When true, the record form is read-only while a record is in this step.
- `hasVersionIncrement: Boolean` When true, transitioning a record into this step bumps its version counter.
- `leadProcessId: ID` Id of the lead process this step belongs to, or empty when the step is not part of a lead process.
- `name: String` Name of the entity and its default text representation.
- `percent: Int` Probability percent associated with the step (0-100). Required for opportunity pipeline steps; null for lead/quote process steps.
- `pipelineId: ID` Id of the opportunity pipeline.
- `quoteProcessId: ID` Id of the quote process this step belongs to, or empty when the step is not part of a quote process.
- `sortOrder: Int` Position of the step within its pipeline or process; lower values appear first.
- `timeframe: Int` Expected number of days a record should spend in this step. Used to flag overdue records.
- `revision: Int` Revision when entity was lastly changed.
- `documents: [CreateOrUpdateCloudObjectStepRelationNoStepBackrefInput!]` Files attached to the step (e.g. step-specific documentation or templates).
- `stepChecklists: [CreateOrUpdateStepChecklistNoStepBackrefInput!]` Checklist items the user must complete before moving a record out of this step.

### CreateStepChecklistNoStepBackrefInput (input)

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

- `modified: DateTime` Last modification time.
- `created: DateTime` Creation time.
- `cloudObjectTemplate: CreateCloudObjectTemplateInput` Document template the checklist item fills and attaches to the record. Set when itemType is UseDocumentTemplate.
- `activityTypeId: ID` Id of the appointment or task type that satisfies the checklist item, or empty when the item is not activity-based.
- `cloudObjectFormat: StepChecklistDocumentFormatEnum` File format of the document generated from cloudObjectTemplate when itemType is UseDocumentTemplate: the template's own format or PDF.
- `cloudObjectTemplateId: ID` Id of the document template the checklist item fills and attaches to the record. Set when itemType is UseDocumentTemplate.
- `description: String` Free-text description shown alongside the checklist item.
- `emailSequenceId: ID` Id of the email sequence the record must be enrolled in to complete the item. Set when itemType is EnrollToEmailSequence.
- `fieldId: ID` Id of the related field.
- `itemType: StepChecklistTypeEnum` Kind of checklist item, which determines what completes it, such as checking it off, filling in field, logging an activity of activityTypeId or running process.
- `itemValidation: StepChecklistValidationEnum` Condition the item must meet before the record can move past the step; empty when the item is optional. RelatedActivityCompleted is allowed only when itemType is ActivityType.
- `label: String` Display label of the checklist item.
- `labelUseLang: Boolean` When true, label is treated as a translation key and localized in the UI; otherwise the literal text is shown.
- `processId: ID` Id of the related process.
- `sendEmailFieldId: ID` Id of the recipient field.
- `sendEmailLookupFieldId: ID` Id of the Contact or Account lookup field whose primary record supplies the recipient; empty when the recipient comes from the Primary Contact or Primary Account.
- `sendEmailTemplateId: ID` Id of the email template the email is pre-filled with when the item is completed by sending an email. Set when itemType is SendEmail; empty when no template is preset.
- `visibilityCondition: StepChecklistVisibilityFilterJSONString!` Filter expression that controls when the checklist item is shown. The item is visible only when the record matches this filter; defaults to a no-op filter matching all records.
- `visibilityType: StepChecklistVisibilityEnum` Whether the item is always shown on the record or only when the record matches visibilityCondition.
- `revision: Int` Revision when entity was lastly changed.
- `salesRoles: [CreateStepChecklistSalesRoleRelationNoStepChecklistBackrefInput!]` Sales roles the checklist item is shown to. Empty means the item is shown to all roles.

### CreateStepInput (input)

Field values of a new Step record.

- `clientMutationId: String` Optional 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).
- `modified: DateTime` Last modification time.
- `created: DateTime` Creation time.
- `description: String` Free-text description shown in the step UI.
- `hasReadonlyForm: Boolean` When true, the record form is read-only while a record is in this step.
- `hasVersionIncrement: Boolean` When true, transitioning a record into this step bumps its version counter.
- `leadProcessId: ID` Id of the lead process this step belongs to, or empty when the step is not part of a lead process.
- `name: String!` Name of the entity and its default text representation.
- `percent: Int` Probability percent associated with the step (0-100). Required for opportunity pipeline steps; null for lead/quote process steps.
- `pipelineId: ID` Id of the opportunity pipeline.
- `quoteProcessId: ID` Id of the quote process this step belongs to, or empty when the step is not part of a quote process.
- `sortOrder: Int` Position of the step within its pipeline or process; lower values appear first.
- `timeframe: Int` Expected number of days a record should spend in this step. Used to flag overdue records.
- `revision: Int` Revision when entity was lastly changed.
- `documents: [CreateCloudObjectStepRelationNoStepBackrefInput!]` Files attached to the step (e.g. step-specific documentation or templates).
- `stepChecklists: [CreateStepChecklistNoStepBackrefInput!]` Checklist items the user must complete before moving a record out of this step.

### DeleteStepInput (input)

Id of the Step record to delete.

- `clientMutationId: String` Optional 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).
- `id: ID!` Unique identifier of entity.

### UpdateStepInput (input)

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

- `clientMutationId: String` Optional 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).
- `id: ID!` Unique identifier of entity.
- `modified: DateTime` Last modification time.
- `created: DateTime` Creation time.
- `description: String` Free-text description shown in the step UI.
- `hasReadonlyForm: Boolean` When true, the record form is read-only while a record is in this step.
- `hasVersionIncrement: Boolean` When true, transitioning a record into this step bumps its version counter.
- `leadProcessId: ID` Id of the lead process this step belongs to, or empty when the step is not part of a lead process.
- `name: String` Name of the entity and its default text representation.
- `percent: Int` Probability percent associated with the step (0-100). Required for opportunity pipeline steps; null for lead/quote process steps.
- `quoteProcessId: ID` Id of the quote process this step belongs to, or empty when the step is not part of a quote process.
- `sortOrder: Int` Position of the step within its pipeline or process; lower values appear first.
- `timeframe: Int` Expected number of days a record should spend in this step. Used to flag overdue records.
- `revision: Int` Revision when entity was lastly changed.
- `documents: [CreateOrUpdateCloudObjectStepRelationNoStepBackrefInput!]` Files attached to the step (e.g. step-specific documentation or templates).
- `stepChecklists: [CreateOrUpdateStepChecklistNoStepBackrefInput!]` Checklist items the user must complete before moving a record out of this step.

### BulkUpdateStepPayload (object)

Result of the bulkUpdateStep mutation.

- `result: BulkUpdateResults!` Ids of the created, updated and deleted records, and the items that failed.

### CreateStepPayload (object)

Result of the createStep mutation.

- `step: StepEntity` The created record.
- `clientMutationId: String` Optional 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).

### UpdateStepPayload (object)

Result of the updateStep mutation.

- `step: StepEntity` The updated record.
- `clientMutationId: String` Optional 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).

Types several repositories share, such as `PageInfo` and the filter fields, are in the [types index](https://developers.coevera.com/reference/graphql/types.md). The [SDL](https://developers.coevera.com/graphql/schema.graphql) has the whole schema in one file.

## Example

```graphql
query FirstSteps {
  entities {
    step {
      getByCriteria(first: 3, orderBy: [{ modified: Desc }]) {
        totalCount
        edges { node { id name modified } }
      }
    }
  }
}
```

```bash
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 FirstSteps { entities { step { getByCriteria(first: 3, orderBy: [{ modified: Desc }]) { totalCount edges { node { id name modified } } } } } }"}'
```
