Microsoft Graph · Schema

microsoft.graph.security.retentionLabel

Microsoft GraphAzure ADCollaborationContactsDocumentsEmailGraphIdentityMicrosoftOffice 365PresentationsProductivitySpreadsheetsT1Task

Properties

Name Type Description
actionAfterRetentionPeriod object Specifies the action to take on the labeled document after the period specified by the retentionDuration property expires. The possible values are: none, delete, startDispositionReview, unknownFutureV
behaviorDuringRetentionPeriod object Specifies how the behavior of a document with this label should be during the retention period. The possible values are: doNotRetain, retain, retainAsRecord, retainAsRegulatoryRecord, unknownFutureVal
createdBy object Represents the user who created the retentionLabel.
createdDateTime string Represents the date and time in which the retentionLabel is created.
defaultRecordBehavior object Specifies the locked or unlocked state of a record label when it is created.The possible values are: startLocked, startUnlocked, unknownFutureValue.
descriptionForAdmins string Provides label information for the admin. Optional.
descriptionForUsers string Provides the label information for the user. Optional.
displayName string Unique string that defines a label name.
isInUse boolean Specifies whether the label is currently being used.
labelToBeApplied string Specifies the replacement label to be applied automatically after the retention period of the current label ends.
lastModifiedBy object The user who last modified the retentionLabel.
lastModifiedDateTime string The latest date time when the retentionLabel was modified.
retentionDuration object Specifies the number of days to retain the content.
retentionTrigger object Specifies whether the retention duration is calculated from the content creation date, labeled date, or last modification date. The possible values are: dateLabeled, dateCreated, dateModified, dateOfE
descriptors object Represents out-of-the-box values that provide more options to improve the manageability and organization of the content you need to label.
dispositionReviewStages array When action at the end of retention is chosen as 'dispositionReview', dispositionReviewStages specifies a sequential set of stages with at least one reviewer in each stage.
retentionEventType object Represents the type associated with a retention event.
@odata.type string
View JSON Schema on GitHub

JSON Schema

microsoft-graph-microsoftgraphsecurityretentionlabel-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "#/components/schemas/microsoft.graph.security.retentionLabel",
  "title": "microsoft.graph.security.retentionLabel",
  "allOf": [
    {
      "$ref": "#/components/schemas/microsoft.graph.entity"
    },
    {
      "title": "retentionLabel",
      "required": [
        "@odata.type"
      ],
      "type": "object",
      "properties": {
        "actionAfterRetentionPeriod": {
          "anyOf": [
            {
              "$ref": "#/components/schemas/microsoft.graph.security.actionAfterRetentionPeriod"
            },
            {
              "type": "object",
              "nullable": true
            }
          ],
          "description": "Specifies the action to take on the labeled document after the period specified by the retentionDuration property expires. The possible values are: none, delete, startDispositionReview, unknownFutureValue."
        },
        "behaviorDuringRetentionPeriod": {
          "anyOf": [
            {
              "$ref": "#/components/schemas/microsoft.graph.security.behaviorDuringRetentionPeriod"
            },
            {
              "type": "object",
              "nullable": true
            }
          ],
          "description": "Specifies how the behavior of a document with this label should be during the retention period. The possible values are: doNotRetain, retain, retainAsRecord, retainAsRegulatoryRecord, unknownFutureValue."
        },
        "createdBy": {
          "anyOf": [
            {
              "$ref": "#/components/schemas/microsoft.graph.identitySet"
            },
            {
              "type": "object",
              "nullable": true
            }
          ],
          "description": "Represents the user who created the retentionLabel."
        },
        "createdDateTime": {
          "pattern": "^[0-9]{4,}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])T([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]([.][0-9]{1,12})?(Z|[+-][0-9][0-9]:[0-9][0-9])$",
          "type": "string",
          "description": "Represents the date and time in which the retentionLabel is created.",
          "format": "date-time",
          "nullable": true
        },
        "defaultRecordBehavior": {
          "anyOf": [
            {
              "$ref": "#/components/schemas/microsoft.graph.security.defaultRecordBehavior"
            },
            {
              "type": "object",
              "nullable": true
            }
          ],
          "description": "Specifies the locked or unlocked state of a record label when it is created.The possible values are: startLocked, startUnlocked, unknownFutureValue."
        },
        "descriptionForAdmins": {
          "type": "string",
          "description": "Provides label information for the admin. Optional.",
          "nullable": true
        },
        "descriptionForUsers": {
          "type": "string",
          "description": "Provides the label information for the user. Optional.",
          "nullable": true
        },
        "displayName": {
          "type": "string",
          "description": "Unique string that defines a label name.",
          "nullable": true
        },
        "isInUse": {
          "type": "boolean",
          "description": "Specifies whether the label is currently being used.",
          "nullable": true
        },
        "labelToBeApplied": {
          "type": "string",
          "description": "Specifies the replacement label to be applied automatically after the retention period of the current label ends.",
          "nullable": true
        },
        "lastModifiedBy": {
          "anyOf": [
            {
              "$ref": "#/components/schemas/microsoft.graph.identitySet"
            },
            {
              "type": "object",
              "nullable": true
            }
          ],
          "description": "The user who last modified the retentionLabel."
        },
        "lastModifiedDateTime": {
          "pattern": "^[0-9]{4,}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])T([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]([.][0-9]{1,12})?(Z|[+-][0-9][0-9]:[0-9][0-9])$",
          "type": "string",
          "description": "The latest date time when the retentionLabel was modified.",
          "format": "date-time",
          "nullable": true
        },
        "retentionDuration": {
          "anyOf": [
            {
              "$ref": "#/components/schemas/microsoft.graph.security.retentionDuration"
            },
            {
              "type": "object",
              "nullable": true
            }
          ],
          "description": "Specifies the number of days to retain the content."
        },
        "retentionTrigger": {
          "anyOf": [
            {
              "$ref": "#/components/schemas/microsoft.graph.security.retentionTrigger"
            },
            {
              "type": "object",
              "nullable": true
            }
          ],
          "description": "Specifies whether the retention duration is calculated from the content creation date, labeled date, or last modification date. The possible values are: dateLabeled, dateCreated, dateModified, dateOfEvent, unknownFutureValue."
        },
        "descriptors": {
          "anyOf": [
            {
              "$ref": "#/components/schemas/microsoft.graph.security.filePlanDescriptor"
            },
            {
              "type": "object",
              "nullable": true
            }
          ],
          "description": "Represents out-of-the-box values that provide more options to improve the manageability and organization of the content you need to label.",
          "x-ms-navigationProperty": true
        },
        "dispositionReviewStages": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/microsoft.graph.security.dispositionReviewStage"
          },
          "description": "When action at the end of retention is chosen as 'dispositionReview', dispositionReviewStages specifies a sequential set of stages with at least one reviewer in each stage.",
          "x-ms-navigationProperty": true
        },
        "retentionEventType": {
          "anyOf": [
            {
              "$ref": "#/components/schemas/microsoft.graph.security.retentionEventType"
            },
            {
              "type": "object",
              "nullable": true
            }
          ],
          "description": "Represents the type associated with a retention event.",
          "x-ms-navigationProperty": true
        },
        "@odata.type": {
          "type": "string"
        }
      }
    }
  ],
  "x-ms-discriminator-value": "#microsoft.graph.security.retentionLabel"
}

Work with this as data

Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/microsoft-graph-microsoftgraphsecurityretentionlabel"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.