Créer un projet de rédaction

 

Etape 1 – Créer un Template

API

Création d’un Template de recherche d’informations dans un document:
{
"IdProjectType": 2,
"Title": "Rédaction - Fiche produit",
"Description": "Template de rédaction de fiches produits",
"Instructions": [
{
"Instruction": "Bonjour,
Le but de ce projet est de rédiger la description de plusieurs produits.
Vous aurez, à partir de l’image ci-dessous, à rédiger un contenu original, avec un certain punch, qui attire tous les âges.
L’originalité du contenu sera vérifiée.
Vous trouverez des exemples et un dictionnaire de mots utilisable pour votre rédaction à cette adresse : http://tutoFF.redaction.exemple.com/
Ci-dessous le produit à décrire :",
"Order": 1
}
],
"Columns": [
{
"IdTemplateColumnType": 3,
"Column": 1,
"Order": 2
}
],
"Questions": [
{
"Title": "Écrire votre description ici.",
"Option": "Mots minimum = 10.",
"Require": true,
"IdTemplateObjectQuestionType": 2,
"Order": 3
}
]
}

Retour JSON:
3179

Lors de la création, vous recevez l’id du template créé. Ici notre template a l’id 3179.

AngularJS

Vous pouvez trouver un exemple de l’utilisation du SDK FouleFactory en cliquant ici.

 

Pour effectuer un test, vous devrez modifier les valeurs « YourLogin » et « YourPass » présent dans le JavaScript en les remplaçant par votre login API et votre mot de passe API.

PHP

<?php
require_once "FouleFactory-SDK-PHP-master/vendor/autoload.php";
use FouleFactoryApiLib\FouleFactoryApiClient;
FouleFactoryApiLib\Configuration::$BASEURI = "http://sandbox-api.foulefactory.com";
$basicAuthUserName = "YourLogin";
$basicAuthPassword = "YourPass";
$apiClient = new FouleFactoryApiClient($basicAuthUserName, $basicAuthPassword);
$clientAccount = $apiClient->getTemplates();
$data = array(
'IdProjectType' => "2",
'Title' => "Rédaction - Fiche produit",
'Description' => "Template de rédaction de fiches produits",
'Instructions' => array(
array('Instruction' => "Bonjour,
Le but de ce projet est de rédiger la description de plusieurs produits.
Vous aurez, à partir de l’image ci-dessous, à rédiger un contenu original, avec un certain punch, qui attire tous les âges.
L’originalité du contenu sera vérifiée.
Vous trouverez des exemples et un dictionnaire de mots utilisable pour votre rédaction à cette adresse : http://tutoFF.redaction.exemple.com/
Ci-dessous le produit à décrire :",
'Order' => "1")
),
'Columns' => array(
array('IdTemplateColumnType' => "3",
'Column' => "1",
'Order' => "2")
),
'Questions' => array(
array('Title' => "Écrire votre description ici.",
'Option' => "Mots minimum = 10.",
'Require' => "true",
'IdTemplateObjectQuestionType' => "2",
'Order' => "3")
)
);
$idTemplate = $clientAccount->createTemplatesCreateTemplate($data);
?>

.NET

public static int CreateTemplate()
{
var fouleFactory = new FouleFactoryApiClient("https://sandbox-api.foulefactory.com", "YourLogin", "YourPass");
var instructions = new List<TemplateInstructionWriterServiceModel>();
instructions.Add(new TemplateInstructionWriterServiceModel
{
Instruction = "Bonjour,\n\nLe but de ce projet est de rédiger la description de plusieurs produits.\n\nVous aurez, à partir de l’image ci - dessous, à rédiger un contenu original, avec un certain punch, qui attire tous les âges. L’originalité du contenu sera vérifiée. Vous trouverez des exemples et un dictionnaire de mots utilisable pour votre rédaction à cette adresse : http://tutoFF.redaction.exemple.com/ \n\nCi - dessous le produit à décrire :",
Order = 1
});
var columns = new List<TemplateColumnWriterServiceModel>();
columns.Add(new TemplateColumnWriterServiceModel
{
IdTemplateColumnType = 3,
Column = 1,
Order = 2
});
var questions = new List<TemplateQuestionWriterServiceModel>();
questions.Add(new TemplateQuestionWriterServiceModel
{
Title = "Écrire votre description ici.",
Option = "Mots minimum = 10.",
Require = true,
IdTemplateObjectQuestionType = 2,
Order = 3
});
var template = new TemplateNewWriterServiceModel
{
IdProjectType = 2,
Title = "Rédaction - Fiche produit",
Description = "Template de rédaction de fiches produits",
Instructions = instructions,
Columns = columns,
Questions = questions
};
var idTemplate = fouleFactory.Templates.CreateTemplatesCreateTemplate(template);
return ((int)idTemplate);
}

Etape 2 – Créer un projet

API

Création d’un projet de recherche d’informations dans un document:
{
"IdTemplate": 3179,
"Title": "Rédaction Fiches Produits",
"EstimatedTimePerTask": "00:02:00",
"MaxEndDate": "2016-09-30",
"NbSupplierPerTask": 3,
"AmountWithoutTaxPerTask": 50,
"AutomaticValidation": false
}

