boto3のbackup list_backup_jobsのMessageCategoryについてメモ

Pythonでboto3を使ってAWS Backupの直近24時間なジョブ結果一覧を取得する処理を書いていて気が付いたのでメモ

## list_backup_jobsでレスポンス項目について

ジョブの結果を確認するのに、MessageCategoryの項目を使おうと考え。
実装して、いくつかの実行環境で動かしてみた所、MessageCategoryがあるはずなのにレスポンスに含まれてこない環境がありました。

実行しているboto3のバージョンを確認した所、実行環境によってboto3のバージョンが異なっており。

ドキュメントを確認した所、boto3のbackpuのlist_backup_jobsにMessageCategoryが追加されたのはboto3 1.29.1からのようです。

[boto3 1.28.85 document - list_backup_jobs](https://boto3.amazonaws.com/v1/documentation/api/1.28.85/reference/services/backup/client/list_backup_jobs.html)

[boto3 1.29.1 document - list_backup_jobs](https://boto3.amazonaws.com/v1/documentation/api/1.29.1/reference/services/backup/client/list_backup_jobs.html)


```text:boto3 1.28.85 document - list_backup_jobs
{
    'BackupJobs': [
        {
            'AccountId': 'string',
            'BackupJobId': 'string',
            'BackupVaultName': 'string',
            'BackupVaultArn': 'string',
            'RecoveryPointArn': 'string',
            'ResourceArn': 'string',
            'CreationDate': datetime(2015, 1, 1),
            'CompletionDate': datetime(2015, 1, 1),
            'State': 'CREATED'|'PENDING'|'RUNNING'|'ABORTING'|'ABORTED'|'COMPLETED'|'FAILED'|'EXPIRED'|'PARTIAL',
            'StatusMessage': 'string',
            'PercentDone': 'string',
            'BackupSizeInBytes': 123,
            'IamRoleArn': 'string',
            'CreatedBy': {
                'BackupPlanId': 'string',
                'BackupPlanArn': 'string',
                'BackupPlanVersion': 'string',
                'BackupRuleId': 'string'
            },
            'ExpectedCompletionDate': datetime(2015, 1, 1),
            'StartBy': datetime(2015, 1, 1),
            'ResourceType': 'string',
            'BytesTransferred': 123,
            'BackupOptions': {
                'string': 'string'
            },
            'BackupType': 'string',
            'ParentJobId': 'string',
            'IsParent': True|False,
            'ResourceName': 'string'
        },
    ],
    'NextToken': 'string'
}
```

```text:boto3 1.29.1 document - list_backup_jobs
{
    'BackupJobs': [
        {
            'AccountId': 'string',
            'BackupJobId': 'string',
            'BackupVaultName': 'string',
            'BackupVaultArn': 'string',
            'RecoveryPointArn': 'string',
            'ResourceArn': 'string',
            'CreationDate': datetime(2015, 1, 1),
            'CompletionDate': datetime(2015, 1, 1),
            'State': 'CREATED'|'PENDING'|'RUNNING'|'ABORTING'|'ABORTED'|'COMPLETED'|'FAILED'|'EXPIRED'|'PARTIAL',
            'StatusMessage': 'string',
            'PercentDone': 'string',
            'BackupSizeInBytes': 123,
            'IamRoleArn': 'string',
            'CreatedBy': {
                'BackupPlanId': 'string',
                'BackupPlanArn': 'string',
                'BackupPlanVersion': 'string',
                'BackupRuleId': 'string'
            },
            'ExpectedCompletionDate': datetime(2015, 1, 1),
            'StartBy': datetime(2015, 1, 1),
            'ResourceType': 'string',
            'BytesTransferred': 123,
            'BackupOptions': {
                'string': 'string'
            },
            'BackupType': 'string',
            'ParentJobId': 'string',
            'IsParent': True|False,
            'ResourceName': 'string',
            'MessageCategory': 'string'
        },
    ],
    'NextToken': 'string'
}
```

## 総評

MessageCategoryとか普通に使いそうな項目が少し古いboto3のバージョンにはないのは少し驚きました。