API

Il est possible d’obtenir les données de Cienapps par l’entremise d’API. La présente documentation élabore sur les différentes sources d’informations disponibles et les opérations possibles. Pour de plus amples renseignements sur la disponibilité et l’accessibilité, veuillez communiquer avec votre responsable (chargé de comptes / chargé de projets).

Prérequis

Cette section élabore sur les conditions essentielles à l’activation et l’utilisation des APIs.

Module

Le module Activation des déclencheurs d’API doit être activée dans votre Cienapps. Il permet l’ajout des notifications pour informer sur les données modifiées lors des événements tels que: sur enregistrement d’une soumission, commande, bon de travail.

Installation de Node.js

Sur votre serveur (serveur client), notre équipe doit procéder à l’installation de JSNode et de la dernière version de l’application. C’est la même application utilisée dans le cadre du clic droit pour l’accès au catalogue de Cieblink.

Clé d’API

Dans la configuration générale, pour les administrateurs de Cienapps, une clé d’API doit être créée avec les autorisations requises. Cette clé doit être transmise au partenaire souhaitant utiliser ce service.

Dans la configuration générale, un administrateur de Cienapps doit créer la clé d’API et octroyer les accès nécessaires.

Note importante: par défaut, il est nécessaire d’indiquer la lecture et l'écriture. L'écriture permet de transférer les éléments de notifications en archive après lecture. Voir plus loin dans la documentation.

Les routes d’API

Cette section élabore sur les différentes routes d’API disponible avec le format d’appel et le fonctionnement.

Format d’appel

Les données sont gérées sous format JSON (get/post)

Header

Chaque header doit posséder la clé d’API spécifiée lors des appels d’API.

“ApiToken”: “clé_API_ici”

Fonctionnement

Après obtention des données sous format JSON, le membre ‘SyncID’ contient le ID de la notification. Après utilisation, il faut appeler l’API /sync/confirm avec un array contenant ce ID. Cela permet de retirer la notification après une lecture. Voir la section plus ci-dessous pour de plus amples détails.

