openapi: 3.0.0 info: contact: email: contact@yousign.com name: Support url: https://yousign.com/contact description: Build the best experience of digital signature through your own platform. Increase your conversion rates, leverage your data and reduce your costs with Yousign API. license: name: proprietary url: https://yousign.com/terms title: Public Api v3 Applicant Workflow Session API version: '3.0' servers: - description: Sandbox URL url: https://api-sandbox.yousign.app/v3 - description: Production URL url: https://api.yousign.app/v3 security: - bearerAuth: [] tags: - description: Instance of a workflow created each time a customer goes through it. name: Workflow Session paths: /workflow_sessions: get: description: 'Returns the list of all Workflow Sessions in your organization. You can limit the number of items returned by using filters and pagination. ' operationId: get-workflow_sessions responses: '200': content: application/json: schema: $ref: '#/components/schemas/get_workflow_sessions_200_response' description: OK headers: RateLimit-Limit: $ref: '#/components/headers/rateLimit-limit' X-RateLimit-Limit-Hour: $ref: '#/components/headers/rateLimit-limit-hour' X-RateLimit-Limit-Minute: $ref: '#/components/headers/rateLimit-limit-minute' RateLimit-Remaining: $ref: '#/components/headers/rateLimit-remaining' X-RateLimit-Remaining-Hour: $ref: '#/components/headers/rateLimit-remaining-hour' X-RateLimit-Remaining-Minute: $ref: '#/components/headers/rateLimit-remaining-minute' RateLimit-Reset: $ref: '#/components/headers/rateLimit-reset' '400': content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' description: Bad request headers: RateLimit-Limit: $ref: '#/components/headers/rateLimit-limit' X-RateLimit-Limit-Hour: $ref: '#/components/headers/rateLimit-limit-hour' X-RateLimit-Limit-Minute: $ref: '#/components/headers/rateLimit-limit-minute' RateLimit-Remaining: $ref: '#/components/headers/rateLimit-remaining' X-RateLimit-Remaining-Hour: $ref: '#/components/headers/rateLimit-remaining-hour' X-RateLimit-Remaining-Minute: $ref: '#/components/headers/rateLimit-remaining-minute' RateLimit-Reset: $ref: '#/components/headers/rateLimit-reset' '401': content: application/json: schema: $ref: '#/components/schemas/UnauthorizedResponse' description: Access unauthorized headers: RateLimit-Limit: $ref: '#/components/headers/rateLimit-limit' X-RateLimit-Limit-Hour: $ref: '#/components/headers/rateLimit-limit-hour' X-RateLimit-Limit-Minute: $ref: '#/components/headers/rateLimit-limit-minute' RateLimit-Remaining: $ref: '#/components/headers/rateLimit-remaining' X-RateLimit-Remaining-Hour: $ref: '#/components/headers/rateLimit-remaining-hour' X-RateLimit-Remaining-Minute: $ref: '#/components/headers/rateLimit-remaining-minute' RateLimit-Reset: $ref: '#/components/headers/rateLimit-reset' '403': content: application/json: schema: $ref: '#/components/schemas/ForbiddenResponse' description: Access forbidden headers: RateLimit-Limit: $ref: '#/components/headers/rateLimit-limit' X-RateLimit-Limit-Hour: $ref: '#/components/headers/rateLimit-limit-hour' X-RateLimit-Limit-Minute: $ref: '#/components/headers/rateLimit-limit-minute' RateLimit-Remaining: $ref: '#/components/headers/rateLimit-remaining' X-RateLimit-Remaining-Hour: $ref: '#/components/headers/rateLimit-remaining-hour' X-RateLimit-Remaining-Minute: $ref: '#/components/headers/rateLimit-remaining-minute' RateLimit-Reset: $ref: '#/components/headers/rateLimit-reset' '405': content: application/json: schema: $ref: '#/components/schemas/MethodNotAllowed' description: This method is not allowed headers: RateLimit-Limit: $ref: '#/components/headers/rateLimit-limit' X-RateLimit-Limit-Hour: $ref: '#/components/headers/rateLimit-limit-hour' X-RateLimit-Limit-Minute: $ref: '#/components/headers/rateLimit-limit-minute' RateLimit-Remaining: $ref: '#/components/headers/rateLimit-remaining' X-RateLimit-Remaining-Hour: $ref: '#/components/headers/rateLimit-remaining-hour' X-RateLimit-Remaining-Minute: $ref: '#/components/headers/rateLimit-remaining-minute' RateLimit-Reset: $ref: '#/components/headers/rateLimit-reset' Retry-After: $ref: '#/components/headers/retry-after' '429': content: application/json: schema: $ref: '#/components/schemas/TooManyRequestsResponse' description: Too Many Requests, please try again later. headers: RateLimit-Limit: $ref: '#/components/headers/rateLimit-limit' X-RateLimit-Limit-Hour: $ref: '#/components/headers/rateLimit-limit-hour' X-RateLimit-Limit-Minute: $ref: '#/components/headers/rateLimit-limit-minute' RateLimit-Remaining: $ref: '#/components/headers/rateLimit-remaining' X-RateLimit-Remaining-Hour: $ref: '#/components/headers/rateLimit-remaining-hour' X-RateLimit-Remaining-Minute: $ref: '#/components/headers/rateLimit-remaining-minute' RateLimit-Reset: $ref: '#/components/headers/rateLimit-reset' Retry-After: $ref: '#/components/headers/retry-after' '500': content: application/json: schema: $ref: '#/components/schemas/InternalServerError' description: Internal Server Error headers: RateLimit-Limit: $ref: '#/components/headers/rateLimit-limit' X-RateLimit-Limit-Hour: $ref: '#/components/headers/rateLimit-limit-hour' X-RateLimit-Limit-Minute: $ref: '#/components/headers/rateLimit-limit-minute' RateLimit-Remaining: $ref: '#/components/headers/rateLimit-remaining' X-RateLimit-Remaining-Hour: $ref: '#/components/headers/rateLimit-remaining-hour' X-RateLimit-Remaining-Minute: $ref: '#/components/headers/rateLimit-remaining-minute' RateLimit-Reset: $ref: '#/components/headers/rateLimit-reset' summary: List Workflow Sessions tags: - Workflow Session post: description: 'Creates a new Workflow Session resource. ' operationId: post-workflow_sessions requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateWorkflowSession' responses: '201': content: application/json: schema: $ref: '#/components/schemas/WorkflowSession' description: Created headers: RateLimit-Limit: $ref: '#/components/headers/rateLimit-limit' X-RateLimit-Limit-Hour: $ref: '#/components/headers/rateLimit-limit-hour' X-RateLimit-Limit-Minute: $ref: '#/components/headers/rateLimit-limit-minute' RateLimit-Remaining: $ref: '#/components/headers/rateLimit-remaining' X-RateLimit-Remaining-Hour: $ref: '#/components/headers/rateLimit-remaining-hour' X-RateLimit-Remaining-Minute: $ref: '#/components/headers/rateLimit-remaining-minute' RateLimit-Reset: $ref: '#/components/headers/rateLimit-reset' '400': content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' description: Bad request headers: RateLimit-Limit: $ref: '#/components/headers/rateLimit-limit' X-RateLimit-Limit-Hour: $ref: '#/components/headers/rateLimit-limit-hour' X-RateLimit-Limit-Minute: $ref: '#/components/headers/rateLimit-limit-minute' RateLimit-Remaining: $ref: '#/components/headers/rateLimit-remaining' X-RateLimit-Remaining-Hour: $ref: '#/components/headers/rateLimit-remaining-hour' X-RateLimit-Remaining-Minute: $ref: '#/components/headers/rateLimit-remaining-minute' RateLimit-Reset: $ref: '#/components/headers/rateLimit-reset' '401': content: application/json: schema: $ref: '#/components/schemas/UnauthorizedResponse' description: Access unauthorized headers: RateLimit-Limit: $ref: '#/components/headers/rateLimit-limit' X-RateLimit-Limit-Hour: $ref: '#/components/headers/rateLimit-limit-hour' X-RateLimit-Limit-Minute: $ref: '#/components/headers/rateLimit-limit-minute' RateLimit-Remaining: $ref: '#/components/headers/rateLimit-remaining' X-RateLimit-Remaining-Hour: $ref: '#/components/headers/rateLimit-remaining-hour' X-RateLimit-Remaining-Minute: $ref: '#/components/headers/rateLimit-remaining-minute' RateLimit-Reset: $ref: '#/components/headers/rateLimit-reset' '403': content: application/json: schema: $ref: '#/components/schemas/ForbiddenResponse' description: Access forbidden headers: RateLimit-Limit: $ref: '#/components/headers/rateLimit-limit' X-RateLimit-Limit-Hour: $ref: '#/components/headers/rateLimit-limit-hour' X-RateLimit-Limit-Minute: $ref: '#/components/headers/rateLimit-limit-minute' RateLimit-Remaining: $ref: '#/components/headers/rateLimit-remaining' X-RateLimit-Remaining-Hour: $ref: '#/components/headers/rateLimit-remaining-hour' X-RateLimit-Remaining-Minute: $ref: '#/components/headers/rateLimit-remaining-minute' RateLimit-Reset: $ref: '#/components/headers/rateLimit-reset' '404': content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' description: Resource not found headers: RateLimit-Limit: $ref: '#/components/headers/rateLimit-limit' X-RateLimit-Limit-Hour: $ref: '#/components/headers/rateLimit-limit-hour' X-RateLimit-Limit-Minute: $ref: '#/components/headers/rateLimit-limit-minute' RateLimit-Remaining: $ref: '#/components/headers/rateLimit-remaining' X-RateLimit-Remaining-Hour: $ref: '#/components/headers/rateLimit-remaining-hour' X-RateLimit-Remaining-Minute: $ref: '#/components/headers/rateLimit-remaining-minute' RateLimit-Reset: $ref: '#/components/headers/rateLimit-reset' '405': content: application/json: schema: $ref: '#/components/schemas/MethodNotAllowed' description: This method is not allowed headers: RateLimit-Limit: $ref: '#/components/headers/rateLimit-limit' X-RateLimit-Limit-Hour: $ref: '#/components/headers/rateLimit-limit-hour' X-RateLimit-Limit-Minute: $ref: '#/components/headers/rateLimit-limit-minute' RateLimit-Remaining: $ref: '#/components/headers/rateLimit-remaining' X-RateLimit-Remaining-Hour: $ref: '#/components/headers/rateLimit-remaining-hour' X-RateLimit-Remaining-Minute: $ref: '#/components/headers/rateLimit-remaining-minute' RateLimit-Reset: $ref: '#/components/headers/rateLimit-reset' Retry-After: $ref: '#/components/headers/retry-after' '429': content: application/json: schema: $ref: '#/components/schemas/TooManyRequestsResponse' description: Too Many Requests, please try again later. headers: RateLimit-Limit: $ref: '#/components/headers/rateLimit-limit' X-RateLimit-Limit-Hour: $ref: '#/components/headers/rateLimit-limit-hour' X-RateLimit-Limit-Minute: $ref: '#/components/headers/rateLimit-limit-minute' RateLimit-Remaining: $ref: '#/components/headers/rateLimit-remaining' X-RateLimit-Remaining-Hour: $ref: '#/components/headers/rateLimit-remaining-hour' X-RateLimit-Remaining-Minute: $ref: '#/components/headers/rateLimit-remaining-minute' RateLimit-Reset: $ref: '#/components/headers/rateLimit-reset' Retry-After: $ref: '#/components/headers/retry-after' '500': content: application/json: schema: $ref: '#/components/schemas/InternalServerError' description: Internal Server Error headers: RateLimit-Limit: $ref: '#/components/headers/rateLimit-limit' X-RateLimit-Limit-Hour: $ref: '#/components/headers/rateLimit-limit-hour' X-RateLimit-Limit-Minute: $ref: '#/components/headers/rateLimit-limit-minute' RateLimit-Remaining: $ref: '#/components/headers/rateLimit-remaining' X-RateLimit-Remaining-Hour: $ref: '#/components/headers/rateLimit-remaining-hour' X-RateLimit-Remaining-Minute: $ref: '#/components/headers/rateLimit-remaining-minute' RateLimit-Reset: $ref: '#/components/headers/rateLimit-reset' summary: Create a new Workflow Session tags: - Workflow Session /workflow_sessions/{workflowSessionId}: get: description: 'Retrieves a given Workflow Session. ' operationId: get-workflow_sessions-id parameters: - description: Workflow Session Id in: path name: workflowSessionId required: true schema: $ref: '#/components/schemas/UUID' responses: '200': content: application/json: schema: $ref: '#/components/schemas/WorkflowSession' description: OK headers: RateLimit-Limit: $ref: '#/components/headers/rateLimit-limit' X-RateLimit-Limit-Hour: $ref: '#/components/headers/rateLimit-limit-hour' X-RateLimit-Limit-Minute: $ref: '#/components/headers/rateLimit-limit-minute' RateLimit-Remaining: $ref: '#/components/headers/rateLimit-remaining' X-RateLimit-Remaining-Hour: $ref: '#/components/headers/rateLimit-remaining-hour' X-RateLimit-Remaining-Minute: $ref: '#/components/headers/rateLimit-remaining-minute' RateLimit-Reset: $ref: '#/components/headers/rateLimit-reset' '400': content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' description: Bad request headers: RateLimit-Limit: $ref: '#/components/headers/rateLimit-limit' X-RateLimit-Limit-Hour: $ref: '#/components/headers/rateLimit-limit-hour' X-RateLimit-Limit-Minute: $ref: '#/components/headers/rateLimit-limit-minute' RateLimit-Remaining: $ref: '#/components/headers/rateLimit-remaining' X-RateLimit-Remaining-Hour: $ref: '#/components/headers/rateLimit-remaining-hour' X-RateLimit-Remaining-Minute: $ref: '#/components/headers/rateLimit-remaining-minute' RateLimit-Reset: $ref: '#/components/headers/rateLimit-reset' '401': content: application/json: schema: $ref: '#/components/schemas/UnauthorizedResponse' description: Access unauthorized headers: RateLimit-Limit: $ref: '#/components/headers/rateLimit-limit' X-RateLimit-Limit-Hour: $ref: '#/components/headers/rateLimit-limit-hour' X-RateLimit-Limit-Minute: $ref: '#/components/headers/rateLimit-limit-minute' RateLimit-Remaining: $ref: '#/components/headers/rateLimit-remaining' X-RateLimit-Remaining-Hour: $ref: '#/components/headers/rateLimit-remaining-hour' X-RateLimit-Remaining-Minute: $ref: '#/components/headers/rateLimit-remaining-minute' RateLimit-Reset: $ref: '#/components/headers/rateLimit-reset' '403': content: application/json: schema: $ref: '#/components/schemas/ForbiddenResponse' description: Access forbidden headers: RateLimit-Limit: $ref: '#/components/headers/rateLimit-limit' X-RateLimit-Limit-Hour: $ref: '#/components/headers/rateLimit-limit-hour' X-RateLimit-Limit-Minute: $ref: '#/components/headers/rateLimit-limit-minute' RateLimit-Remaining: $ref: '#/components/headers/rateLimit-remaining' X-RateLimit-Remaining-Hour: $ref: '#/components/headers/rateLimit-remaining-hour' X-RateLimit-Remaining-Minute: $ref: '#/components/headers/rateLimit-remaining-minute' RateLimit-Reset: $ref: '#/components/headers/rateLimit-reset' '404': content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' description: Resource not found headers: RateLimit-Limit: $ref: '#/components/headers/rateLimit-limit' X-RateLimit-Limit-Hour: $ref: '#/components/headers/rateLimit-limit-hour' X-RateLimit-Limit-Minute: $ref: '#/components/headers/rateLimit-limit-minute' RateLimit-Remaining: $ref: '#/components/headers/rateLimit-remaining' X-RateLimit-Remaining-Hour: $ref: '#/components/headers/rateLimit-remaining-hour' X-RateLimit-Remaining-Minute: $ref: '#/components/headers/rateLimit-remaining-minute' RateLimit-Reset: $ref: '#/components/headers/rateLimit-reset' '405': content: application/json: schema: $ref: '#/components/schemas/MethodNotAllowed' description: This method is not allowed headers: RateLimit-Limit: $ref: '#/components/headers/rateLimit-limit' X-RateLimit-Limit-Hour: $ref: '#/components/headers/rateLimit-limit-hour' X-RateLimit-Limit-Minute: $ref: '#/components/headers/rateLimit-limit-minute' RateLimit-Remaining: $ref: '#/components/headers/rateLimit-remaining' X-RateLimit-Remaining-Hour: $ref: '#/components/headers/rateLimit-remaining-hour' X-RateLimit-Remaining-Minute: $ref: '#/components/headers/rateLimit-remaining-minute' RateLimit-Reset: $ref: '#/components/headers/rateLimit-reset' Retry-After: $ref: '#/components/headers/retry-after' '429': content: application/json: schema: $ref: '#/components/schemas/TooManyRequestsResponse' description: Too Many Requests, please try again later. headers: RateLimit-Limit: $ref: '#/components/headers/rateLimit-limit' X-RateLimit-Limit-Hour: $ref: '#/components/headers/rateLimit-limit-hour' X-RateLimit-Limit-Minute: $ref: '#/components/headers/rateLimit-limit-minute' RateLimit-Remaining: $ref: '#/components/headers/rateLimit-remaining' X-RateLimit-Remaining-Hour: $ref: '#/components/headers/rateLimit-remaining-hour' X-RateLimit-Remaining-Minute: $ref: '#/components/headers/rateLimit-remaining-minute' RateLimit-Reset: $ref: '#/components/headers/rateLimit-reset' Retry-After: $ref: '#/components/headers/retry-after' '500': content: application/json: schema: $ref: '#/components/schemas/InternalServerError' description: Internal Server Error headers: RateLimit-Limit: $ref: '#/components/headers/rateLimit-limit' X-RateLimit-Limit-Hour: $ref: '#/components/headers/rateLimit-limit-hour' X-RateLimit-Limit-Minute: $ref: '#/components/headers/rateLimit-limit-minute' RateLimit-Remaining: $ref: '#/components/headers/rateLimit-remaining' X-RateLimit-Remaining-Hour: $ref: '#/components/headers/rateLimit-remaining-hour' X-RateLimit-Remaining-Minute: $ref: '#/components/headers/rateLimit-remaining-minute' RateLimit-Reset: $ref: '#/components/headers/rateLimit-reset' summary: Get a Workflow Session tags: - Workflow Session /workflow_sessions/{workflowSessionId}/links: get: description: 'Generates portal links for all Applicants in a given Workflow Session. ' operationId: get-workflow_sessions-id-links parameters: - description: Workflow Session Id in: path name: workflowSessionId required: true schema: $ref: '#/components/schemas/UUID' responses: '200': content: application/json: schema: $ref: '#/components/schemas/WorkflowSessionLinks' description: OK headers: RateLimit-Limit: $ref: '#/components/headers/rateLimit-limit' X-RateLimit-Limit-Hour: $ref: '#/components/headers/rateLimit-limit-hour' X-RateLimit-Limit-Minute: $ref: '#/components/headers/rateLimit-limit-minute' RateLimit-Remaining: $ref: '#/components/headers/rateLimit-remaining' X-RateLimit-Remaining-Hour: $ref: '#/components/headers/rateLimit-remaining-hour' X-RateLimit-Remaining-Minute: $ref: '#/components/headers/rateLimit-remaining-minute' RateLimit-Reset: $ref: '#/components/headers/rateLimit-reset' '400': content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' description: Bad request headers: RateLimit-Limit: $ref: '#/components/headers/rateLimit-limit' X-RateLimit-Limit-Hour: $ref: '#/components/headers/rateLimit-limit-hour' X-RateLimit-Limit-Minute: $ref: '#/components/headers/rateLimit-limit-minute' RateLimit-Remaining: $ref: '#/components/headers/rateLimit-remaining' X-RateLimit-Remaining-Hour: $ref: '#/components/headers/rateLimit-remaining-hour' X-RateLimit-Remaining-Minute: $ref: '#/components/headers/rateLimit-remaining-minute' RateLimit-Reset: $ref: '#/components/headers/rateLimit-reset' '401': content: application/json: schema: $ref: '#/components/schemas/UnauthorizedResponse' description: Access unauthorized headers: RateLimit-Limit: $ref: '#/components/headers/rateLimit-limit' X-RateLimit-Limit-Hour: $ref: '#/components/headers/rateLimit-limit-hour' X-RateLimit-Limit-Minute: $ref: '#/components/headers/rateLimit-limit-minute' RateLimit-Remaining: $ref: '#/components/headers/rateLimit-remaining' X-RateLimit-Remaining-Hour: $ref: '#/components/headers/rateLimit-remaining-hour' X-RateLimit-Remaining-Minute: $ref: '#/components/headers/rateLimit-remaining-minute' RateLimit-Reset: $ref: '#/components/headers/rateLimit-reset' '403': content: application/json: schema: $ref: '#/components/schemas/ForbiddenResponse' description: Access forbidden headers: RateLimit-Limit: $ref: '#/components/headers/rateLimit-limit' X-RateLimit-Limit-Hour: $ref: '#/components/headers/rateLimit-limit-hour' X-RateLimit-Limit-Minute: $ref: '#/components/headers/rateLimit-limit-minute' RateLimit-Remaining: $ref: '#/components/headers/rateLimit-remaining' X-RateLimit-Remaining-Hour: $ref: '#/components/headers/rateLimit-remaining-hour' X-RateLimit-Remaining-Minute: $ref: '#/components/headers/rateLimit-remaining-minute' RateLimit-Reset: $ref: '#/components/headers/rateLimit-reset' '404': content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' description: Resource not found headers: RateLimit-Limit: $ref: '#/components/headers/rateLimit-limit' X-RateLimit-Limit-Hour: $ref: '#/components/headers/rateLimit-limit-hour' X-RateLimit-Limit-Minute: $ref: '#/components/headers/rateLimit-limit-minute' RateLimit-Remaining: $ref: '#/components/headers/rateLimit-remaining' X-RateLimit-Remaining-Hour: $ref: '#/components/headers/rateLimit-remaining-hour' X-RateLimit-Remaining-Minute: $ref: '#/components/headers/rateLimit-remaining-minute' RateLimit-Reset: $ref: '#/components/headers/rateLimit-reset' '405': content: application/json: schema: $ref: '#/components/schemas/MethodNotAllowed' description: This method is not allowed headers: RateLimit-Limit: $ref: '#/components/headers/rateLimit-limit' X-RateLimit-Limit-Hour: $ref: '#/components/headers/rateLimit-limit-hour' X-RateLimit-Limit-Minute: $ref: '#/components/headers/rateLimit-limit-minute' RateLimit-Remaining: $ref: '#/components/headers/rateLimit-remaining' X-RateLimit-Remaining-Hour: $ref: '#/components/headers/rateLimit-remaining-hour' X-RateLimit-Remaining-Minute: $ref: '#/components/headers/rateLimit-remaining-minute' RateLimit-Reset: $ref: '#/components/headers/rateLimit-reset' Retry-After: $ref: '#/components/headers/retry-after' '429': content: application/json: schema: $ref: '#/components/schemas/TooManyRequestsResponse' description: Too Many Requests, please try again later. headers: RateLimit-Limit: $ref: '#/components/headers/rateLimit-limit' X-RateLimit-Limit-Hour: $ref: '#/components/headers/rateLimit-limit-hour' X-RateLimit-Limit-Minute: $ref: '#/components/headers/rateLimit-limit-minute' RateLimit-Remaining: $ref: '#/components/headers/rateLimit-remaining' X-RateLimit-Remaining-Hour: $ref: '#/components/headers/rateLimit-remaining-hour' X-RateLimit-Remaining-Minute: $ref: '#/components/headers/rateLimit-remaining-minute' RateLimit-Reset: $ref: '#/components/headers/rateLimit-reset' Retry-After: $ref: '#/components/headers/retry-after' '500': content: application/json: schema: $ref: '#/components/schemas/InternalServerError' description: Internal Server Error headers: RateLimit-Limit: $ref: '#/components/headers/rateLimit-limit' X-RateLimit-Limit-Hour: $ref: '#/components/headers/rateLimit-limit-hour' X-RateLimit-Limit-Minute: $ref: '#/components/headers/rateLimit-limit-minute' RateLimit-Remaining: $ref: '#/components/headers/rateLimit-remaining' X-RateLimit-Remaining-Hour: $ref: '#/components/headers/rateLimit-remaining-hour' X-RateLimit-Remaining-Minute: $ref: '#/components/headers/rateLimit-remaining-minute' RateLimit-Reset: $ref: '#/components/headers/rateLimit-reset' summary: Generate Workflow Session Links tags: - Workflow Session /workflow_sessions/{workflowSessionId}/resolve_action: post: description: 'Resolve an Action in a Workflow Session. Once resolved, the Action is treated as having a `verified` status within the Action Group. This is only allowed if the related resource is in a `pending`, `failed`, or `inconclusive` status. ' operationId: post-workflow_sessions-id-resolve_action parameters: - description: Workflow Session Id in: path name: workflowSessionId required: true schema: $ref: '#/components/schemas/UUID' requestBody: content: application/json: schema: $ref: '#/components/schemas/ResolveWorkflowSessionAction' responses: '204': description: No Content headers: RateLimit-Limit: $ref: '#/components/headers/rateLimit-limit' X-RateLimit-Limit-Hour: $ref: '#/components/headers/rateLimit-limit-hour' X-RateLimit-Limit-Minute: $ref: '#/components/headers/rateLimit-limit-minute' RateLimit-Remaining: $ref: '#/components/headers/rateLimit-remaining' X-RateLimit-Remaining-Hour: $ref: '#/components/headers/rateLimit-remaining-hour' X-RateLimit-Remaining-Minute: $ref: '#/components/headers/rateLimit-remaining-minute' RateLimit-Reset: $ref: '#/components/headers/rateLimit-reset' '400': content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' description: Bad request headers: RateLimit-Limit: $ref: '#/components/headers/rateLimit-limit' X-RateLimit-Limit-Hour: $ref: '#/components/headers/rateLimit-limit-hour' X-RateLimit-Limit-Minute: $ref: '#/components/headers/rateLimit-limit-minute' RateLimit-Remaining: $ref: '#/components/headers/rateLimit-remaining' X-RateLimit-Remaining-Hour: $ref: '#/components/headers/rateLimit-remaining-hour' X-RateLimit-Remaining-Minute: $ref: '#/components/headers/rateLimit-remaining-minute' RateLimit-Reset: $ref: '#/components/headers/rateLimit-reset' '401': content: application/json: schema: $ref: '#/components/schemas/UnauthorizedResponse' description: Access unauthorized headers: RateLimit-Limit: $ref: '#/components/headers/rateLimit-limit' X-RateLimit-Limit-Hour: $ref: '#/components/headers/rateLimit-limit-hour' X-RateLimit-Limit-Minute: $ref: '#/components/headers/rateLimit-limit-minute' RateLimit-Remaining: $ref: '#/components/headers/rateLimit-remaining' X-RateLimit-Remaining-Hour: $ref: '#/components/headers/rateLimit-remaining-hour' X-RateLimit-Remaining-Minute: $ref: '#/components/headers/rateLimit-remaining-minute' RateLimit-Reset: $ref: '#/components/headers/rateLimit-reset' '403': content: application/json: schema: $ref: '#/components/schemas/ForbiddenResponse' description: Access forbidden headers: RateLimit-Limit: $ref: '#/components/headers/rateLimit-limit' X-RateLimit-Limit-Hour: $ref: '#/components/headers/rateLimit-limit-hour' X-RateLimit-Limit-Minute: $ref: '#/components/headers/rateLimit-limit-minute' RateLimit-Remaining: $ref: '#/components/headers/rateLimit-remaining' X-RateLimit-Remaining-Hour: $ref: '#/components/headers/rateLimit-remaining-hour' X-RateLimit-Remaining-Minute: $ref: '#/components/headers/rateLimit-remaining-minute' RateLimit-Reset: $ref: '#/components/headers/rateLimit-reset' '404': content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' description: Resource not found headers: RateLimit-Limit: $ref: '#/components/headers/rateLimit-limit' X-RateLimit-Limit-Hour: $ref: '#/components/headers/rateLimit-limit-hour' X-RateLimit-Limit-Minute: $ref: '#/components/headers/rateLimit-limit-minute' RateLimit-Remaining: $ref: '#/components/headers/rateLimit-remaining' X-RateLimit-Remaining-Hour: $ref: '#/components/headers/rateLimit-remaining-hour' X-RateLimit-Remaining-Minute: $ref: '#/components/headers/rateLimit-remaining-minute' RateLimit-Reset: $ref: '#/components/headers/rateLimit-reset' '405': content: application/json: schema: $ref: '#/components/schemas/MethodNotAllowed' description: This method is not allowed headers: RateLimit-Limit: $ref: '#/components/headers/rateLimit-limit' X-RateLimit-Limit-Hour: $ref: '#/components/headers/rateLimit-limit-hour' X-RateLimit-Limit-Minute: $ref: '#/components/headers/rateLimit-limit-minute' RateLimit-Remaining: $ref: '#/components/headers/rateLimit-remaining' X-RateLimit-Remaining-Hour: $ref: '#/components/headers/rateLimit-remaining-hour' X-RateLimit-Remaining-Minute: $ref: '#/components/headers/rateLimit-remaining-minute' RateLimit-Reset: $ref: '#/components/headers/rateLimit-reset' Retry-After: $ref: '#/components/headers/retry-after' '429': content: application/json: schema: $ref: '#/components/schemas/TooManyRequestsResponse' description: Too Many Requests, please try again later. headers: RateLimit-Limit: $ref: '#/components/headers/rateLimit-limit' X-RateLimit-Limit-Hour: $ref: '#/components/headers/rateLimit-limit-hour' X-RateLimit-Limit-Minute: $ref: '#/components/headers/rateLimit-limit-minute' RateLimit-Remaining: $ref: '#/components/headers/rateLimit-remaining' X-RateLimit-Remaining-Hour: $ref: '#/components/headers/rateLimit-remaining-hour' X-RateLimit-Remaining-Minute: $ref: '#/components/headers/rateLimit-remaining-minute' RateLimit-Reset: $ref: '#/components/headers/rateLimit-reset' Retry-After: $ref: '#/components/headers/retry-after' '500': content: application/json: schema: $ref: '#/components/schemas/InternalServerError' description: Internal Server Error headers: RateLimit-Limit: $ref: '#/components/headers/rateLimit-limit' X-RateLimit-Limit-Hour: $ref: '#/components/headers/rateLimit-limit-hour' X-RateLimit-Limit-Minute: $ref: '#/components/headers/rateLimit-limit-minute' RateLimit-Remaining: $ref: '#/components/headers/rateLimit-remaining' X-RateLimit-Remaining-Hour: $ref: '#/components/headers/rateLimit-remaining-hour' X-RateLimit-Remaining-Minute: $ref: '#/components/headers/rateLimit-remaining-minute' RateLimit-Reset: $ref: '#/components/headers/rateLimit-reset' summary: Resolve an Action tags: - Workflow Session components: headers: rateLimit-remaining: description: The number of requests remaining in the current rate limit window schema: type: integer rateLimit-reset: description: The remaining time until the rate limit resets in seconds schema: type: integer rateLimit-remaining-hour: description: The number of requests remaining in the current hour rate limit window schema: type: integer rateLimit-limit: description: The maximum number of requests that the consumer is permitted to make in a given period schema: type: integer retry-after: description: Retry the request after X seconds schema: type: integer rateLimit-remaining-minute: description: The number of requests remaining in the current minute rate limit window schema: type: integer rateLimit-limit-minute: description: The maximum number of requests that the consumer is permitted to make in an minute window schema: type: integer rateLimit-limit-hour: description: The maximum number of requests that the consumer is permitted to make in an hour window schema: type: integer schemas: WorkflowSessionLinks: additionalProperties: false description: Portal links for Workflow Session Applicants. properties: applicants: description: List of Applicants with their portal links. items: $ref: '#/components/schemas/WorkflowSessionLinks_applicants_inner' type: array required: - applicants title: Workflow Session Links type: object ResolveWorkflowSessionAction_resource: properties: id: description: Unique ID of the resource used in the Workflow Session Action. example: 0ef334d2-7f36-4643-8a2a-4283b4a3e4a4 format: uuid type: string type: description: The type of resource used in the Workflow Session Action. enum: - bank_account_verification - bank_account_connection_verification - bank_account_lookup_verification - business_registration_certificate_document_analysis - company_certificate_document_analysis - company_verification - driver_licence_document_analysis - identity_document_verification - identity_video_verification - proof_of_address_verification - rne_certificate_document_analysis - social_security_document_analysis - temporary_vehicle_registration_document_analysis - vehicle_registration_document_analysis - watchlist_verification - auto_insurance_claims_history_document_analysis - payslip_document_analysis - invoice_document_analysis example: bank_account_verification type: string required: - id - type type: object InternalServerError: properties: type: example: about:blank type: string detail: example: Something wrong occurred. type: string required: - detail - type title: InternalServerError type: object WorkflowSession: additionalProperties: false properties: id: description: Unique identifier of the Workflow Session. example: 0ef334d2-7f36-4643-8a2a-4283b4a3e4a4 format: uuid type: string created_at: example: '2024-01-18T22:59:00Z' format: date-time type: string updated_at: example: '2024-01-18T22:59:00Z' format: date-time type: string name: description: Name given to the Workflow Session. Used to easily find it in the application. example: Customer onboarding of John Doe type: string workflow_template_id: description: Unique identifier of the Workflow Template from which this Workflow Session was created. example: 0ef334d2-7f36-4643-8a2a-4283b4a3e4a4 format: uuid type: string workspace_id: description: Unique identifier of the Workspace in which this Workflow Session is scoped. example: 0ef334d2-7f36-4643-8a2a-4283b4a3e4a4 format: uuid type: string status: description: Status of the Workflow Session. enum: - awaiting - ongoing - blocked - done example: ongoing type: string action_groups: description: List of the Action Groups contained in the Workflow Session. items: $ref: '#/components/schemas/WorkflowSession_action_groups_inner' type: array required: - action_groups - created_at - id - name - status - updated_at - workflow_template_id - workspace_id title: Workflow Session type: object TooManyRequestsResponse: properties: message: type: string required: - message title: TooManyRequestsResponse type: object get_workflow_sessions_200_response: properties: meta: $ref: '#/components/schemas/Pagination' data: items: $ref: '#/components/schemas/WorkflowSession' type: array type: object WorkflowSession_action_groups_inner: description: An Action Group. properties: type: description: Type of the Action Group. enum: - signature_request - identity_verification - proof_of_address_verification - company_verification - watchlist_verification - bank_account_verification - document_analysis example: identity_verification type: string status: description: Status of the Action Group. enum: - awaiting - ongoing - blocked - done example: ongoing type: string actions: description: Actions represent the resources associated with this Workflow Session, such as a Signature Request, Identity Document Verification, or other types of verifications. Actions of the same type are gathered in the same Action Group. items: $ref: '#/components/schemas/WorkflowSession_action_groups_inner_actions_inner' type: array required: - actions - status - type type: object CreateWorkflowSession: additionalProperties: false properties: workflow_template_id: description: Unique ID of the Workflow Template from which to create the new Workflow Session. example: 0ef334d2-7f36-4643-8a2a-4283b4a3e4a4 format: uuid type: string workspace_id: description: Unique ID of the Workspace in which to scope the Workflow Session. example: 0ef334d2-7f36-4643-8a2a-4283b4a3e4a4 format: uuid type: string name: description: 'Name given to the Workflow Session. Enter a meaningful, descriptive name to help you easily find this Workflow Session in the application.\ This property is a [Safe String](https://developers.yousign.com/reference/oas-specification#safe-string). ' example: Customer onboarding of John Doe. format: safe-string maxLength: 128 minLength: 1 type: string required: - name - workflow_template_id type: object MethodNotAllowed: properties: message: type: string required: - message title: MethodNotAllowed type: object WorkflowSessionActionResource: description: The resource associated with this Action. example: id: 0ef334d2-7f36-4643-8a2a-4283b4a3e4a4 created_at: '2025-02-12T23:59:59+00:00' type: identity_video_verification status: verified previous_attempt_id: null properties: id: description: Unique identifier of the Action. Corresponds to the ID of the resources associated with this Workflow Session (Signature Request, Identity Document Verification, etc.). example: 0ef334d2-7f36-4643-8a2a-4283b4a3e4a4 format: uuid type: string created_at: description: Creation date of the Action Resource. example: '2025-02-12T23:59:59Z' format: date-time type: string type: description: Type of the Action. enum: - signature_request - identity_document_verification - identity_video_verification - proof_of_address_verification - company_verification - watchlist_verification - bank_account_verification - bank_account_connection_verification - bank_account_lookup_verification - social_security_document_analysis - company_certificate_document_analysis - business_registration_certificate_document_analysis - driver_licence_document_analysis - rne_certificate_document_analysis - temporary_vehicle_registration_document_analysis - vehicle_registration_document_analysis - auto_insurance_claims_history_document_analysis - payslip_document_analysis - invoice_document_analysis example: identity_document_verification type: string status: description: Status of the Action. Corresponds to the status of the resources associated with this Workflow Session (Signature Request, Identity Document Verification, etc.). example: verified type: string previous_attempt_id: description: ID of the previous attempt if this Action is a retry. example: 0ef334d2-7f36-4643-8a2a-4283b4a3e4a4 format: uuid nullable: true type: string required: - created_at - id - previous_attempt_id - status - type title: Workflow Session Action Resource type: object NotFoundResponse: properties: type: type: string detail: type: string required: - detail - type title: NotFoundResponse type: object BadRequestResponse: properties: type: type: string detail: type: string required: - detail - type title: BadRequestResponse type: object ForbiddenResponse: properties: type: type: string detail: type: string required: - detail - type title: ForbiddenResponse type: object UnauthorizedResponse: properties: type: type: string detail: type: string required: - detail - type title: UnauthorizedResponse type: object ResolveWorkflowSessionAction: additionalProperties: false properties: resource: $ref: '#/components/schemas/ResolveWorkflowSessionAction_resource' reason: description: 'The reason why the Action is marked as resolved.\ This property is a [Safe String](https://developers.yousign.com/reference/oas-specification#safe-string). ' example: Manual verification. format: safe-string maxLength: 150 nullable: true type: string required: - resource type: object UUID: description: The unique identifier for a resource. example: 9a93d3b5-fb3b-4abf-9e70-26315b33506c format: uuid type: string WorkflowSession_action_groups_inner_actions_inner_previous_attempts_inner: properties: resource: $ref: '#/components/schemas/WorkflowSessionActionResource' required: - resource type: object WorkflowSession_action_groups_inner_actions_inner_resolution: description: The resource associated with this Action. nullable: true properties: reason: description: The reason why the Action is marked as resolved. example: Manual verification. maxLength: 150 nullable: true type: string resolved_at: example: '2024-01-18T22:59:00Z' format: date-time readOnly: true type: string required: - reason - resolved_at type: object WorkflowSessionLinks_applicants_inner: additionalProperties: false properties: id: description: Unique identifier of the Applicant. example: 9a93d3b5-fb3b-4abf-9e70-26315b33506c format: uuid type: string workflow_session_id: description: Unique identifier of the Workflow Session. example: 0ef334d2-7f36-4643-8a2a-4283b4a3e4a4 format: uuid type: string workflow_session_link_url: description: URL of the portal link for this Applicant. example: https://portal.yousign.app/workflow_sessions/abc123 type: string workflow_session_link_expires_at: description: Expiration date of the portal link. example: '2024-01-25T22:59:00Z' format: date-time type: string status: description: Status of the Applicant. enum: - initiated - notified - processed example: notified type: string label: description: Label of the Applicant. example: John Doe type: string reference_id: description: Unique applicant identifier as registered on your side. nullable: true type: string example: null created_at: description: Creation date of the Applicant. example: '2024-01-18T22:59:00Z' format: date-time type: string updated_at: description: Last update date of the Applicant. example: '2024-01-18T22:59:00Z' format: date-time type: string type: description: Type of the Applicant. enum: - natural_person - legal_person example: natural_person type: string required: - created_at - id - label - reference_id - status - type - updated_at - workflow_session_id - workflow_session_link_expires_at - workflow_session_link_url type: object Pagination: description: Metadata about the response. properties: next_cursor: description: 'Token to get the next page of results. If `null`, there are no more pages. ' minLength: 1 nullable: true type: string required: - next_cursor type: object WorkflowSession_action_groups_inner_actions_inner: description: An Action. properties: resource: $ref: '#/components/schemas/WorkflowSessionActionResource' resolution: $ref: '#/components/schemas/WorkflowSession_action_groups_inner_actions_inner_resolution' previous_attempts: description: List of previous attempts for this action. Each one contains a resource with its associated details. items: $ref: '#/components/schemas/WorkflowSession_action_groups_inner_actions_inner_previous_attempts_inner' type: array required: - previous_attempts - resolution - resource type: object securitySchemes: bearerAuth: scheme: bearer type: http