Accéder au contenu principal Passer au contenu complémentaire

Créer une campagne à l'aide de l'API

Vous pouvez créer une campagne en fournissant le nom du modèle de données et la configuration de la campagne. Vous pouvez inclure le nom de la campagne. Il doit correspondre au modèle ^[a-z][a-z\d\-]*$.

La réponse contient le champ id, utile pour modifier la campagne ultérieurement.

Dans cet exemple, Talend API Tester est utilisé pour envoyer des requêtes.

Pour plus d'informations concernant Talend API Tester, consultez le Guide d'utilisation de Talend Cloud API Tester.

Avant de commencer

Vous avez récupéré les détails du modèle de données à utiliser dans la campagne, à l'aide de l'opération GET https://tds.{region}.cloud.talend.com/schemaservice/api/v1/schemas/org.talend.schema/{dataModelName} .

Procédure

  1. Si vous n'avez pas encore de jeton d'accès personnel, générez-en un. Pour plus d'informations, consultez Générer un jeton d'accès personnel.
  2. Ouvrez Talend API Tester dans votre navigateur.
  3. Dans l'onglet Repository (Référentiel), sélectionnez Post dans la liste déroulante Method (Méthode).
  4. Saisissez l'URL suivante : https://tds.{region}.cloud.talend.com/data-stewardship/api/v1/campaigns/owned
    Vous pouvez voir une liste d'URL à utiliser pour chaque centre de données dans URL et régions de Talend Cloud.
  5. Cliquez sur le bouton Add header, saisissez Authorization dans le champ name et Bearer suivi d'un espace, puis de votre jeton, dans le champ value.
  6. Cliquez sur le bouton Add header et saisissez Cookie dans le champ name et laissez le champ value vide.
  7. Dans le champ Body, saisissez les détails de la campagne au format JSON.

    Exemple

    Pour créer la même campagne Demo - Improve product catalog data quality que dans la visite guidée, utilisez un nom différent, comme my-campaign-resolution-created-via-api et my_products_created_via_API, saisissez :
    {
        "campaign": {
            "name": "my-campaign-resolution-created-via-api",
            "label": "Improve product catalog data quality (created via API)",
            "description": "Increase the level of data quality for each product catalog.",
            "owners": ["owner@account.com"],
            "taskType": "RESOLUTION",
            "schemaRef": {
                "namespace": "org.talend.schema",
                "name": "my_products_created_via_API",
                "version": 1,
                "displayName": "Product (created via API)"
            },
            "taskResolutionDelay": {
                "value": 10,
                "unit": "DAYS"
            },
            "workflow": {
                "name": "default workflow",
                "states": [{
                    "name": "New",
                    "label": "New",
                    "transitions": [{
                        "name": "To validate",
                        "label": "To validate",
                        "targetStateName": "To validate",
                        "allowedRoles": ["Supervisor"]
                    }],
                    "allowedRoles": [],
                    "translations": {}
                }, {
                    "name": "To validate",
                    "label": "To validate",
                    "transitions": [{
                        "name": "Accept",
                        "label": "Accept",
                        "targetStateName": "Resolved",
                        "allowedRoles": ["Validator"]
                    }, {
                        "name": "Reject",
                        "label": "Reject",
                        "targetStateName": "New",
                        "allowedRoles": ["Validator"]
                    }],
                    "allowedRoles": [],
                    "translations": {}
                }, {
                    "name": "Resolved",
                    "label": "Resolved",
                    "transitions": [],
                    "allowedRoles": ["Validator"],
                    "translations": {}
                }]
            }
        },
        "participants": {
            "Supervisor": ["steward1@account.com"],
            "Validator": ["steward1@account.com"]
        }
    }

    la valeur "owners" doit inclure les identifiants des gestionnaires de campagnes.

    L'objet "schemaRef": doit inclure les valeurs "namespace", "name", "version" et "displayName" du modèle de données souhaité. Pour récupérer cette informations, consultez Lire un modèle de données à l'aide de l'API.

    La valeur de "Supervisor" et "Validator" doit inclure les identifiants des data stewards souhaité·e·s pour ces rôles.

  8. Cliquez sur Send (Envoyer).

Résultats

L'API retourne un code HTTP 200 pour vous informer que la requête a bien été exécutée. La réponse comprend une description JSON mise à jour des attributs du modèle de données.
{
    "id": "5f4694d651bfb7000154b5b2",
    "createdBy": "owner",
    "lastUpdatedBy": "owner@account.com",
    "creationDate": 1601831320,
    "lastUpdateDate": 1601831320,
    "name": "my-campaign-resolution-created-via-api",
    "label": "Improve product catalog data quality (created via API)",
    "description": "Increase the level of data quality for each product catalog.",
    "owners": [
        "owner@account.com"
    ],
    "ownersDetail": [
        {
            "firstName": "FIRSTNAME",
            "lastName": "LASTNAME",
            "username": "owner@account.com",
            "enabled": true,
            "preferredLanguage": "en",
            "email": "owner@account.com",
            "id": "6be3b335-05c9-4a3b-92d6-c5821f398bac"
        }
    ],
    "status": "STARTED",
    "startDate": 1598461142854,
    "endDate": null,
    "taskType": "RESOLUTION",
    "schemaRef": {
        "namespace": "org.talend.schema",
        "name": "demo_product",
        "version": 1,
        "displayName": "Demo - Product"
    },
    "impactAnalysisStatus": null,
    "fieldsAccess": null,
    "taskResolutionDelay": {
        "value": 10,
        "unit": "DAYS"
    },
    "workflow": {
        "id": null,
        "createdBy": "6be3b335-05c9-4a3b-92d6-c5821f398bac",
        "lastUpdatedBy": "6be3b335-05c9-4a3b-92d6-c5821f398bac",
        "creationDate": 1598461142855,
        "lastUpdateDate": 1598461142855,
        "tenantId": null,
        "name": "default workflow",
        "states": [
            {
                "name": "New",
                "label": "New",
                "transitionQuestion": null,
                "transitions": [
                    {
                        "name": "To validate",
                        "label": "To validate",
                        "targetStateName": "To validate",
                        "allowedRoles": [
                            "Supervisor"
                        ]
                    }
                ],
                "allowedRoles": [],
                "translations": {}
            },
            {
                "name": "To validate",
                "label": "To validate",
                "transitionQuestion": null,
                "transitions": [
                    {
                        "name": "Accept",
                        "label": "Accept",
                        "targetStateName": "Resolved",
                        "allowedRoles": [
                            "Validator"
                        ]
                    },
                    {
                        "name": "Reject",
                        "label": "Reject",
                        "targetStateName": "New",
                        "allowedRoles": [
                            "Validator"
                        ]
                    }
                ],
                "allowedRoles": [],
                "translations": {}
            },
            {
                "name": "Resolved",
                "label": "Resolved",
                "transitionQuestion": null,
                "transitions": [],
                "allowedRoles": [
                    "Validator"
                ],
                "translations": {}
            }
        ]
    }
}

Si vous souhaitez modifier la campagne, notez la première valeur id de la réponse.

Cette page vous a-t-elle aidé ?

Si vous rencontrez des problèmes sur cette page ou dans son contenu – une faute de frappe, une étape manquante ou une erreur technique – dites-nous comment nous améliorer !