Show Menu
SUJETS×

requêtes planifiées

Exemples d’appels d’API

Maintenant que vous savez quels en-têtes utiliser, vous êtes prêt à commencer à lancer des appels à l’API Requête Service. Les sections suivantes décrivent les différents appels d’API que vous pouvez effectuer à l’aide de l’API Requête Service. Chaque appel comprend le format général de l’API, un exemple de requête indiquant les en-têtes requis et un exemple de réponse.

Récupération d’une liste de requêtes planifiées

Vous pouvez récupérer une liste de toutes les requêtes planifiées pour votre organisation IMS en adressant une demande GET au point de /schedules terminaison.
Format d’API
GET /schedules
GET /schedules?{QUERY_PARAMETERS}

Propriété
Description
{QUERY_PARAMETERS}
( Facultatif ) Paramètres ajoutés au chemin de requête qui configurent les résultats renvoyés dans la réponse. Plusieurs paramètres peuvent être inclus, séparés par des esperluettes ( & ). Les paramètres disponibles sont répertoriés ci-dessous.
Paramètres de Requête
Voici une liste des paramètres de requête disponibles pour répertorier les requêtes planifiées. Tous ces paramètres sont facultatifs. L'appel à ce point de terminaison sans paramètre récupère toutes les requêtes planifiées disponibles pour votre organisation.
Paramètre
Description
orderby
Indique le champ selon lequel les résultats doivent être commandés. Les champs pris en charge sont created et updated . Par exemple, orderby=created triera les résultats par ordre croissant. L'ajout d'un élément - avant création ( orderby=-created ) triera les éléments par création dans l'ordre décroissant.
limit
Indique la limite de taille de page pour contrôler le nombre de résultats inclus dans une page. ( Default value: 20 )
start
Décale la liste de réponse à l’aide d’une numérotation à base zéro. Par exemple, start=2 renvoie une liste commençant à partir de la troisième requête répertoriée. ( Default value: 0 )
property
Filtrez les résultats en fonction des champs. Les filtres doivent être une séquence d’échappement HTML. Les virgules sont utilisées pour combiner plusieurs ensembles de filtres. Les champs pris en charge sont created , templateId et userId . La liste des opérateurs pris en charge est > (supérieure à), < (inférieure à) et == (égale à). Par exemple, userId==6ebd9c2d-494d-425a-aa91-24033f3abeec renvoie toutes les requêtes planifiées où l’ID utilisateur est spécifié.
Requête
La requête suivante récupère la dernière requête planifiée créée pour votre organisation IMS.
curl -X GET https://platform.adobe.io/data/foundation/query/schedules?limit=1
 -H 'Authorization: Bearer {ACCESS_TOKEN}' \
 -H 'x-gw-ims-org-id: {IMS_ORG}' \
 -H 'x-api-key: {API_KEY}' \
 -H 'x-sandbox-name: {SANDBOX_NAME}'

Réponse
Une réponse réussie renvoie l’état HTTP 200 avec une liste de requêtes planifiées pour l’organisation IMS spécifiée. La réponse suivante renvoie la dernière requête planifiée créée pour votre organisation IMS.
{
    "schedules": [
        {
            "state": "ENABLED",
            "query": {
                "dbName": "prod:all",
                "sql": "SELECT * FROM accounts;",
                "name": "Sample Scheduled Query",
                "description": "A sample of a scheduled query."
            },
            "updatedUserId": "{USER_ID}",
            "version": 2,
            "id": "e95186d65a28abf00a495d82_28e74200-e3de-11e9-8f5d-7f27416c5f0d_sample_scheduled_query7omob151bm_birvwm",
            "updated": "1578523458919",
            "schedule": {
                "schedule": "30 * * * *",
                "startDate": "2020-01-08T12:30:00.000Z",
                "maxActiveRuns": 1
            },
            "userId": "{USER_ID}",
            "created": "1578523458919",
            "_links": {
                "enable": {
                    "href": "https://platform.adobe.io/data/foundation/query/schedules/e95186d65a28abf00a495d82_28e74200-e3de-11e9-8f5d-7f27416c5f0d_sample_scheduled_query7omob151bm_birvwm",
                    "method": "PATCH",
                    "body": "{ \"op\": \"enable\" }"
                },
                "runs": {
                    "href": "https://platform.adobe.io/data/foundation/query/schedules/e95186d65a28abf00a495d82_28e74200-e3de-11e9-8f5d-7f27416c5f0d_sample_scheduled_query7omob151bm_birvwm/runs",
                    "method": "GET"
                },
                "self": {
                    "href": "https://platform.adobe.io/data/foundation/query/schedules/e95186d65a28abf00a495d82_28e74200-e3de-11e9-8f5d-7f27416c5f0d_sample_scheduled_query7omob151bm_birvwm",
                    "method": "GET"
                },
                "delete": {
                    "href": "https://platform.adobe.io/data/foundation/query/schedules/e95186d65a28abf00a495d82_28e74200-e3de-11e9-8f5d-7f27416c5f0d_sample_scheduled_query7omob151bm_birvwm",
                    "method": "DELETE"
                },
                "disable": {
                    "href": "https://platform.adobe.io/data/foundation/query/schedules/e95186d65a28abf00a495d82_28e74200-e3de-11e9-8f5d-7f27416c5f0d_sample_scheduled_query7omob151bm_birvwm",
                    "method": "PATCH",
                    "body": "{ \"op\": \"disable\" }"
                },
                "trigger": {
                    "href": "https://platform.adobe.io/data/foundation/query/schedules/e95186d65a28abf00a495d82_28e74200-e3de-11e9-8f5d-7f27416c5f0d_sample_scheduled_query7omob151bm_birvwm/runs",
                    "method": "POST"
                }
            }
        }
    ],
    "_page": {
        "orderby": "+created",
        "start": "2020-01-08T22:44:18.919Z",
        "count": 1
    },
    "_links": {},
    "version": 2
}

