Erstellen einer Ausgabenrichtlinie

Wichtig

APIs unter der /beta Version können sich ändern. Die Verwendung dieser APIs in Produktionsanwendungen wird nicht unterstützt.

Erstellen Sie ein neues spendingPolicy-Objekt . Weil spendingPolicy abstrakt ist, muss der Anforderungstext einen konkreten @odata.type, entweder #microsoft.graph.allUsersSpendingPolicy oder #microsoft.graph.selectedGroupsSpendingPolicysetzen.

Eine neue Richtlinie wird erstellt disabled. Für eine gruppenbezogene Richtlinie befolgen Sie die sichere Erstellungsreihenfolge: Erstellen Sie die deaktivierte Richtlinie, verknüpfen Sie ihre Zielgruppe mit "Zugewiesene Gruppe hinzufügen", und lassen Sie den Dienst sie aktivieren, sobald die Anforderungen erfüllt sind.

Hinweis

Zur Laufzeit erfordert das Erstellen einer Richtlinie auch die Verzeichnisrolle Abrechnungsadministrator oder Globaler Administrator.

Berechtigungen

Wählen Sie die Berechtigungen aus, die für diese API als am wenigsten privilegiert markiert sind. Verwenden Sie eine höhere Berechtigung oder Berechtigungen nur, wenn Ihre App dies erfordert. Ausführliche Informationen zu delegierten Berechtigungen und Anwendungsberechtigungen finden Sie unter Berechtigungstypen. Weitere Informationen zu diesen Berechtigungen finden Sie in der Berechtigungsreferenz.

Berechtigungstyp Berechtigungen mit den geringsten Berechtigungen Berechtigungen mit höheren Berechtigungen
Delegiert (Geschäfts-, Schul- oder Unikonto) CopilotCostManagement-Policy.ReadWrite.All Nicht unterstützt
Delegiert (persönliches Microsoft-Konto) Nicht unterstützt Nicht unterstützt
Application Nicht unterstützt Nicht unterstützt

Das Erstellen einer Richtlinie ohne anfängliche Zielgruppe (assignedGroups weggelassen oder leer) erfordert nur CopilotCostManagement-Policy.ReadWrite.All. Das Bereitstellen einer nicht leeren assignedGroups Sammlung bei der Erstellung erfordert CopilotCostManagement-Assignment.ReadWrite.Allzusätzlich . Diese Berechtigungsanforderungen sind unabhängig von der Verzeichnisrollenanforderung, die weiter oben in diesem Artikel erwähnt wurde.

HTTP-Anforderung

POST /copilot/costManagement/spendingPolicies

Anforderungsheader

Name Beschreibung
Authorization Bearer {token}. Erforderlich. Erfahren Sie mehr über Authentifizierung und Autorisierung.
Content-Type application/json. Erforderlich.

Anforderungstext

Geben Sie im Anforderungstext eine JSON-Darstellung eines spendingPolicy-Objekts mit einer konkreten @odata.type. Erforderliche Eigenschaften sind displayName, periodLimit, perUserLimitund serviceSettings. Optional billingMethodskönnen Sie angeben. Der Zielgruppentyp wird bei der Erstellung festgelegt und kann später nicht mehr geändert werden. Geben Sie keine Eigenschaften in der create-Nutzlast an status und prüfen Sie sie nicht.

Bei einer Richtlinie für ausgewählte Gruppen können Sie eine leere Sammlung auslassen assignedGroups oder angeben, um eine deaktivierte Richtlinie ohne Zielgruppe zu erstellen, und dann Gruppen in nachfolgenden Anrufen mit "Zugewiesene Gruppe hinzufügen" hinzufügen. Das Bereitstellen einer nicht leeren assignedGroups Sammlung bei der Erstellung erfordert die zusätzliche Berechtigung, die unter Berechtigungen beschrieben wird.

Antwort

Bei erfolgreicher Ausführung gibt diese Methode einen 201 Created Antwortcode und das erstellte spendingPolicy-Objekt im Antworttext zurück. Die Antwort enthält Location und-Header ETag . Neue Richtlinien werden erstellt disabled.

Beispiel

Anforderung

Das folgende Beispiel zeigt eine Anfrage.

POST https://graph.microsoft.com/beta/copilot/costManagement/spendingPolicies
Content-Type: application/json

{
  "@odata.type": "#microsoft.graph.selectedGroupsSpendingPolicy",
  "displayName": "Pilot teams monthly cap",
  "periodLimit": { "@odata.type": "#microsoft.graph.limitedCostManagementQuantity", "value": 10000, "unit": "copilotCredit" },
  "perUserLimit": { "@odata.type": "#microsoft.graph.limitedCostManagementQuantity", "value": 500, "unit": "copilotCredit" },
  "billingMethods": "prepaidCredits",
  "serviceSettings": [
    { "serviceId": "cowork", "state": "enabled" },
    { "serviceId": "workIQ", "state": "enabled" }
  ]
}

Antwort

Das folgende Beispiel zeigt die Antwort. Das hier gezeigte Antwortobjekt wird möglicherweise zur besseren Lesbarkeit verkürzt.

HTTP/1.1 201 Created
Location: https://graph.microsoft.com/beta/copilot/costManagement/spendingPolicies/3f9e2c1a-0000-0000-0000-00000000c21b
ETag: W/"1"
Content-type: application/json

{
  "@odata.context": "https://graph.microsoft.com/beta/$metadata#copilot/costManagement/spendingPolicies/microsoft.graph.selectedGroupsSpendingPolicy/$entity",
  "@odata.type": "#microsoft.graph.selectedGroupsSpendingPolicy",
  "id": "3f9e2c1a-0000-0000-0000-00000000c21b",
  "displayName": "Pilot teams monthly cap",
  "status": "disabled",
  "periodLimit": { "@odata.type": "#microsoft.graph.limitedCostManagementQuantity", "value": 10000, "unit": "copilotCredit" },
  "perUserLimit": { "@odata.type": "#microsoft.graph.limitedCostManagementQuantity", "value": 500, "unit": "copilotCredit" },
  "billingMethods": "prepaidCredits",
  "createdDateTime": "2026-07-27T09:15:00Z",
  "createdBy": { "user": { "id": "aa110000-0000-0000-0000-000000000000", "displayName": "Alex Admin" } },
  "lastModifiedDateTime": "2026-07-27T09:15:00Z",
  "lastModifiedBy": { "user": { "id": "aa110000-0000-0000-0000-000000000000", "displayName": "Alex Admin" } }
}