Retour JSON:
{
"IdProject": 11201,
"IdState": 2,
"IdTemplate": 3179,
"IdType": 2,
"Title": "Rédaction Fiches Produits",
"EstimatedTimePerTask": "00:02:00",
"MaxEndDate": "2016-09-30T00:00:00",
"NbSupplierPerTask": 3,
"AmountWithoutTaxPerTask": 50,
"CsvFiles": [],
"TaskLines": [],
"AutomaticValidation": false,
"IdCertification": null,
"UrlNotification": null
}

Votre projet est maintenant créé.

AngularJS

Vous pouvez trouver un exemple de l’utilisation du SDK FouleFactory en cliquant ici.

 

Pour effectuer un test, vous devrez modifier les valeurs « YourLogin » et « YourPass » présent dans le JavaScript en les remplaçant par votre login API et votre mot de passe API.

PHP

<?php
require_once "FouleFactory-SDK-PHP-master/vendor/autoload.php";
use FouleFactoryApiLib\FouleFactoryApiClient;
FouleFactoryApiLib\Configuration::$BASEURI = "http://sandbox-api.foulefactory.com";
$basicAuthUserName = "YourLogin";
$basicAuthPassword = "YourPass";
$apiClient = new FouleFactoryApiClient($basicAuthUserName, $basicAuthPassword);
$clientProject = $apiClient->getProjects();
$data = array(
'IdTemplate' => $idTemplate,
'Title' => "Rédaction Fiches Produits",
'EstimatedTimePerTask' => "00:02:00",
'MaxEndDate' => "2016-09-30",
'NbSupplierPerTask' => "3",
'AmountWithoutTaxPerTask' => "50",
'AutomaticValidation' => false
);
$project = $clientProject->createProjectsCreateProject($data);
?>

.NET

public static int CreateProject(int idTemplate)
{
var fouleFactory = new FouleFactoryApiClient("https://sandbox-api.foulefactory.com", "YourLogin", "YourPass");
ProjectWriterServiceModel project = new ProjectWriterServiceModel
{
IdTemplate = idTemplate,
Title = "Rédaction Fiches Produits",
EstimatedTimePerTask = "00:02:00",
MaxEndDate = DateTime.UtcNow.AddDays(15),
NbSupplierPerTask = 3,
AmountWithoutTaxPerTask = 50,
AutomaticValidation = false
};
var projectJson = fouleFactory.Projects.CreateProjectsCreateProject(project);
FouleFactoryProjectModel projectInfos = JsonConvert.DeserializeObject<FouleFactoryProjectModel>(projectJson.ToString());
return (projectInfos.IdProject);
}

Etape 3 – Ajout de taches

API

Ajout de tache grâce à un fichier CSV contenant du texte:
{
"IdProject": 11201,
"File": "aHR0cDovL3d3dy5jdXZlc2NlbnRlci5jb20vbWVkaWEvY2F0YWxvZy9wcm9kdWN0L2NhY2hlLzEvaW1hZ2UvOWRmNzhlYWIzMzUyNWQwOGQ2ZTVmYjhkMjcxMzZlOTUvcC9hL3BhY18wNTI2ODMwNS5wbmcNCmh0dHA6Ly93d3cuZnIuYWxsLmJpei9pbWcvZnIvY2F0YWxvZy85MDIwLmpwZWcNCmh0dHA6Ly93d3cuZGVjby1ldC1zYXZldXJzLmNvbS84OTg2LWpxem9vbS9wb3J0ZS1wYXBpZXItc29wYWxpbi1pbm94LXdlbmtvLmpwZw0K",
"Header": false,
"Separator": ";"
}

Le fichier CSV doit être converti en base 64.

Fichier CSV utilisé dans l’exemple ici.

Retour JSON:

{
"IdCsvFile": 11296,
"IdProject": 11201,
"Url": "https://ffpreproddatauser.blob.core.windows.net/0000002277/02cffe2d881f4d888e40010729abef62.csv",
"Normalized": false,
"Header": false,
"Separator": "; "
}

Votre CSV est maintenant ajouté au projet. La transformation du fichier CSV en tache est en cours (normalisation). Vous recevrez un email lorsque le projet sera en ligne.

AngularJS

Vous pouvez trouver un exemple de l’utilisation du SDK FouleFactory en cliquant ici.

 

Pour effectuer un test, vous devrez modifier les valeurs « YourLogin » et « YourPass » présent dans le JavaScript en les remplaçant par votre login API et votre mot de passe API.

PHP