Liste des commandes (https://serveur:port/api/sync/order/list) - GET

Cet API permet d’obtenir la liste des commandes ayant été modifiés. Voici les différents champs disponibles avec les détails.

Membre

Type de données

Exemple

Description de l’information

Order_Number

Integer 4/8 bytes

15000, 745837,...

Numéro de la commande

Order_DateCreate

String “YYYYMMDD”

“20231101”,”19991231”

Date de création

Order_DateDue

String “YYYYMMDD”

“20231101”,”19991231”

Date d’échéance

Order_Step_Desc

String

“PARTIAL INVOICING”

Étape de la commande

Order_SalesRep_FullName

String

“EVE BEAUCHEMIN”

Nom complet du vendeur

Order_SalesRep_UserName

String

“EBEAUCHEMIN”

Nom d’utilisateur Cienapps

Order_Rep_FullName

String

“JEAN-MARC PAQUIN”

Nom du représentant

Order_Rep_UserName

String

“JPAQUIN”

Nom d’utilisateur Cienapps

Order_Title

String

“CONDOMIUM WITH 3 FLOORS”

Titre

Order_Reference_PO

String

“U27 (H3) 22-02756”

Référence d’achat

Order_Reference

String

“KITCHEN 3 PIECES”

Référence

Order_Quotation_Number

Array of Integer

84738,95837,95938,...

Liste des no de soumissions liées à la commande

Customer_First_Name

String

“JOHN”

Prénom client

Customer_Last_Name

String

“DOE”

Nom de famille client

Customer_Company_Name

String

“ENTREPRISE MASSON INC”

Dénomination commerciale

Customer_Main_Phone

String

“(418) 555-6666”

Numéro de téléphone

Customer_Address

String

“999 BEACH BLVD”

Adresse

Customer_City

String

“MONTREAL”

Ville

Customer_PostalCode

String “X0X 0X0”

“S0S 2P0”

Code postal

Customer_DateCreate

String Date UTC

"2023-08-07 16:29:54.245"

Date création client

Customer_Rep

String

“JEANNE DOE”

Représentant client

Customer_Origin

String

“REPUTATION”

Provenance du client

SyncID

Integer

11,48393,…

ID de la notification

Exemple

[ {

"Order_Number": 4700,

"Order_DateCreate": "20231103",

"Order_DateDue": "20231106",

"Order_Step_Desc": "04 -INVOICED",

"Order_Reference_PO": null,

"Order_Reference": "ANDREW - CUT OUT SINK HO",

"Order_SalesRep_FullName": "TJ DECARIA",

"Order_SalesRep_UserName": "TJDECARIA",

"Order_Rep_FullName": "WILL DOE",

"Order_Rep_UserName": "WDDOE",

"Order_Title": "ANDREW - CUT OUT SINK HOLE NOV 3, 2023",

"Customer_Last_Name": "ANDREW DOE",

"Customer_First_Name": null,

"Customer_Company_Name": null,

"Customer_Address": "5239 FIND ME",

"Customer_City": "MONTREAL",

"Customer_PostalCode": "V9L 5J2",

"Customer_DateCreate": "2017-11-08 00:00:00.000",

"Customer_Rep": "WILL DOE",

"Customer_Main_Phone": "(250) 111-2222",

"Customer_Origin": "REFERAL FROM CONTRACTOR / DESIGNER",

"SyncID": 11,

"Order_Quotation_Number": [ 6122 ]

} ]

Liste des soumissions (https://serveur:port/api/sync/quotation/list) - GET

Cet API permet d’obtenir la liste des commandes ayant été modifiés. Voici les différents champs disponibles avec les détails.

Membre

Type de données

Exemple

Description de l’information

Quotation_Number

Integer 4/8 bytes

15000, 745837,...

Numéro de la soumission

Quotation_DateCreate

String “YYYYMMDD”

“20231101”,”19991231”

Date de création

Quotation_DateClose

String “YYYYMMDD”

“20231101”,”19991231”

Date de fermeture

Quotation_DateValidate

String “YYYYMMDD”

“20231101”,”19991231”

Date de validation

Quotation_Step_Desc

String

“1-STEP FIRST MEETING”

Étape de la soumission

Quotation_SalesRep_FullName

String

“EVE BEAUCHEMIN”

Nom complet du vendeur

Quotation_SalesRep_UserName

String

“EBEAUCHEMIN”

Nom d’utilisateur Cienapps

Quotation_Rep_FullName

String

“JEAN-MARC PAQUIN”

Nom du représentant

Quotation_Rep_UserName

String

“JPAQUIN”

Nom d’utilisateur Cienapps

Quotation_Title

String

“CONDOMIUM WITH 3 FLOORS”

Titre

Quotation_Reference_PO

String

“AUTUMN 2023”

Référence d’achat

Quotation_Reference

String

“KITCHEN”

Référence

Customer_First_Name

String

“JOHN”

Prénom client

Customer_Last_Name

String

“DOE”

Nom de famille client

Customer_Company_Name

String

“ENTREPRISE MASSON INC”

Dénomination commerciale

Customer_Main_Phone

String

“(418) 555-6666”

Numéro de téléphone

Customer_Address

String

“999 BEACH BLVD”

Adresse

Customer_City

String

“MONTREAL”

Ville

Customer_PostalCode

String “X0X 0X0”

“S0S 2P0”

Code postal

Customer_DateCreate

String Date UTC

"2023-08-07 16:29:54.245"

Date création client

Customer_Rep

String

“JEANNE DOE”

Représentant client

Customer_Origin

String

“REPUTATION”

Provenance du client

SyncID

Integer

11,48393,…

ID de la notification

Exemple

[
{
"Quotation_Number": 6139,
"Quotation_DateCreate": "20231110",
"Quotation_DateClose": "20231110",
"Quotation_DateValidate": "20231124",
"Quotation_Reference_PO": null,
"Quotation_Reference": "SUNCRAFT 12345 WOODRUSH",
"Quotation_Step_Desc": "02 - QUOTING STAGE",
"Quotation_SalesRep_FullName": "MARII ALIKI",
"Quotation_SalesRep_UserName": "MALLIKIKI",
"Quotation_Rep_FullName": "VLADISLAV HELLO",
"Quotation_Rep_UserName": "VHELLO",
"Quotation_Title": "SUNCRAFT 12345 WOODRUSH",
"Customer_Last_Name": "SUNKRAFT CHEESE CONSTRUCTION",
"Customer_First_Name": null,
"Customer_Company_Name": null,
"Customer_Address": "PO BOX 9458 ",
"Customer_City": "DUNCAN",
"Customer_PostalCode": "V9L S0S",
"Customer_DateCreate": "2016-03-30 00:00:00.000",
"Customer_Rep": "VLADISLAV HELLO",
"Customer_Main_Phone": "(250) 748-1234",
"Customer_Origin": "CONTRACTOR / MAINTENANCE DEPARTMENT",
"SyncID": 12
}
]

Liste des bons de travail (https://serveur:port/api/sync/workorder/list) - GET

Cet API permet d’obtenir la liste des bons de travail ayant été modifiés. Voici les différents champs disponibles avec les détails.

Membre

Type de données

Exemple

Description de l’information

WorkOrder_Number

String

“5610-2”,”748-91”,...

Numéro du bon de travail

WorkOrder_Order_Number

Integer 4 bytes

5610,748

Commande liée au BT

WorkOrder_Step_Desc

String

“03 PROCESSING COMPLETED”

Étape du BT

WorkOrder_DateDue

String “YYYY-MM-DD”

“20231101”,”19991231”

Date d’échéance

WorkOrder_DateDelivery

String “YYYY-MM-DD”

“20231101”,”19991231”

Date de livraison

WorkOrder_BackOrder

Boolean

True, False

Présence de produit en BO sur le bon de travail

Customer_First_Name

String

“JOHN”

Prénom client

Customer_Last_Name

String

“DOE”

Nom de famille client

Customer_Company_Name

String

“ENTREPRISE MASSON INC”

Dénomination commerciale

Customer_Main_Phone

String

“(418) 555-6666”

Numéro de téléphone

Customer_Address

String

“999 BEACH BLVD”

Adresse

Customer_City

String

“MONTREAL”

Ville

Customer_PostalCode

String “X0X 0X0”

“S0S 2P0”

Code postal

Customer_DateCreate

String Date UTC

"2023-08-07 16:29:54.245"

Date création client

Customer_Rep

String

“JEANNE DOE”

Représentant client

Customer_Origin

String

“REPUTATION”

Provenance du client

WorkOrder_IDCust_Delivery

Integer 4 bytes

43648

ID différent de 0 en cas de présence d’une adresse de livraison différente de celle du client

Customer_Delivery_FullName

String

“PHILIPPE THÉBERGE”

Nom complet de la personne recevant la livraison

Customer_Delivery_Main_Phone

String

“(456) 123-9837

Numéro de tél, principale de la personne recevant la livraison

Customer_Delivery_Address

String

“758 BEACH BLVD”

Adresse de la personne recevant la livraison

Customer_Delivery_City

String

“MERCIER”

Ville de la personne recevant la livraison

Customer_Delivery_PostalCode

String “X0X0X0”

“S0S2P9”

Code postal de la personne recevant la livraison

WorkOrder_DateInstallation

String “YYYY-MM-DD”

“20231101”,”19991231”

Date d’installation

WorkOrder_Team_Delivery

String

“SHIPPING”

Équipe de livraison

WorkOrder_Team_Installation

String

“INSTALLATION”

Équipe d’installation

WorkOrder_Workflow

String

“JOB WITHOUT FINISHING”

Workflow

SyncID

Integer

11,48393,…

ID de la notification

Exemple

[
{
"WorkOrder_Order_Number": 7953,
"WorkOrder_Number": "4704-1",
"AncienSoumission": 4704,
"WorkOrder_BackOrder": 0,
"WorkOrder_Step_Desc": "01 READY FOR PROCESSING - DO NOT OR",
"Customer_Last_Name": "YOUBOBO GENERAL STORE",
"Customer_First_Name": "CARRIE",
"Customer_Company_Name": "CAEKCEASAR",
"Customer_Address": "3455 FIND ME HWY",
"Customer_City": "CEDAR",
"Customer_PostalCode": "V9X1T8",
"Customer_DateCreate": "2023-11-08 00:00:00.000",
"Customer_Rep": "MARII ALIKIKI",
"Customer_Main_Phone": "(250) 616-1234",
"Customer_Origin": "REFERAL FROM CONTRACTOR / DESIGNER",
"WorkOrder_DateDue": "20231116",
"WorkOrder_DateDelivery": "20240102",
"WorkOrder_IDCust_Delivery": 0,
"WorkOrder_DateInstallation": "20240102",
"WorkOrder_Workflow": "JOB WITH FINISHING (PAINT OR STAIN)",
"Customer_Delivery_FullName": null,
"Customer_Delivery_Main_Phone": null,
"Customer_Delivery_Address": null,
"Customer_Delivery_City": null,
"Customer_Delivery_PostalCode": null,
"WorkOrder_Team_Delivery": "CAPACITY",
"WorkOrder_Team_Installation": "",
"WorkOrder_Close": 0,
"WorkOrder_Close_Date": null,
"SyncID": 13
}
]

Confirmer la lecture de Cietification (https://serveur:port/api/sync/confirm) - POST

Cet API permet de confirmer la lecture de cietifications (notifications) après appel d’un des API (workorder/list, quotation/list, order/list). Le traitement appelé par l’API retire la notification de la liste et le transfère dans un fichier d’historique. Dans le cas de cet API, le partenaire consommateur doit avoir la permission en écriture.

Lors de l’appel de cet API, il faut alimenter un tableau d’array des ID de cietifications reçus dans l’appel des API. Ces ID proviennent du champ SyncID retourné par chaque API.

{ "SyncID": [11,12,13] }

Le token d’API doit aussi être indiqué dans le header de l’appel