Créer une nouvelle requête planifiée

Vous pouvez créer une requête planifiée en adressant une requête POST au point de /schedules terminaison.
Format d’API
POST /schedules

Requête
curl -X POST https://platform.adobe.io/data/foundation/query/schedules
 -H 'Authorization: Bearer {ACCESS_TOKEN}' \
 -H 'x-gw-ims-org-id: {IMS_ORG}' \
 -H 'x-api-key: {API_KEY}' \
 -H 'x-sandbox-name: {SANDBOX_NAME}'
 -d '
 {
     "query": {
         "dbName": "prod:all",
         "sql": "SELECT * FROM accounts;",
         "name": "Sample Scheduled Query",
         "description": "A sample of a scheduled query."
     }, 
     "schedule": {
         "schedule": "30 * * * *",
         "startDate": "2020-01-08T12:30:00.000Z"
     }
 }
 '

Propriété
Description
query.dbName
Nom de la base de données pour laquelle vous créez une requête planifiée.
query.sql
requête SQL que vous souhaitez créer.
query.name
Nom de la requête planifiée.
schedule.schedule
Le calendrier cron de la requête. Pour plus d'informations sur les calendriers cron, veuillez lire la documentation sur le format d'expression cron. Dans cet exemple, "30 * * * *" signifie que la requête s’exécute toutes les heures à la note de 30 minutes.
schedule.startDate
Date de début de votre requête planifiée, écrite en tant qu’horodatage UTC.
Réponse
Une réponse réussie renvoie l’état HTTP 202 (Accepté) avec les détails de votre nouvelle requête planifiée. Une fois que la requête planifiée est activée, elle state passe de REGISTERING à ENABLED .
{
    "state": "REGISTERING",
    "query": {
        "dbName": "prod:all",
        "sql": "SELECT * FROM accounts;",
        "name": "Sample Scheduled Query",
        "description": "A sample of a scheduled query."
    },
    "updatedUserId": "{USER_ID}",
    "version": 2,
    "id": "e95186d65a28abf00a495d82_28e74200-e3de-11e9-8f5d-7f27416c5f0d_sample_scheduled_query7omob151bm_birvwm",
    "schedule": {
        "schedule": "30 * * * *",
        "startDate": "2020-01-08T12:30:00.000Z",
        "maxActiveRuns": 1
    },
    "userId": "{USER_ID}",
    "_links": {
        "enable": {
            "href": "https://platform.adobe.io/data/foundation/query/schedules/e95186d65a28abf00a495d82_28e74200-e3de-11e9-8f5d-7f27416c5f0d_sample_scheduled_query7omob151bm_birvwm",
            "method": "PATCH",
            "body": "{ \"op\": \"enable\" }"
        },
        "runs": {
            "href": "https://platform.adobe.io/data/foundation/query/schedules/e95186d65a28abf00a495d82_28e74200-e3de-11e9-8f5d-7f27416c5f0d_sample_scheduled_query7omob151bm_birvwm/runs",
            "method": "GET"
        },
        "self": {
            "href": "https://platform.adobe.io/data/foundation/query/schedules/e95186d65a28abf00a495d82_28e74200-e3de-11e9-8f5d-7f27416c5f0d_sample_scheduled_query7omob151bm_birvwm",
            "method": "GET"
        },
        "delete": {
            "href": "https://platform.adobe.io/data/foundation/query/schedules/e95186d65a28abf00a495d82_28e74200-e3de-11e9-8f5d-7f27416c5f0d_sample_scheduled_query7omob151bm_birvwm",
            "method": "DELETE"
        },
        "disable": {
            "href": "https://platform.adobe.io/data/foundation/query/schedules/e95186d65a28abf00a495d82_28e74200-e3de-11e9-8f5d-7f27416c5f0d_sample_scheduled_query7omob151bm_birvwm",
            "method": "PATCH",
            "body": "{ \"op\": \"disable\" }"
        },
        "trigger": {
            "href": "https://platform.adobe.io/data/foundation/query/schedules/e95186d65a28abf00a495d82_28e74200-e3de-11e9-8f5d-7f27416c5f0d_sample_scheduled_query7omob151bm_birvwm/runs",
            "method": "POST"
        }
    }
}