<?php
require_once "FouleFactory-SDK-PHP-master/vendor/autoload.php";
use FouleFactoryApiLib\FouleFactoryApiClient;
FouleFactoryApiLib\Configuration::$BASEURI = "http://sandbox-api.foulefactory.com";
$basicAuthUserName = "YourLogin";
$basicAuthPassword = "YourPass";
$apiClient = new FouleFactoryApiClient($basicAuthUserName, $basicAuthPassword);
$clientCsv = $apiClient->getCsvFiles();
$data = array(
'IdProject' => $project->IdProject,
'File' => "aHR0cDovL3d3dy5jdXZlc2NlbnRlci5jb20vbWVkaWEvY2F0YWxvZy9wcm9kdWN0L2NhY2hlLzEvaW1hZ2UvOWRmNzhlYWIzMzUyNWQwOGQ2ZTVmYjhkMjcxMzZlOTUvcC9hL3BhY18wNTI2ODMwNS5wbmcNCmh0dHA6Ly93d3cuZnIuYWxsLmJpei9pbWcvZnIvY2F0YWxvZy85MDIwLmpwZWcNCmh0dHA6Ly93d3cuZGVjby1ldC1zYXZldXJzLmNvbS84OTg2LWpxem9vbS9wb3J0ZS1wYXBpZXItc29wYWxpbi1pbm94LXdlbmtvLmpwZw0K",
'Header' => false,
'Separator' => ";"
);
$csv = $clientCsv->createCsvFilesCreateCsvFile($data);
?>

.NET

public static void AddCsvFile(int idProject)
{
var fouleFactory = new FouleFactoryApiClient("https://sandbox-api.foulefactory.com", "YourLogin", "YourPass");
CsvFileWriterServiceModel csvFile = new CsvFileWriterServiceModel
{
IdProject = idProject,
File = "aHR0cDovL3d3dy5jdXZlc2NlbnRlci5jb20vbWVkaWEvY2F0YWxvZy9wcm9kdWN0L2NhY2hlLzEvaW1hZ2UvOWRmNzhlYWIzMzUyNWQwOGQ2ZTVmYjhkMjcxMzZlOTUvcC9hL3BhY18wNTI2ODMwNS5wbmcNCmh0dHA6Ly93d3cuZnIuYWxsLmJpei9pbWcvZnIvY2F0YWxvZy85MDIwLmpwZWcNCmh0dHA6Ly93d3cuZGVjby1ldC1zYXZldXJzLmNvbS84OTg2LWpxem9vbS9wb3J0ZS1wYXBpZXItc29wYWxpbi1pbm94LXdlbmtvLmpwZw0K",
Header = false,
Separator = ";"
};
fouleFactory.CsvFiles.CreateCsvFilesCreateCsvFile(csvFile);
}

Rendu coté Fouleur

sample-redaction-fiche-produit-rendu

Etape 4 – Récupération des taches

API

Nous allons récupérer nos taches avec la requête GET /projects/{idProject}/tasks
[
{
"IdTask": 37767,
"IdTaskLine": 27828,
"IdSupplier": null,
"IdTaskState": 2,
"IdTaskType": null,
"UpdateDate": "2016-09-23T16:48:13.86",
"CreateDate": "2016-09-23T16:48:13.767",
"TaskAnswer": []
},
{
"IdTask": 37768,
"IdTaskLine": 27828,
"IdSupplier": null,
"IdTaskState": 2,
"IdTaskType": null,
"UpdateDate": "2016-09-23T16:48:13.86",
"CreateDate": "2016-09-23T16:48:13.767",
"TaskAnswer": []
},
{
"IdTask": 37769,
"IdTaskLine": 27828,
"IdSupplier": null,
"IdTaskState": 2,
"IdTaskType": null,
"UpdateDate": "2016-09-23T16:48:13.86",
"CreateDate": "2016-09-23T16:48:13.767",
"TaskAnswer": []
},
...
]

Nous pouvons voir les réponses du contributeur dans TaskAnswer. Ici, les taches n’ont pas encore été faites. Il n’y a donc pas de réponse.

AngularJS

Vous pouvez trouver un exemple de l’utilisation du SDK FouleFactory en cliquant ici.

 

Pour effectuer un test, vous devrez modifier les valeurs « YourLogin » et « YourPass » présent dans le JavaScript en les remplaçant par votre login API et votre mot de passe API.

PHP

<?php
require_once "FouleFactory-SDK-PHP-master/vendor/autoload.php";
use FouleFactoryApiLib\FouleFactoryApiClient;
FouleFactoryApiLib\Configuration::$BASEURI = "http://sandbox-api.foulefactory.com";
$basicAuthUserName = "YourLogin";
$basicAuthPassword = "YourPass";
$apiClient = new FouleFactoryApiClient($basicAuthUserName, $basicAuthPassword);
$clientTasks = $apiClient->getProjects();
$tasks = $clientProject->getProjectsGetProjectTasks($project->IdProject);
?>

.NET

public static List<FouleFactoryTaskModel> GetTasks(int idProject)
{
var fouleFactory = new FouleFactoryApiClient("https://sandbox-api.foulefactory.com", "YourLogin", "YourPass");
var tasks = fouleFactory.Projects.GetProjectsGetProjectTasks(idProject);
List<FouleFactoryTaskModel> taskInfos = JsonConvert.DeserializeObject<List<FouleFactoryTaskModel>>(tasks.ToString());
return taskInfos;
}