# Data Requests A consumer-permissioned data workflow is initiated and defined by the Data Request resource. A Data Request specifies or bind together the various elements of a consumer-permissioned data workflow, in particular: the Individual, the set of actions - writing or acquiring data - to be performed, optional reports to be generated, the Link experience, optional schedule to auto-refresh data, optional Individual communication and messaging. MeasureOne supports pre-configured types of data requests catering to different use cases, as well as **CUSTOM** data requests that allow you to request custom data. All services accept `datarequest_id` as a reference. The following table specifies the supported Data Request types. Based on the Data Request type, MeasureOne tailors the consumer-permissioned workflow to satisfy the indicated request for data. | Data Request Type | Description | |-------------------|--------------------------------------------------------- | ACADEMIC_SUMMARY | Request the education summary of the Individual | ENROLLMENT_STATUS | Request the enrollment status of the Individual | EMPLOYMENT_SUMMARY| Request the employment summary of the Individual | INCOME_SUMMARY | Request the income summary for the Individual | INCOME_EMPLOYMENT_DETAILS | Request the VOIE details of the Individual | HOME_INSURANCE_DETAILS | Request the Home insurance details of the individuals | AUTO_INSURANCE_DETAILS | Request the Auto insurance details of the individuals | REALIZED_GAINS | Request 1099-B information from the Individual's brokerage account | CUSTOM | Request custom data from an Individual that is not covered by the above types. ## Create a new Data Request - [POST /v3/datarequests/new](https://docs.measureone.com/api/openapi_3.2/openapi/data-requests/paths/~1v3~1datarequests~1new/post.md): Creates a new Data Request. The returned ID is then used in Link and in service calls to reference Items and services. ## Generate invitation link for the Data Request - [POST /v3/datarequests/generate_invitation_link](https://docs.measureone.com/api/openapi_3.2/openapi/data-requests/paths/~1v3~1datarequests~1generate_invitation_link/post.md): Generate a shareable invitation link for the Data Request. You can share the invitation link with the Individual for them to complete the Data Request. The invitation link will direct the user to MeasureOne's hosted solution. * If there is a invitation link with status available, it will return the same invitation link. Generating a invitation link when there is already existing available. it will return the same invitation link with the updated as provided. * It will generate a new invitation link if there are no links available for the Data Request. ## Invite the Individual to complete the Data Request - [POST /v3/datarequests/notify_user](https://docs.measureone.com/api/openapi_3.2/openapi/data-requests/paths/~1v3~1datarequests~1notify_user/post.md): Send a notification to the user to complete the data request. The API will return an error if the link is already . MeasureOne sends upto 3 reminders, 12 hours apart to notify the user. Call this API on an already active link for which notifications have been sent earlier will reset the counter. ## Get shareable invitation links for Data Request - [POST /v3/datarequests/get_invitation_link](https://docs.measureone.com/api/openapi_3.2/openapi/data-requests/paths/~1v3~1datarequests~1get_invitation_link/post.md): Get the list of invitation links associated with a Data Request ## Get the details of Data Request - [POST /v3/datarequests/get_by_id](https://docs.measureone.com/api/openapi_3.2/openapi/data-requests/paths/~1v3~1datarequests~1get_by_id/post.md): Get the details of a Data Request. MeasureOne records various events for a Data Request. These events are summarized in the following table. ### Data Request Events |event|Description| |--- |--- | |DATAREQUEST_CREATED| Data Request created| |DATAREQUEST_UPDATED| Updated the details of Data Request| |DATAREQUEST_LINK_GENERATED| Data Request link generated| |NOTIFY_USER_REQUESTED| Email and/or SMS notification sent to user| |DATAREQUEST_LINK_EXTENDED| Link expiry time extended| |DATAREQUEST_LINK_EXPIRED| Link for Data Request expired| |DATAREQUEST_LINK_ACCESSED| Data Request link accessed by user| |WIDGET_INITIATED| Widget initiated for Data Request| |DATASOURCE_CLASSIFIED| Individual landed on login screen| |LOGIN_ATTEMPTED| Individual tried to login| |INVALID_CREDENTIALS| Credentials provided by user are invalid| |DATASOURCE_CONNECTED| Individual entered valid credentials and the Data Source is connected| |INSUFFICIENT_CREDENTIALS| Individual was not able to provide credentials| |ITEM_CREATED| Item was downloaded and stored database| |ITEM_PROCESSED| Data extracted and formatted| |ITEM_UNPROCESSABLE| Unable to process an item| |ITEMS_AVAILABLE| Data Extraction is completed with some items | |NO_ITEMS| Data Extraction is completed without an item| |USER_INTERVENTION_REQUIRED| Individual re-login required | |DATASOURCE_NOT_FOUND| Individual was unable to find Data Source| |PLAID_INITIATED| Plaid flow initiated| |PLAID_CONNECTION_SUCCESSFUL| Plaid connection successful| |PLAID_CONNECTION_UNSUCCESSFUL| Plaid connection unsuccessful| |REPORT_REQUESTED| Report requested by customer| |REPORT_AVAILABLE| Report data is available| |REPORT_ERROR| Error occurred during generating report| |UPDATES_AVAILABLE| Updated data for Data Request is available| |REFRESH_INITIATED| A scheduled refresh is initiated for Data Request| |REFRESH_FAILED| A scheduled refresh is failed for Data Request| |CONSENT_REGISTERED| Consent registered forData Request| |CONSENT_DEREGISTER| Consent deregistered for Data Request| |SESSION_TERMINATED| A session is terminated for Data Request| |SESSION_LOGGED_OUT| A session is logged out for Data Request| ## Expire invitation link for Data Request - [POST /v3/datarequests/expire_invitation_link](https://docs.measureone.com/api/openapi_3.2/openapi/data-requests/paths/~1v3~1datarequests~1expire_invitation_link/post.md): Expires the invitation link for a data request. ## Get the list of Data Requests - [POST /v3/datarequests/get](https://docs.measureone.com/api/openapi_3.2/openapi/data-requests/paths/~1v3~1datarequests~1get/post.md): Get the list of Data Requests based on the filter criteria provided. If not filter criteria is provided, it will fetch the latest 200 data requests. ## Update a Data Request - [POST /v3/datarequests/update](https://docs.measureone.com/api/openapi_3.2/openapi/data-requests/paths/~1v3~1datarequests~1update/post.md): Update details of a Data Request ## Refresh data on demand - [POST /v3/datarequests/refresh_now](https://docs.measureone.com/api/openapi_3.2/openapi/data-requests/paths/~1v3~1datarequests~1refresh_now/post.md): Refresh data for a Data Request on demand. ## Enable refresh data for Data Requests - [POST /v3/datarequests/enable_refresh](https://docs.measureone.com/api/openapi_3.2/openapi/data-requests/paths/~1v3~1datarequests~1enable_refresh/post.md): Enable Refresh data for Data Requests. ## Disable refresh data for Data Requests - [POST /v3/datarequests/disable_refresh](https://docs.measureone.com/api/openapi_3.2/openapi/data-requests/paths/~1v3~1datarequests~1disable_refresh/post.md): Disable Refresh data for Data Requests.