• Dernière modification le: 24 June 2020

Exemples d'appels API

Différentes options de requête pour les contrats

Voici d'autres exemples d'utilisation de l'API Contracts pour interroger et obtenir le jeu de résultats souhaité.

Cette requête vous donnera les contrats qui sont inactifs
https://<instance>.coupahost.com/api/contracts?status=inactive

Cette requête vous donnera le contrat pour un fournisseur avec le numéro = 1, nom = test et ville = Seattle
https://<instance>.coupahost.com/api/contracts?number=1&name=test&supplier[primary_address[city]]=Seattle

Cette requête vous donnera tous les contrats pour un fournisseur avec un contact principal prénommé = Allison
https://<instance>.coupahost.com/api/contracts?supplier[primary-contact[name-given]]=Allison

Exemple GET API des contrats

Dans cet exemple, nous avons recherché un enregistrement de contrat unique avec un ID de 2.

Nous avons accédé à l'URL :
https://<instance url>/api/contracts/2
ou
https://<instance url>/api/contracts?id=2

Voici la réponse correspondant aux critères de recherche :

<?xml version="1.0" encoding="UTF-8"?>
<contract>
	 <id type="integer">2</id>
	 <created-at type="datetime">2008-10-27T13:26:13-07:00</created-at>
	 <updated-at type="datetime">2014-03-20T15:20:45-07:00</updated-at>
	 <name>Amazon.com</name>
	 <number>2</number>
	 <version nil="true" />
	 <start-date type="datetime">2008-10-26T17:00:00-07:00</start-date>
	 <end-date type="datetime">2012-10-26T17:00:00-07:00</end-date>
	 <status>inactive</status>
	 <minimum-value type="decimal">0.00</minimum-value>
	 <maximum-value type="decimal">0.00</maximum-value>
	 <terms nil="true" />
	 <preferred nil="true" />
	 <savings-pct type="decimal">10.0</savings-pct>
	 <min-commit type="decimal">0.00</min-commit>
	 <max-commit type="decimal">0.00</max-commit>
	 <supplier-invoiceable type="boolean">false</supplier-invoiceable>
	 <is-default type="boolean">false</is-default>
	 <supplier-account nil="true" />
	 <use-order-windows type="boolean">false</use-order-windows>
	 <order-window-tz nil="true" />
	 <requisition-message nil="true" />
	 <po-message nil="true" />
	 <supplier>
			<id type="integer">4</id>
			<name>Amazon.com</name>
			<number nil="true" />
			<supplier-diversity />
			<primary-contact>
				 <id type="integer">4</id>
				 <created-at type="datetime">2008-10-27T12:56:39-07:00</created-at>
				 <updated-at type="datetime">2008-10-27T12:56:39-07:00</updated-at>
				 <email>upgrade@coupa.com</email>
				 <name-prefix nil="true" />
				 <name-suffix nil="true" />
				 <name-additional nil="true" />
				 <name-given>Allison</name-given>
				 <name-family>Livingston</name-family>
				 <name-fullname nil="true" />
				 <notes nil="true" />
				 <created-by>
						<id type="integer">1</id>
						<login>coupasupport</login>
						<email>upgrade@coupa.com</email>
						<employee-number nil="true" />
						<firstname>Coupa</firstname>
						<lastname>Support</lastname>
						<salesforce-id nil="true" />
						<mycustom-userfield />
				 </created-by>
				 <updated-by>
						<id type="integer">1</id>
						<login>coupasupport</login>
						<email>upgrade@coupa.com</email>
						<employee-number nil="true" />
						<firstname>Coupa</firstname>
						<lastname>Support</lastname>
						<salesforce-id nil="true" />
						<mycustom-userfield />
				 </updated-by>
			</primary-contact>
			<primary-address>
				 <id type="integer">4</id>
				 <created-at type="datetime">2008-10-27T12:56:39-07:00</created-at>
				 <updated-at type="datetime">2009-08-20T09:35:04-07:00</updated-at>
				 <name>Amazon.com</name>
				 <street1>1516 2nd Ave</street1>
				 <street2 />
				 <city>Seattle</city>
				 <state>WA</state>
				 <postal-code>98101</postal-code>
				 <attention nil="true" />
				 <active type="boolean">true</active>
				 <business-group-name nil="true" />
				 <country>
						<id type="integer">223</id>
						<code>US</code>
						<name>United States</name>
				 </country>
				 <created-by>
						<id type="integer">1</id>
						<login>coupasupport</login>
						<email>upgrade@coupa.com</email>
						<employee-number nil="true" />
						<firstname>Coupa</firstname>
						<lastname>Support</lastname>
						<salesforce-id nil="true" />
						<mycustom-userfield />
				 </created-by>
				 <updated-by>
						<id type="integer">16</id>
						<login>rohit</login>
						<email>rohit.jalisatgi@coupa.com</email>
						<employee-number />
						<firstname>Rohit</firstname>
						<lastname>Jalisatgi</lastname>
						<salesforce-id nil="true" />
						<mycustom-userfield />
				 </updated-by>
			</primary-address>
	 </supplier>
	 <content-groups type="array">
			<content-group>
				 <id type="integer">1</id>
				 <created-at type="datetime">2006-08-27T19:40:04-07:00</created-at>
				 <updated-at type="datetime">2013-03-29T21:11:14-07:00</updated-at>
				 <name>Everyone</name>
				 <description>All users can see documents assigned to this group</description>
				 <updated-by>
						<id type="integer">1</id>
						<login>coupasupport</login>
						<email>upgrade@coupa.com</email>
						<employee-number nil="true" />
						<firstname>Coupa</firstname>
						<lastname>Support</lastname>
						<salesforce-id nil="true" />
						<mycustom-userfield />
				 </updated-by>
			</content-group>
			<content-group>
				 <id type="integer">6</id>
				 <created-at type="datetime">2013-10-09T10:15:01-07:00</created-at>
				 <updated-at type="datetime">2013-10-09T10:15:01-07:00</updated-at>
				 <name>What Pattern</name>
				 <description nil="true" />
				 <created-by>
						<id type="integer">69</id>
						<login>coupasupport+rohitdemo@coupa.com</login>
						<email>coupasupport+rohitdemo@coupa.com</email>
						<employee-number nil="true" />
						<firstname>Integration</firstname>
						<lastname>User</lastname>
						<salesforce-id nil="true" />
						<mycustom-userfield />
				 </created-by>
				 <updated-by>
						<id type="integer">69</id>
						<login>coupasupport+rohitdemo@coupa.com</login>
						<email>coupasupport+rohitdemo@coupa.com</email>
						<employee-number nil="true" />
						<firstname>Integration</firstname>
						<lastname>User</lastname>
						<salesforce-id nil="true" />
						<mycustom-userfield />
				 </updated-by>
			</content-group>
	 </content-groups>
	 <schedule>
			<day0>anytime</day0>
			<day1>anytime</day1>
			<day2>anytime</day2>
			<day3>anytime</day3>
			<day4>anytime</day4>
			<day5>anytime</day5>
			<day6>anytime</day6>
	 </schedule>
	 <contract-terms type="array" />
	 <created-by>
			<id type="integer">1</id>
			<login>coupasupport</login>
			<email>upgrade@coupa.com</email>
			<employee-number nil="true" />
			<firstname>Coupa</firstname>
			<lastname>Support</lastname>
			<salesforce-id nil="true" />
			<mycustom-userfield />
	 </created-by>
	 <updated-by>
			<id type="integer">69</id>
			<login>coupasupport+rohitdemo@coupa.com</login>
			<email>coupasupport+rohitdemo@coupa.com</email>
			<employee-number nil="true" />
			<firstname>Integration</firstname>
			<lastname>User</lastname>
			<salesforce-id nil="true" />
			<mycustom-userfield />
	 </updated-by>