Vous pouvez utiliser la valeur de _links.delete pour supprimer la requête planifiée que vous avez créée.

Demander les détails d'une requête planifiée spécifiée

Vous pouvez récupérer des informations pour une requête planifiée spécifique en envoyant une requête GET au point de /schedules terminaison et en indiquant son identifiant dans le chemin de requête.
Format d’API
GET /schedules/{SCHEDULE_ID}

Propriété
Description
{SCHEDULE_ID}
Valeur id de la requête planifiée que vous souhaitez récupérer.
Requête
curl -X GET https://platform.adobe.io/data/foundation/query/schedules/e95186d65a28abf00a495d82_28e74200-e3de-11e9-8f5d-7f27416c5f0d_sample_scheduled_query7omob151bm_birvwm
 -H 'Authorization: Bearer {ACCESS_TOKEN}' \
 -H 'x-gw-ims-org-id: {IMS_ORG}' \
 -H 'x-api-key: {API_KEY}' \
 -H 'x-sandbox-name: {SANDBOX_NAME}'

Réponse
Une réponse réussie renvoie l’état HTTP 200 avec les détails de la requête planifiée spécifiée.
{
    "state": "ENABLED",
    "query": {
        "dbName": "prod:all",
        "sql": "SELECT * FROM accounts;",
        "name": "Sample Scheduled Query",
        "description": "A sample of a scheduled query."
    },
    "updatedUserId": "{USER_ID}",
    "version": 2,
    "id": "e95186d65a28abf00a495d82_28e74200-e3de-11e9-8f5d-7f27416c5f0d_sample_scheduled_query7omob151bm_birvwm",
    "updated": "1578523458919",
    "schedule": {
        "schedule": "30 * * * *",
        "startDate": "2020-01-08T12:30:00.000Z",
        "maxActiveRuns": 1
    },
    "userId": "{USER_ID}",
    "created": "1578523458919",
    "_links": {
        "enable": {
            "href": "https://platform.adobe.io/data/foundation/query/schedules/e95186d65a28abf00a495d82_28e74200-e3de-11e9-8f5d-7f27416c5f0d_sample_scheduled_query7omob151bm_birvwm",
            "method": "PATCH",
            "body": "{ \"op\": \"enable\" }"
        },
        "runs": {
            "href": "https://platform.adobe.io/data/foundation/query/schedules/e95186d65a28abf00a495d82_28e74200-e3de-11e9-8f5d-7f27416c5f0d_sample_scheduled_query7omob151bm_birvwm/runs",
            "method": "GET"
        },
        "self": {
            "href": "https://platform.adobe.io/data/foundation/query/schedules/e95186d65a28abf00a495d82_28e74200-e3de-11e9-8f5d-7f27416c5f0d_sample_scheduled_query7omob151bm_birvwm",
            "method": "GET"
        },
        "delete": {
            "href": "https://platform.adobe.io/data/foundation/query/schedules/e95186d65a28abf00a495d82_28e74200-e3de-11e9-8f5d-7f27416c5f0d_sample_scheduled_query7omob151bm_birvwm",
            "method": "DELETE"
        },
        "disable": {
            "href": "https://platform.adobe.io/data/foundation/query/schedules/e95186d65a28abf00a495d82_28e74200-e3de-11e9-8f5d-7f27416c5f0d_sample_scheduled_query7omob151bm_birvwm",
            "method": "PATCH",
            "body": "{ \"op\": \"disable\" }"
        },
        "trigger": {
            "href": "https://platform.adobe.io/data/foundation/query/schedules/e95186d65a28abf00a495d82_28e74200-e3de-11e9-8f5d-7f27416c5f0d_sample_scheduled_query7omob151bm_birvwm/runs",
            "method": "POST"
        }
    }
}

Vous pouvez utiliser la valeur de _links.delete pour supprimer la requête planifiée que vous avez créée.

Mettre à jour les détails d’une requête planifiée spécifiée

Vous pouvez mettre à jour les détails d’une requête planifiée spécifiée en envoyant une requête PATCH au point de /schedules terminaison et en indiquant son identifiant dans le chemin de requête.
La demande PATCH prend en charge deux chemins différents : /state et /schedule/schedule .

Mettre à jour l'état de la requête planifiée

