Skip to content

Contrat de licence API

Dernière mise à jour : 10 juin 2022

Le présent Accord de Licence API ("Accord") régit la mise en œuvre et l'utilisation des API et des spécifications API de Tulip Interfaces, Inc. et/ou de ses filiales ("Tulip") afin de permettre à une applicationlogicielle d'interopérer avec la Plateforme Tulip. Si vous concluez le présent Accord au nom d'une organisation, vous déclarez avoir le pouvoir de lier votre organisation au présent Accord. Si vous ne disposez pas de cette autorité, ou si vous n'êtes pas d'accord avec les termes du présent Accord, vous ne pouvez pas mettre en œuvre les API de Tulip ou utiliser la spécification d'API. En cliquant sur un bouton indiquant l'acceptation de cet Accord, ou en implémentant, téléchargeant ou accédant de toute autre manière aux APIs Tulip, vous acceptez d'être légalement lié par les termes de cet Accord. Cet Accord est effectif entre Vous et Tulip à compter de la date de votre acceptation. Tulip et vous-même êtes chacun individuellement désignés dans les présentes comme une "Partie" et collectivement comme "Parties". Pour les clients de Tulip qui ont des conditions de service ou un accord similaire ("TOS") en vigueur entre ce client et Tulip, cet Accord régira l'utilisation des API de Tulip par ce client. Le présent Accord peut être modifié de temps à autre. Lorsque Tulip apporte des modifications à cet Accord, Tulip mettra à jour la date de "Dernière mise à jour" au début de cet Accord. Tous les changements seront effectifs à partir de la date de publication, sauf indication contraire. En cliquant sur un bouton dénotant l'acceptation de cet Accord, ou en implémentant, téléchargeant ou accédant de toute autre manière aux API de Tulip, vous acceptez d'être légalement lié par les termes modifiés de cet Accord.

1. Définitions

" Limites API " désigne les restrictions (par exemple, les limites de débit et les limites de concurrence) de vos appels API.

" Interface de programmation d'application" ou " API " désigne un ensemble de routines, de classes, de paramètres de fonction, de protocoles, de webhooks, de bibliothèques connexes et d'autres instructions fournies sous forme de code source ou de code objet.

"Spécification d'API" désigne une description ou une définition écrite des routines, classes, paramètres de fonctions, protocoles, webhooks, bibliothèques associées et autres instructions qui permettent à une ApplicationLogicielle d'interopérer avec la Plate-forme Tulip, et tel que substantiellement décrit ici.

" Feedback " désigne les suggestions ou commentaires que vous fournissez à Tulip et qui sont liés aux produits Tulip (par exemple, les API Tulip ou la Plateforme Tulip ) ou aux futurs produits, modules et/ou services Tulip.

"Forking" signifie l'acte de créer un ensemble distinct et/ou séparé d'APIs qui sont basées sur, dérivées de, ou une modification des APIs de Tulip.

"Hardware" désigne le matériel Tulip ou les composants matériels de tiers qui accèdent à la Plate-forme Tulip ou interagissent avec elle via les API Tulip.

"Code Objet" désigne le Code Source qui a été interprété, compilé ou autrement traduit dans une forme lisible par une machine.

" Applicationlogicielle" désigne un logiciel sous forme de Code Objet ou de Code Source qui accède ou interagit avec la Plateforme Tulip via les APIs Tulip.

"Code Source" désigne le code informatique sous une forme lisible par l'homme et en tant que tel le code informatique qui n'a pas été interprété ou compilé.

"Tulip API" désigne un ensemble de routines, de classes, de paramètres de fonctions, de protocoles, de bibliothèques associées, d'outils et d'autres instructions fournies sous forme de Code Source ou de Code Objet qui permettent l'accès ou l'interopérabilité avec la Plateforme Tulip par une ApplicationLogicielle, un Matériel, ou des plateformes ou services tiers.

"MatérielTulip " désigne la passerelle Tulip IO Gateway, le Light Kit Tulip, Tulip EdgIO et Tulip EdgeMCainsi que d'autres produits matériels que Tulip peut mettre à la disposition de ses clients et qui accèdent ou interagissent avec la Plateforme Tulip via les API Tulip.

La " PlateformeTulip " désigne (a) les sites Internet de Tulip(versions mobiles ou localisées et domaines et sous-domaines associés) ; (b) les logiciels et services de Tulip; et (c) le matériel Tulip (la version du code objet du produit logiciel propriétaire de Tulipappelé Tulip Player).