</contract>

Interroger pour connaître tous les contrats
https://<instance>/api/contracts/ 

Interroger pour trouver les contrats qui sont inactifs
/api/contracts?status=<

Requête pour trouver des contrats de fournisseurs particuliers
https://<instance>/api/contracts?number=<>&name=<>&supplier[primary_address[city]]=<>
https://<instance>/api/contracts?supplier[primary_address[city]]=<>

Création du contrat - Statut inactif

Dans cet exemple, nous créons un contrat dont le statut est Inactif. Nous utilisons les ID système Coupa pour les objets de référence des groupes de contenu.

Nous l'avons posté sur l'URL : https://<instance url>/api/contracts.

Cela a créé le contrat en état inactif

<?xml version="1.0" encoding="UTF-8"?>
<contract>
	 <name>YRIAmazon.com</name>
	 <number>119</number>
	 <start-date>2014-04-01T17:00:00-07:00</start-date>
	 <end-date>2014-04-26T17:00:00-07:00</end-date>
	 <status>inactive</status>
	 <supplier>
			<name>Amazon.com</name>
	 </supplier>
	 <content-groups>
			<content-group>
				 <id>1</id>
				 <name>Everyone</name>
				 <description>All users can see documents assigned to this group</description>
			</content-group>
	 </content-groups>
</contract>

Exemples PUT API des contrats

Exemple de code pour la mise à jour du statut d'un contrat

<?xml version="1.0" encoding="UTF-8"?>
<contract>
	 <id>73</id>
	 <status>published</status>
</contract>

Exemple de code pour mettre à jour le nom d'un contrat

<?xml version="1.0" encoding="UTF-8"?>
<contract>
	 <name>Amazon.com</name>
</contract>

 

Une partie ou la totalité de cette page peut avoir été traduite par machine. Toutes nos excuses pour les inexactitudes.

Articles associés


API Coupa Core

Notre API RESTful fournit un accès fiable pour lire, modifier ou intégrer vos données à la plateforme Coupa.

Démarrez avec l'API

Informations générales sur l'utilisation de l'API Coupa et quand vous devez envisager d'utiliser CSV.

Transition vers OAuth 2.0 et OIDC

Coupa désapprouve les API Keys héritées et nécessite l'utilisation d'OAuth 2.0 / OIDC. À partir de R34, aucune nouvelle clé API ne sera émise et les clés API ne seront plus prises en charge avec R35.

Ressources

Nous avons organisé nos points de terminaison API par type d'objet : données de référence, données transactionnelles et ressources partagées.