# Automated documentation
URL: https://docs.datarobot.com/en/docs/api/dev-learning/python/modeling/insights/automated_documentation.html

> Learn how to generate and manage automated documentation for DataRobot models and projects.

# Automated documentation

DataRobot can generate automated documentation about various entities within the platform, such as specific models or projects.
These reports can be downloaded and shared to help with regulatory compliance as well as to provide a general understanding of the AI lifecycle.

## Check available document types

Automated documentation is available behind different feature flags set up according to your POC settings or subscription plan.`MODEL_COMPLIANCE` documentation is a premium add-on DataRobot product, while `AUTOPILOT_SUMMARY` report is available behind an optional feature flag for Self-Service and other platforms.

```
import datarobot as dr

# Connect to your DataRobot platform with your token
dr.Client(token=my_token, endpoint=endpoint)
options = dr.AutomatedDocument.list_available_document_types()
```

In response, you get a `data` dictionary with a list of document types that are available for generation with your account.

## Generate automated documents

Now that you know which documents you can generate, create one with `AutomatedDocument .generate` method.
Note that for `AUTOPILOT_SUMMARY` report, you need to assign a project ID to the `entity_id` parameter, while `MODEL_COMPLIANCE` expects an ID of a model with the `entity_id` parameter.

```
import datarobot as dr

dr.Client(token=my_token, endpoint=endpoint)

doc_type = "AUTOPILOT_SUMMARY"
entity_id = "5e8b6a34d2426053ab9a39ed"  #  This is an ID of a project
file_format="docx"

doc = dr.AutomatedDocument(document_type=doc_type, entity_id=entity_id, output_format=file_format)
doc.generate()
```

You can specify other attributes.
For example, `filepath` presets the file location and name to use when downloading the document.
See the API reference for more details.

## Download automated documents

If you followed the steps above to generate an automated document, you can use the `AutomatedDocument.download` method right away to get the document.

```
doc.filepath = "Users/jeremy/DR_project_docs/autopilot_report_staff_2021.docx"
doc.download()
```

You can set a desired `filepath` (that includes the future file’s name) before you download a document.
Otherwise, it will be automatically downloaded to the directory from which you launched your script.

Please note that to download the document, you need its ID.
When you generate a document with the Python client, the ID is set automatically without your interference.
However, if the document has already been generated from the application interface (or REST API) and you want to download it using the Python client, you need to provide the ID of the document you want to download:

```
import datarobot as dr

dr.Client(token=my_token, endpoint=endpoint)

doc_id = "604f81f0f3d6397d250c35bc"
path = "Users/jeremy/DR_project_docs/xgb_model_doc_staff_project_2021.docx"
doc = dr.AutomatedDocument(id=doc_id, filepath=path)
doc.download()
```

## List previously generated automated documents

You can retrieve information about previously generated documents available for your account.
The information includes document ID and type, ID of the entity it was generated for, time of creation, and other information.
Documents are sorted by creation time  – `created_at` key – from most recent to oldest.

```
import datarobot as dr

dr.Client(token=my_token, endpoint=endpoint)
docs = dr.AutomatedDocument.list_generated_documents()
```

This returns list of `AutomatedDocument` objects.
You can request a list of specific documents.
For example, get a list of all `MODEL_COMPLIANCE` documents:

```
model_docs = dr.AutomatedDocument.list_generated_documents(document_types=["MODEL_COMPLIANCE"])
```

Or get a list of documents created for specific entities:

```
otv_project_reports = dr.AutomatedDocument.list_generated_documents(
    entity_ids=["604f81f0f3d6397d250c35bc", "5ed60de32f18d97d250c3db5"]
    )
```

For more information about all query options, see `AutomatedDocument.list_generated_documents` in the API reference.

## Delete automated documents

To delete a document from the DataRobot application, use the `AutomatedDocument.delete` method.

```
import datarobot as dr

dr.Client(token=my_token, endpoint=endpoint)
doc = dr.AutomatedDocument(id="604f81f0f3d6397d250c35bc")
doc.delete()
```

All locally saved automated documents will remain intact.

---