"Utilisation" signifie un droit d'exécution ou de reproduction (tel que défini dans 17 U.S.C. § 101 et seq.) ou tout autre statut de droit d'auteur applicable, mais n'inclut aucun droit de sous-licence ou de distribution.

"Vous" ou "Votre" désigne la personne qui conclut le présent Contrat ou, si vous concluez le présent Contrat au nom d'une organisation (ou si vous mettez en œuvre la Spécification d'API et les API Tulip associées au nom d'une organisation ou dans un produit dont celle-ci est propriétaire ou détentrice d'une licence), cette organisation.

2. Licences et restrictions

A. Licence API Tulip. Sous réserve des dispositions du présent Accord, Tulip vous accorde une licence mondiale, révocable et non exclusive, en vertu des droits d'auteur de Tulip, pour utiliser les API de Tulip afin de faciliter l'interopérabilité de la Plate-forme Tulip et de l'Applicationlogicielle uniquement. Cette licence vous est accordée à condition que vous respectiez les limites de l'API publiées ou qui vous sont fournies comme condition d'obtention de cette licence, et que vous n'essayiez pas de contourner ces limites de l'API.

B. Licence sur les spécifications de l'API de Tulip. Tulip vous accorde une licence mondiale, non exclusive, libre de redevance et révocable, en vertu des droits d'auteur de Tulip, pour utiliser la spécification API afin de permettre l'interopérabilité entre l'applicationlogicielle et la plate-forme Tulip.

C. Licence de rétroaction à Tulip. Si vous fournissez un Feedback à Tulip, vous accordez à Tulip une licence mondiale, libre de redevances, entièrement payée, perpétuelle et irrévocable pour utiliser, reproduire, modifier, traduire, distribuer, exécuter, afficher, importer, vendre, accorder une licence, offrir à la vente, faire, faire faire et exploiter autrement le Feedback sous toute forme, média ou technologie, qu'elle soit connue maintenant ou développée ultérieurement, et pour permettre à d'autres de faire de même sans restriction ni obligation de quelque nature que ce soit, sur la base d'informations confidentielles, de droits de propriété intellectuelle ou autres, et peut incorporer dans ses produits et services tout service, produit, technologie, amélioration, documentation ou autre développement ("Amélioration") incorporant ou dérivé de toute Rétroaction sans obligation d'accorder une licence ou de mettre à disposition l'Amélioration à vous ou à toute autre personne ou entité.