Vous pouvez utiliser /state pour mettre à jour l'état de la requête planifiée sélectionnée - ACTIVÉE ou DÉSACTIVÉE. Pour mettre à jour l’état, vous devez définir la valeur comme enable ou disable .
Format d’API
PATCH /schedules/{SCHEDULE_ID}

Propriété
Description
{SCHEDULE_ID}
Valeur id de la requête planifiée que vous souhaitez récupérer.
Requête
Cette requête d’API utilise la syntaxe de correctif JSON pour sa charge utile. Pour plus d’informations sur le fonctionnement du correctif JSON, consultez le document de base de l’API.
curl -X PATCH https://platform.adobe.io/data/foundation/query/schedules/e95186d65a28abf00a495d82_28e74200-e3de-11e9-8f5d-7f27416c5f0d_sample_scheduled_query7omob151bm_birvwm
 -H 'Authorization: Bearer {ACCESS_TOKEN}' \
 -H 'x-gw-ims-org-id: {IMS_ORG}' \
 -H 'x-api-key: {API_KEY}' \
 -H 'x-sandbox-name: {SANDBOX_NAME}'
 -d '{
     "body": [
         {
             "op": "replace",
             "path": "/state",
             "value": "disable"
         }
     ]
 }'

Propriété
Description
path
Chemin d’accès de la valeur à appliquer. Dans ce cas, puisque vous mettez à jour l’état de la requête planifiée, vous devez définir la valeur de path sur /state .
value
Valeur mise à jour de la /state . Cette valeur peut être définie sur enable ou disable pour activer ou désactiver la requête planifiée.
Réponse
Une réponse réussie renvoie l’état HTTP 202 (Accepté) avec le message suivant.
{
    "message": "Request to patch accepted",
    "statusCode": 202
}

Mettre à jour la planification de la requête planifiée

Vous pouvez utiliser /schedule/schedule pour mettre à jour la planification cron de la requête planifiée. Pour plus d'informations sur les calendriers cron, veuillez lire la documentation sur le format d'expression cron.
Format d’API
PATCH /schedules/{SCHEDULE_ID}

Propriété
Description
{SCHEDULE_ID}
Valeur id de la requête planifiée que vous souhaitez récupérer.
Requête
Cette requête d’API utilise la syntaxe de correctif JSON pour sa charge utile. Pour plus d’informations sur le fonctionnement du correctif JSON, consultez le document de base de l’API.
curl -X PATCH https://platform.adobe.io/data/foundation/query/schedules/e95186d65a28abf00a495d82_28e74200-e3de-11e9-8f5d-7f27416c5f0d_sample_scheduled_query7omob151bm_birvwm
 -H 'Authorization: Bearer {ACCESS_TOKEN}' \
 -H 'x-gw-ims-org-id: {IMS_ORG}' \
 -H 'x-api-key: {API_KEY}' \
 -H 'x-sandbox-name: {SANDBOX_NAME}'
 -d '{
     "body": [
         {
             "op": "replace",
             "path": "/schedule/schedule",
             "value": "45 * * * *"
         }
     ]
 }'

Propriété
Description
path
Chemin d’accès de la valeur à appliquer. Dans ce cas, puisque vous mettez à jour la planification de la requête planifiée, vous devez définir la valeur de path sur /schedule/schedule .
value
Valeur mise à jour de la /schedule . Cette valeur doit prendre la forme d’un calendrier cron. Dans cet exemple, la requête planifiée s’exécute toutes les heures à la barre des 45 minutes.
Réponse
Une réponse réussie renvoie l’état HTTP 202 (Accepté) avec le message suivant.
{
    "message": "Request to patch accepted",
    "statusCode": 202
}

Supprimer une requête planifiée spécifiée

Vous pouvez supprimer une requête planifiée spécifiée en adressant une requête DELETE au point de /schedules terminaison et en indiquant l’identifiant de la requête planifiée que vous souhaitez supprimer dans le chemin de requête.
La planification doit être désactivée avant d'être supprimée.
Format d’API
DELETE /schedules/{SCHEDULE_ID}

Propriété
Description
{SCHEDULE_ID}
Valeur id de la requête planifiée que vous souhaitez récupérer.
Requête
curl -X DELETE https://platform.adobe.io/data/foundation/query/schedules/e95186d65a28abf00a495d82_28e74200-e3de-11e9-8f5d-7f27416c5f0d_sample_scheduled_query7omob151bm_birvwm
 -H 'Authorization: Bearer {ACCESS_TOKEN}' \
 -H 'x-gw-ims-org-id: {IMS_ORG}' \
 -H 'x-api-key: {API_KEY}' \
 -H 'x-sandbox-name: {SANDBOX_NAME}'

Réponse
Une réponse réussie renvoie l’état HTTP 202 (Accepté) avec le message suivant.
{
    "message": "Schedule deleted successfully",
    "statusCode": 202
}