Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Rôles appropriés : Administrateur de sécurité | Lecteur de sécurité | Agent d’administration
S’applique à : Partner Center
L’API de conformité de sécurité de l’Espace partenaires vous permet de récupérer les tâches de conformité de votre organisation partenaire, de passer en revue les évaluations du temps de réponse et de mettre à jour les états des tâches. Il prend en charge l’automatisation du modèle de tâche unifié utilisé dans l’espace de travail Sécurité repensé, où les exigences de sécurité et les alertes sont présentées comme des tâches actionnables.
Cet article décrit le modèle de tâche, les opérations prises en charge, les ressources JSON et les exemples de requête et de réponse REST. Les noms et valeurs des propriétés d’API conservent leur casse exacte, même lorsque l’espace de travail utilise différentes étiquettes d’affichage.
Concepts de l’expérience repensée
Les concepts suivants connectent l’expérience de l’espace de travail sécurité aux ressources d’API de cet article.
| Concept | Signification dans l’espace de travail | Représentation d’API |
|---|---|---|
| Tâche | Unité discrète et actionnable de travail avec une étendue, un état de cycle de vie et, le cas échéant, une date d’échéance. L’achèvement dépend de la vérification de la condition sous-jacente, et non de l’attestation manuelle seule. | Tâche de conformité, identifiée par taskId. |
| Groupe de tâches | Tâches associées regroupées par cause racine ou classification. La progression du groupe est dérivée de ses tâches, au lieu d’un état de groupe modifiable séparément. | Propriétés de tâche telles que taskGroupId, taskGroupTitleet taskGroupClassification. Les opérations de cet article ne retournent pas de résumé distinct du groupe de tâches ou de la progression du groupe. |
| Événement | Instance de la condition sous-jacente qui permet d’identifier ce qui a besoin d’attention dans le système source. L’état est géré au niveau de la tâche. | Il n’existe aucune ressource occurrence ou opération d’état d’occurrence distincte dans cette référence d’API. Ne supposez pas que le flux spécifique details fournit une collection Occurrence standardisée. |
| Conformité générale | Indicateur complet/incomplet de l’espace de travail, avec un horodatage « As of ». L’expérience repensée n’utilise pas de score de sécurité numérique. | Aucune opération globale de conformité ou de score numérique n’est définie dans cet article. L’évaluation du temps de réponse évalue uniquement l’exigence de temps de réponse. |
| Actualisation des données | Heure à laquelle les données sources sous-jacentes ont été actualisées, plutôt que le moment où un utilisateur a ouvert la page ou qu’un client a récupéré une réponse. |
lastRefreshDateTime pour les données du groupe de tâches ; calculatedAt et expiresAt pour une évaluation du temps de réponse. Ces horodatages ne sont pas interchangeables. |
Cycle de vie et états des tâches
L’espace de travail appelle la valeur du cycle de vie un état ; l’API l’expose en tant que status. Utilisez les chaînes exactes et sensibles à la casse suivantes dans les requêtes et réponses d’API.
| Status | Signification | Cette API peut-elle la définir ? |
|---|---|---|
New |
La tâche a été créée et n’a pas encore été reconnue ou traitée. | Non. |
In Progress |
Le partenaire a pris la propriété et le travail est en cours. Cela correspond à l’action d’accusé de réception décrite comme Examen dans l’expérience d’alerte actuelle. | Oui, sous réserve des restrictions de transition ci-dessous. |
Ignore |
Pour une tâche éligible, le partenaire a déterminé que l’événement est connu et légitime. Ignorer une tâche ne corrige pas la condition ou supprime la responsabilité des frais d’utilisation associés. | Oui, seulement quand c’est isIgnorabletrue. |
Ready for Review |
Le partenaire a effectué le travail requis et attend la vérification de la condition sous-jacente. | Oui, sous réserve des restrictions de transition ci-dessous. |
Complete |
Microsoft a confirmé que la condition sous-jacente est résolue. | Non. La saisie semi-automatique est gérée par le système. |
Pour utiliser une tâche par programmation :
- Répertoriez les tâches de conformité et sélectionnez la tâche qui a besoin d’attention.
- Obtenez les détails de la tâche pour passer en revue son état actuel, ses informations spécifiques au flux, ses notes et son activité récente.
-
Définir l’état sur
In Progresslorsque le travail commence. - Corrigez la condition dans le système source approprié, par exemple Microsoft Entra, le portail Azure ou l’Espace partenaires.
- Définissez l’état
Ready for Reviewsur le moment où le travail est terminé, puis récupérez à nouveau la tâche après la vérification de la source pour vérifier son état et son actualisation des données.
Important
Une mise à jour d’état réussie confirme une modification du flux de travail, et non l’achèvement du travail sous-jacent. Ne pas traiter Ready for Review ou Ignore comme Complete. Pour un événement connu et légitime, utilisez Ignore uniquement lorsqu’il est autorisé. Une tâche ignorée doit revenir avant In Progress de pouvoir passer à Ready for Review; une tâche complète ne peut pas être modifiée par cette opération.
Étendue de l’API pendant la transition
L’espace de travail repensé et l’API n’exposent pas nécessairement les mêmes actions. Utilisez les opérations et les schémas de cet article comme contrat pour cette API, plutôt que de supposer que chaque action d’espace de travail a un équivalent d’API.
| Capability | Prise en charge dans cette API |
|---|---|
| Récupérer les tâches et leurs détails | Répertorier et détailler les opérations, notamment les identificateurs de groupe de tâches, les informations d’étendue disponibles et les horodatages d’actualisation. |
| Mettre à jour l’état d’une tâche | Opération d’état pour In Progress, Ready for Reviewet, le cas échéant, Ignore. Chaque requête cible une tâche ; aucune opération d’état en bloc n’est définie ici. |
| Afficher les notes et l’activité | Les détails de la tâche incluent les notes existantes et jusqu’à 50 entrées d’activité conservées. Le journal d’activité peut être tronqué. |
| Ajouter des notes ou des commentaires | Non pris en charge par les opérations de cet article. N’incluez pas de notes dans la demande d’état. |
| Afficher ou modifier des occurrences | Aucune opération d’occurrence distincte n’est définie ici. Apportez les modifications requises dans le système source. |
| Temps de réponse à la révision | Évaluation à l’échelle du partenaire du temps pour le premier changement d’état enregistré. Ce n’est pas un résultat global de conformité. |
| Gérer les abonnements | Non pris en charge par ces opérations. Gérez l’abonnement dans le système source approprié. |
| Activer l’aperçu de l’espace de travail | Aucune opération de bascule d’aperçu n’est définie ici. L’accès à l’API nécessite l’activation pour l’organisation partenaire. |
Pendant la transition de l’espace de travail, distinguez ces points de terminaison de l’Espace partenaires des API bêta actuelles Microsoft Graph pour les alertes de sécurité, les exigences et le score de sécurité. Cet article ne définit pas de date de mise hors service, un mappage un-à-un des ID d’alerte existants aux ID de tâche ou un remplacement pour chaque opération existante. Obtenir des ID de tâche opaques à partir de cette API ; ne les construisez pas à partir d’identificateurs d’alerte ou d’abonnement existants.
Note
L’espace de travail décrit l’exigence d’accusé de réception d’alerte de 24 heures en termes de déplacement des tâches en cours. Le point de terminaison de temps de réponse décrit ici mesure le premier changement d’état enregistré, y compris le temps écoulé pour les tâches mesurables sans modification. Utilisez les règles d’évaluation lors de l’interprétation des résultats de l’API ; ne supposez pas que le point de terminaison mesure uniquement les transitions vers In Progress ou uniquement les tâches qui ont déjà reçu une réponse.
Conventions de ressources
Les ressources suivantes décrivent les données JSON retournées ou acceptées par les opérations de cet article. Comme dans d’autres ressources REST de l’Espace partenaires, les tables de propriétés définissent les éléments de requête et de réponse.
Les noms de propriétés JSON et les valeurs d’état respectent la casse. Les horodatages sont des chaînes ISO 8601 UTC, par exemple 2026-10-01T12:00:00.000Z. Les champs nullables peuvent contenir null; ne supposent pas que chaque tâche possède des informations de client, d’abonnement, d’échéance ou de résolution.
Tâche de conformité
Décrit une tâche de conformité, y compris son état actuel, sa gravité, son échéance et son abonnement ou client associé. Les opérations de liste et de détail retournent ces propriétés.
| Propriété | Type | Description |
|---|---|---|
taskId |
string | Identificateur de tâche opaque. Utilisez-la sans modification, encodée par URL, pour les demandes de détail et d’état. |
taskGroupId |
string | Identificateur du groupe de tâches. |
taskGroupTitle |
chaîne ou null | Afficher le titre du groupe de tâches. |
taskGroupClassification |
chaîne ou null | Classification telle que Fraud; ne déduit pas une énumération complète de cet exemple. |
isEligibilityRequirement |
booléen | Indique si le groupe de tâches est marqué comme condition d’éligibilité. |
requirementId |
string | Identificateur de condition requise, utilisable dans un filtre de liste. |
taskTitle |
chaîne ou null | Afficher le titre de la tâche. |
status |
string | État de la tâche actuelle : New, , In ProgressReady for Review, Completeou Ignore. |
isIgnorable |
booléen | Indique si le flux permet à la tâche d’être ignorée. |
customerTenantId |
chaîne ou null | Identificateur du locataire du client, le cas échéant. |
customerName |
chaîne ou null | Nom complet du client, le cas échéant. |
subscriptionId |
chaîne ou null | Identificateur d’abonnement, le cas échéant. |
subscriptionName |
chaîne ou null | Nom complet de l’abonnement, le cas échéant. |
severity |
chaîne ou null |
Informational, , High, Medium, Lowou null lorsqu’il n’est pas disponible/non reconnu. |
deadlineDateTime |
timestamp ou null | Échéance de la tâche calculée, quand elle est disponible. |
createdDate |
timestamp | Heure de création de tâche. |
lastModifiedDate |
timestamp ou null | Heure de la dernière modification de tâche. |
lastRefreshDateTime |
timestamp ou null | Heure d’actualisation des données du groupe de tâches ; pas le moment où le client a récupéré la tâche. |
resolvedDate |
timestamp ou null | Heure de résolution, quand elle est disponible. |
version |
string | Version de stockage opaque. Conservez sa valeur, y compris les guillemets incorporés ; ne l’analysez pas. |
Important
Les ID de tâche sont des chaînes opaques, et non des GUID. Copiez à partir d’une réponse de liste ou de détail et encodez-la taskId une fois en tant que segment de chemin d’accès unique. Ne construisez pas d’ID, divisez-les en identificateurs d’entreprise, ajoutez des espaces blancs ou encodez-les en base64. Les deux-points encodés dans les exemples sont intentionnels.
Détails de la tâche de conformité
Décrit une tâche de conformité unique avec des détails, des notes et une activité récente spécifiques au flux. Inclut toutes les propriétés de tâche de conformité ainsi que les propriétés suivantes.
| Propriété | Type | Description |
|---|---|---|
details |
object | Champs de détails spécifiques au flux. L’exemple de réponse détaillée est destiné à la détection des anomalies d’utilisation ; d’autres exigences peuvent retourner différents champs ou un objet vide. |
notes |
chaîne ou null | Notes de tâche existantes. L’opération d’état de cette API ne peut pas mettre à jour les notes. |
activityLog |
tableau de ressources d’activité de tâche de conformité | Jusqu’à 50 entrées d’activité conservées, la plus récente en premier. |
activityLogTruncated |
booléen | True lorsque l’historique des activités est tronqué. Ne traitez pas le tableau comme une piste d’audit complète. |
Activité des tâches de conformité
Décrit une modification enregistrée d’une tâche de conformité. Les valeurs facultatives peuvent être null.
| Propriété | Type | Description |
|---|---|---|
date |
timestamp | Date et heure de l’activité. |
action |
string | Action enregistrée, telle que FeedCreated. |
oldStatus |
chaîne ou null | État de la tâche avant la modification, lorsqu’elle est disponible. |
newStatus |
chaîne ou null | État de la tâche après la modification, lorsqu’elle est disponible. |
changeReason |
chaîne ou null | Raison de la modification, quand elle est disponible. |
notes |
chaîne ou null | Remarques associées à l’activité, le cas échéant. |
Collection de tâches de conformité
Décrit une page des tâches de conformité.
| Propriété | Type | Description |
|---|---|---|
value |
tableau de ressources de tâche de conformité | Tâches sur la page active. Un résultat vide est {"value":[]}. |
@odata.nextLink |
string | URL de la page suivante. Présentez uniquement lorsque d’autres résultats existent. Suivez le lien retourné plutôt que de construire un jeton de continuation. |
La collection n’a aucune propriété total-count. Pour connaître le comportement de continuation et l’expiration, consultez Pagination.
Évaluation du temps de réponse
Décrit le temps moyen de votre organisation partenaire au premier changement d’état pour les tâches de conformité. Il s’agit d’une évaluation à l’échelle du partenaire, et non du temps écoulé, du temps de résolution finale ou de la latence de l’API HTTP.
| Propriété | Type | Description |
|---|---|---|
completion |
string | Résultat de l’évaluation : complete, notCompleteou unknown. Pas d’état de tâche. |
thresholdSeconds |
entier | Seuil d’évaluation, actuellement 86 400 secondes (24 heures). |
averageDurationSeconds |
entier ou null | Durée moyenne mesurée en secondes, arrondie à une seconde entière. Null lorsqu’aucune mesure n’est disponible. |
sampleCount |
entier ou null | Nombre d’exemples de tâches mesurables inclus dans la moyenne. |
availability |
string | Disponibilité de la preuve de calcul sous-jacente : available, partialou unavailable. Inspectez cela séparément de completion. |
reason |
chaîne ou null | Explication de la preuve manquante/partielle, telle que noHistory, , insufficientHistorypartialHistory, , truncatedHistoryou registryPartial. Null si ce n’est pas nécessaire. |
definitionVersion |
entier | Version de la définition de mesure. |
activeFeedSetVersion |
chaîne ou null | Version opaque identifiant le jeu de flux actif utilisé dans l’évaluation. |
windowStart |
timestamp ou null | Début de la fenêtre de cohorte de mesure, inclusive. |
windowEnd |
timestamp ou null | Fin de la fenêtre de cohorte de mesure, exclusive. |
calculatedAt |
timestamp ou null | Temps de calcul. |
expiresAt |
timestamp ou null | Délai d’expiration de l’évaluation. |
Pour connaître les règles de mesure et les limitations des preuves, consultez Obtenir l’évaluation du temps de réponse.
Demande de mise à jour de l’état de la tâche
Décrit le corps de la demande pour la mise à jour de l’état du flux de travail d’une tâche de conformité.
| Propriété | Type | Required | Description |
|---|---|---|---|
status |
string | Yes | Exactement In Progress, Ready for Reviewou Ignore. |
Fournir uniquement status. Pour connaître les transitions et restrictions autorisées, consultez Mettre à jour l’état d’une tâche de conformité.
Résultat de la mise à jour de l’état de la tâche
Décrit une mise à jour d’état confirmée.
| Propriété | Type | Description |
|---|---|---|
taskId |
string | Identificateur opaque de la tâche mise à jour. |
status |
string | État de la tâche confirmée. |
lastModifiedDate |
timestamp | Heure de modification des tâches. |
version |
string | Version de stockage opaque après la mise à jour, y compris les guillemets incorporés. |
Error
Décrit une erreur d’API de conformité ordinaire. Les échecs d’authentification/MFA et les échecs front-door peuvent utiliser différents corps ; ne supposez pas que chaque erreur correspond à cette forme.
| Propriété | Type | Description |
|---|---|---|
code |
entier | Code d’erreur numérique. Utilisez ensemble le code d’état HTTP et le corps de la réponse pour déterminer l’action suivante. |
description |
string | Description de l’erreur. |
source |
string | Identificateur du service qui a généré l’erreur, par PCFraudEventsexemple . |
Pour obtenir des codes d’état HTTP et un exemple de corps d’erreur, consultez Les codes de réussite et d’erreur de réponse.
Operations
Utilisez les opérations REST suivantes avec ces ressources.
| Operation | méthode | URI de la requête |
|---|---|---|
| Répertorier les tâches de conformité | GET | /v1/compliance/tasks |
| Obtenir une tâche de conformité | GET | /v1/compliance/tasks/{taskId} |
| Obtenir l’évaluation du temps de réponse | GET | /v1/compliance/responseTime |
| Mettre à jour l’état d’une tâche de conformité | PUT | /v1/compliance/tasks/{taskId}/status |
Prerequisites
- Configurez une application Microsoft Entra pour l’accès aux API de l’Espace partenaires. Pour obtenir des conseils d’installation, consultez Configurer l’accès à l’API dans l’Espace partenaires.
- Obtenez un jeton d’accès à l’aide de l’authentification App+Utilisateur, comme décrit dans l’authentification de l’Espace partenaires. L’authentification par application uniquement n’est pas prise en charge par ces opérations.
- L’utilisateur délégué doit satisfaire l’authentification multifacteur et disposer de l’autorisation d’afficher les informations de conformité/sécurité. La mise à jour de l’état nécessite l’autorisation de gestion ; L’autorisation en lecture seule est insuffisante.
- L’API doit être activée pour l’organisation partenaire. Les demandes fonctionnent sur le locataire du partenaire authentifié, et non sur un locataire sélectionné par le biais d’un paramètre de requête ou d’un en-tête.
Pour obtenir des conseils sur l’intégration de l’authentification multifacteur, consultez Activer le modèle d’application sécurisé.
Conventions de requête REST
L’URL de base de production est https://api.partnercenter.microsoft.com. Les exemples ci-dessous utilisent cette URL. Les exemples n’établissent pas de disponibilité pour une organisation partenaire particulière ; l’API doit être activée pour cette organisation.
En-têtes de requête
Les en-têtes suivants s’appliquent à ces opérations. Pour obtenir des définitions d’en-tête générales, consultez les en-têtes REST de l’Espace partenaires. Tous les en-têtes de l’Espace partenaires ne s’appliquent pas à chaque opération.
| Header | Usage |
|---|---|
Authorization |
Required.
Bearer <token>, à l’aide d’un jeton d’accès obtenu via l’authentification de l’Espace partenaires. Ne publiez jamais ou journaliser un jeton réel. |
Accept |
Utilisez application/json. |
Content-Type |
Obligatoire pour PUT : application/json. Les requêtes GET n’ont pas de corps de requête. |
MS-CorrelationId |
Fournissez un nouveau GUID pour chaque appel pour mettre en corrélation les journaux et les traces réseau lors de la résolution des problèmes. |
MS-RequestId |
Fournissez un GUID identifiant la requête. Pour connaître les conventions de nouvelle tentative générales, consultez la référence des en-têtes REST de l’Espace partenaires ; pour les mises à jour d’état, suivez les instructions de récupération spécifiques au point de terminaison ci-dessous. |
Note
L’opération de mise à jour d’état ne nécessite If-Matchpas . Ne supposez pas qu’un ID de demande ou un ETag retourné rend une mise à jour d’état incertaine en toute sécurité pour la relecture. Récupérez la tâche avant de décider s’il faut réessayer.
Répertorier les tâches de conformité
Récupérez une liste paginé des tâches de conformité pour votre organisation partenaire, notamment l’état, la gravité, l’échéance et les informations client ou abonnement disponibles. Utilisez des filtres pour affiner les résultats par état, groupe de tâches, exigence, locataire client ou abonnement. Utilisez les ID de tâche retournés pour récupérer les détails ou mettre à jour l’état d’une tâche.
Requête REST
| méthode | URI de la requête |
|---|---|
| GET | https://api.partnercenter.microsoft.com/v1/compliance/tasks |
Paramètres de la requête
| Nom | Type | Required | Description |
|---|---|---|---|
$top |
entier | No | Taille de page comprise entre 1 et 100. Valeur par défaut : 100. |
$filter |
string | No | Expressions d’égalité prises en charge décrites ci-dessous. Longueur maximale : 1 000 caractères. |
$skiptoken |
string | No | Jeton de continuation opaque fourni dans @odata.nextLink. Suivez le lien retourné plutôt que de générer un jeton. |
Champs de filtre pris en charge : status, , taskGroupIdrequirementId, customerTenantIdet subscriptionId. Utiliser eq avec des valeurs de chaîne entre guillemets uniques et and entre les prédicats. Un groupe entre parenthèses or est pris en charge uniquement pour les valeurs d’état, par exemple :
requirementId eq 'UsageAnomalyDetection' and (status eq 'New' or status eq 'In Progress')
Les valeurs de filtre d’état prises en charge sont New, , In ProgressReady for Review, Completeet Ignore. Échappez une apostrophe littérale à l’intérieur d’une valeur sous la forme de deux apostrophes et des valeurs de requête encodées par URL. Ce point de terminaison prend en charge une syntaxe de style OData limitée, et non une syntaxe OData générale : $orderby, , $skip$selectet les paramètres de requête répétés ne sont pas pris en charge.
Corps de la demande
None.
Exemple de requête
GET https://api.partnercenter.microsoft.com/v1/compliance/tasks?$top=1&$filter=requirementId%20eq%20%27UsageAnomalyDetection%27%20and%20status%20eq%20%27New%27 HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-CorrelationId: aaaaaaaa-aaaa-4aaa-8aaa-aaaaaaaaaaaa
MS-RequestId: bbbbbbbb-bbbb-4bbb-8bbb-bbbbbbbbbbbb
Réponse REST
Si elle réussit, cette méthode retourne 200 OK et une collection de tâches de conformité dans le corps de la réponse. Un résultat vide est {"value":[]}; il n’existe aucune propriété total-count.
Exemple de réponse
{
"value": [
{
"taskId": "usage-anomaly-detection::11111111-1111-4111-8111-111111111111-22222222-2222-4222-8222-222222222222",
"taskGroupId": "usage-anomaly-detection",
"taskGroupTitle": "Usage Anomaly Detection",
"taskGroupClassification": "Fraud",
"isEligibilityRequirement": false,
"requirementId": "UsageAnomalyDetection",
"taskTitle": "Action Required: Subscription Usage Anomaly Detected",
"status": "New",
"isIgnorable": true,
"customerTenantId": null,
"customerName": "Contoso Customer",
"subscriptionId": "11111111-1111-4111-8111-111111111111",
"subscriptionName": null,
"severity": "High",
"deadlineDateTime": "2026-10-15T12:00:00.000Z",
"createdDate": "2026-09-15T12:00:00.000Z",
"lastModifiedDate": "2026-09-15T12:00:00.000Z",
"lastRefreshDateTime": "2026-10-01T11:00:00.000Z",
"resolvedDate": null,
"version": "\"33333333-3333-4333-8333-333333333333\""
}
],
"@odata.nextLink": "https://api.partnercenter.microsoft.com/v1/compliance/tasks?$top=1&$filter=requirementId%20eq%20%27UsageAnomalyDetection%27%20and%20status%20eq%20%27New%27&$skiptoken=55555555-5555-4555-8555-555555555555"
}
Pagination
Suivez @odata.nextLink la même authentification jusqu’à ce que la propriété soit absente. Ne modifiez pas la taille ou le filtre de la page pendant une traversée. Les continuations expirent une heure après la première page ; la récupération d’une autre page n’étend pas cette expiration. Un jeton non valide, expiré ou incompatible retourne 400 ; redémarrez à partir de la demande de liste initiale. Les modifications apportées à la configuration de flux actif peuvent invalider une continuation. La pagination d’une liste de modifications n’est pas un instantané à un point dans le temps.
Obtenir une tâche de conformité
Récupérez une tâche de conformité unique à l’aide d’un ID de tâche retourné par le point de terminaison de liste. La réponse inclut les propriétés récapitulatives de la tâche ainsi que les détails spécifiques au flux, les notes existantes et l’historique des activités récentes. Utilisez cette opération pour examiner une tâche ou actualiser son état actuel avant de décider d’une mise à jour d’état.
Requête REST
| méthode | URI de la requête |
|---|---|
| GET | https://api.partnercenter.microsoft.com/v1/compliance/tasks/{taskId} |
Paramètres d’URI
| Nom | Type | Required | Description |
|---|---|---|---|
taskId |
string | Yes | Identificateur de tâche opaque retourné par une réponse de liste ou de détail, codé en URL une fois en tant que segment de chemin d’accès unique. |
Corps de la demande
None. Aucun paramètre de requête n’est pris en charge.
Exemple de requête
GET https://api.partnercenter.microsoft.com/v1/compliance/tasks/usage-anomaly-detection%3A%3A11111111-1111-4111-8111-111111111111-22222222-2222-4222-8222-222222222222 HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-CorrelationId: aaaaaaaa-aaaa-4aaa-8aaa-aaaaaaaaaaaa
MS-RequestId: bbbbbbbb-bbbb-4bbb-8bbb-bbbbbbbbbbbb
Réponse REST
Si elle réussit, cette méthode retourne 200 détails de tâche ok et de conformité dans le corps de la réponse. L’en-tête ETag de réponse correspond version.
Exemple de réponse
{
"details": {
"alertId": "11111111-1111-4111-8111-111111111111-22222222-2222-4222-8222-222222222222",
"alertDisplayName": "Action Required: Subscription Usage Anomaly Detected",
"severity": "High",
"subscriptionId": "11111111-1111-4111-8111-111111111111",
"customerName": "Contoso Customer",
"detectedTime": "2026-09-15T12:00:00.000Z",
"description": "Unusual subscription usage was detected. Review the affected subscription."
},
"notes": null,
"activityLog": [
{
"date": "2026-09-15T12:00:00.000Z",
"action": "FeedCreated",
"oldStatus": null,
"newStatus": "New",
"changeReason": null,
"notes": null
}
],
"activityLogTruncated": false,
"taskId": "usage-anomaly-detection::11111111-1111-4111-8111-111111111111-22222222-2222-4222-8222-222222222222",
"taskGroupId": "usage-anomaly-detection",
"taskGroupTitle": "Usage Anomaly Detection",
"taskGroupClassification": "Fraud",
"isEligibilityRequirement": false,
"requirementId": "UsageAnomalyDetection",
"taskTitle": "Action Required: Subscription Usage Anomaly Detected",
"status": "New",
"isIgnorable": true,
"customerTenantId": null,
"customerName": "Contoso Customer",
"subscriptionId": "11111111-1111-4111-8111-111111111111",
"subscriptionName": null,
"severity": "High",
"deadlineDateTime": "2026-10-15T12:00:00.000Z",
"createdDate": "2026-09-15T12:00:00.000Z",
"lastModifiedDate": "2026-09-15T12:00:00.000Z",
"lastRefreshDateTime": "2026-10-01T11:00:00.000Z",
"resolvedDate": null,
"version": "\"33333333-3333-4333-8333-333333333333\""
}
Obtenir l’évaluation du temps de réponse
Récupérez l’évaluation de votre organisation partenaire de la rapidité avec laquelle les tâches de conformité reçoivent leur premier changement d’état, mesurée par rapport au seuil actuel de 24 heures. L’évaluation couvre les tâches ouvertes au cours des 30 jours précédents et inclut le temps écoulé pour les tâches mesurables qui n’ont pas encore changé d’état. Elle retourne la durée moyenne, le nombre d’échantillons, le résultat de l’évaluation et la disponibilité des preuves ; elle ne mesure pas le temps de résolution final ou la latence de l’API.
Requête REST
| méthode | URI de la requête |
|---|---|
| GET | https://api.partnercenter.microsoft.com/v1/compliance/responseTime |
Aucun paramètre de requête n’est pris en charge.
Corps de la demande
None.
Exemple de requête
GET https://api.partnercenter.microsoft.com/v1/compliance/responseTime HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-CorrelationId: aaaaaaaa-aaaa-4aaa-8aaa-aaaaaaaaaaaa
MS-RequestId: bbbbbbbb-bbbb-4bbb-8bbb-bbbbbbbbbbbb
Réponse REST
Si elle réussit, cette méthode retourne 200 OK et une évaluation du temps de réponse dans le corps de la réponse.
Exemple de réponse
{
"completion": "notComplete",
"thresholdSeconds": 86400,
"averageDurationSeconds": 108000,
"sampleCount": 10,
"availability": "available",
"reason": null,
"definitionVersion": 1,
"activeFeedSetVersion": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
"windowStart": "2026-09-01T12:00:00.000Z",
"windowEnd": "2026-10-01T12:00:00.000Z",
"calculatedAt": "2026-10-01T12:00:00.000Z",
"expiresAt": "2026-10-01T12:10:00.000Z"
}
Règles d’évaluation
La définition actuelle considère les tâches ouvertes au cours des 30 jours précédents dans les flux actifs, à l’exclusion des tâches initialement terminées. Il mesure le temps entre l’événement d’ouverture enregistré et le premier changement d’état enregistré ; une tâche mesurable sans modification contribue au temps écoulé jusqu’au temps de calcul. L’historique manquant ou tronqué peut réduire la disponibilité. La moyenne n’est donc pas limitée aux tâches déjà effectuées et n’est pas le temps de résoudre la dernière résolution.
Avec des preuves mesurables, une moyenne d’au moins 86 400 secondes est évaluée à complete; au-dessus de celle-ci est évaluée .notComplete Un registre de flux partiel est évalué à unknown. Sans historique, l’implémentation actuelle peut retourner completion: "complete" avec availability: "unavailable" et une moyenne null ; n’interprètez pas cela comme un temps de réponse de zéro seconde mesuré. Les objets d’évaluation réussis peuvent représenter des preuves partielles/indisponibles ; les échecs de dépendance peuvent retourner 503 à la place.
Mettre à jour l’état d’une tâche de conformité
Mettez à jour l’état du flux de travail d’une tâche en cours, Prêt pour révision ou Ignorer, soumis à l’état actuel de la tâche et indique si son flux autorise Ignorer. Cette opération nécessite une autorisation de gestion et retourne l’état confirmé, l’heure de modification et la version. La modification de l’état enregistre la progression de votre flux de travail ; il ne corrige pas le problème sous-jacent ou vous permet de marquer la tâche Terminée.
Requête REST
| méthode | URI de la requête |
|---|---|
| PUT | https://api.partnercenter.microsoft.com/v1/compliance/tasks/{taskId}/status |
Paramètres d’URI
| Nom | Type | Required | Description |
|---|---|---|---|
taskId |
string | Yes | Identificateur de tâche opaque retourné par une réponse de liste ou de détail, codé en URL une fois en tant que segment de chemin d’accès unique. |
Aucun paramètre de requête n’est pris en charge.
Corps de la demande
Utilisez une demande de mise à jour de l’état de la tâche contenant la propriété requise status .
Fournissez uniquementstatus. Des propriétés supplémentaires/dupliquées, un état manquant ou non chaîne et un JSON mal formé retournent 400.
-
NewetCompletene peut pas être défini par cette opération ; Terminé est géré par le système. - Une tâche complète ne peut pas être modifiée par cette opération.
- L’option Ignorer n’est autorisée que lorsque le flux l’autorise (
isIgnorable). - Une tâche ignorée peut rester ignorée ou être rouverte en cours, mais ne peut pas passer directement à Ready for Review.
- Le serveur vérifie l’accès concurrentiel en interne. Un en-tête client
If-Matchn’est pas requis par ce point de terminaison ; la version retournée n’est pas une condition préalable du client documentée.
Exemple de requête
PUT https://api.partnercenter.microsoft.com/v1/compliance/tasks/usage-anomaly-detection%3A%3A11111111-1111-4111-8111-111111111111-22222222-2222-4222-8222-222222222222/status HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
Content-Type: application/json
MS-CorrelationId: cccccccc-cccc-4ccc-8ccc-cccccccccccc
MS-RequestId: dddddddd-dddd-4ddd-8ddd-dddddddddddd
{
"status": "In Progress"
}
Réponse REST
Si elle réussit, cette méthode retourne 200 OK et une mise à jour de l’état de la tâche entraîne le corps de la réponse. L’en-tête ETag de réponse correspond à la version retournée.
Exemple de réponse
{
"taskId": "usage-anomaly-detection::11111111-1111-4111-8111-111111111111-22222222-2222-4222-8222-222222222222",
"status": "In Progress",
"lastModifiedDate": "2026-10-01T12:05:00.000Z",
"version": "\"44444444-4444-4444-8444-444444444444\""
}
Important
Une mise à jour d’état enregistre une modification de flux de travail ; elle ne corrige pas elle-même le problème sous-jacent. Sur un conflit, un délai d’expiration ou une réponse indiquant que la mise à jour n’a pas pu être confirmée, GET la tâche avant de décider s’il faut réessayer. Certaines défaillances peuvent se produire après l’enregistrement de l’état source. Ne relectez pas aveuglement un PUT.
Réussite de la réponse et codes d’erreur
Consultez les codes d’erreur REST de l’Espace partenaires pour obtenir des conseils généraux. Les cas suivants sont spécifiques à ces opérations :
| État HTTP | Signification / action du client |
|---|---|
| 200 | Liste, détail, évaluation ou mise à jour d’état réussie. |
| 400 | ID non valide, paramètre de requête non pris en charge/répété, taille/continuation de filtre/page non valide, corps non valide ou transition d’état non autorisée. Corrigez la demande ; redémarrez la pagination pour les continuations non valides. |
| 401 | L’authentification est manquante/non valide, une authentification supplémentaire est requise ou l’authentification multifacteur est manquante. Obtenez un jeton d’utilisateur authentifié approprié. |
| 403 | L’appelant n’est pas un utilisateur partenaire délégué pris en charge, la validation du locataire échoue ou l’autorisation est refusée. |
| 404 | La tâche n’est pas visible par le partenaire authentifié/dans un flux actif, ou l’API n’est pas activée. |
| 409 | Impossible de confirmer la modification simultanée ou la synchronisation source. Actualisez la tâche avant de réessayer. |
| 415 | La demande PUT est manquante pour le type de contenu JSON requis. |
| 503 | Les données de conformité, l’autorisation, le stockage de pagination ou une dépendance requise sont temporairement indisponibles. Pour les écritures, inspectez la réponse et actualisez avant de réessayer. |
Exemple de corps non trouvé de la tâche :
{
"code": 600026,
"description": "Compliance task not found.",
"source": "PCFraudEvents"
}
Les erreurs de conformité ordinaires utilisent la ressource d’erreur . Les échecs d’authentification/MFA et les échecs front-door peuvent utiliser différents corps. Réponses définies Cache-Control: no-store, private et Vary: Authorization.
Troubleshooting
Vérifiez l’URL de la requête, la version de l’API, les en-têtes et la mise en forme JSON en cas d’échec d’une requête. Utilisez ensemble le code d’état HTTP et le corps de la réponse pour déterminer l’action suivante. Pour obtenir des conseils généraux sur le débogage REST, consultez Test et débogage.
Enregistrez l’heure, l’opération, l’état HTTP et les ID de requête et de corrélation afin qu’un appel ayant échoué puisse être suivi. Protégez les jetons d’accès lors de la capture des journaux ou des traces réseau.
Pour les demandes de liste, utilisez le retour @odata.nextLink inchangé. Redémarrez à partir de la requête initiale si une continuation expire. Pour les mises à jour d’état avec un résultat incertain, récupérez l’état actuel de la tâche avant de réessayer.