openapi: 3.1.0 info: title: Salesforce Analytics (CRM Analytics) REST Actions Approvals API description: REST API for accessing and managing CRM Analytics (formerly Tableau CRM / Einstein Analytics) resources including datasets, lenses, dashboards, and dataflows. Enables programmatic access to analytics metadata, query execution, and dashboard management. Uses the Wave API resource at /services/data/vXX.0/wave. version: '63.0' contact: name: Salesforce Developer Support url: https://developer.salesforce.com/support email: developer@salesforce.com license: name: Salesforce API Terms of Use url: https://www.salesforce.com/company/legal/agreements/ servers: - url: https://{instance}.salesforce.com/services/data/v63.0/wave description: Salesforce production or developer instance variables: instance: default: yourInstance description: Your Salesforce instance identifier security: - oauth2: [] - bearerAuth: [] tags: - name: Approvals description: Approval process management and submissions paths: /process/approvals: get: operationId: getApprovalProcesses summary: List approval processes description: Returns a list of all approval processes defined in your org, along with their associated metadata. tags: - Approvals responses: '200': description: List of approval processes content: application/json: schema: $ref: '#/components/schemas/ApprovalProcessList' post: operationId: submitForApproval summary: Submit a record for approval description: Submits a record for approval, approves, or rejects an approval request. Supports specifying next approvers, comments, and skipping entry criteria. tags: - Approvals requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ApprovalRequest' responses: '200': description: Approval action result content: application/json: schema: type: array items: $ref: '#/components/schemas/ApprovalResult' components: schemas: ApprovalProcessList: type: object properties: approvals: type: object additionalProperties: type: array items: type: object properties: description: type: - string - 'null' id: type: string name: type: string object: type: string sortOrder: type: integer ApiError: type: object properties: message: type: string description: A human-readable description of the error errorCode: type: string description: The Salesforce error code (e.g., INVALID_FIELD, MALFORMED_QUERY, NOT_FOUND) fields: type: array items: type: string description: Fields that caused the error, if applicable ApprovalRequest: type: object properties: requests: type: array items: type: object required: - actionType properties: actionType: type: string enum: - Submit - Approve - Reject description: The approval action to perform contextActorId: type: string description: The ID of the user submitting, approving, or rejecting the request contextId: type: string description: The ID of the record to submit for approval comments: type: string description: Comments to attach to the approval action nextApproverIds: type: array items: type: string description: IDs of the next approvers if manually specifying processDefinitionNameOrId: type: string description: The name or ID of the approval process to use skipEntryCriteria: type: boolean description: Whether to skip entry criteria evaluation ApprovalResult: type: object properties: actorIds: type: array items: type: string entityId: type: string errors: type: array items: $ref: '#/components/schemas/ApiError' instanceId: type: string instanceStatus: type: string newWorkitemIds: type: array items: type: string success: type: boolean securitySchemes: oauth2: type: oauth2 flows: authorizationCode: authorizationUrl: https://login.salesforce.com/services/oauth2/authorize tokenUrl: https://login.salesforce.com/services/oauth2/token scopes: api: Access and manage your Salesforce data wave_api: Access CRM Analytics REST API resources bearerAuth: type: http scheme: bearer