D. Restrictions de la licence API de Tulip. Tulip conserve la propriété légale des API de Tulip dans le cadre de cet Accord, et vous acceptez de ne pas supprimer ou modifier tout copyright (par exemple, "© Tulip Interfaces, Inc.") ou toute autre notification de propriété signifiant la propriété de Tulipsur ce titre légal. En outre, vous acceptez et reconnaissez les restrictions de licence suivantes : (i) aucun droit d'exécution commerciale, de distribution ou d'utilisation des API de Tulip (ou de sous-licence de l'un des droits précédents) n'est accordé dans le cadre de cet Accord ; (ii) aucun des droits suivants n'est accordé en ce qui concerne les API de Tulip: le droit de distribuer, d'afficher publiquement ou de créer des dérivés (par ex, un sur-ensemble ou un sous-ensemble des API de Tulip ) ; et (iii) les API de Tulip ne doivent pas être utilisées pour accéder à un service autre que la Plate-forme Tulip. Tulip peut limiter le nombre et/ou la fréquence des demandes d'API à la Plateforme Tulip, ou toute utilisation des API qui pourrait endommager, désactiver, surcharger, altérer ou autrement interférer avec la Plateforme Tulip.

E. Restrictions de licence relatives aux spécifications de l'API. Tulip conserve le titre de propriété de la Spécification API en vertu du présent Accord et vous acceptez de ne pas supprimer ou modifier tout droit d'auteur (par exemple, "© Tulip, Interfaces, Inc.") ou tout autre avis de propriété signifiant la propriété de Tulipsur ce titre de propriété. En outre, vous acceptez la restriction de licence suivante : Vous ne devez pas faire un nombre déraisonnable de reproductions de la spécification de l'API. En outre, pour éviter tout doute, aucun droit de : (i) de distribuer, (ii) d'accorder une sous-licence, (iii) d'afficher publiquement ou (iv) de créer des dérivés de la Spécification API ne vous est accordé par les présentes.

3. Garantie, exclusion de responsabilité, indemnisation et limitation de responsabilité

A. Bifurcation. Vous déclarez et garantissez que vous ne vous êtes pas engagé et que vous ne vous engagerez pas dans le Forking ou que vous ne tenterez pas de modifier ou de faire de l'ingénierie inverse sur les API de Tulip. De plus, vous déclarez et garantissez que vous n'avez pas distribué et que vous ne distribuerez pas un ensemble d'API ou un kit de développement basé sur les API de Tulip, ou une modification de celles-ci, y compris un sous-ensemble ou un sur-ensemble des API de Tulip.

B. Marque. Vous reconnaissez que, à moins qu'elle n'ait été négociée séparément avec Tulip, aucune licence (implicite ou explicite) d'utilisation des marques de Tulip (déposées ou non), des logos ou des marques verbales, ainsi que du fonds de commerce qui y est associé, n'est fournie par les présentes.

C. Exclusion de garanties. Vous reconnaissez que les API de Tulip ET LA SPÉCIFICATION DES API sont fournies "EN L'ÉTAT", sans garantie d'aucune sorte, et peuvent ne pas être fonctionnelles sur toute machine ou dans tout environnement. DANS LA MESURE PERMISE PAR LA LOI APPLICABLE, TULIP DÉCLINE TOUTE GARANTIE RELATIVE À LA PLATEFORME TULIP, EXPRESSE OU IMPLICITE, Y COMPRIS, MAIS SANS S'Y LIMITER, TOUTE GARANTIE CONTRE LA VIOLATION DES DROITS DE TIERS, LA QUALITÉ MARCHANDE ET L'ADÉQUATION À UN USAGE PARTICULIER. Tulip ne fait aucune déclaration ou garantie concernant l'adéquation des API Tulip OU DE LA SPÉCIFICATION DES API à vos besoins ou objectifs prévus, y compris pour une utilisation avec toute applicationlogicielle. De plus, Tulip ne fait aucune déclaration ou garantie concernant l'intégrité des données que vous TRANSMETTEZ, transférez, stockez, obtenez ou recevez par l'utilisation des API de Tulip. Tulip n'est pas tenu d'assurer la maintenance ou le support des API Tulip, ni de vous fournir des mises à jour, des correctifs ou des services y afférents. Vous assumez tous les risques découlant de l'utilisation des API de Tulip, y compris, sans limitation, le risque de dommages à votre système informatique, à votre applicationlogicielle, la corruption ou la perte de données, et le respect de TOUTES les lois et réglementations applicables (y compris les lois et réglementations relatives à la confidentialité et à la protection des données).

D. Indemnisation. Vous vous engagez à défendre, indemniser et dégager de toute responsabilité Tulip, ses sociétés affiliées et leurs dirigeants, directeurs, employés, agents et représentants respectifs pour toute réclamation, tout dommage, toute responsabilité, toute poursuite, toute demande, toute procédure, toute action, toute dépense, tout règlement, toute amende, toute pénalité, tout coût et tout frais (y compris les frais d'avocat raisonnables) découlant de (a) l'Applicationlogicielle, (b) toute intégration que vous créez en utilisant les API Tulip pour vous connecter à l'applicationlogicielle, au matériel ou à toute plate-forme ou service tiers), (c) votre utilisation de l'applicationlogicielle ou des API Tulip, ou (d) votre violation de toute loi, règle ou réglementation applicable, y compris, sans s'y limiter, la violation de la propriété intellectuelle et tout préjudice causé à un tiers. Les parties conviennent de se conformer à la procédure suivante lorsque Tulip cherche à obtenir une indemnisation en vertu de la présente section, et plus particulièrement que Tulip doit : (i) vous informer rapidement par écrit de la réclamation, étant entendu que, dans le cas où Tulip ne vous informerait pas rapidement par écrit, vous ne serez pas dégagé de vos obligations en vertu de la présente section 3.D, sauf dans la mesure où votre défense contre la réclamation a été matériellement préjudiciée par ce retard ou ce manquement ; (ii) vous donner le contrôle exclusif de la défense et du règlement de la réclamation (à condition que vous n'acceptiez pas un règlement qui n'offre pas à Tulip une libération complète ou qui impose des restrictions à Tulip sans le consentement écrit préalable de Tulip, Tulip peut, à sa seule discrétion, participer à la défense de toute réclamation par l'intermédiaire de ses propres avocats, et à ses propres frais, et si vous n'assumez pas rapidement la défense de la réclamation, Tulip peut assumer la défense de la réclamation à vos seuls frais) ; et (iii) vous fournir, à vos frais, toute assistance raisonnable.

E. Limitation de la responsabilité. DANS LA MESURE MAXIMALE PERMISE PAR LA LOI APPLICABLE, EN AUCUN CAS TULIP OU SES CONCÉDANTS NE SERONT RESPONSABLES OU REDEVABLES, EN CE QUI CONCERNE TOUT SUJET DE CET ACCORD, EN VERTU DE TOUT CONTRAT, NÉGLIGENCE, RESPONSABILITÉ STRICTE OU AUTRE THÉORIE, POUR : (I) TOUT DOMMAGE INDIRECT, ACCESSOIRE, CONSÉCUTIF, SPÉCIAL, EXEMPLAIRE, PUNITIF OU AUTRE DOMMAGE PÉCUNIAIRE, Y COMPRIS, MAIS SANS S'Y LIMITER, LA PERTE DE REVENUS OU DE BÉNÉFICES, LA PERTE, LA CORRUPTION OU L'INEXACTITUDE DE DONNÉES, LA PERTE D'UTILISATION, LA PERTE DE CLIENTÈLE, LA PERTE D'ACTIVITÉ OU LE COÛT D'ACQUISITION DE BIENS, DE SERVICES OU DE TECHNOLOGIES DESUBSTITUTION ; (II) TOUTE QUESTION ÉCHAPPANT À SON CONTRÔLE RAISONNABLE ; OU (III) TOUT DOMMAGE DIRECT DONT LE TOTAL EST SUPÉRIEUR À 100 $.

4. Confidentialité. Telles qu'utilisées dans le présent document, les Informations Confidentielles signifient : (i) tout retour d'information que vous fournissez à Tulip conformément à la section 2.C ; et (ii) toute information commerciale ou technique de Tulip qui vous est divulguée dans le cadre du présent Accord, y compris, mais sans s'y limiter, toute information relative aux plans de Tulip, aux opportunités commerciales ou à la recherche et au développement. Les informations confidentielles excluent toute information qui : (a) est ou devient généralement connue du public autrement qu'en raison de votre violation du présent Accord ; (b) est légitimement connue de vous au moment de la divulgation sans restriction d'utilisation ou de divulgation ; (c) est développée indépendamment par vous, sans accès ou utilisation de toute information confidentielle ; ou (d) est légitimement obtenue par vous d'un tiers qui a le droit de la divulguer et qui la divulgue sans restriction d'utilisation ou de divulgation. Vous conserverez toutes les informations confidentielles dans la plus stricte confidentialité et ne les divulguerez à aucun tiers, à l'exception d'un contractant qui a besoin de les connaître aux fins du présent accord et qui accepte par écrit de traiter les informations confidentielles dans des conditions non moins protectrices que celles du présent accord. Vous serez responsable de tout manquement d'un tel contractant à traiter les informations confidentielles conformément au présent accord. Vous n'utiliserez pas les Informations confidentielles, sauf si cela est nécessaire à l'exécution du présent Accord.

5. Durée et résiliation

A. Durée. Le présent Accord prend effet à la date à laquelle vous mettez en oeuvre les API de Tulip ou la spécification API, et se poursuivra jusqu'à sa résiliation conformément aux dispositions des sections 5.B ou 5.C.

B. Résiliation pour convenance. Tulip peut résilier le présent Accord pour quelque raison que ce soit, moyennant un préavis de trente (30) jours à votre égard. Tulip peut, à sa seule discrétion, vous redonner la possibilité d'utiliser les APIs ou la Spécification d'API. Vous pouvez mettre fin à l'Accord à tout moment en cessant d'utiliser les API de Tulip, les spécifications de l'API et en désactivant la capacité de votre applicationlogicielle à utiliser les API de Tulip.

C. Résiliation pour manquement. Tulip peut mettre fin à cet Accord immédiatement sur notification écrite si vous violez cet Accord. Tulip peut, à sa seule discrétion, vous redonner la possibilité d'utiliser les APIs ou les spécifications API si vous démontrez que vous avez remédié à une telle violation.

D. Suspension d'urgence. Si Tulip a connaissance d'une situation dans laquelle votre utilisation des APIs Tulip peut perturber indûment la livraison de la Plateforme Tulip à des tiers (par exemple, des clients de Tulip) en général, ou si Tulip détecte un accès non autorisé d'un tiers à la Plateforme Tulip (collectivement désigné dans les présentes comme une "Urgence"), Tulip peut immédiatement suspendre l'utilisation incriminée (et tous les droits sous licence en vertu du présent Accord qui permettent une telle utilisation). Une telle suspension sera limitée au minimum et à la durée nécessaire pour répondre à l'urgence. Tulip peut, à sa seule discrétion, rétablir l'utilisation (et tous les droits accordés dans le cadre de cet Accord qui permettent une telle utilisation) lorsque l'urgence a été résolue.

E. Survie en cas de résiliation. En cas de résiliation du présent Accord, vos licences sur les API de Tulip et sur la spécification API, conformément aux sections 2.A( Licence APITulip ) et 2.B( Licence spécification APITulip ), seront immédiatement résiliées. Nonobstant ce qui précède, les sections 2.C (Licence de rétroaction à Tulip), 3 (Garantie, déni, indemnisation et limitation de responsabilité), 4 (Confidentialité) et 6 (Divers) survivront à toute résiliation du présent Accord.

6. Divers

A. Mesures injonctives. Vous reconnaissez qu'une violation du présent Accord peut causer un préjudice irréparable à Tulip qui ne peut être compensé de manière adéquate par des dommages pécuniaires. En plus d'autres mesures, vous acceptez qu'une mesure d'injonction temporaire et permanente puisse être un recours approprié pour empêcher toute violation réelle ou imminente du présent Accord et que Tulip soit en droit de demander une mesure d'injonction immédiate, ainsi que toute autre mesure pouvant être accordée par un tribunal de juridiction compétente.

B. Aucun soutien. Sauf accord écrit contraire, Tulip ne sera pas responsable de la fourniture d'une assistance, d'une maintenance ou de tout autre service (ou niveau de service) à vous-même ou à un utilisateur de l'applicationlogicielle pour les API de Tulip.

C. Lois sur l'exportation. Vous acceptez de vous conformer pleinement à toutes les lois et réglementations américaines en matière d'exportation afin de garantir que ni les API de Tulip, ni les données techniques y afférentes, ni aucun produit direct de celles-ci ne soient exportés ou réexportés directement ou indirectement en violation de ces lois et réglementations, ou utilisés à des fins interdites par celles-ci.

D. Intégration ; ordre de préséance. Sauf accord écrit contraire entre les Parties, le présent Contrat constitue l'intégralité de l'accord et remplace tout accord antérieur (y compris un Contrat de Licence d'Interface de Programmation d'Application Tulip ), ainsi que toute entente, représentation et autre communication (écrite ou orale) antérieure ou contemporaine entre les Parties concernant l'objet du présent Contrat. Les termes du présent Contrat prévaudront sur les termes et conditions contradictoires ou supplémentaires de toute commande, accusé de réception, confirmation ou autre document émis par Vous, à moins que les Parties ne conviennent mutuellement par écrit que ces termes et conditions modifieront, prévaudront et contrôleront en cas d'incompatibilité avec le présent Contrat.

E. Divisibilité. Si une disposition du présent contrat, ou son application, devient ou est déclarée par un tribunal compétent comme étant illégale, nulle ou inapplicable, le reste du présent contrat restera en vigueur et l'application de cette disposition sera interprétée de manière à réaliser raisonnablement l'intention des parties.

H. Droit de modification de Tulip. Tulip peut, à sa discrétion, modifier les termes du présent Accord en vous adressant un préavis de trente (30) jours. Si vous continuez à utiliser les API de Tulipaprès la date d'entrée en vigueur de ces modifications, vous serez réputé avoir accepté ces modifications. Si vous ne souhaitez pas accepter ces modifications, vous pouvez résilier le présent Accord conformément à la section 5.B. Vous reconnaissez et acceptez que Tulip puisse modifier le présent Accord, la Plate-forme Tulip et les API Tulip de temps à autre (une "Modification"). Vous serez informé d'une modification du présent Accord par le biais de notifications ou de publications sur le site Internet de Tulip ("Avis de modification"). Vous reconnaissez et acceptez en outre que ces Modifications puissent être mises en œuvre à tout moment et sans préavis. Dans un délai de trente (30) jours à compter de l'Avis de modification (ou toute période plus courte spécifiée dans l'Avis de modification (la "Période de conformité"), vous devez vous conformer à cette ou ces modifications en mettant en œuvre et en utilisant la version la plus récente de l'API. Le fait que vous continuiez à accéder ou à utiliser la Plate-forme Tulip ou les API Tulip après la Période de Conformité constitue une acceptation ferme de la ou des modifications en question.

I. Cession. Vous ne pouvez pas, directement ou indirectement, par application de la loi ou autrement, céder tout ou partie du présent Accord ou de vos droits en vertu du présent Accord ou déléguer l'exécution de vos obligations en vertu du présent Accord sans le consentement préalable de Tulip. Tulip peut céder le présent Accord dans son intégralité, que ce soit par application de la loi ou autrement, sans votre consentement écrit préalable.

J. Licence implicite et estoppel. Rien dans cet Accord ne peut être interprété comme accordant une licence par le biais des doctrines de licence implicite ou de préclusion légale pour des droits au-delà de ce qui est expressément accordé dans le cadre de cet Accord. De plus, rien dans cet Accord ne peut être considéré comme une renonciation aux droits de propriété intellectuelle de Tulipsur la Plate-forme Tulip ou sur d'autres technologies Tulip. Ces droits de propriété intellectuelle sont réservés à Tulip. En acceptant les termes du présent Accord, vous reconnaissez que vous n'êtes licencié que pour les droits expressément énumérés dans le présent Accord et que les actions des parties et/ou la contrepartie accordée dans le cadre du présent Accord ne concernent que ces droits et aucun autre.

K. Loi applicable ; notifications.

Le présent Accord sera régi et interprété conformément aux lois du Commonwealth du Massachusetts, sans référence à ses principes de conflit de lois. Toute réclamation, action, poursuite ou procédure découlant de ou en rapport avec le présent Contrat sera entendue et déterminée par les tribunaux du comté de Middlesex, Massachusetts, et chacune des parties aux présentes consent à la juridiction exclusive de ces tribunaux (et des cours d'appel appropriées de ceux-ci dans le cadre d'une telle réclamation, action, action, procès ou procédure) et renonce irrévocablement, dans toute la mesure permise par la loi, à toute objection qu'elle pourrait avoir aujourd'hui ou par la suite quant au lieu d'une telle réclamation, action, procès ou procédure dans un tel tribunal ou quant au fait qu'une telle réclamation, action, procès ou procédure qui est introduite dans un tel tribunal a été introduite dans un forum inapproprié.

A l'exception de ce qui est indiqué dans le paragraphe 6.H ci-dessus, les notifications dans le cadre du présent Accord doivent être faites par écrit et sont réputées avoir été données (i) lors de la remise en main propre, (ii) le troisième jour ouvrable après l'envoi par la poste, (iii) le premier jour ouvrable après l'envoi par e-mail. Les notifications à Tulip doivent être adressées à : "ApplicationProgramming Interface License Agreement" et Tulip Interfaces, Inc. 77 Middlesex Ave, Suite A, Somerville, MA 01245, avec une copie à notre General Counsel à la même adresse.

L. Relations entre les parties

Les parties sont des entrepreneurs indépendants. Le présent accord ne crée pas de partenariat, de franchise, de coentreprise, d'agence, de relation fiduciaire ou d'emploi entre les parties.

Stability

When a version of a Tulip API Namespace is considered stable, Tulip may release changes to the API, but such changes must be backwards-compatible. In the context of Tulip APIs, a change is generally considered backwards-compatible if it does not break the functionality of existing integrations using that API. Specifically, the following types of changes are considered backwards-compatible:

  • Adding a new endpoint to a Namespace.

  • Adding an optional request body field, query parameter, or HTTP header, such that the meaning of other fields, parameters, or headers are unchanged when the optional field is omitted. Note that unrecognized fields of request bodies are generally ignored, so a field that previously had no meaning (which would not cause an error) may gain meaning in a subsequent release without being considered a breaking change.

  • Adding an accepted request body content-type to an endpoint. If the new content-type represents structured data (JSON, YAML, CSV, etc.), it must adhere to the documented structure of the request body. If the new content-type is unstructured data (image, video, PDF, plain text, other binary data), it must adhere to any documented constraints in the request body description.

  • Changing the type or validation rules of a request body field, query parameter, or HTTP header such that all previously valid values are still considered valid.

  • Adding a new response body field or HTTP header.

  • Adding a new error response HTTP status code (4xx, 5xx).

  • Removing possible values from the type of a response body field or HTTP header, such that the meaning of other fields or response headers are unchanged.

  • Changing the documentation of a type, error code, field, or endpoint in a way that does not affect the behavior of the API.

  • Changing the text of the error description presented in error responses.

  • Changing the display names or other textual content of any Tulip-defined resources.

  • Changing rate, size, or resource count limits enforced on endpoints.

  • Fixing a bug in order to align the actual behavior of an endpoint with its documented behavior.

  • Fixing a security vulnerability by any means necessary, including with changes that would otherwise be considered breaking. In the event that Tulip needs to release a critical security fix that results in a breaking API change, we will try to work with our customers to update their integrations to prevent downtime as much as possible.

  • Adding, removing, or changing any endpoints, parameters, or types which are not publicly documented.

Occasionally, Tulip may need to release a change to an API that is not backwards-compatible. This is referred to as a breaking change or a backwards-incompatible change. Tulip will only release breaking changes to stable APIs in a new version of its API Namespace (with the exception of critical security fixes, as described above). The following types of changes are considered backwards-incompatible:

  • Removing an endpoint from a Namespace.

  • Removing a request body field, query parameter, or HTTP header.

  • Removing an accepted request body content-type from an endpoint.

  • Changing the response body content-type of an endpoint.

  • Changing the type or validation rules of a request body field, query parameter, or HTTP header such that some inputs are no longer considered valid.

  • Changing the default value of an optional request body field, query parameter, or HTTP header.

  • Adding a required request body field, query parameter, or HTTP header.

  • Adding an optional request body field, query parameter, or HTTP header such that the meaning of any other fields, parameters, or headers are changed as well.

  • Adding possible values to the type of a response body field or HTTP header.

  • Adding a new success response HTTP status code (1xx, 2xx, 3xx).

  • Removing a response body field or HTTP header.

  • Significantly changing the documented semantics or functionality of an endpoint, even if the interface is unchanged.

Limits

The Tulip API enforces various types of limits in order to protect shared resources (API servers, databases, etc.) from excessive load which can impact quality of service for other users and other customers. Such limits include (these are illustrative examples only):

  • Rate limits: By default a given client cannot make requests to a given endpoint more than some number of times per second.

  • Size limits: The name of a resource cannot exceed a certain number of characters, or the size of an uploaded file cannot exceed a certain file size.

  • Resource count limits: No more than a certain number of workspaces can be created.

While Tulip may provide documentation on some of these limits, they are not considered part of the stable API and may change at any time based on current load conditions, evolving product requirements, user preferences, and other factors. Clients should use information provided by Tulip API responses (status codes, error codes, and error fields) to handle limiting errors. Tulip reserves the right to disable clients that repeatedly disregard these limits.

Support

Tulip provides support for its APIs which is similar to the support we provide for other Tulip products. Full support includes maintaining documentation, answering questions, troubleshooting issues, releasing bug fixes, and releasing security fixes for these APIs. Tulip does not provide support for undocumented APIs. The level of support that Tulip provides for a public API Namespace version varies based on how it is labeled in the API documentation:

  • Alpha - Tulip will provide limited support for this API and may release breaking changes to this API at any time.

  • Beta - Tulip fully supports this API, but may release breaking changes to this API at any time. We will communicate any breaking changes with Beta customers.

  • Stable - Tulip fully supports this API and considers it stable, as defined in the Stability section.

  • Deprecated - Tulip intends to remove this API in the near future. Tulip will provide full support for this API, but users should plan on updating any integrations using it to a newer version of the API, which Tulip will provide guidance for. Deprecated APIs will generally not receive updates except critical security or bug fixes.

  • End of Support - Tulip will not provide any support for this API, including critical security fixes. Unsupported APIs may cease to function at any time without notice.

Stable API Namespaces will remain stable for at least one LTS release cycle before being marked as deprecated. Deprecated API Namespaces will remain supported for at least two LTS release cycles before being marked as unsupported.